| | |
| | | using CMS.Plugin.HIAWms.Domain.Shared.Enums; |
| | | using Volo.Abp.Application.Dtos; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsContainers; |
| | |
| | | /// Gets or sets the name. |
| | | /// </summary> |
| | | public string Name { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æçç¼å· |
| | | /// </summary> |
| | | public string ContainerNo { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æçç±»å |
| | | /// </summary> |
| | | public ContainerTypeEnum ContainerType { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æçç¶æ |
| | | /// </summary> |
| | | public ContainerStatusEnum ContainerStatus { get; set; } |
| | | } |
| | |
| | | public ContainerTypeEnum ContainerType { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æçç±»å |
| | | /// </summary> |
| | | public string ContainerTypeDesc |
| | | { |
| | | get |
| | | { |
| | | return GetEnumDescriptionUtil.GetEnumDescription(ContainerType); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æçç¶æ |
| | | /// </summary> |
| | | public ContainerStatusEnum ContainerStatus { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æçç¶æ |
| | | /// </summary> |
| | | public string ContainerStatusDesc |
| | | { |
| | | get |
| | | { |
| | | return GetEnumDescriptionUtil.GetEnumDescription(ContainerStatus); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// é¿åº¦ |
| | | /// </summary> |
| | | public decimal? SpecLength { get; set; } |
| | |
| | | using Volo.Abp.Application.Dtos; |
| | | using Volo.Abp.Data; |
| | | using Volo.Abp.ObjectExtending; |
| | | using CMS.Plugin.HIAWms.Domain.Shared.Util; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Application.Implements; |
| | | |
| | |
| | | } |
| | | |
| | | var specification = new WmsContainerSpecification(input.Name); |
| | | var count = await _wmscontainerRepository.GetCountAsync(input.Filter, specification); |
| | | var list = await _wmscontainerRepository.GetListAsync(input.Sorting, input.MaxResultCount, input.SkipCount, input.Filter, specification); |
| | | var container = ObjectMapper.Map < GetWmsContainersInput, WmsContainer>(input); |
| | | var count = await _wmscontainerRepository.GetCountAsync(container,input.Filter, specification); |
| | | var list = await _wmscontainerRepository.GetListAsync(container,input.Sorting, input.MaxResultCount, input.SkipCount, input.Filter, specification); |
| | | |
| | | return new PagedResultDto<WmsContainerDto>(count, ObjectMapper.Map<List<WmsContainer>, List<WmsContainerDto>>(list)); |
| | | } |
| | |
| | | /// <inheritdoc /> |
| | | public virtual async Task AdjustSortAsync(Guid id, int sort) |
| | | { |
| | | var list = await _wmscontainerRepository.GetListAsync(nameof(WmsContainer.Sort)); |
| | | var list = await _wmscontainerRepository.GetListAsync(null,nameof(WmsContainer.Sort)); |
| | | if (list != null && list.Any()) |
| | | { |
| | | var initSort = 1; |
| | |
| | | } |
| | | |
| | | var specification = new WmsContainerSpecification(input.Name); |
| | | var list = await _wmscontainerRepository.GetListAsync(input.Sorting, input.MaxResultCount, input.SkipCount, input.Filter, specification, includeDetails: true); |
| | | var container = ObjectMapper.Map<GetWmsContainersInput, WmsContainer>(input); |
| | | var list = await _wmscontainerRepository.GetListAsync(container,input.Sorting, input.MaxResultCount, input.SkipCount, input.Filter, specification, includeDetails: true); |
| | | var result = ObjectMapper.Map<List<WmsContainer>, List<WmsContainerDto>>(list); |
| | | |
| | | var sheets = new Dictionary<string, object> |
| | | { |
| | | ["é
ç½®"] = result.Select(x => x.GetExportData()).ToList(), |
| | | ["é
ç½®"] = ExportHelper.ConvertListToExportData(result), |
| | | }; |
| | | |
| | | var fileName = result.Count > 1 ? "WmsContainerå表" : result.Count == 1 ? result.First()?.ContainerNo : "WmsContainer模ç"; |
| | |
| | | * into multiple profile classes for a better organization. */ |
| | | CreateMap<WmsContainer, WmsContainerDto>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None); |
| | | CreateMap<WmsContainerCreateDto, WmsContainer>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None); |
| | | CreateMap<GetWmsContainersInput, WmsContainer>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None); |
| | | } |
| | | } |
| | |
| | | /// <param name="includeDetails">if set to <c>true</c> [include details].</param> |
| | | /// <param name="cancellationToken">The cancellation token.</param> |
| | | /// <returns></returns> |
| | | Task<List<WmsContainer>> GetListAsync(string sorting = null, int maxResultCount = int.MaxValue, int skipCount = 0, string filter = null, Specification<WmsContainer> specification = null, bool includeDetails = false, CancellationToken cancellationToken = default); |
| | | Task<List<WmsContainer>> GetListAsync(WmsContainer? container, string sorting = null, int maxResultCount = int.MaxValue, int skipCount = 0, string filter = null, Specification<WmsContainer> specification = null, bool includeDetails = false, CancellationToken cancellationToken = default); |
| | | |
| | | /// <summary> |
| | | /// Gets the count asynchronous. |
| | |
| | | /// <param name="specification">The specification.</param> |
| | | /// <param name="cancellationToken">The cancellation token.</param> |
| | | /// <returns></returns> |
| | | Task<long> GetCountAsync(string filter = null, Specification<WmsContainer> specification = null, CancellationToken cancellationToken = default); |
| | | Task<long> GetCountAsync(WmsContainer? container, string filter = null, Specification<WmsContainer> specification = null, CancellationToken cancellationToken = default); |
| | | } |
| | |
| | | return sort + 1; |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public async Task<List<WmsContainer>> GetListAsync(string sorting = null, int maxResultCount = int.MaxValue, int skipCount = 0, string filter = null, Specification<WmsContainer> specification = null, bool includeDetails = false, CancellationToken cancellationToken = default) |
| | | /// <summary> |
| | | /// æ¥è¯¢å表 |
| | | /// </summary> |
| | | /// <param name="container"></param> |
| | | /// <param name="sorting"></param> |
| | | /// <param name="maxResultCount"></param> |
| | | /// <param name="skipCount"></param> |
| | | /// <param name="filter"></param> |
| | | /// <param name="specification"></param> |
| | | /// <param name="includeDetails"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | public async Task<List<WmsContainer>> GetListAsync(WmsContainer? container,string sorting = null, int maxResultCount = int.MaxValue, int skipCount = 0, string filter = null, Specification<WmsContainer> specification = null, bool includeDetails = false, CancellationToken cancellationToken = default) |
| | | { |
| | | specification ??= new WmsContainerSpecification(); |
| | | return await (await GetDbSetAsync()) |
| | |
| | | .Where(specification.ToExpression()) |
| | | .Where(x => !x.IsDeleted) |
| | | .WhereIf(!filter.IsNullOrWhiteSpace(), u => u.ContainerNo.Contains(filter)) |
| | | .WhereIf(!string.IsNullOrEmpty(container.ContainerNo),u=>u.ContainerNo.Contains(container.ContainerNo)) |
| | | .WhereIf(container.ContainerStatus>0, u=>u.ContainerStatus == u.ContainerStatus) |
| | | .WhereIf(container.ContainerType>0, u=>u.ContainerType == u.ContainerType) |
| | | .OrderBy(sorting.IsNullOrEmpty() ? nameof(WmsContainer.Sort) : sorting) |
| | | .PageBy(skipCount, maxResultCount) |
| | | .ToListAsync(GetCancellationToken(cancellationToken)); |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public async Task<long> GetCountAsync(string filter = null, Specification<WmsContainer> specification = null, CancellationToken cancellationToken = default) |
| | | /// <summary> |
| | | /// æ¥è¯¢æ°é |
| | | /// </summary> |
| | | /// <param name="container"></param> |
| | | /// <param name="filter"></param> |
| | | /// <param name="specification"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | public async Task<long> GetCountAsync(WmsContainer? container, string filter = null, Specification<WmsContainer> specification = null, CancellationToken cancellationToken = default) |
| | | { |
| | | specification ??= new WmsContainerSpecification(); |
| | | return await (await GetQueryableAsync()) |
| | | .Where(specification.ToExpression()) |
| | | .Where(x => !x.IsDeleted) |
| | | .WhereIf(!string.IsNullOrEmpty(container.ContainerNo), u => u.ContainerNo.Contains(container.ContainerNo)) |
| | | .WhereIf(container.ContainerStatus > 0, u => u.ContainerStatus == u.ContainerStatus) |
| | | .WhereIf(container.ContainerType > 0, u => u.ContainerType == u.ContainerType) |
| | | .WhereIf(!filter.IsNullOrWhiteSpace(), u => u.ContainerNo.Contains(filter)) |
| | | .CountAsync(cancellationToken: GetCancellationToken(cancellationToken)); |
| | | } |
ÎļþÃû´Ó HIAWms/web/src/widgets/WmsContainer/Controllers/WmsContainerDrawer.ts ÐÞ¸Ä |
| | |
| | | import { ref, onMounted, reactive, computed, Ref, watch } from 'vue' |
| | | import { |
| | | ref, |
| | | onMounted, |
| | | reactive, |
| | | computed, |
| | | Ref, |
| | | watch, |
| | | SetupContext, |
| | | h, |
| | | } from 'vue' |
| | | import { injectModel } from '@/libs/Provider/Provider' |
| | | import { WmsContainerDrawer } from '../Models/WmsContainerDrawer' |
| | | import { ElMessage } from 'element-plus' |
| | | import isEqual from 'lodash/isEqual' |
| | | import { ConfirmBox } from '@/components/ConfirmBox/ConfirmBox' |
| | | import { cloneDeep } from 'lodash' |
| | | import { getWmsEnumData } from '@/widgets/HIAWms/Models/Service/WmsMaterialDrawer' |
| | | |
| | | export const useWmsContainerDrawer = (props: any, ctx?: any) => { |
| | | const wmsContainerDrawer = |
| | |
| | | const formData = ref<Record<string, any>>({}) |
| | | // ref |
| | | const formRef = ref() |
| | | const disabled = ref(false) |
| | | |
| | | const inputNumber = (attrs) => { |
| | | return ( |
| | | <el-input-number |
| | | min="1" |
| | | step="1" |
| | | precision="0" |
| | | {...attrs} |
| | | ></el-input-number> |
| | | ) |
| | | } |
| | | |
| | | const current = computed(() => { |
| | | return props.row || null |
| | |
| | | prop: 'containerType', |
| | | el: 'select', |
| | | placeholder: 'è¯·éæ©æçç±»å', |
| | | options: [ |
| | | { label: 'ç±»å1', value: 0 }, |
| | | { label: 'ç±»å2', value: 1 }, |
| | | // æ·»å æææä¸¾å¼ |
| | | ], |
| | | options: [], |
| | | rules: [{ required: true, message: 'è¯·éæ©æçç±»å', trigger: 'change' }], |
| | | }, |
| | | { |
| | |
| | | prop: 'containerStatus', |
| | | el: 'select', |
| | | placeholder: 'è¯·éæ©æçç¶æ', |
| | | options: [ |
| | | { label: 'ç¶æ1', value: 0 }, |
| | | { label: 'ç¶æ2', value: 1 }, |
| | | // æ·»å æææä¸¾å¼ |
| | | ], |
| | | options: [], |
| | | rules: [{ required: true, message: 'è¯·éæ©æçç¶æ', trigger: 'change' }], |
| | | }, |
| | | { |
| | | label: 'é¿åº¦(mm)', |
| | | prop: 'specLength', |
| | | el: 'input', |
| | | el: (props: any, { attrs }: SetupContext) => { |
| | | return h(inputNumber, { |
| | | ...props, |
| | | clearable: true, |
| | | ...attrs, |
| | | }) |
| | | }, |
| | | width: '100%', |
| | | placeholder: '请è¾å
¥é¿åº¦', |
| | | step: 0.01, |
| | | precision: 2, |
| | |
| | | { |
| | | label: '宽度(mm)', |
| | | prop: 'specWidth', |
| | | el: 'input', |
| | | el: (props: any, { attrs }: SetupContext) => { |
| | | return h(inputNumber, { |
| | | ...props, |
| | | clearable: true, |
| | | ...attrs, |
| | | }) |
| | | }, |
| | | width: '100%', |
| | | placeholder: '请è¾å
¥å®½åº¦', |
| | | step: 0.01, |
| | | precision: 2, |
| | |
| | | { |
| | | label: 'é«åº¦(mm)', |
| | | prop: 'specHeight', |
| | | el: 'input', |
| | | el: (props: any, { attrs }: SetupContext) => { |
| | | return h(inputNumber, { |
| | | ...props, |
| | | clearable: true, |
| | | ...attrs, |
| | | }) |
| | | }, |
| | | width: '100%', |
| | | placeholder: '请è¾å
¥é«åº¦', |
| | | step: 0.01, |
| | | precision: 2, |
| | | }, |
| | | { |
| | | label: 'éé¿(mm)', |
| | | prop: 'limitLength', |
| | | el: (props: any, { attrs }: SetupContext) => { |
| | | return h(inputNumber, { |
| | | ...props, |
| | | clearable: true, |
| | | ...attrs, |
| | | }) |
| | | }, |
| | | width: '100%', |
| | | placeholder: '请è¾å
¥è½½éä¸é', |
| | | step: 0.1, |
| | | precision: 2, |
| | | }, |
| | | { |
| | | label: 'é宽(mm)', |
| | | prop: 'limitWidth', |
| | | el: (props: any, { attrs }: SetupContext) => { |
| | | return h(inputNumber, { |
| | | ...props, |
| | | clearable: true, |
| | | ...attrs, |
| | | }) |
| | | }, |
| | | width: '100%', |
| | | placeholder: '请è¾å
¥è½½éä¸é', |
| | | step: 0.1, |
| | | precision: 2, |
| | | }, |
| | | { |
| | | label: 'éé«(mm)', |
| | | prop: 'limitHeight', |
| | | el: (props: any, { attrs }: SetupContext) => { |
| | | return h(inputNumber, { |
| | | ...props, |
| | | clearable: true, |
| | | ...attrs, |
| | | }) |
| | | }, |
| | | width: '100%', |
| | | placeholder: '请è¾å
¥è½½éä¸é', |
| | | step: 0.1, |
| | | precision: 2, |
| | | }, |
| | | { |
| | | label: 'è½½éä¸é(kg)', |
| | | prop: 'maxWeight', |
| | | el: 'input', |
| | | el: (props: any, { attrs }: SetupContext) => { |
| | | return h(inputNumber, { |
| | | ...props, |
| | | clearable: true, |
| | | ...attrs, |
| | | }) |
| | | }, |
| | | width: '100%', |
| | | placeholder: '请è¾å
¥è½½éä¸é', |
| | | step: 0.1, |
| | | precision: 2, |
| | |
| | | }, |
| | | } |
| | | } |
| | | |
| | | const updateFormItemOptions = (propName: string, enumData: any[]) => { |
| | | const item = formItems.find((item) => item.prop === propName) |
| | | if (item && enumData) { |
| | | item.options = enumData.map((item) => ({ |
| | | label: item.description, |
| | | value: item.value, |
| | | })) |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * å¼¹çªæå¼è·å详æ
|
| | | */ |
| | | const onOpen = async () => { |
| | | const containerTypeEnum = await getWmsEnumData({ |
| | | EnumName: 'ContainerTypeEnum', |
| | | }) |
| | | updateFormItemOptions('containerType', containerTypeEnum) |
| | | |
| | | const containerStatusEnum = await getWmsEnumData({ |
| | | EnumName: 'ContainerStatusEnum', |
| | | }) |
| | | updateFormItemOptions('containerStatus', containerStatusEnum) |
| | | |
| | | if (current.value) { |
| | | const res = await wmsContainerDrawer.getWmsContainerDetail(current.value) |
| | | |
| | |
| | | id: res.id, |
| | | } |
| | | updateCheckData() |
| | | disabled.value = true |
| | | } else { |
| | | formData.value = {} |
| | | disabled.value = false |
| | | updateCheckData() |
| | | } |
| | | } |
| | |
| | | export const updateWmsContainer = (id: string, data: Record<string, any>) => { |
| | | return request.put(`/api/v1/HIAWms/wmsContainer/${id}`, data) |
| | | } |
| | | |
| | | /** |
| | | * è·åæä¸¾ |
| | | * @returns |
| | | */ |
| | | export const getWmsEnumData = (data: any) => { |
| | | return request.post('/api/v1/hIAWms/WmsEnum', data) |
| | | } |
| | |
| | | import { SetupContext, defineComponent } from 'vue' |
| | | import BaseDrawer from '@/components/BaseDrawer/BaseDrawer' |
| | | import styles from './WmsContainerDrawer.module.scss' |
| | | import { useWmsContainerDrawer } from '../../../../Controllers/WmsContainerDrawer' |
| | | import { useWmsContainerDrawer } from '../../../../Controllers/WmsContainerDrawer.tsx' |
| | | import DyForm from '@/components/DyForm/DyForm' |
| | | |
| | | // @ts-ignore |
| | |
| | | title: 'æçç¼å·', |
| | | }, |
| | | { |
| | | field: 'containerType', |
| | | field: 'containerTypeDesc', |
| | | title: 'æçç±»å', |
| | | }, |
| | | { |
| | | field: 'containerStatus', |
| | | field: 'containerStatusDesc', |
| | | title: 'æçç¶æ', |
| | | }, |
| | | { |
| | |
| | | field: 'maxWeight', |
| | | title: 'è½½éä¸é', |
| | | }, |
| | | { |
| | | field: 'exceptionNumber', |
| | | title: 'å¼å¸¸æ°é', |
| | | }, |
| | | { |
| | | field: 'materialNumber', |
| | | title: 'ç©ææ°é', |
| | | }, |
| | | // { |
| | | // field: 'exceptionNumber', |
| | | // title: 'å¼å¸¸æ°é', |
| | | // }, |
| | | // { |
| | | // field: 'materialNumber', |
| | | // title: 'ç©ææ°é', |
| | | // }, |
| | | { |
| | | field: 'remark', |
| | | title: '夿³¨', |
| | |
| | | .wmsContainerContent { |
| | | width: 100%; |
| | | height: 100%; |
| | | height: 90%; |
| | | |
| | | .wmsContainerList { |
| | | width: 100%; |
| | |
| | | .hideBlock { |
| | | display: none; |
| | | } |
| | | |
| | | .queryForm { |
| | | padding: 10px; |
| | | background: #f5f7fa; |
| | | margin-bottom: 0px; |
| | | border-radius: 4px; |
| | | |
| | | .el-form-item { |
| | | margin-right: 20px; |
| | | margin-bottom: 0; |
| | | |
| | | // ç»ä¸è¾å
¥æ¡åéæ©æ¡ç宽度 |
| | | .el-input, .el-select { |
| | | width: 200px; // 设置ç»ä¸ç宽度 |
| | | } |
| | | |
| | | // éæ©æ¡å
é¨è¾å
¥æ¡æ ·å¼ |
| | | .el-select .el-input__wrapper { |
| | | height: 32px; // ä¸è¾å
¥æ¡é«åº¦ä¸è´ |
| | | padding: 1px 11px; // ä¸è¾å
¥æ¡å
è¾¹è·ä¸è´ |
| | | } |
| | | |
| | | // æ¥æéæ©å¨å®½åº¦ |
| | | .el-date-editor { |
| | | width: 220px; |
| | | } |
| | | } |
| | | } |
| | | |
| | | // 妿éè¦æ´ç²¾ç¡®çæ§å¶ï¼å¯ä»¥åç¬è®¾ç½® |
| | | .formItem { |
| | | width: 200px; |
| | | |
| | | &.el-input, &.el-select { |
| | | width: 100%; |
| | | } |
| | | } |
| | |
| | | import { defineComponent } from 'vue' |
| | | import { computed, defineComponent, onMounted, reactive, ref } from 'vue' |
| | | import type { Ref } from 'vue' |
| | | import BaseTable from '@/components/Table/Table' |
| | | import styles from './WmsContainer.module.scss' |
| | |
| | | import { columns } from './Config' |
| | | import TdButton from '@/components/TdButton/TdButton' |
| | | import { vPermission } from '@/libs/Permission/Permission' |
| | | import { getWmsEnumData } from '@/widgets/HIAWms/Models/Service/WmsMaterialDrawer' |
| | | import { ElForm, ElFormItem, ElInput, ElOption, ElSelect } from 'element-plus' |
| | | |
| | | interface RenderTableType { |
| | | url?: string |
| | |
| | | onSuccess, |
| | | onBeforeUpload, |
| | | } = useWmsContainer(props, ctx) |
| | | |
| | | // æ°å¢çæ¥è¯¢æ¡ä»¶ |
| | | const queryForm = ref({ |
| | | containerNo: '', |
| | | containerType: '', |
| | | containerStatus: '', |
| | | filter: '', |
| | | }) |
| | | |
| | | const queryParams = computed(() => ({ |
| | | ...queryForm.value, |
| | | containerType: queryForm.value.containerType || '', // å¤ç䏿 |
| | | containerStatus: queryForm.value.containerStatus || '', |
| | | })) |
| | | |
| | | // 卿æä¸¾é项 |
| | | const enumOptions = reactive({ |
| | | containerType: [] as Array<{ label: string; value: any }>, |
| | | containerStatus: [] as Array<{ label: string; value: any }>, |
| | | }) |
| | | |
| | | // è·åæä¸¾æ°æ® |
| | | const fetchEnumData = async () => { |
| | | try { |
| | | // è·åç©æç±»åæä¸¾ |
| | | const containerTypeData = await getWmsEnumData({ |
| | | EnumName: 'ContainerTypeEnum', |
| | | }) |
| | | enumOptions.containerType = containerTypeData.map((item) => ({ |
| | | label: item.description, |
| | | value: item.value, |
| | | })) |
| | | |
| | | // è·åéè´ç±»åæä¸¾ |
| | | const containerStatusData = await getWmsEnumData({ |
| | | EnumName: 'ContainerStatusEnum', |
| | | }) |
| | | enumOptions.containerStatus = containerStatusData.map((item) => ({ |
| | | label: item.description, |
| | | value: item.value, |
| | | })) |
| | | } catch (error) { |
| | | console.error('è·åæä¸¾æ°æ®å¤±è´¥:', error) |
| | | } |
| | | } |
| | | |
| | | // ç»ä»¶æè½½æ¶è·åæä¸¾æ°æ® |
| | | onMounted(() => { |
| | | fetchEnumData() |
| | | }) |
| | | |
| | | // æ°å¢çæ¥è¯¢æ¹æ³ |
| | | const handleQuery = async () => { |
| | | console.log('æ¥è¯¢æ¡ä»¶:', queryParams.value) |
| | | // tableRef.value.getTableList() |
| | | tableRef.value.getList(queryParams.value) |
| | | } |
| | | |
| | | // éç½®æ¥è¯¢æ¡ä»¶ |
| | | const resetQuery = () => { |
| | | queryForm.value = { |
| | | containerNo: '', |
| | | containerType: '', |
| | | containerStatus: '', |
| | | filter: '', |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * @returns è¡¨æ ¼ |
| | |
| | | sort={sort.value} |
| | | onConfirm={onConfirmWmsContainer} |
| | | /> |
| | | |
| | | {/* æ°å¢çæ¥è¯¢è¡¨å */} |
| | | <ElForm |
| | | inline |
| | | model={queryForm.value} |
| | | class={styles.queryForm} |
| | | label-width="80px" |
| | | > |
| | | <ElFormItem label="å
³é®å"> |
| | | <ElInput |
| | | v-model={queryForm.value.filter} |
| | | placeholder="请è¾å
¥å
³é®åæç´¢" |
| | | clearable |
| | | class={styles.formItem} |
| | | /> |
| | | </ElFormItem> |
| | | <ElFormItem label="ç©æç¼ç "> |
| | | <ElInput |
| | | v-model={queryForm.value.containerNo} |
| | | placeholder="请è¾å
¥æçç¼ç " |
| | | clearable |
| | | class={styles.formItem} |
| | | /> |
| | | </ElFormItem> |
| | | <ElFormItem label="ç©æç±»å"> |
| | | <ElSelect |
| | | v-model={queryForm.value.containerType} |
| | | placeholder="è¯·éæ©æçç±»å" |
| | | clearable |
| | | loading={enumOptions.containerType.length === 0} |
| | | class={styles.formItem} |
| | | > |
| | | {enumOptions.containerType.map((option) => ( |
| | | <ElOption |
| | | key={option.value} |
| | | label={option.label} |
| | | value={option.value} |
| | | /> |
| | | ))} |
| | | </ElSelect> |
| | | </ElFormItem> |
| | | <ElFormItem label="æçç¶æ"> |
| | | <ElSelect |
| | | v-model={queryForm.value.containerStatus} |
| | | placeholder="è¯·éæ©æçç¶æ" |
| | | clearable |
| | | loading={enumOptions.containerStatus.length === 0} |
| | | class={styles.formItem} |
| | | > |
| | | {enumOptions.containerStatus.map((option) => ( |
| | | <ElOption |
| | | key={option.value} |
| | | label={option.label} |
| | | value={option.value} |
| | | /> |
| | | ))} |
| | | </ElSelect> |
| | | </ElFormItem> |
| | | {/* <ElFormItem label="æ¥æèå´"> |
| | | <ElDatePicker |
| | | v-model={queryForm.value.dateRange} |
| | | type="daterange" |
| | | range-separator="è³" |
| | | start-placeholder="å¼å§æ¥æ" |
| | | end-placeholder="ç»ææ¥æ" |
| | | value-format="YYYY-MM-DD" |
| | | /> |
| | | </ElFormItem> */} |
| | | <ElFormItem> |
| | | <IconButton type="primary" icon="search" onClick={handleQuery}> |
| | | æ¥è¯¢ |
| | | </IconButton> |
| | | <IconButton |
| | | style="margin-left: 10px;" |
| | | icon="refresh" |
| | | onClick={resetQuery} |
| | | > |
| | | éç½® |
| | | </IconButton> |
| | | </ElFormItem> |
| | | </ElForm> |
| | | |
| | | <div class={styles.headerContent}> |
| | | <div class={styles.header}> |
| | | <IconButton |