From e8d564377d20526c643f00132ccc3466360f9c5b Mon Sep 17 00:00:00 2001
From: zs <zhousong@weben-smart.com>
Date: 周二, 13 5月 2025 15:33:58 +0800
Subject: [PATCH] 详情页面
---
HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/Service/WmsMaterialStockQueryDrawer.ts | 35
HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/Dialog/WmsMaterialStockDetailQuery/WmsMaterialStockDetailQueryDrawer.module.scss | 3
HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/GetWmsMaterialStocksInput.cs | 2
HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/Service/WmsMaterialStockDetailQueryDrawer.ts | 35
HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStockDetail/WmsMaterialStockDetail.module.scss | 226 ++--
HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/Service/WmsMaterialStockDrawer.ts | 4
Weben_CMS专用代码生成器/Code/File/GenerateCodeConfigParamFiles/库存详情.txt | 14
HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Controllers/WmsMaterialStockQueryDrawer.tsx | 457 ++++++++++
HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/Dialog/WmsMaterialStockDetailQuery/WmsMaterialStockDetailQueryDrawer.tsx | 71 +
HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Controllers/WmsMaterialStockDetailQueryDrawer.tsx | 445 +++++++++
HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/WmsMaterialStockDrawer.ts | 6
HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/Dialog/WmsMaterialStockQuery/WmsMaterialStockQueryDrawer.module.scss | 3
HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStock/Config.ts | 34
HIAWms/server/src/CMS.Plugin.HIAWms/Controller/WmsMaterialStockController.cs | 2
HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStockDetail/Config.ts | 16
HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStock/WmsMaterialStock.module.scss | 226 ++--
HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStock/WmsMaterialStock.tsx | 510 +++++------
Weben_CMS专用代码生成器/Code/MainForm.cs | 10
HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStockDetail/WmsMaterialStockDetail.tsx | 347 ++++---
HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/WmsMaterialStockDetailQueryDrawer.ts | 44
HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/Dialog/WmsMaterialStockQuery/WmsMaterialStockQueryDrawer.tsx | 71 +
HIAWms/hiawms_web/src/widgets/WmsMaterialStock/enum.ts | 4
HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Controllers/WmsMaterialStock.ts | 33
HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/WmsMaterialStockQueryDrawer.tsx | 44
HIAWms/hiawms_web/src/widgets/WmsStoreInfo/Models/WmsAreaDrawer.ts | 6
25 files changed, 1,962 insertions(+), 686 deletions(-)
diff --git a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Controllers/WmsMaterialStock.ts b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Controllers/WmsMaterialStock.ts
index 9d21733..e608a16 100644
--- a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Controllers/WmsMaterialStock.ts
+++ b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Controllers/WmsMaterialStock.ts
@@ -52,6 +52,12 @@
isAdd: false,
})
+ const dialogConfigForQuery = reactive({
+ visible: false,
+ title: '',
+ isAdd: false,
+ })
+
const dialogSettingConfig = reactive({
visible: false,
title: '',
@@ -72,6 +78,15 @@
dialogConfig.title = row.name
dialogConfig.isAdd = false
sort.value = row.sort
+ }
+
+ //鐐瑰嚮鎸夐挳銆愰珮绾ф煡璇€��
+ const onAdvancedQuery = () => {
+ const params = tableRef.value?.getPaginationParams()
+ current.value = null
+ dialogConfigForQuery.visible = true
+ dialogConfigForQuery.isAdd = true
+ dialogConfigForQuery.title = '楂樼骇鏌ヨ'
}
const contextMenu = [
@@ -174,13 +189,15 @@
/**
* 瀵煎嚭
*/
- const onExport = () => {
- const params = tableRef.value?.getParams()
- exportFile(
- '/api/v1/HIAWms/wmsMaterialStock/export',
- params,
- 'wmsMaterialStock'
- )
+ const onExport = (data = {}) => {
+ // const params = tableRef.value?.getParams()
+ // exportFile(
+ // '/api/v1/HIAWms/wmsMaterialStock/export',
+ // params,
+ // 'wmsMaterialStock'
+
+ exportFile('/api/v1/HIAWms/wmsMaterialStock/export', data, 'HIAWms')
+ // )
}
/**
@@ -251,6 +268,7 @@
sort,
wmsMaterialStockColumns,
paginationParams,
+ dialogConfigForQuery,
headers,
onBeforeUpload,
onError,
@@ -262,5 +280,6 @@
onConfirmWmsMaterialStock,
onCheck,
onAddWmsMaterialStock,
+ onAdvancedQuery,
}
}
diff --git a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Controllers/WmsMaterialStockDetailQueryDrawer.tsx b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Controllers/WmsMaterialStockDetailQueryDrawer.tsx
new file mode 100644
index 0000000..a7ecbbf
--- /dev/null
+++ b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Controllers/WmsMaterialStockDetailQueryDrawer.tsx
@@ -0,0 +1,445 @@
+import {
+ ref,
+ onMounted,
+ reactive,
+ computed,
+ Ref,
+ watch,
+ SetupContext,
+ h,
+} from 'vue'
+import { injectModel } from '@/libs/Provider/Provider'
+import { WmsMaterialStockDrawer } from '../Models/WmsMaterialStockDrawer'
+import { ElMessage } from 'element-plus'
+import isEqual from 'lodash/isEqual'
+import { ConfirmBox } from '@/components/ConfirmBox/ConfirmBox'
+import { cloneDeep } from 'lodash'
+
+export const useWmsMaterialStockDetalQueryDrawer = (props: any, ctx?: any) => {
+ const wmsMaterialStockDetailDrawer = injectModel<WmsMaterialStockDrawer>(
+ 'WmsMaterialStockDrawer'
+ )
+ /**
+ * 鐢ㄦ潵瀵规瘮鐨勫垵濮嬪寲鏁版嵁
+ */
+ const initiateData: Ref<Record<string, any>> = ref({})
+ const formData = ref<Record<string, any>>({})
+ // ref
+ const formRef = ref()
+
+ const disabled = ref(false)
+
+ const current = computed(() => {
+ return props.row || null
+ })
+
+ const inputNumber = (attrs) => {
+ return (
+ <el-input-number
+ min="1"
+ step="1"
+ precision="0"
+ {...attrs}
+ ></el-input-number>
+ )
+ }
+
+ const datePickerRange = (attrs) => {
+ return (
+ <el-date-picker
+ type="daterange"
+ value-format="YYYY-MM-DD HH:mm:ss"
+ start-placeholder="寮�濮嬫棩鏈�"
+ end-placeholder="缁撴潫鏃ユ湡"
+ {...attrs}
+ ></el-date-picker>
+ )
+ }
+
+ const dateTimePickerRange = (attrs) => {
+ return (
+ <el-date-picker
+ type="datetimerange"
+ value-format="YYYY-MM-DD HH:mm:ss"
+ start-placeholder="寮�濮嬫棩鏈�"
+ end-placeholder="缁撴潫鏃ユ湡"
+ {...attrs}
+ ></el-date-picker>
+ )
+ }
+
+ const visible = computed({
+ get() {
+ return props.modelValue
+ },
+ set(val) {
+ ctx.emit('update:modelValue', val)
+ },
+ })
+ /**
+ * 楂樼骇鏌ヨ鐨刦orm瀛楁
+ */
+ const formItems = reactive([
+ // {
+ // label: '鐗╂枡ID',
+ // prop: 'materialId',
+ // el: 'input',
+ // //disabled: disabled,
+ // placeholder: '璇疯緭鍏ョ墿鏂橧D',
+ // },
+ {
+ label: '鐗╂枡鍚嶇О',
+ prop: 'materialName',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ョ墿鏂欏悕绉�',
+ },
+ // {
+ // label: '瀹瑰櫒缂栧彿',
+ // prop: 'containerNo',
+ // el: 'input',
+ // //disabled: disabled,
+ // placeholder: '璇疯緭鍏ュ鍣ㄧ紪鍙�',
+ // },
+ // {
+ // label: '瀹瑰櫒鐘舵��',
+ // prop: 'containerStatus',
+ // el: 'select',
+ // clearable: true,
+ // option: [],
+ // //disabled: disabled,
+ // placeholder: '璇疯緭鍏ュ鍣ㄧ姸鎬�',
+ // },
+ // {
+ // label: '瀹瑰櫒绫诲瀷',
+ // prop: 'containerType',
+ // el: 'select',
+ // clearable: true,
+ // option: [],
+ // //disabled: disabled,
+ // placeholder: '璇疯緭鍏ュ鍣ㄧ被鍨�',
+ // },
+ {
+ label: '鐗╂枡缂栧彿',
+ prop: 'materialNo',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ョ墿鏂欑紪鍙�',
+ },
+ {
+ label: '搴撳瓨鏁伴噺',
+ prop: 'stockNumber',
+ el: (props: any, { attrs }: SetupContext) => {
+ return h(inputNumber, {
+ ...props,
+ clearable: true,
+ ...attrs,
+ })
+ },
+ width: '100%',
+ step: 1,
+ precision: 0,
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ簱瀛樻暟閲�',
+ },
+ {
+ label: '鐗╂枡鎵规',
+ prop: 'materialBatch',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ョ墿鏂欐壒娆�',
+ },
+ // {
+ // label: '渚涘簲鍟嗙紪鍙�',
+ // prop: 'supplierCode',
+ // el: 'input',
+ // //disabled: disabled,
+ // placeholder: '璇疯緭鍏ヤ緵搴斿晢缂栧彿',
+ // },
+ {
+ label: '鍨嬪彿',
+ prop: 'materialModel',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ瀷鍙�',
+ },
+ {
+ label: '搴撲綅缂栧彿',
+ prop: 'placeNo',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ簱浣嶇紪鍙�',
+ },
+ {
+ label: '搴撲綅鐘舵��;',
+ prop: 'placeStatus',
+ el: 'select',
+ clearable: true,
+ option: [],
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ簱浣嶇姸鎬�;',
+ },
+ {
+ label: '搴撲綅绫诲瀷',
+ prop: 'storageTypeNo',
+ el: 'select',
+ clearable: false,
+ option: [],
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ簱浣嶇被鍨�',
+ },
+ {
+ label: '鍖哄煙缂栧彿',
+ prop: 'areaCode',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ尯鍩熺紪鍙�',
+ },
+ // {
+ // label: '搴撳尯鍚嶇О',
+ // prop: 'areaName',
+ // el: 'input',
+ // //disabled: disabled,
+ // placeholder: '璇疯緭鍏ュ簱鍖哄悕绉�',
+ // },
+ // {
+ // label: '妫�楠岀姸鎬�(1:鏈楠�,2:妫�楠岄�氳繃,3:妫�楠屼笉閫氳繃)',
+ // prop: 'checkStatus',
+ // el: 'select',
+ // clearable: true,
+ // option: [],
+ // //disabled: disabled,
+ // placeholder: '璇疯緭鍏ユ楠岀姸鎬�(1:鏈楠�,2:妫�楠岄�氳繃,3:妫�楠屼笉閫氳繃)',
+ // },
+ {
+ label: '鏄惁閿佸畾',
+ prop: 'isLock',
+ el: 'select',
+ clearable: true,
+ option: [],
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ユ槸鍚﹂攣瀹�',
+ },
+ // {
+ // label: '鏄惁绌烘墭(2:鍚�,1:鏄�)',
+ // prop: 'emptyContainer',
+ // el: 'select',
+ // clearable: true,
+ // option: [],
+ // //disabled: disabled,
+ // placeholder: '璇疯緭鍏ユ槸鍚︾┖鎵�(2:鍚�,1:鏄�)',
+ // },
+ {
+ label: '鍏ュ簱鏃堕棿',
+ prop: 'inStockTime',
+ el: (props: any, { attrs }: SetupContext) => {
+ return h(dateTimePickerRange, {
+ ...props,
+ clearable: true,
+ ...attrs,
+ })
+ },
+ width: '100%',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ叆搴撴椂闂�',
+ },
+ // {
+ // label: '鍐椾綑瀛楁1 - 棰勭暀鎵╁睍鐢ㄩ��',
+ // prop: 'redundantField1',
+ // el: 'input',
+ // //disabled: disabled,
+ // placeholder: '璇疯緭鍏ュ啑浣欏瓧娈�1 - 棰勭暀鎵╁睍鐢ㄩ��',
+ // },
+ // {
+ // label: '鍐椾綑瀛楁2 - 棰勭暀鎵╁睍鐢ㄩ��',
+ // prop: 'redundantField2',
+ // el: 'input',
+ // //disabled: disabled,
+ // placeholder: '璇疯緭鍏ュ啑浣欏瓧娈�2 - 棰勭暀鎵╁睍鐢ㄩ��',
+ // },
+ {
+ label: '鍒涘缓鏃堕棿',
+ prop: 'creationTime',
+ el: (props: any, { attrs }: SetupContext) => {
+ return h(dateTimePickerRange, {
+ ...props,
+ clearable: true,
+ ...attrs,
+ })
+ },
+ width: '100%',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏�',
+ },
+ {
+ label: '澶囨敞',
+ prop: 'remark',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ娉�',
+ },
+ ])
+ /**
+ * 鏍¢獙鏄惁鏈夋暟鎹彉鍖�
+ */
+ const checkIsEqualObject = () => {
+ const data = {
+ formData: formData.value,
+ }
+ const check = isEqual(initiateData.value, data)
+ return check
+ }
+ const commonGetFormData = () => {
+ const data = {
+ materialId: formData.value.materialId || '',
+ materialName: formData.value.materialName || '',
+ containerNo: formData.value.containerNo || '',
+ containerStatus: formData.value.containerStatus || '',
+ containerType: formData.value.containerType || '',
+ materialNo: formData.value.materialNo || '',
+ stockNumber: formData.value.stockNumber || '',
+ materialBatch: formData.value.materialBatch || '',
+ supplierCode: formData.value.supplierCode || '',
+ materialModel: formData.value.materialModel || '',
+ placeNo: formData.value.placeNo || '',
+ placeStatus: formData.value.placeStatus || '',
+ storageTypeNo: formData.value.storageTypeNo || 1,
+ areaCode: formData.value.areaCode || '',
+ areaName: formData.value.areaName || '',
+ checkStatus: formData.value.checkStatus || '',
+ isLock: formData.value.isLock || '',
+ emptyContainer: formData.value.emptyContainer || '',
+ inStockTime: formData.value.inStockTime || '',
+ remark: formData.value.remark || '',
+ redundantField1: formData.value.redundantField1 || '',
+ redundantField2: formData.value.redundantField2 || '',
+ redundantField3: formData.value.redundantField3 || '',
+ creationTime: formData.value.creationTime || '',
+ lastModificationTime: formData.value.lastModificationTime || '',
+ }
+ return data
+ }
+ const onClose = (done: () => void) => {
+ if (visible.value) {
+ visible.value = false
+ const data = commonGetFormData()
+ ctx.emit('close', data)
+ }
+ }
+ /**
+ * 纭鏌ヨ
+ */
+ const onConfirmQuery = async () => {
+ const data = commonGetFormData()
+ ctx.emit('confirmQuery', data)
+ }
+ /**
+ * 閲嶇疆鏌ヨ
+ */
+ const onReset = async () => {
+ formData.value = {}
+ formData.value.materialId = ''
+ formData.value.materialName = ''
+ formData.value.containerNo = ''
+ formData.value.containerStatus = ''
+ formData.value.containerType = ''
+ formData.value.materialNo = ''
+ formData.value.stockNumber = ''
+ formData.value.materialBatch = ''
+ formData.value.supplierCode = ''
+ formData.value.materialModel = ''
+ formData.value.placeNo = ''
+ formData.value.placeStatus = ''
+ formData.value.storageTypeNo = 1
+ formData.value.areaCode = ''
+ formData.value.areaName = ''
+ formData.value.checkStatus = ''
+ formData.value.isLock = ''
+ formData.value.emptyContainer = ''
+ formData.value.inStockTime = ''
+ formData.value.remark = ''
+ formData.value.redundantField1 = ''
+ formData.value.redundantField2 = ''
+ formData.value.redundantField3 = ''
+ formData.value.deletionTime = ''
+ //鍚戠埗缁勪欢鍙戦�佽嚜瀹氫箟浜嬩欢
+ ctx.emit('restQuery')
+ }
+
+ const updateCheckData = () => {
+ initiateData.value = {
+ formData: {
+ ...formData.value,
+ },
+ }
+ }
+ 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 commonQueryEnumForFrom = async () => {
+ const containerStatusEnumEnum =
+ await wmsMaterialStockDetailDrawer.getWmsEnumData({
+ EnumName: 'ContainerStatusEnum',
+ })
+ updateFormItemOptions('containerStatus', containerStatusEnumEnum)
+ const containerTypeEnumEnum =
+ await wmsMaterialStockDetailDrawer.getWmsEnumData({
+ EnumName: 'ContainerTypeEnum',
+ })
+ updateFormItemOptions('containerType', containerTypeEnumEnum)
+ const placeStatusEnumEnum =
+ await wmsMaterialStockDetailDrawer.getWmsEnumData({
+ EnumName: 'PlaceStatusEnum',
+ })
+ updateFormItemOptions('placeStatus', placeStatusEnumEnum)
+ const placeTypeEnumEnum = await wmsMaterialStockDetailDrawer.getWmsEnumData(
+ {
+ EnumName: 'PlaceTypeEnum',
+ }
+ )
+ updateFormItemOptions('storageTypeNo', placeTypeEnumEnum)
+ const materialCheckStatusEnumEnum =
+ await wmsMaterialStockDetailDrawer.getWmsEnumData({
+ EnumName: 'MaterialCheckStatusEnum',
+ })
+ updateFormItemOptions('checkStatus', materialCheckStatusEnumEnum)
+ const yesNoEnumEnum = await wmsMaterialStockDetailDrawer.getWmsEnumData({
+ EnumName: 'YesNoEnum',
+ })
+ updateFormItemOptions('isLock', yesNoEnumEnum)
+ const yesNoEnumEnum2 = await wmsMaterialStockDetailDrawer.getWmsEnumData({
+ EnumName: 'YesNoEnum',
+ })
+ updateFormItemOptions('emptyContainer', yesNoEnumEnum2)
+ }
+ commonQueryEnumForFrom()
+ /**
+ * 寮圭獥鎵撳紑鑾峰彇璇︽儏
+ */
+ const onOpen = async () => {
+ disabled.value = false
+ updateCheckData()
+ }
+
+ watch(() => current.value, onOpen)
+
+ return {
+ formItems,
+ formData,
+ visible,
+ formRef,
+ onOpen,
+ onClose,
+ onConfirmQuery,
+ onReset,
+ }
+}
diff --git a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Controllers/WmsMaterialStockQueryDrawer.tsx b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Controllers/WmsMaterialStockQueryDrawer.tsx
new file mode 100644
index 0000000..23d375b
--- /dev/null
+++ b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Controllers/WmsMaterialStockQueryDrawer.tsx
@@ -0,0 +1,457 @@
+import {
+ ref,
+ onMounted,
+ reactive,
+ computed,
+ Ref,
+ watch,
+ SetupContext,
+ h,
+} from 'vue'
+import { injectModel } from '@/libs/Provider/Provider'
+import { WmsMaterialStockDrawer } from '../Models/WmsMaterialStockDrawer'
+import { ElMessage } from 'element-plus'
+import isEqual from 'lodash/isEqual'
+import { ConfirmBox } from '@/components/ConfirmBox/ConfirmBox'
+import { cloneDeep } from 'lodash'
+
+export const useWmsMaterialStockQueryDrawer = (props: any, ctx?: any) => {
+ const wmsMaterialStockDrawer = injectModel<WmsMaterialStockDrawer>(
+ 'WmsMaterialStockDrawer'
+ )
+ /**
+ * 鐢ㄦ潵瀵规瘮鐨勫垵濮嬪寲鏁版嵁
+ */
+ const initiateData: Ref<Record<string, any>> = ref({})
+ const formData = ref<Record<string, any>>({})
+ // ref
+ const formRef = ref()
+
+ const disabled = ref(false)
+
+ const current = computed(() => {
+ return props.row || null
+ })
+
+ const inputNumber = (attrs) => {
+ return (
+ <el-input-number
+ min="1"
+ step="1"
+ precision="0"
+ {...attrs}
+ ></el-input-number>
+ )
+ }
+
+ const datePickerRange = (attrs) => {
+ return (
+ <el-date-picker
+ type="daterange"
+ value-format="YYYY-MM-DD HH:mm:ss"
+ start-placeholder="寮�濮嬫棩鏈�"
+ end-placeholder="缁撴潫鏃ユ湡"
+ {...attrs}
+ ></el-date-picker>
+ )
+ }
+
+ const dateTimePickerRange = (attrs) => {
+ return (
+ <el-date-picker
+ type="datetimerange"
+ value-format="YYYY-MM-DD HH:mm:ss"
+ start-placeholder="寮�濮嬫棩鏈�"
+ end-placeholder="缁撴潫鏃ユ湡"
+ {...attrs}
+ ></el-date-picker>
+ )
+ }
+
+ const visible = computed({
+ get() {
+ return props.modelValue
+ },
+ set(val) {
+ ctx.emit('update:modelValue', val)
+ },
+ })
+ /**
+ * 楂樼骇鏌ヨ鐨刦orm瀛楁
+ */
+ const formItems = reactive([
+ {
+ label: '鐗╂枡鍚嶇О',
+ prop: 'materialName',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ョ墿鏂欏悕绉�',
+ },
+ // {
+ // label: '瀹瑰櫒缂栧彿',
+ // prop: 'containerNo',
+ // el: 'input',
+ // //disabled: disabled,
+ // placeholder: '璇疯緭鍏ュ鍣ㄧ紪鍙�',
+ // },
+ // {
+ // label: '瀹瑰櫒鐘舵��',
+ // prop: 'containerStatus',
+ // el: 'select',
+ // clearable: true,
+ // option: [],
+ // //disabled: disabled,
+ // placeholder: '璇疯緭鍏ュ鍣ㄧ姸鎬�',
+ // },
+ // {
+ // label: '瀹瑰櫒绫诲瀷',
+ // prop: 'containerType',
+ // el: 'select',
+ // clearable: true,
+ // option: [],
+ // //disabled: disabled,
+ // placeholder: '璇疯緭鍏ュ鍣ㄧ被鍨�',
+ // },
+ {
+ label: '鐗╂枡缂栧彿',
+ prop: 'materialNo',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ョ墿鏂欑紪鍙�',
+ },
+ // {
+ // label: '搴撳瓨鏁伴噺',
+ // prop: 'stockNumber',
+ // el: (props: any, { attrs }: SetupContext) => {
+ // return h(inputNumber, {
+ // ...props,
+ // clearable: true,
+ // ...attrs,
+ // })
+ // },
+ // width: '100%',
+ // step: 1,
+ // precision: 0,
+ // //disabled: disabled,
+ // placeholder: '璇疯緭鍏ュ簱瀛樻暟閲�',
+ // },
+ {
+ label: '鐗╂枡鎵规',
+ prop: 'materialBatch',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ョ墿鏂欐壒娆�',
+ },
+ // {
+ // label: '渚涘簲鍟嗙紪鍙�',
+ // prop: 'supplierCode',
+ // el: 'input',
+ // //disabled: disabled,
+ // placeholder: '璇疯緭鍏ヤ緵搴斿晢缂栧彿',
+ // },
+ {
+ label: '鍨嬪彿',
+ prop: 'materialModel',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ瀷鍙�',
+ },
+ {
+ label: '搴撲綅缂栧彿',
+ prop: 'placeNo',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ簱浣嶇紪鍙�',
+ },
+ {
+ label: '搴撲綅鐘舵��;',
+ prop: 'placeStatus',
+ el: 'select',
+ clearable: true,
+ option: [],
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ簱浣嶇姸鎬�;',
+ },
+ {
+ label: '搴撲綅绫诲瀷',
+ prop: 'storageTypeNo',
+ el: 'select',
+ clearable: true,
+ option: [],
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ簱浣嶇被鍨�',
+ },
+ {
+ label: '鍖哄煙缂栧彿',
+ prop: 'areaCode',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ尯鍩熺紪鍙�',
+ },
+ // {
+ // label: '搴撳尯鍚嶇О',
+ // prop: 'areaName',
+ // el: 'input',
+ // //disabled: disabled,
+ // placeholder: '璇疯緭鍏ュ簱鍖哄悕绉�',
+ // },
+ // {
+ // label: '妫�楠岀姸鎬�(1:鏈楠�,2:妫�楠岄�氳繃,3:妫�楠屼笉閫氳繃)',
+ // prop: 'checkStatus',
+ // el: 'select',
+ // clearable: true,
+ // option: [],
+ // //disabled: disabled,
+ // placeholder: '璇疯緭鍏ユ楠岀姸鎬�(1:鏈楠�,2:妫�楠岄�氳繃,3:妫�楠屼笉閫氳繃)',
+ // },
+ {
+ label: '鏄惁閿佸畾',
+ prop: 'isLock',
+ el: 'select',
+ clearable: true,
+ option: [],
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ユ槸鍚﹂攣瀹�',
+ },
+ // {
+ // label: '鏄惁绌烘墭(2:鍚�,1:鏄�)',
+ // prop: 'emptyContainer',
+ // el: 'select',
+ // clearable: true,
+ // option: [],
+ // //disabled: disabled,
+ // placeholder: '璇疯緭鍏ユ槸鍚︾┖鎵�(2:鍚�,1:鏄�)',
+ // },
+ {
+ label: '鍏ュ簱鏃堕棿',
+ prop: 'inStockTime',
+ el: (props: any, { attrs }: SetupContext) => {
+ return h(dateTimePickerRange, {
+ ...props,
+ clearable: true,
+ ...attrs,
+ })
+ },
+ width: '100%',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ叆搴撴椂闂�',
+ },
+ {
+ label: '澶囨敞',
+ prop: 'remark',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ娉�',
+ },
+ // {
+ // label: '鍐椾綑瀛楁1 - 棰勭暀鎵╁睍鐢ㄩ��',
+ // prop: 'redundantField1',
+ // el: 'input',
+ // //disabled: disabled,
+ // placeholder: '璇疯緭鍏ュ啑浣欏瓧娈�1 - 棰勭暀鎵╁睍鐢ㄩ��',
+ // },
+ // {
+ // label: '鍐椾綑瀛楁2 - 棰勭暀鎵╁睍鐢ㄩ��',
+ // prop: 'redundantField2',
+ // el: 'input',
+ // //disabled: disabled,
+ // placeholder: '璇疯緭鍏ュ啑浣欏瓧娈�2 - 棰勭暀鎵╁睍鐢ㄩ��',
+ // },
+ // {
+ // label: '鍐椾綑瀛楁3 - 棰勭暀鎵╁睍鐢ㄩ��',
+ // prop: 'redundantField3',
+ // el: 'input',
+ // //disabled: disabled,
+ // placeholder: '璇疯緭鍏ュ啑浣欏瓧娈�3 - 棰勭暀鎵╁睍鐢ㄩ��',
+ // },
+ // {
+ // label: '鍒涘缓鏃堕棿',
+ // prop: 'creationTime',
+ // el: (props: any, { attrs }: SetupContext) => {
+ // return h(dateTimePickerRange, {
+ // ...props,
+ // clearable: true,
+ // ...attrs,
+ // })
+ // },
+ // width: '100%',
+ // //disabled: disabled,
+ // placeholder: '璇疯緭鍏�',
+ // },
+ // {
+ // label: '',
+ // prop: 'lastModificationTime',
+ // el: (props: any, { attrs }: SetupContext) => {
+ // return h(dateTimePickerRange, {
+ // ...props,
+ // clearable: true,
+ // ...attrs,
+ // })
+ // },
+ // width: '100%',
+ // //disabled: disabled,
+ // placeholder: '璇疯緭鍏�',
+ // },
+ ])
+ /**
+ * 鏍¢獙鏄惁鏈夋暟鎹彉鍖�
+ */
+ const checkIsEqualObject = () => {
+ const data = {
+ formData: formData.value,
+ }
+ const check = isEqual(initiateData.value, data)
+ return check
+ }
+ const commonGetFormData = () => {
+ const data = {
+ materialId: formData.value.materialId || '',
+ materialName: formData.value.materialName || '',
+ containerNo: formData.value.containerNo || '',
+ containerStatus: formData.value.containerStatus || '',
+ containerType: formData.value.containerType || '',
+ materialNo: formData.value.materialNo || '',
+ stockNumber: formData.value.stockNumber || '',
+ materialBatch: formData.value.materialBatch || '',
+ supplierCode: formData.value.supplierCode || '',
+ materialModel: formData.value.materialModel || '',
+ placeNo: formData.value.placeNo || '',
+ placeStatus: formData.value.placeStatus || '',
+ storageTypeNo: formData.value.storageTypeNo || 1,
+ areaCode: formData.value.areaCode || '',
+ areaName: formData.value.areaName || '',
+ checkStatus: formData.value.checkStatus || '',
+ isLock: formData.value.isLock || '',
+ emptyContainer: formData.value.emptyContainer || '',
+ inStockTime: formData.value.inStockTime || '',
+ remark: formData.value.remark || '',
+ redundantField1: formData.value.redundantField1 || '',
+ redundantField2: formData.value.redundantField2 || '',
+ redundantField3: formData.value.redundantField3 || '',
+ creationTime: formData.value.creationTime || '',
+ lastModificationTime: formData.value.lastModificationTime || '',
+ }
+ return data
+ }
+ const onClose = (done: () => void) => {
+ if (visible.value) {
+ visible.value = false
+ const data = commonGetFormData()
+ ctx.emit('close', data)
+ }
+ }
+ /**
+ * 纭鏌ヨ
+ */
+ const onConfirmQuery = async () => {
+ const data = commonGetFormData()
+ ctx.emit('confirmQuery', data)
+ }
+ /**
+ * 閲嶇疆鏌ヨ
+ */
+ const onReset = async () => {
+ formData.value = {}
+ formData.value.materialId = ''
+ formData.value.materialName = ''
+ formData.value.containerNo = ''
+ formData.value.containerStatus = ''
+ formData.value.containerType = ''
+ formData.value.materialNo = ''
+ formData.value.stockNumber = ''
+ formData.value.materialBatch = ''
+ formData.value.supplierCode = ''
+ formData.value.materialModel = ''
+ formData.value.placeNo = ''
+ formData.value.placeStatus = ''
+ formData.value.storageTypeNo = ''
+ formData.value.areaCode = ''
+ formData.value.areaName = ''
+ formData.value.checkStatus = ''
+ formData.value.isLock = ''
+ formData.value.emptyContainer = ''
+ formData.value.inStockTime = ''
+ formData.value.remark = ''
+ formData.value.redundantField1 = ''
+ formData.value.redundantField2 = ''
+ formData.value.redundantField3 = ''
+ formData.value.deletionTime = ''
+ //鍚戠埗缁勪欢鍙戦�佽嚜瀹氫箟浜嬩欢
+ ctx.emit('restQuery')
+ }
+
+ const updateCheckData = () => {
+ initiateData.value = {
+ formData: {
+ ...formData.value,
+ },
+ }
+ }
+ 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 commonQueryEnumForFrom = async () => {
+ const containerStatusEnumEnum = await wmsMaterialStockDrawer.getWmsEnumData(
+ {
+ EnumName: 'ContainerStatusEnum',
+ }
+ )
+ updateFormItemOptions('containerStatus', containerStatusEnumEnum)
+ const containerTypeEnumEnum = await wmsMaterialStockDrawer.getWmsEnumData({
+ EnumName: 'ContainerTypeEnum',
+ })
+ updateFormItemOptions('containerType', containerTypeEnumEnum)
+ const placeStatusEnumEnum = await wmsMaterialStockDrawer.getWmsEnumData({
+ EnumName: 'PlaceStatusEnum',
+ })
+ updateFormItemOptions('placeStatus', placeStatusEnumEnum)
+ const placeTypeEnumEnum = await wmsMaterialStockDrawer.getWmsEnumData({
+ EnumName: 'PlaceTypeEnum',
+ })
+ updateFormItemOptions('storageTypeNo', placeTypeEnumEnum)
+ const materialCheckStatusEnumEnum =
+ await wmsMaterialStockDrawer.getWmsEnumData({
+ EnumName: 'MaterialCheckStatusEnum',
+ })
+ updateFormItemOptions('checkStatus', materialCheckStatusEnumEnum)
+ const yesNoEnumEnum = await wmsMaterialStockDrawer.getWmsEnumData({
+ EnumName: 'YesNoEnum',
+ })
+ updateFormItemOptions('isLock', yesNoEnumEnum)
+ const yesNoEnumEnum2 = await wmsMaterialStockDrawer.getWmsEnumData({
+ EnumName: 'YesNoEnum',
+ })
+ updateFormItemOptions('emptyContainer', yesNoEnumEnum2)
+ }
+ commonQueryEnumForFrom()
+ formData.value.storageTypeNo = 1
+ /**
+ * 寮圭獥鎵撳紑鑾峰彇璇︽儏
+ */
+ const onOpen = async () => {
+ disabled.value = false
+ updateCheckData()
+ }
+
+ watch(() => current.value, onOpen)
+
+ return {
+ formItems,
+ formData,
+ visible,
+ formRef,
+ onOpen,
+ onClose,
+ onConfirmQuery,
+ onReset,
+ }
+}
diff --git a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/Service/WmsMaterialStockDetailQueryDrawer.ts b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/Service/WmsMaterialStockDetailQueryDrawer.ts
new file mode 100644
index 0000000..d3cfa4a
--- /dev/null
+++ b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/Service/WmsMaterialStockDetailQueryDrawer.ts
@@ -0,0 +1,35 @@
+import { Base } from '@/libs/Base/Base'
+const request = Base.request
+
+/**
+ * 娣诲姞
+ * @returns
+ */
+export const addWmsMaterialStock = (data: any) => {
+ return request.post('/api/v1/HIAWms/wmsMaterialStockDetail', data)
+}
+
+/**
+ * 鑾峰彇璇︽儏
+ * @returns
+ */
+export const getWmsMaterialStock = (id: string) => {
+ return request.get(`/api/v1/HIAWms/wmsMaterialStockDetail/${id}`)
+}
+
+/**
+ * 鏇存柊
+ * @returns
+ */
+export const updateWmsMaterialStock = (id: string, data: Record<string, any>) => {
+ return request.put(`/api/v1/HIAWms/wmsMaterialStockDetail/${id}`, data)
+}
+
+/**
+ * 鑾峰彇鏋氫妇
+ * @returns
+ */
+export const getWmsEnumData = (data: any) => {
+ return request.post('/api/v1/WareCmsUtilityApi/WmsEnum', data)
+}
+
diff --git a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/Service/WmsMaterialStockDrawer.ts b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/Service/WmsMaterialStockDrawer.ts
index 85545dd..54602f0 100644
--- a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/Service/WmsMaterialStockDrawer.ts
+++ b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/Service/WmsMaterialStockDrawer.ts
@@ -27,3 +27,7 @@
) => {
return request.put(`/api/v1/HIAWms/wmsMaterialStock/${id}`, data)
}
+
+export const getWmsEnumData = (data: Record<string, any>) => {
+ return request.post('/api/v1/HIAWms/WmsEnum', data)
+}
diff --git a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/Service/WmsMaterialStockQueryDrawer.ts b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/Service/WmsMaterialStockQueryDrawer.ts
new file mode 100644
index 0000000..d3cfa4a
--- /dev/null
+++ b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/Service/WmsMaterialStockQueryDrawer.ts
@@ -0,0 +1,35 @@
+import { Base } from '@/libs/Base/Base'
+const request = Base.request
+
+/**
+ * 娣诲姞
+ * @returns
+ */
+export const addWmsMaterialStock = (data: any) => {
+ return request.post('/api/v1/HIAWms/wmsMaterialStockDetail', data)
+}
+
+/**
+ * 鑾峰彇璇︽儏
+ * @returns
+ */
+export const getWmsMaterialStock = (id: string) => {
+ return request.get(`/api/v1/HIAWms/wmsMaterialStockDetail/${id}`)
+}
+
+/**
+ * 鏇存柊
+ * @returns
+ */
+export const updateWmsMaterialStock = (id: string, data: Record<string, any>) => {
+ return request.put(`/api/v1/HIAWms/wmsMaterialStockDetail/${id}`, data)
+}
+
+/**
+ * 鑾峰彇鏋氫妇
+ * @returns
+ */
+export const getWmsEnumData = (data: any) => {
+ return request.post('/api/v1/WareCmsUtilityApi/WmsEnum', data)
+}
+
diff --git a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/WmsMaterialStockDetailQueryDrawer.ts b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/WmsMaterialStockDetailQueryDrawer.ts
new file mode 100644
index 0000000..821f34f
--- /dev/null
+++ b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/WmsMaterialStockDetailQueryDrawer.ts
@@ -0,0 +1,44 @@
+import { Base } from '@/libs/Base/Base'
+import {
+ addWmsMaterialStock,
+ getWmsMaterialStock,
+ updateWmsMaterialStock,
+ getWmsEnumData,
+} from './Service/WmsMaterialStockDetailQueryDrawer'
+import { useGlobalState } from '@/libs/Store/Store'
+
+export class WmsMaterialStockQueryDrawer extends Base<{ [key: string]: any }> {
+ constructor() {
+ super({
+ data: [],
+ wmsMaterialStockDetail: {},
+ })
+ }
+
+ /**
+ * 娣诲姞
+ * @param data
+ */
+ async addWmsMaterialStock(data: Record<string, any>) {
+ return addWmsMaterialStock(data)
+ }
+ /**
+ * 鏇存柊
+ * @param data
+ */
+ async updateWmsMaterialStock(id: string, data: Record<string, any>) {
+ return updateWmsMaterialStock(id, data)
+ }
+
+ /**
+ * 鑾峰彇璇︽儏
+ */
+ async getWmsMaterialStockDetail(current: any, id?: string) {
+ return getWmsMaterialStock(id || current?.id)
+ }
+
+ // 鑾峰彇鏋氫妇鍊�
+ async getWmsEnumData(data: Record<string, any>) {
+ return getWmsEnumData(data)
+ }
+}
diff --git a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/WmsMaterialStockDrawer.ts b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/WmsMaterialStockDrawer.ts
index 5ebbc0d..3fe7081 100644
--- a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/WmsMaterialStockDrawer.ts
+++ b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/WmsMaterialStockDrawer.ts
@@ -3,6 +3,7 @@
addWmsMaterialStock,
getWmsMaterialStock,
updateWmsMaterialStock,
+ getWmsEnumData,
} from './Service/WmsMaterialStockDrawer'
import { useGlobalState } from '@/libs/Store/Store'
@@ -35,4 +36,9 @@
async getWmsMaterialStockDetail(current: any, materialNo?: string) {
return getWmsMaterialStock(current?.materialNo)
}
+
+ // 鑾峰彇鏋氫妇鍊�
+ async getWmsEnumData(data: Record<string, any>) {
+ return getWmsEnumData(data)
+ }
}
diff --git a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/WmsMaterialStockQueryDrawer.tsx b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/WmsMaterialStockQueryDrawer.tsx
new file mode 100644
index 0000000..821f34f
--- /dev/null
+++ b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Models/WmsMaterialStockQueryDrawer.tsx
@@ -0,0 +1,44 @@
+import { Base } from '@/libs/Base/Base'
+import {
+ addWmsMaterialStock,
+ getWmsMaterialStock,
+ updateWmsMaterialStock,
+ getWmsEnumData,
+} from './Service/WmsMaterialStockDetailQueryDrawer'
+import { useGlobalState } from '@/libs/Store/Store'
+
+export class WmsMaterialStockQueryDrawer extends Base<{ [key: string]: any }> {
+ constructor() {
+ super({
+ data: [],
+ wmsMaterialStockDetail: {},
+ })
+ }
+
+ /**
+ * 娣诲姞
+ * @param data
+ */
+ async addWmsMaterialStock(data: Record<string, any>) {
+ return addWmsMaterialStock(data)
+ }
+ /**
+ * 鏇存柊
+ * @param data
+ */
+ async updateWmsMaterialStock(id: string, data: Record<string, any>) {
+ return updateWmsMaterialStock(id, data)
+ }
+
+ /**
+ * 鑾峰彇璇︽儏
+ */
+ async getWmsMaterialStockDetail(current: any, id?: string) {
+ return getWmsMaterialStock(id || current?.id)
+ }
+
+ // 鑾峰彇鏋氫妇鍊�
+ async getWmsEnumData(data: Record<string, any>) {
+ return getWmsEnumData(data)
+ }
+}
diff --git a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/Dialog/WmsMaterialStockDetailQuery/WmsMaterialStockDetailQueryDrawer.module.scss b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/Dialog/WmsMaterialStockDetailQuery/WmsMaterialStockDetailQueryDrawer.module.scss
new file mode 100644
index 0000000..177adca
--- /dev/null
+++ b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/Dialog/WmsMaterialStockDetailQuery/WmsMaterialStockDetailQueryDrawer.module.scss
@@ -0,0 +1,3 @@
+.drawer {
+ width: 800px;
+}
diff --git a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/Dialog/WmsMaterialStockDetailQuery/WmsMaterialStockDetailQueryDrawer.tsx b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/Dialog/WmsMaterialStockDetailQuery/WmsMaterialStockDetailQueryDrawer.tsx
new file mode 100644
index 0000000..b5a331c
--- /dev/null
+++ b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/Dialog/WmsMaterialStockDetailQuery/WmsMaterialStockDetailQueryDrawer.tsx
@@ -0,0 +1,71 @@
+/*
+ * 鐗╂枡鍩虹淇℃伅鏌ヨ寮瑰嚭妗�
+ */
+import { SetupContext, defineComponent } from 'vue'
+import BaseQueryDrawer from '@/components/BaseQueryDrawer/BaseQueryDrawer'
+import styles from './WmsMaterialStockDetailQueryDrawer.module.scss'
+import { useWmsMaterialStockDetalQueryDrawer } from '../../../../Controllers/WmsMaterialStockDetailQueryDrawer.tsx'
+import DyForm from '@/components/DyForm/DyForm'
+
+// @ts-ignore
+export default defineComponent<{
+ [key: string]: any
+}>({
+ name: '寮圭獥',
+ props: {
+ //鏋氫妇绫诲瀷瀛楀吀
+ enumListDict: {
+ type: Array as () => Array<{ key: string; value: object }>, // 瀹氫箟鏁扮粍鍏冪礌绫诲瀷
+ default: () => [], // 榛樿鍊�
+ },
+ modelValue: {
+ type: Boolean,
+ default: false,
+ },
+ title: {
+ type: String,
+ default: '',
+ },
+ row: {
+ type: Object,
+ },
+ sort: {
+ type: Number,
+ default: 0,
+ },
+ },
+ emits: ['update:modelValue', 'close', 'submit', 'confirmquery1'],
+ setup(props: Record<string, any>, ctx: SetupContext) {
+ const {
+ onClose,
+ onConfirmQuery,
+ onOpen,
+ onReset,
+ formRef,
+ visible,
+ formItems,
+ formData,
+ } = useWmsMaterialStockDetalQueryDrawer(props, ctx)
+ return () => (
+ <BaseQueryDrawer
+ class={styles.drawer}
+ size="800px"
+ title={props.title || '楂樼骇鏌ヨ'}
+ v-model={visible.value}
+ close-on-click-modal={true}
+ onReset={onReset}
+ onConfirmQueryForBase={onConfirmQuery}
+ onOpen={onOpen}
+ before-close={onClose}
+ onClose={onClose}
+ >
+ <DyForm
+ ref={formRef}
+ formData={formData.value}
+ labelWidth="106px"
+ formItemProps={formItems}
+ ></DyForm>
+ </BaseQueryDrawer>
+ )
+ },
+})
diff --git a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/Dialog/WmsMaterialStockQuery/WmsMaterialStockQueryDrawer.module.scss b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/Dialog/WmsMaterialStockQuery/WmsMaterialStockQueryDrawer.module.scss
new file mode 100644
index 0000000..177adca
--- /dev/null
+++ b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/Dialog/WmsMaterialStockQuery/WmsMaterialStockQueryDrawer.module.scss
@@ -0,0 +1,3 @@
+.drawer {
+ width: 800px;
+}
diff --git a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/Dialog/WmsMaterialStockQuery/WmsMaterialStockQueryDrawer.tsx b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/Dialog/WmsMaterialStockQuery/WmsMaterialStockQueryDrawer.tsx
new file mode 100644
index 0000000..e6f47b8
--- /dev/null
+++ b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/Dialog/WmsMaterialStockQuery/WmsMaterialStockQueryDrawer.tsx
@@ -0,0 +1,71 @@
+/*
+ * 鐗╂枡鍩虹淇℃伅鏌ヨ寮瑰嚭妗�
+ */
+import { SetupContext, defineComponent } from 'vue'
+import BaseQueryDrawer from '@/components/BaseQueryDrawer/BaseQueryDrawer'
+import styles from './WmsMaterialStockQueryDrawer.module.scss'
+import { useWmsMaterialStockQueryDrawer } from '../../../../Controllers/WmsMaterialStockQueryDrawer.tsx'
+import DyForm from '@/components/DyForm/DyForm'
+
+// @ts-ignore
+export default defineComponent<{
+ [key: string]: any
+}>({
+ name: '寮圭獥',
+ props: {
+ //鏋氫妇绫诲瀷瀛楀吀
+ enumListDict: {
+ type: Array as () => Array<{ key: string; value: object }>, // 瀹氫箟鏁扮粍鍏冪礌绫诲瀷
+ default: () => [], // 榛樿鍊�
+ },
+ modelValue: {
+ type: Boolean,
+ default: false,
+ },
+ title: {
+ type: String,
+ default: '',
+ },
+ row: {
+ type: Object,
+ },
+ sort: {
+ type: Number,
+ default: 0,
+ },
+ },
+ emits: ['update:modelValue', 'close', 'submit', 'confirmquery1'],
+ setup(props: Record<string, any>, ctx: SetupContext) {
+ const {
+ onClose,
+ onConfirmQuery,
+ onOpen,
+ onReset,
+ formRef,
+ visible,
+ formItems,
+ formData,
+ } = useWmsMaterialStockQueryDrawer(props, ctx)
+ return () => (
+ <BaseQueryDrawer
+ class={styles.drawer}
+ size="800px"
+ title={props.title || '楂樼骇鏌ヨ'}
+ v-model={visible.value}
+ close-on-click-modal={true}
+ onReset={onReset}
+ onConfirmQueryForBase={onConfirmQuery}
+ onOpen={onOpen}
+ before-close={onClose}
+ onClose={onClose}
+ >
+ <DyForm
+ ref={formRef}
+ formData={formData.value}
+ labelWidth="106px"
+ formItemProps={formItems}
+ ></DyForm>
+ </BaseQueryDrawer>
+ )
+ },
+})
diff --git a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStock/Config.ts b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStock/Config.ts
index 035b581..7145af1 100644
--- a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStock/Config.ts
+++ b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStock/Config.ts
@@ -20,18 +20,18 @@
field: 'placeStatusDesc',
title: '搴撲綅鐘舵��',
},
- {
- field: 'containerNo',
- title: '瀹瑰櫒缂栧彿',
- },
+ // {
+ // field: 'containerNo',
+ // title: '瀹瑰櫒缂栧彿',
+ // },
{
field: 'stockNumber',
title: '搴撳瓨鏁伴噺',
},
- {
- field: 'materialBatch',
- title: '鐗╂枡鎵规',
- },
+ // {
+ // field: 'materialBatch',
+ // title: '鐗╂枡鎵规',
+ // },
{
field: 'materialModel',
title: '鍨嬪彿',
@@ -40,15 +40,15 @@
field: 'areaName',
title: '鎵�灞炲簱鍖�',
},
- {
- field: 'checkStatusDesc',
- title: '妫�楠岀姸鎬�',
- },
- {
- field: 'inStockTime',
- title: '鍏ュ簱鏃堕棿',
- width: 180,
- },
+ // {
+ // field: 'checkStatusDesc',
+ // title: '妫�楠岀姸鎬�',
+ // },
+ // {
+ // field: 'inStockTime',
+ // title: '鍏ュ簱鏃堕棿',
+ // width: 180,
+ // },
{
field: 'isLockDesc',
title: '閿佸畾鐘舵��',
diff --git a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStock/WmsMaterialStock.module.scss b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStock/WmsMaterialStock.module.scss
index 365acbf..ac415d3 100644
--- a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStock/WmsMaterialStock.module.scss
+++ b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStock/WmsMaterialStock.module.scss
@@ -1,113 +1,113 @@
-.wmsMaterialStockContent {
- width: 100%;
- height: 80%;
-
- .wmsMaterialStockList {
- width: 100%;
- height: calc(100% - 70px);
- }
- .headerContent {
- display: flex;
- justify-content: space-between;
- align-items: center;
- height: 43px;
- }
- .header {
- margin-bottom: 12px;
- display: flex;
- justify-content: flex-start;
- align-items: center;
- }
-}
-
-.tagBox {
- width: auto;
- min-width: 80px;
- height: 24px;
- background: #ffffff;
- border-radius: 19px 19px 19px 19px;
- opacity: 1;
- border: 1px dashed #bcc4cc;
- width: 50px;
- height: 20px;
- font-size: 14px;
- font-family: PingFang SC, PingFang SC;
- font-weight: 400;
- color: #5a84ff;
- display: flex;
- justify-content: center;
- align-items: center;
- // cursor: pointer;
-}
-
-.group {
- display: flex;
- justify-content: space-between;
- align-items: center;
-}
-
-.groupTable {
- width: 100%;
-}
-
-.overBox {
- width: 100%;
- height: calc(100% - 20px);
- overflow: auto;
- :global(.cs-collapse-item__header) {
- background-color: #f1f1f1;
- padding: 0 20px;
- height: 35px;
- font-size: 16px;
- font-family: PingFang SC, PingFang SC;
- font-weight: 500;
- }
- :global(.cs-collapse-item__content) {
- padding-bottom: 0px;
- }
-}
-.groupHeader {
- width: 100%;
- height: 30px;
- background: #ccc;
-}
-
-.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%;
- }
-}
\ No newline at end of file
+.wmsMaterialStockDetailContent {
+ width: 100%;
+ height: 100%;
+
+ .wmsMaterialStockDetailList {
+ width: 100%;
+ height: calc(100% - 70px);
+ }
+ .headerContent {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ height: 43px;
+ }
+ .header {
+ margin-bottom: 12px;
+ display: flex;
+ justify-content: flex-end;
+ align-items: center;
+ }
+}
+
+.tagBox {
+ width: auto;
+ min-width: 80px;
+ height: 24px;
+ background: #ffffff;
+ border-radius: 19px 19px 19px 19px;
+ opacity: 1;
+ border: 1px dashed #bcc4cc;
+ width: 50px;
+ height: 20px;
+ font-size: 14px;
+ font-family: PingFang SC, PingFang SC;
+ font-weight: 400;
+ color: #5a84ff;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ // cursor: pointer;
+}
+
+.group {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+}
+
+.groupTable {
+ width: 100%;
+}
+
+.overBox {
+ width: 100%;
+ height: calc(100% - 20px);
+ overflow: auto;
+ :global(.cs-collapse-item__header) {
+ background-color: #f1f1f1;
+ padding: 0 20px;
+ height: 35px;
+ font-size: 16px;
+ font-family: PingFang SC, PingFang SC;
+ font-weight: 500;
+ }
+ :global(.cs-collapse-item__content) {
+ padding-bottom: 0px;
+ }
+}
+.groupHeader {
+ width: 100%;
+ height: 30px;
+ background: #ccc;
+}
+
+.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%;
+ }
+}
diff --git a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStock/WmsMaterialStock.tsx b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStock/WmsMaterialStock.tsx
index ca0e0ed..977dd17 100644
--- a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStock/WmsMaterialStock.tsx
+++ b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStock/WmsMaterialStock.tsx
@@ -5,20 +5,22 @@
import { useWmsMaterialStock } from '../../../Controllers/WmsMaterialStock'
import IconButton from '@/components/IconButton/IconButton'
import WmsMaterialStockDrawer from '../Dialog/WmsMaterialStockDrawer/WmsMaterialStockDrawer'
+import WmsMaterialStockQueryDrawer from '../Dialog/WmsMaterialStockQuery/WmsMaterialStockQueryDrawer'
import Search from '@/components/Search/Search'
import { columns } from './Config'
import TdButton from '@/components/TdButton/TdButton'
import { vPermission } from '@/libs/Permission/Permission'
import dayjs from 'dayjs'
+import { getWmsEnumData } from '@/widgets/WmsTask/Models/Service/WmsTaskDrawer'
import {
+ ElInput,
+ ElSelect,
+ ElOption,
ElDatePicker,
ElForm,
ElFormItem,
- ElInput,
- ElOption,
- ElSelect,
} from 'element-plus'
-import { getWmsEnumData } from '@/widgets/HIAWms/Models/Service/WmsMaterialDrawer'
+import { injectModel } from '@/libs/Provider/Provider'
interface RenderTableType {
url?: string
@@ -40,6 +42,7 @@
dataSource,
contextMenu,
dialogConfig,
+ dialogConfigForQuery,
tableRef,
current,
search,
@@ -51,91 +54,82 @@
onConfirmWmsMaterialStock,
onCheck,
onAddWmsMaterialStock,
+ onAdvancedQuery,
onExport,
openDetail,
onSuccess,
onBeforeUpload,
} = useWmsMaterialStock(props, ctx)
+ //瀹氫箟楂樼骇鏌ヨ寮曠敤
+ const wmsMaterialStockDetailQueryDrawerRef = ref(null)
// 鏂板鐨勬煡璇㈡潯浠�
const queryForm = ref({
- containerNo: '',
- materialNo: '',
- materialName: '',
- containerType: '',
- containerStatus: '',
+ searchVal: '',
storageTypeNo: 1,
- placeStatus: '',
- placeNo: '',
- isLock: '',
- emptyContainer: '',
- dateRange: [],
- filter: '',
+ str_searchFormInputAttrs: [],
})
-
- const queryParams = computed(() => ({
- ...queryForm.value,
- containerType: queryForm.value.containerType || '', // 澶勭悊涓嬫媺
- containerStatus: queryForm.value.containerStatus || '',
- storageTypeNo: queryForm.value.storageTypeNo || 1, // 澶勭悊涓嬫媺
- placeStatus: queryForm.value.placeStatus || '',
- islock: queryForm.value.isLock || '',
- emptyContainer: queryForm.value.emptyContainer || '',
- startTime: queryForm.value.dateRange[0] || '',
- endTime: queryForm.value.dateRange[1] || '',
- }))
+ //瀹氫箟鏁翠綋妯$硦鏌ヨ鐨勫垪鏁扮粍(娉ㄦ剰锛氬繀椤诲ぇ灏忓啓璺熷悗绔殑瀹炰綋绫诲睘鎬у悕涓�鑷达紝鍚﹀垯浼氬鑷村尮閰嶄笉瀵圭殑闂)
+ const _searchFormInputAttrs = ref(['OrderNo', 'MaterialNo', 'MaterialId'])
+ const searchFormInputAttrs_Placeholder = ref('璇疯緭鍏ュ崟鎹彿/鐗╂枡缂栧彿/鐗╂枡ID')
// 鍔ㄦ�佹灇涓鹃�夐」
const enumOptions = reactive({
- containerType: [] as Array<{ label: string; value: any }>,
containerStatus: [] as Array<{ label: string; value: any }>,
- storageTypeNo: [] as Array<{ label: string; value: any }>,
+ containerType: [] as Array<{ label: string; value: any }>,
placeStatus: [] as Array<{ label: string; value: any }>,
- yesOrNo: [] as Array<{ label: string; value: any }>,
+ storageTypeNo: [] as Array<{ label: string; value: any }>,
+ checkStatus: [] as Array<{ label: string; value: any }>,
+ isLock: [] as Array<{ label: string; value: any }>,
+ emptyContainer: [] 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 storageTypeNoData = await getWmsEnumData({
- EnumName: 'PlaceTypeEnum',
- })
- enumOptions.storageTypeNo = storageTypeNoData.map((item) => ({
- label: item.description,
- value: item.value,
- }))
-
- // 鑾峰彇閲囪喘绫诲瀷鏋氫妇
- const placeStatusData = await getWmsEnumData({
- EnumName: 'PlaceStatusEnum',
- })
- enumOptions.placeStatus = placeStatusData.map((item) => ({
- label: item.description,
- value: item.value,
- }))
-
- // 鑾峰彇閲囪喘绫诲瀷鏋氫妇
- const containerStatusData = await getWmsEnumData({
+ const containerStatusEnumData = await getWmsEnumData({
EnumName: 'ContainerStatusEnum',
})
- enumOptions.containerStatus = containerStatusData.map((item) => ({
+ enumOptions.containerStatus = containerStatusEnumData.map((item) => ({
label: item.description,
value: item.value,
}))
-
- const yesNoData = await getWmsEnumData({
+ const containerTypeEnumData = await getWmsEnumData({
+ EnumName: 'ContainerTypeEnum',
+ })
+ enumOptions.containerType = containerTypeEnumData.map((item) => ({
+ label: item.description,
+ value: item.value,
+ }))
+ const placeStatusEnumData = await getWmsEnumData({
+ EnumName: 'PlaceStatusEnum',
+ })
+ enumOptions.placeStatus = placeStatusEnumData.map((item) => ({
+ label: item.description,
+ value: item.value,
+ }))
+ const placeTypeEnumData = await getWmsEnumData({
+ EnumName: 'PlaceTypeEnum',
+ })
+ enumOptions.storageTypeNo = placeTypeEnumData.map((item) => ({
+ label: item.description,
+ value: item.value,
+ }))
+ const materialCheckStatusEnumData = await getWmsEnumData({
+ EnumName: 'MaterialCheckStatusEnum',
+ })
+ enumOptions.checkStatus = materialCheckStatusEnumData.map((item) => ({
+ label: item.description,
+ value: item.value,
+ }))
+ const yesNoEnumData = await getWmsEnumData({
EnumName: 'YesNoEnum',
})
- enumOptions.yesOrNo = yesNoData.map((item) => ({
+ enumOptions.isLock = yesNoEnumData.map((item) => ({
+ label: item.description,
+ value: item.value,
+ }))
+ enumOptions.emptyContainer = yesNoEnumData.map((item) => ({
label: item.description,
value: item.value,
}))
@@ -147,33 +141,72 @@
// 缁勪欢鎸傝浇鏃惰幏鍙栨灇涓炬暟鎹�
onMounted(() => {
fetchEnumData()
- handleQuery()
+
+ tableRef.value = {
+ dataSource: [],
+ }
+ handleQueryForMain()
})
- // 鏂板鐨勬煡璇㈡柟娉�
- const handleQuery = async () => {
- console.log('鏌ヨ鏉′欢:', queryParams.value)
- // tableRef.value.getTableList()
- tableRef.value.getList(queryParams.value)
+ // 瀹氫箟鍝嶅簲寮忔煡璇㈡暟鎹�
+ const _curHighQueryData = ref({
+ searchVal: '',
+ str_searchFormInputAttrs: [],
+ })
+ // 鏂扮増鐨勬煡璇㈡柟娉曪紙涓婚〉闈腑鐨勬寜閽�愭煡璇€�戯級
+ const handleQueryForMain = async () => {
+ _curHighQueryData.value.searchVal = queryForm.value.searchVal
+ _curHighQueryData.value.str_searchFormInputAttrs =
+ _searchFormInputAttrs.value
+ if (!_curHighQueryData.value?.storageTypeNo) {
+ _curHighQueryData.value.storageTypeNo = 1
+ }
+ tableRef.value.getList(_curHighQueryData.value)
+ }
+ // 鏂扮増鐨勬煡璇㈡柟娉曪紙楂樼骇鏌ヨ涓殑鎸夐挳銆愭煡璇€�戯級
+ const handleQuery = async (extraParams = {}) => {
+ let filteredData = commonGetHighQueryForm(extraParams)
+ commonSaveCurHighQueryData(filteredData)
+ tableRef.value.getList(filteredData)
+ }
+ // 鏂扮増鐨勬煡璇㈤噸缃�
+ const resetQuery = () => {
+ queryForm.value.searchVal = ''
+ queryForm.value.str_searchFormInputAttrs = _searchFormInputAttrs.value
+ }
+ //鏂扮増鐨勫鍑烘柟娉�
+ const handleExport = () => {
+ onExport(_curHighQueryData.value)
+ }
+ // 鏂扮増鐨勬煡璇㈠脊鍑烘鍏抽棴鏂规硶
+ const closeQuery = (extraParams = {}) => {
+ let filteredData = commonGetHighQueryForm(extraParams)
+ console.log('closeQuery鏂规硶')
+ console.log(filteredData)
+ commonSaveCurHighQueryData(filteredData)
+ }
+ //淇濆瓨鏌ヨ鍊�
+ const commonSaveCurHighQueryData = (filteredData = {}) => {
+ _curHighQueryData.value = { ..._curHighQueryData.value, ...filteredData }
+ _curHighQueryData.value.searchVal = queryForm.value.searchVal
+ _curHighQueryData.value.str_searchFormInputAttrs =
+ _searchFormInputAttrs.value
+ }
+ //鑾峰彇楂樼骇鏌ヨ寮瑰嚭妗嗙殑鏌ヨ鍊�
+ const commonGetHighQueryForm = (extraParams = {}) => {
+ // 杩囨护鎺� undefined 鐨勫��
+ let filteredData = Object.assign(
+ {},
+ ...Object.entries(extraParams).map(([key, value]) =>
+ value !== undefined ? { [key]: value } : {}
+ )
+ )
+ //缁勫悎妯$硦鏌ヨ
+ filteredData.searchVal = queryForm.value.searchVal
+ filteredData.str_searchFormInputAttrs = _searchFormInputAttrs.value
+ return filteredData
}
- // 閲嶇疆鏌ヨ鏉′欢
- const resetQuery = () => {
- queryForm.value = {
- containerNo: '',
- materialNo: '',
- materialName: '',
- containerType: '',
- containerStatus: '',
- storageTypeNo: 1,
- placeStatus: '',
- placeNo: '',
- isLock: '',
- emptyContainer: '',
- dateRange: [],
- filter: '',
- }
- }
/**
* @returns 琛ㄦ牸
*/
@@ -187,20 +220,17 @@
params,
autoHeight,
} = props
- props.params = {
- ...queryParams.value,
- ...params,
- }
+
return (
<div
class={{
- [styles.wmsMaterialStockList]: true,
+ [styles.wmsMaterialStockDetailList]: true,
}}
>
<BaseTable
ref={tableRef}
url={url}
- sortUrlTpl="/api/v1/HIAWms/wmsMaterialStock/{id}/adjustsort/{sort}"
+ sortUrlTpl="/api/v1/HIAWms/wmsMaterialStockDetail/{id}/adjustsort/{sort}"
v-model:dataSource={dataSource.value}
columns={columns}
contextMenu={contextMenu}
@@ -218,6 +248,57 @@
<div>
{row.inStockTime != null
? dayjs(row.inStockTime).format('YYYY-MM-DD HH:mm:ss')
+ : '-'}
+ </div>
+ )
+ },
+ isDisabled: ({ row }: any) => {
+ return (
+ <div>
+ {row.isDisabled != null
+ ? row.isDisabled
+ ? '鏄�'
+ : '鍚�'
+ : '-'}
+ </div>
+ )
+ },
+ creationTime: ({ row }: any) => {
+ return (
+ <div>
+ {row.creationTime != null
+ ? dayjs(row.creationTime).format('YYYY-MM-DD HH:mm:ss')
+ : '-'}
+ </div>
+ )
+ },
+ lastModificationTime: ({ row }: any) => {
+ return (
+ <div>
+ {row.lastModificationTime != null
+ ? dayjs(row.lastModificationTime).format(
+ 'YYYY-MM-DD HH:mm:ss'
+ )
+ : '-'}
+ </div>
+ )
+ },
+ isDeleted: ({ row }: any) => {
+ return (
+ <div>
+ {row.isDeleted != null
+ ? row.isDeleted
+ ? '鏄�'
+ : '鍚�'
+ : '-'}
+ </div>
+ )
+ },
+ deletionTime: ({ row }: any) => {
+ return (
+ <div>
+ {row.deletionTime != null
+ ? dayjs(row.deletionTime).format('YYYY-MM-DD HH:mm:ss')
: '-'}
</div>
)
@@ -242,9 +323,10 @@
</div>
)
}
+
return () => {
return (
- <div class={styles.wmsMaterialStockContent}>
+ <div class={styles.wmsMaterialStockDetailContent}>
{/* 娣诲姞/缂栬緫 */}
<WmsMaterialStockDrawer
v-model={dialogConfig.visible}
@@ -253,183 +335,22 @@
sort={sort.value}
onConfirm={onConfirmWmsMaterialStock}
/>
- {/* 鏂板鐨勬煡璇㈣〃鍗� */}
- <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.materialNo}
- placeholder="璇疯緭鍏ョ墿鏂欑紪鐮�"
- clearable
- class={styles.formItem}
- />
- </ElFormItem>
- <ElFormItem label="鐗╂枡鍚嶇О">
- <ElInput
- v-model={queryForm.value.materialName}
- 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="搴撲綅缂栧彿">
- <ElInput
- v-model={queryForm.value.placeNo}
- placeholder="璇疯緭鍏ュ簱浣嶇紪鍙�"
- clearable
- class={styles.formItem}
- />
- </ElFormItem>
- <ElFormItem label="搴撲綅绫诲瀷">
- <ElSelect
- v-model={queryForm.value.storageTypeNo}
- placeholder="璇烽�夋嫨鎵樼洏绫诲瀷"
- loading={enumOptions.storageTypeNo.length === 0}
- class={styles.formItem}
- >
- {enumOptions.storageTypeNo.map((option) => (
- <ElOption
- key={option.value}
- label={option.label}
- value={option.value}
- />
- ))}
- </ElSelect>
- </ElFormItem>
- <ElFormItem label="搴撲綅鐘舵��">
- <ElSelect
- v-model={queryForm.value.placeStatus}
- placeholder="璇烽�夋嫨鎵樼洏鐘舵��"
- clearable
- loading={enumOptions.placeStatus.length === 0}
- class={styles.formItem}
- >
- {enumOptions.placeStatus.map((option) => (
- <ElOption
- key={option.value}
- label={option.label}
- value={option.value}
- />
- ))}
- </ElSelect>
- </ElFormItem>
- <ElFormItem label="鏄惁閿佸畾">
- <ElSelect
- v-model={queryForm.value.isLock}
- placeholder="璇烽�夋嫨鏄惁閿佸畾"
- clearable
- loading={enumOptions.yesOrNo.length === 0}
- class={styles.formItem}
- >
- {enumOptions.yesOrNo.map((option) => (
- <ElOption
- key={option.value}
- label={option.label}
- value={option.value}
- />
- ))}
- </ElSelect>
- </ElFormItem>
- <ElFormItem label="鏄惁绌烘墭">
- <ElSelect
- v-model={queryForm.value.emptyContainer}
- placeholder="璇烽�夋嫨鏄惁绌烘墭"
- clearable
- loading={enumOptions.yesOrNo.length === 0}
- class={styles.formItem}
- >
- {enumOptions.yesOrNo.map((option) => (
- <ElOption
- key={option.value}
- label={option.label}
- value={option.value}
- />
- ))}
- </ElSelect>
- </ElFormItem>
- <ElFormItem label="鏃ユ湡鑼冨洿">
- <ElDatePicker
- v-model={queryForm.value.dateRange}
- type="datetimerange"
- range-separator="鑷�"
- show-now="true"
- start-placeholder="寮�濮嬫棩鏈�"
- end-placeholder="缁撴潫鏃ユ湡"
- format="YYYY-MM-DD HH:mm:ss"
- valueFormat="YYYY-MM-DD HH:mm:ss"
- />
- </ElFormItem>
- <ElFormItem>
- <IconButton type="primary" icon="search" onClick={handleQuery}>
- 鏌ヨ
- </IconButton>
- <IconButton
- style="margin-left: 10px;"
- icon="refresh"
- onClick={resetQuery}
- >
- 閲嶇疆
- </IconButton>
- </ElFormItem>
- </ElForm>
+ {/* 楂樼骇鏌ヨ */}
+ <WmsMaterialStockQueryDrawer
+ ref="wmsMaterialStockDetailQueryDrawerRef"
+ v-model={dialogConfigForQuery.visible}
+ title={dialogConfigForQuery.title}
+ row={current.value}
+ sort={sort.value}
+ onConfirmQuery={handleQuery}
+ onRestQuery={resetQuery}
+ onClose={closeQuery}
+ />
+
<div class={styles.headerContent}>
<div class={styles.header}>
<IconButton
- v-permission="wmsMaterialStock-add"
+ v-permission="wmsMaterialStockDetail-add"
icon="add-p"
onClick={onAddWmsMaterialStock}
type="primary"
@@ -437,8 +358,9 @@
娣诲姞
</IconButton>
<el-divider direction="vertical" />
- <el-upload
- v-permission="wmsMaterialStock-import"
+
+ {/* <el-upload
+ v-permission="wmsMaterialStockDetail-import"
name="file"
accept=".xlsx,.xls,.csv"
show-file-list={false}
@@ -446,28 +368,58 @@
onSuccess={onSuccess}
before-upload={onBeforeUpload}
headers={headers.value}
- action="/api/v1/HIAWms/wmsMaterialStock/import"
+ action="/api/v1/HIAWms/wmsMaterialStockDetail/import"
>
<IconButton icon="in">瀵煎叆</IconButton>
- </el-upload>
+ </el-upload> */}
<IconButton
- v-permission="wmsMaterialStock-output"
+ v-permission="wmsMaterialStockDetail-output"
icon="out"
- onClick={onExport}
+ onClick={handleExport}
>
瀵煎嚭
</IconButton>
</div>
- {/* <Search
- placeholder="璇疯緭鍏ュ叧閿瓧"
- v-model={search.value}
- onConfirm={onSearch}
- style={{ marginTop: '-1px' }}
- /> */}
+ <ElFormItem style={{ marginTop: '15px' }}>
+ <ElFormItem label="鍏抽敭瀛�">
+ <el-tooltip
+ class="box-item"
+ effect="dark"
+ content={searchFormInputAttrs_Placeholder.value}
+ placement="top-start"
+ >
+ <ElInput
+ v-model={queryForm.value.searchVal}
+ placeholder={searchFormInputAttrs_Placeholder.value}
+ clearable
+ class={styles.formItem}
+ />
+ </el-tooltip>
+ </ElFormItem>
+ <IconButton
+ type="primary"
+ icon="search"
+ onClick={handleQueryForMain}
+ >
+ 鏌ヨ
+ </IconButton>
+ {/* <IconButton style="" icon="refresh" onClick={resetQuery}>
+ 閲嶇疆
+ </IconButton> */}
+ <IconButton
+ v-permission="wmsMaterialStock-add"
+ icon="search"
+ onClick={onAdvancedQuery}
+ type="primary"
+ >
+ 楂樼骇鏌ヨ
+ </IconButton>
+ </ElFormItem>
</div>
+
<RenderBaseTable
- url="/api/v1/HIAWms/wmsMaterialStock"
+ url="/api/v1/HIAWms/wmsmaterialstock/"
dataSource={dataSource}
isChecked={true}
isDrag={true}
diff --git a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStockDetail/Config.ts b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStockDetail/Config.ts
index 035b581..00d458f 100644
--- a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStockDetail/Config.ts
+++ b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStockDetail/Config.ts
@@ -20,10 +20,10 @@
field: 'placeStatusDesc',
title: '搴撲綅鐘舵��',
},
- {
- field: 'containerNo',
- title: '瀹瑰櫒缂栧彿',
- },
+ // {
+ // field: 'containerNo',
+ // title: '瀹瑰櫒缂栧彿',
+ // },
{
field: 'stockNumber',
title: '搴撳瓨鏁伴噺',
@@ -40,10 +40,10 @@
field: 'areaName',
title: '鎵�灞炲簱鍖�',
},
- {
- field: 'checkStatusDesc',
- title: '妫�楠岀姸鎬�',
- },
+ // {
+ // field: 'checkStatusDesc',
+ // title: '妫�楠岀姸鎬�',
+ // },
{
field: 'inStockTime',
title: '鍏ュ簱鏃堕棿',
diff --git a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStockDetail/WmsMaterialStockDetail.module.scss b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStockDetail/WmsMaterialStockDetail.module.scss
index 365acbf..ac415d3 100644
--- a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStockDetail/WmsMaterialStockDetail.module.scss
+++ b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStockDetail/WmsMaterialStockDetail.module.scss
@@ -1,113 +1,113 @@
-.wmsMaterialStockContent {
- width: 100%;
- height: 80%;
-
- .wmsMaterialStockList {
- width: 100%;
- height: calc(100% - 70px);
- }
- .headerContent {
- display: flex;
- justify-content: space-between;
- align-items: center;
- height: 43px;
- }
- .header {
- margin-bottom: 12px;
- display: flex;
- justify-content: flex-start;
- align-items: center;
- }
-}
-
-.tagBox {
- width: auto;
- min-width: 80px;
- height: 24px;
- background: #ffffff;
- border-radius: 19px 19px 19px 19px;
- opacity: 1;
- border: 1px dashed #bcc4cc;
- width: 50px;
- height: 20px;
- font-size: 14px;
- font-family: PingFang SC, PingFang SC;
- font-weight: 400;
- color: #5a84ff;
- display: flex;
- justify-content: center;
- align-items: center;
- // cursor: pointer;
-}
-
-.group {
- display: flex;
- justify-content: space-between;
- align-items: center;
-}
-
-.groupTable {
- width: 100%;
-}
-
-.overBox {
- width: 100%;
- height: calc(100% - 20px);
- overflow: auto;
- :global(.cs-collapse-item__header) {
- background-color: #f1f1f1;
- padding: 0 20px;
- height: 35px;
- font-size: 16px;
- font-family: PingFang SC, PingFang SC;
- font-weight: 500;
- }
- :global(.cs-collapse-item__content) {
- padding-bottom: 0px;
- }
-}
-.groupHeader {
- width: 100%;
- height: 30px;
- background: #ccc;
-}
-
-.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%;
- }
-}
\ No newline at end of file
+.wmsMaterialStockDetailContent {
+ width: 100%;
+ height: 100%;
+
+ .wmsMaterialStockDetailList {
+ width: 100%;
+ height: calc(100% - 70px);
+ }
+ .headerContent {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ height: 43px;
+ }
+ .header {
+ margin-bottom: 12px;
+ display: flex;
+ justify-content: flex-end;
+ align-items: center;
+ }
+}
+
+.tagBox {
+ width: auto;
+ min-width: 80px;
+ height: 24px;
+ background: #ffffff;
+ border-radius: 19px 19px 19px 19px;
+ opacity: 1;
+ border: 1px dashed #bcc4cc;
+ width: 50px;
+ height: 20px;
+ font-size: 14px;
+ font-family: PingFang SC, PingFang SC;
+ font-weight: 400;
+ color: #5a84ff;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ // cursor: pointer;
+}
+
+.group {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+}
+
+.groupTable {
+ width: 100%;
+}
+
+.overBox {
+ width: 100%;
+ height: calc(100% - 20px);
+ overflow: auto;
+ :global(.cs-collapse-item__header) {
+ background-color: #f1f1f1;
+ padding: 0 20px;
+ height: 35px;
+ font-size: 16px;
+ font-family: PingFang SC, PingFang SC;
+ font-weight: 500;
+ }
+ :global(.cs-collapse-item__content) {
+ padding-bottom: 0px;
+ }
+}
+.groupHeader {
+ width: 100%;
+ height: 30px;
+ background: #ccc;
+}
+
+.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%;
+ }
+}
diff --git a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStockDetail/WmsMaterialStockDetail.tsx b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStockDetail/WmsMaterialStockDetail.tsx
index 40d7b2b..a2f4737 100644
--- a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStockDetail/WmsMaterialStockDetail.tsx
+++ b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStockDetail/WmsMaterialStockDetail.tsx
@@ -4,21 +4,22 @@
import styles from './WmsMaterialStockDetail.module.scss'
import { useWmsMaterialStock } from '../../../Controllers/WmsMaterialStock'
import IconButton from '@/components/IconButton/IconButton'
-import WmsMaterialStockDrawer from '../Dialog/WmsMaterialStockDrawer/WmsMaterialStockDrawer'
+import WmsMaterialStockDetailQueryDrawer from '../Dialog/WmsMaterialStockDetailQuery/WmsMaterialStockDetailQueryDrawer'
import Search from '@/components/Search/Search'
import { columns } from './Config'
import TdButton from '@/components/TdButton/TdButton'
import { vPermission } from '@/libs/Permission/Permission'
import dayjs from 'dayjs'
+import { getWmsEnumData } from '@/widgets/WmsMaterialStock/Models/Service/WmsMaterialStockDrawer'
import {
+ ElInput,
+ ElSelect,
+ ElOption,
ElDatePicker,
ElForm,
ElFormItem,
- ElInput,
- ElOption,
- ElSelect,
} from 'element-plus'
-import { getWmsEnumData } from '@/widgets/HIAWms/Models/Service/WmsMaterialDrawer'
+import { injectModel } from '@/libs/Provider/Provider'
interface RenderTableType {
url?: string
@@ -31,7 +32,7 @@
}
export default defineComponent({
- name: 'WmsMaterialStock',
+ name: 'WmsMaterialStockDetail',
directives: {
permission: vPermission,
},
@@ -40,6 +41,7 @@
dataSource,
contextMenu,
dialogConfig,
+ dialogConfigForQuery,
tableRef,
current,
search,
@@ -51,91 +53,81 @@
onConfirmWmsMaterialStock,
onCheck,
onAddWmsMaterialStock,
+ onAdvancedQuery,
onExport,
openDetail,
onSuccess,
onBeforeUpload,
} = useWmsMaterialStock(props, ctx)
+ //瀹氫箟楂樼骇鏌ヨ寮曠敤
+ const wmsMaterialStockDetailQueryDrawerRef = ref(null)
// 鏂板鐨勬煡璇㈡潯浠�
const queryForm = ref({
- containerNo: '',
- materialNo: '',
- materialName: '',
- containerType: '',
- containerStatus: '',
- storageTypeNo: 1,
- placeStatus: '',
- placeNo: '',
- isLock: '',
- emptyContainer: '',
- dateRange: [],
- filter: '',
+ searchVal: '',
+ str_searchFormInputAttrs: [],
})
-
- const queryParams = computed(() => ({
- ...queryForm.value,
- containerType: queryForm.value.containerType || '', // 澶勭悊涓嬫媺
- containerStatus: queryForm.value.containerStatus || '',
- storageTypeNo: queryForm.value.storageTypeNo || 1, // 澶勭悊涓嬫媺
- placeStatus: queryForm.value.placeStatus || '',
- islock: queryForm.value.isLock || '',
- emptyContainer: queryForm.value.emptyContainer || '',
- startTime: queryForm.value.dateRange[0] || '',
- endTime: queryForm.value.dateRange[1] || '',
- }))
+ //瀹氫箟鏁翠綋妯$硦鏌ヨ鐨勫垪鏁扮粍(娉ㄦ剰锛氬繀椤诲ぇ灏忓啓璺熷悗绔殑瀹炰綋绫诲睘鎬у悕涓�鑷达紝鍚﹀垯浼氬鑷村尮閰嶄笉瀵圭殑闂)
+ const _searchFormInputAttrs = ref(['OrderNo', 'MaterialNo', 'MaterialId'])
+ const searchFormInputAttrs_Placeholder = ref('璇疯緭鍏ュ崟鎹彿/鐗╂枡缂栧彿/鐗╂枡ID')
// 鍔ㄦ�佹灇涓鹃�夐」
const enumOptions = reactive({
- containerType: [] as Array<{ label: string; value: any }>,
containerStatus: [] as Array<{ label: string; value: any }>,
- storageTypeNo: [] as Array<{ label: string; value: any }>,
+ containerType: [] as Array<{ label: string; value: any }>,
placeStatus: [] as Array<{ label: string; value: any }>,
- yesOrNo: [] as Array<{ label: string; value: any }>,
+ storageTypeNo: [] as Array<{ label: string; value: any }>,
+ checkStatus: [] as Array<{ label: string; value: any }>,
+ isLock: [] as Array<{ label: string; value: any }>,
+ emptyContainer: [] 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 storageTypeNoData = await getWmsEnumData({
- EnumName: 'PlaceTypeEnum',
- })
- enumOptions.storageTypeNo = storageTypeNoData.map((item) => ({
- label: item.description,
- value: item.value,
- }))
-
- // 鑾峰彇閲囪喘绫诲瀷鏋氫妇
- const placeStatusData = await getWmsEnumData({
- EnumName: 'PlaceStatusEnum',
- })
- enumOptions.placeStatus = placeStatusData.map((item) => ({
- label: item.description,
- value: item.value,
- }))
-
- // 鑾峰彇閲囪喘绫诲瀷鏋氫妇
- const containerStatusData = await getWmsEnumData({
+ const containerStatusEnumData = await getWmsEnumData({
EnumName: 'ContainerStatusEnum',
})
- enumOptions.containerStatus = containerStatusData.map((item) => ({
+ enumOptions.containerStatus = containerStatusEnumData.map((item) => ({
label: item.description,
value: item.value,
}))
-
- const yesNoData = await getWmsEnumData({
+ const containerTypeEnumData = await getWmsEnumData({
+ EnumName: 'ContainerTypeEnum',
+ })
+ enumOptions.containerType = containerTypeEnumData.map((item) => ({
+ label: item.description,
+ value: item.value,
+ }))
+ const placeStatusEnumData = await getWmsEnumData({
+ EnumName: 'PlaceStatusEnum',
+ })
+ enumOptions.placeStatus = placeStatusEnumData.map((item) => ({
+ label: item.description,
+ value: item.value,
+ }))
+ const placeTypeEnumData = await getWmsEnumData({
+ EnumName: 'PlaceTypeEnum',
+ })
+ enumOptions.storageTypeNo = placeTypeEnumData.map((item) => ({
+ label: item.description,
+ value: item.value,
+ }))
+ const materialCheckStatusEnumData = await getWmsEnumData({
+ EnumName: 'MaterialCheckStatusEnum',
+ })
+ enumOptions.checkStatus = materialCheckStatusEnumData.map((item) => ({
+ label: item.description,
+ value: item.value,
+ }))
+ const yesNoEnumData = await getWmsEnumData({
EnumName: 'YesNoEnum',
})
- enumOptions.yesOrNo = yesNoData.map((item) => ({
+ enumOptions.isLock = yesNoEnumData.map((item) => ({
+ label: item.description,
+ value: item.value,
+ }))
+ enumOptions.emptyContainer = yesNoEnumData.map((item) => ({
label: item.description,
value: item.value,
}))
@@ -147,33 +139,65 @@
// 缁勪欢鎸傝浇鏃惰幏鍙栨灇涓炬暟鎹�
onMounted(() => {
fetchEnumData()
- handleQuery()
+ handleQueryForMain()
})
- // 鏂板鐨勬煡璇㈡柟娉�
- const handleQuery = async () => {
- console.log('鏌ヨ鏉′欢:', queryParams.value)
- // tableRef.value.getTableList()
- tableRef.value.getList(queryParams.value)
+ // 瀹氫箟鍝嶅簲寮忔煡璇㈡暟鎹�
+ const _curHighQueryData = ref({
+ searchVal: '',
+ str_searchFormInputAttrs: [],
+ })
+ // 鏂扮増鐨勬煡璇㈡柟娉曪紙涓婚〉闈腑鐨勬寜閽�愭煡璇€�戯級
+ const handleQueryForMain = async () => {
+ _curHighQueryData.value.searchVal = queryForm.value.searchVal
+ _curHighQueryData.value.str_searchFormInputAttrs =
+ _searchFormInputAttrs.value
+ tableRef.value.getList(_curHighQueryData.value)
+ }
+ // 鏂扮増鐨勬煡璇㈡柟娉曪紙楂樼骇鏌ヨ涓殑鎸夐挳銆愭煡璇€�戯級
+ const handleQuery = async (extraParams = {}) => {
+ let filteredData = commonGetHighQueryForm(extraParams)
+ commonSaveCurHighQueryData(filteredData)
+ tableRef.value.getList(filteredData)
+ }
+ // 鏂扮増鐨勬煡璇㈤噸缃�
+ const resetQuery = () => {
+ queryForm.value.searchVal = ''
+ queryForm.value.str_searchFormInputAttrs = _searchFormInputAttrs.value
+ }
+ //鏂扮増鐨勫鍑烘柟娉�
+ const handleExport = () => {
+ onExport(_curHighQueryData.value)
+ }
+ // 鏂扮増鐨勬煡璇㈠脊鍑烘鍏抽棴鏂规硶
+ const closeQuery = (extraParams = {}) => {
+ let filteredData = commonGetHighQueryForm(extraParams)
+ console.log('closeQuery鏂规硶')
+ console.log(filteredData)
+ commonSaveCurHighQueryData(filteredData)
+ }
+ //淇濆瓨鏌ヨ鍊�
+ const commonSaveCurHighQueryData = (filteredData = {}) => {
+ _curHighQueryData.value = { ..._curHighQueryData.value, ...filteredData }
+ _curHighQueryData.value.searchVal = queryForm.value.searchVal
+ _curHighQueryData.value.str_searchFormInputAttrs =
+ _searchFormInputAttrs.value
+ }
+ //鑾峰彇楂樼骇鏌ヨ寮瑰嚭妗嗙殑鏌ヨ鍊�
+ const commonGetHighQueryForm = (extraParams = {}) => {
+ // 杩囨护鎺� undefined 鐨勫��
+ let filteredData = Object.assign(
+ {},
+ ...Object.entries(extraParams).map(([key, value]) =>
+ value !== undefined ? { [key]: value } : {}
+ )
+ )
+ //缁勫悎妯$硦鏌ヨ
+ filteredData.searchVal = queryForm.value.searchVal
+ filteredData.str_searchFormInputAttrs = _searchFormInputAttrs.value
+ return filteredData
}
- // 閲嶇疆鏌ヨ鏉′欢
- const resetQuery = () => {
- queryForm.value = {
- containerNo: '',
- materialNo: '',
- materialName: '',
- containerType: '',
- containerStatus: '',
- storageTypeNo: 1,
- placeStatus: '',
- placeNo: '',
- isLock: '',
- emptyContainer: '',
- dateRange: [],
- filter: '',
- }
- }
/**
* @returns 琛ㄦ牸
*/
@@ -187,20 +211,17 @@
params,
autoHeight,
} = props
- props.params = {
- ...queryParams.value,
- ...params,
- }
+
return (
<div
class={{
- [styles.wmsMaterialStockList]: true,
+ [styles.wmsMaterialStockDetailList]: true,
}}
>
<BaseTable
ref={tableRef}
url={url}
- sortUrlTpl="/api/v1/HIAWms/wmsMaterialStock/{id}/adjustsort/{sort}"
+ sortUrlTpl="/api/v1/HIAWms/wmsMaterialStockDetail/{id}/adjustsort/{sort}"
v-model:dataSource={dataSource.value}
columns={columns}
contextMenu={contextMenu}
@@ -218,6 +239,57 @@
<div>
{row.inStockTime != null
? dayjs(row.inStockTime).format('YYYY-MM-DD HH:mm:ss')
+ : '-'}
+ </div>
+ )
+ },
+ isDisabled: ({ row }: any) => {
+ return (
+ <div>
+ {row.isDisabled != null
+ ? row.isDisabled
+ ? '鏄�'
+ : '鍚�'
+ : '-'}
+ </div>
+ )
+ },
+ creationTime: ({ row }: any) => {
+ return (
+ <div>
+ {row.creationTime != null
+ ? dayjs(row.creationTime).format('YYYY-MM-DD HH:mm:ss')
+ : '-'}
+ </div>
+ )
+ },
+ lastModificationTime: ({ row }: any) => {
+ return (
+ <div>
+ {row.lastModificationTime != null
+ ? dayjs(row.lastModificationTime).format(
+ 'YYYY-MM-DD HH:mm:ss'
+ )
+ : '-'}
+ </div>
+ )
+ },
+ isDeleted: ({ row }: any) => {
+ return (
+ <div>
+ {row.isDeleted != null
+ ? row.isDeleted
+ ? '鏄�'
+ : '鍚�'
+ : '-'}
+ </div>
+ )
+ },
+ deletionTime: ({ row }: any) => {
+ return (
+ <div>
+ {row.deletionTime != null
+ ? dayjs(row.deletionTime).format('YYYY-MM-DD HH:mm:ss')
: '-'}
</div>
)
@@ -242,20 +314,13 @@
</div>
)
}
+
return () => {
return (
- <div class={styles.wmsMaterialStockContent}>
- {/* 娣诲姞/缂栬緫 */}
- <WmsMaterialStockDrawer
- v-model={dialogConfig.visible}
- title={dialogConfig.title}
- row={current.value}
- sort={sort.value}
- onConfirm={onConfirmWmsMaterialStock}
- />
+ <div class={styles.wmsMaterialStockDetailContent}>
{/* 楂樼骇鏌ヨ */}
- {/* <WmsMaterialStockDetailDrawer
- ref="wmsTaskQueryDrawerRef"
+ <WmsMaterialStockDetailQueryDrawer
+ ref="wmsMaterialStockDetailQueryDrawerRef"
v-model={dialogConfigForQuery.visible}
title={dialogConfigForQuery.title}
row={current.value}
@@ -263,49 +328,57 @@
onConfirmQuery={handleQuery}
onRestQuery={resetQuery}
onClose={closeQuery}
- /> */}
+ />
+
<div class={styles.headerContent}>
<div class={styles.header}>
<IconButton
- v-permission="wmsMaterialStock-add"
- icon="add-p"
- onClick={onAddWmsMaterialStock}
- type="primary"
- >
- 娣诲姞
- </IconButton>
- <el-divider direction="vertical" />
- <el-upload
- v-permission="wmsMaterialStock-import"
- name="file"
- accept=".xlsx,.xls,.csv"
- show-file-list={false}
- onError={onError}
- onSuccess={onSuccess}
- before-upload={onBeforeUpload}
- headers={headers.value}
- action="/api/v1/HIAWms/wmsMaterialStock/import"
- >
- <IconButton icon="in">瀵煎叆</IconButton>
- </el-upload>
-
- <IconButton
- v-permission="wmsMaterialStock-output"
+ v-permission="wmsMaterialStockDetail-output"
icon="out"
onClick={onExport}
>
瀵煎嚭
</IconButton>
</div>
- {/* <Search
- placeholder="璇疯緭鍏ュ叧閿瓧"
- v-model={search.value}
- onConfirm={onSearch}
- style={{ marginTop: '-1px' }}
- /> */}
+ <ElFormItem style={{ marginTop: '15px' }}>
+ <ElFormItem label="鍏抽敭瀛�">
+ <el-tooltip
+ class="box-item"
+ effect="dark"
+ content={searchFormInputAttrs_Placeholder.value}
+ placement="top-start"
+ >
+ <ElInput
+ v-model={queryForm.value.searchVal}
+ placeholder={searchFormInputAttrs_Placeholder.value}
+ clearable
+ class={styles.formItem}
+ />
+ </el-tooltip>
+ </ElFormItem>
+ <IconButton
+ type="primary"
+ icon="search"
+ onClick={handleQueryForMain}
+ >
+ 鏌ヨ
+ </IconButton>
+ {/* <IconButton style="" icon="refresh" onClick={resetQuery}>
+ 閲嶇疆
+ </IconButton> */}
+ <IconButton
+ v-permission="wmsMaterialStockDetail-hightQuery"
+ icon="search"
+ onClick={onAdvancedQuery}
+ type="primary"
+ >
+ 楂樼骇鏌ヨ
+ </IconButton>
+ </ElFormItem>
</div>
+
<RenderBaseTable
- url="/api/v1/HIAWms/wmsMaterialStock"
+ url="/api/v1/HIAWms/wmsMaterialStock/StockDetail"
dataSource={dataSource}
isChecked={true}
isDrag={true}
diff --git a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/enum.ts b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/enum.ts
index 947c2b0..8edf3af 100644
--- a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/enum.ts
+++ b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/enum.ts
@@ -12,4 +12,8 @@
'wmsMaterialStock-add': '鍒楄〃-娣诲姞',
'wmsMaterialStock-import': '鍒楄〃-瀵煎叆',
'wmsMaterialStock-output': '鍒楄〃-杈撳嚭',
+
+ 'wmsMaterialStockDetail-hightQuery': '鍒楄〃-楂樼骇鏌ヨ',
+ 'wmsMaterialStockDetail-query': '鍒楄〃-鏌ヨ',
+ 'wmsMaterialStockDetail-output': '鍒楄〃-瀵煎嚭',
}
diff --git a/HIAWms/hiawms_web/src/widgets/WmsStoreInfo/Models/WmsAreaDrawer.ts b/HIAWms/hiawms_web/src/widgets/WmsStoreInfo/Models/WmsAreaDrawer.ts
index ab7a6e4..5de66e7 100644
--- a/HIAWms/hiawms_web/src/widgets/WmsStoreInfo/Models/WmsAreaDrawer.ts
+++ b/HIAWms/hiawms_web/src/widgets/WmsStoreInfo/Models/WmsAreaDrawer.ts
@@ -1,9 +1,5 @@
import { Base } from '@/libs/Base/Base'
-import {
- addWmsArea,
- getWmsArea,
- updateWmsArea,
-} from './Service/WmsAreaDrawer'
+import { addWmsArea, getWmsArea, updateWmsArea } from './Service/WmsAreaDrawer'
import { useGlobalState } from '@/libs/Store/Store'
export class WmsAreaDrawer extends Base<{ [key: string]: any }> {
diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/GetWmsMaterialStocksInput.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/GetWmsMaterialStocksInput.cs
index 79db668..37f3ca4 100644
--- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/GetWmsMaterialStocksInput.cs
+++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/GetWmsMaterialStocksInput.cs
@@ -90,7 +90,7 @@
/// <summary>
/// 搴撲綅绫诲瀷缂栧彿
/// </summary>
- public PlaceTypeEnum? StorageTypeNo { get; set; }
+ public PlaceTypeEnum? StorageTypeNo { get; set; } = PlaceTypeEnum.YUANLIAOKUWEI;
/// <summary>
/// 鍖哄煙缂栧彿
diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms/Controller/WmsMaterialStockController.cs b/HIAWms/server/src/CMS.Plugin.HIAWms/Controller/WmsMaterialStockController.cs
index e47bac5..6944397 100644
--- a/HIAWms/server/src/CMS.Plugin.HIAWms/Controller/WmsMaterialStockController.cs
+++ b/HIAWms/server/src/CMS.Plugin.HIAWms/Controller/WmsMaterialStockController.cs
@@ -64,7 +64,7 @@
/// <returns></returns>
[HttpGet]
[Route("StockDetail")]
- public async Task<PagedResultDto<WmsMaterialStockDto>> GetStockDetailAsync(GetWmsMaterialStocksInput input)
+ public async Task<PagedResultDto<WmsMaterialStockDto>> GetStockDetailAsync([FromQuery]GetWmsMaterialStocksInput input)
{
return await _wmsmaterialstockAppService.GetStockDetailAsync(input);
}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/File/GenerateCodeConfigParamFiles/\345\272\223\345\255\230\350\257\246\346\203\205.txt" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/File/GenerateCodeConfigParamFiles/\345\272\223\345\255\230\350\257\246\346\203\205.txt"
new file mode 100644
index 0000000..f85b5ac
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/File/GenerateCodeConfigParamFiles/\345\272\223\345\255\230\350\257\246\346\203\205.txt"
@@ -0,0 +1,14 @@
+[琛ㄥ悕]:scms_wmsmaterialstocks
+[瀹炰綋绫诲悕]:WmsMaterialStock
+[瀹炰綋绫诲璞″悕]:WmsMaterialStock
+[椤甸潰鑿滃崟鍚峕:搴撳瓨璇︽儏
+[椤甸潰鑿滃崟瀵硅薄缂╁啓]:wmsMaterialStockDetail
+[琛ㄧ殑涓枃娉ㄨВ]:鍑哄叆搴撳崟鎹鎯�
+[閲嶅鎬ф牎楠屽瓧娈礭:MaterialId
+[鍒犻櫎鎻愮ず瀛楁]:MaterialId
+[妯$硦鏌ヨ瀛楁]:'OrderNo', 'MaterialNo', 'MaterialId'
+[妯$硦鏌ヨ瀛楁鍚峕:璇疯緭鍏ュ崟鎹彿/鐗╂枡缂栧彿/鐗╂枡ID
+[椤圭洰鍛藉悕绌洪棿]:HIAWms
+[鏋氫妇绫诲瀷瀛楁闆嗗悎]:ContainerStatus,ContainerStatusEnum&ContainerType,ContainerTypeEnum&PlaceStatus,PlaceStatusEnum&StorageTypeNo,PlaceTypeEnum&CheckStatus,MaterialCheckStatusEnum&IsLock,YesNoEnum&EmptyContainer,YesNoEnum
+[鍓嶇鏍规枃浠跺す鍚嶇О]:web
+[鎺掑簭]:CreationTime
\ No newline at end of file
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/MainForm.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/MainForm.cs"
index 6e9bc75..b14ac3b 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/MainForm.cs"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/MainForm.cs"
@@ -215,11 +215,11 @@
return;
}
//澧炲姞鏍¢獙
- if (columnList.Where(x => x.ColumnName.ToUpper() == SystemCommonVar.c_creator.ToUpper()).Count() == 0)
- {
- MessageBox.Show($"琛ㄤ腑娌℃湁瀛楁{SystemCommonVar.c_creator}锛�");
- return;
- }
+ //if (columnList.Where(x => x.ColumnName.ToUpper() == SystemCommonVar.c_creator.ToUpper()).Count() == 0)
+ //{
+ // MessageBox.Show($"琛ㄤ腑娌℃湁瀛楁{SystemCommonVar.c_creator}锛�");
+ // return;
+ //}
--
Gitblit v1.9.3