diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/storage/StorageForm.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/storage/StorageForm.vue
index aefff97a..76161dee 100644
--- a/mes-ui/mes-ui-admin-vue3/src/views/heli/storage/StorageForm.vue
+++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/storage/StorageForm.vue
@@ -374,6 +374,7 @@ const handleStatus = async (num) => {
query.id = formData.value.id
query.type = 'update'
openerror()
+
reload()
}
@@ -414,19 +415,23 @@ const UpError = (err, file, fileList) => {
}
const openerror = () => {
- setTimeout(() => {
- // 弹出错误信息提示框
- ElMessageBox.alert(
- // 使用错误信息作为提示内容
- `文件名为:${failedAttachmentsName.value}的上传失败`,
- `文件格式不正确或网络问题 请您稍微再试`,
- {
- dangerouslyUseHTMLString: false, // 由于我们不是使用HTML字符串,所以这里设置为false
- confirmButtonText: '知道了',
- center: true
- }
- )
- }, 1000)
+
+
+ setTimeout(() => {
+ if(failedAttachmentsName.value.length>0){
+ // 弹出错误信息提示框
+ ElMessageBox.alert(
+ // 使用错误信息作为提示内容
+ `文件名为:${failedAttachmentsName.value.join(' / ')}上传失败`,
+ `文件格式不正确或网络问题 请您稍微再试`,
+ {
+ dangerouslyUseHTMLString: false, // 由于我们不是使用HTML字符串,所以这里设置为false
+ confirmButtonText: '知道了',
+ center: true
+ }
+ )
+ }
+ }, 1000)
}
const refreshAttachments = (files, type) => {
@@ -536,7 +541,6 @@ const submitForm = async () => {
query.type = 'update'
//页面重新加载
openerror()
-
reload()
}
diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/storage/StorageOut.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/storage/StorageOut.vue
index 93cfbcba..f430ad98 100644
--- a/mes-ui/mes-ui-admin-vue3/src/views/heli/storage/StorageOut.vue
+++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/storage/StorageOut.vue
@@ -9,8 +9,7 @@
-
+
@@ -29,8 +28,7 @@
-
+
@@ -41,8 +39,7 @@
-
+
@@ -50,7 +47,7 @@
-
+
@@ -59,16 +56,14 @@
-
+
-
+
@@ -79,7 +74,7 @@
-
+
@@ -95,17 +90,14 @@
新增
-
+
物料名称
- handleMatName(scope, val)" class="!w-180px">
+ handleMatName(scope, val)" class="!w-180px">
@@ -114,24 +106,21 @@
-
+
-
+
出库库区
-
+
@@ -142,8 +131,7 @@
-
+
@@ -152,16 +140,15 @@
出库数量
-
-
+
+
-
+
@@ -175,8 +162,7 @@
复制 -->
-
+
删除
@@ -196,15 +182,12 @@
-
+ }" name="files" :show-file-list="false" :auto-upload="false" :data="matUploadData" :on-change="matUploadChange" :on-error="UpError" class="upload-file-uploader">
- 上传
+ 上传
@@ -219,12 +202,10 @@
-
+
删除
-
+
下载
@@ -280,11 +261,11 @@
@@ -364,16 +345,13 @@ const handleStockType = async (typeid) => {
if (typeid == 1) {
enableHeadNo.value = false
} else {
-
enableHeadNo.value = true
}
-
}
const handleStatus = async (num) => {
formData.value.status = num
const data = formData.value as unknown as StorageApi.StorageVO
- if(num==2){
-
+ if (num == 2) {
// 校验表单
await formRef.value.validate()
if (formData.value.matItemDOList.length === 0) {
@@ -386,8 +364,8 @@ const handleStatus = async (num) => {
} catch (e) {
return
}
- //获取最新库存信息
- const matCurrentData = await StorageMatApi.getStorageMatList(0)
+ //获取最新库存信息
+ const matCurrentData = await StorageMatApi.getStorageMatList(0)
var hasRestNum = true
formData.value.matItemDOList.forEach((rest) => {
if (
@@ -396,7 +374,8 @@ const handleStatus = async (num) => {
mat.matId == rest.matId &&
mat.pnId == rest.pnId &&
mat.matRest < Number(rest.storageOkQty)
- ) !== undefined || rest.storageOkQty.length ==0
+ ) !== undefined ||
+ rest.storageOkQty.length == 0
) {
hasRestNum = false
}
@@ -411,11 +390,10 @@ const handleStatus = async (num) => {
await saveFormData()
data.outbound = useUserStore().getUser.id
-
- }else{
- await StorageApi.updateStorage(data)
- data.cancel = useUserStore().getUser.id
- commonResult = 'common.updateSuccess'
+ } else {
+ await StorageApi.updateStorage(data)
+ data.cancel = useUserStore().getUser.id
+ commonResult = 'common.updateSuccess'
}
await StorageApi.updateStorageStatus(data)
@@ -423,11 +401,10 @@ const handleStatus = async (num) => {
query.id = formData.value.id
query.type = 'update'
- openerror()
+ openerror()
reload()
}
-
// ====================附件信息 开始=======================================
const uploadUrl = ref(import.meta.env.VITE_UPLOAD_BATCH_URL)
const matUploadRef = ref()
@@ -456,21 +433,22 @@ const UpError = (err, file, fileList) => {
const openerror = () => {
setTimeout(() => {
- // 弹出错误信息提示框
- ElMessageBox.alert(
- // 使用错误信息作为提示内容
- `文件名为:${failedAttachmentsName.value}的上传失败`,
- `文件格式不正确或网络问题 请您稍微再试`,
- {
- dangerouslyUseHTMLString: false, // 由于我们不是使用HTML字符串,所以这里设置为false
- confirmButtonText: '知道了',
- center: true
- }
- )
+ if (failedAttachmentsName.value.length > 0) {
+ // 弹出错误信息提示框
+ ElMessageBox.alert(
+ // 使用错误信息作为提示内容
+ `文件名为:${failedAttachmentsName.value.join(' / ')}上传失败`,
+ `文件格式不正确或网络问题 请您稍微再试`,
+ {
+ dangerouslyUseHTMLString: false,
+ confirmButtonText: '知道了',
+ center: true
+ }
+ )
+ }
}, 1000)
}
-
const refreshAttachments = (files, type) => {
formData.value.attachments = formData.value.attachments.filter((value) => value.id)
@@ -529,7 +507,6 @@ const saveFormData = async () => {
formData.value.id = await StorageApi.createStorage(data)
commonResult = 'common.createSuccess'
} else {
-
await StorageApi.updateStorage(data)
commonResult = 'common.updateSuccess'
}
@@ -576,7 +553,8 @@ const submitForm = async () => {
mat.matId == rest.matId &&
mat.pnId == rest.pnId &&
mat.matRest < Number(rest.storageOkQty)
- ) !== undefined || rest.storageOkQty.length ==0
+ ) !== undefined ||
+ rest.storageOkQty.length == 0
) {
hasRestNum = false
}
@@ -601,7 +579,6 @@ const submitForm = async () => {
var matCount = 1
const onAddItem = () => {
-
if (formData.value.whId) {
const newData = {
// 新数据的属性
@@ -621,7 +598,7 @@ const onAddItem = () => {
lotNo: '',
description: '',
productBomItemValueDOList: [],
- matList : matList.value
+ matList: matList.value
}
matCount = matCount + 1
@@ -648,47 +625,62 @@ const handleWh = async (wid) => {
formData.value.rgId = ''
// 获得库区列表
- rgList.value = (await RgApi.getSimpList()).filter( rg => rg.wh_id == wid)
+ rgList.value = (await RgApi.getSimpList()).filter((rg) => rg.wh_id == wid)
// 获得库位列表
- pnList.value = (await PnApi.getSimpList()).filter( pn => pn.wh_id == wid)
+ pnList.value = (await PnApi.getSimpList()).filter((pn) => pn.wh_id == wid)
//await getMatList()
-
}
-const getMatList = async (name) =>{
+const getMatList = async (name) => {
// 获得物料列表
let matParams = {
- pageNo: 1,
- pageSize: 10,
- status: '1'
- }
- if(name.length>0){
- matParams.name = name
- }
+ pageNo: 1,
+ pageSize: 10,
+ status: '1'
+ }
+ if (name.length > 0) {
+ matParams.name = name
+ }
- //const matLastRemoteData = await StorageMatApi.getStorageMatList(0)
+ //const matLastRemoteData = await StorageMatApi.getStorageMatList(0)
- const dataMat = await MaterialApi.getMaterialPage(matParams)
- matList.value = dataMat.list
- // matList.value = dataMat.list.filter(
- // (item) =>
- // matLastRemoteData.find(
- // (fish) => fish.matId === item.id && fish.whId == formData.value.whId
- // ) !== undefined
- // )
+ const dataMat = await MaterialApi.getMaterialPage(matParams)
+ matList.value = dataMat.list
+ // matList.value = dataMat.list.filter(
+ // (item) =>
+ // matLastRemoteData.find(
+ // (fish) => fish.matId === item.id && fish.whId == formData.value.whId
+ // ) !== undefined
+ // )
}
-const handlePn = async (scope) =>{
+const handlePn = async (scope) => {
scope.row.matList = matList.value
- var repeatItem = formData.value.matItemDOList.filter( mat => mat.matId==scope.row.matId && mat.pnId == scope.row.pnId)
- if(repeatItem.length>1){
- message.alertWarning('物料编码['+repeatItem[0].matCode+']出库库位存在多行数据,请修改,避免重复出库')
- return
+ var repeatItem = formData.value.matItemDOList.filter(
+ (mat) => mat.matId == scope.row.matId && mat.pnId == scope.row.pnId
+ )
+ if (repeatItem.length > 1) {
+ message.alertWarning(
+ '物料编码[' + repeatItem[0].matCode + ']出库库位存在多行数据,请修改,避免重复出库'
+ )
+ return
}
- if (matLastData.value.find((item) => item.matId === scope.row.matId && item.whId== formData.value.whId && item.pnId == scope.row.pnId)) {
- const matVo = matLastData.value.find((item) => item.matId === scope.row.matId && item.whId== formData.value.whId && item.pnId == scope.row.pnId)
+ if (
+ matLastData.value.find(
+ (item) =>
+ item.matId === scope.row.matId &&
+ item.whId == formData.value.whId &&
+ item.pnId == scope.row.pnId
+ )
+ ) {
+ const matVo = matLastData.value.find(
+ (item) =>
+ item.matId === scope.row.matId &&
+ item.whId == formData.value.whId &&
+ item.pnId == scope.row.pnId
+ )
// scope.row.matId = matVo.matId
// scope.row.matName = matVo.matName
// scope.row.matCode = matVo.matCode
@@ -701,15 +693,13 @@ const handlePn = async (scope) =>{
// scope.row.storageOkQty = matVo.storageOkQty
// scope.row.lotNo = matVo.lotNo
// scope.row.description = matVo.description
-
- } else{
+ } else {
scope.row.rgId = ''
scope.row.matRest = '0'
message.alertWarning('当前库位无库存数量可出库')
}
}
-
const matSelectLoading = ref(false)
const remoteMatNameSearch = async (name) => {
matSelectLoading.value = true
@@ -719,20 +709,23 @@ const remoteMatNameSearch = async (name) => {
}
const handleMatName = async (scope, matid) => {
- scope.row.matId = scope.row.matList.find((item) => item.id === matid)?.id
- scope.row.matName = scope.row.matList.find((item) => item.id === matid)?.name
- scope.row.matCode = scope.row.matList.find((item) => item.id === matid)?.code
- scope.row.matSpec = scope.row.matList.find((item) => item.id === matid)?.spec
- scope.row.matType = scope.row.matList.find((item) => item.id === matid)?.materialType
- scope.row.matUnit = scope.row.matList.find((item) => item.id === matid)?.unit
-
- scope.row.rgId = ''
- scope.row.pnId = ''
- if(matid.length==0){
-
- }
+ scope.row.matId = scope.row.matList.find((item) => item.id === matid)?.id
+ scope.row.matName = scope.row.matList.find((item) => item.id === matid)?.name
+ scope.row.matCode = scope.row.matList.find((item) => item.id === matid)?.code
+ scope.row.matSpec = scope.row.matList.find((item) => item.id === matid)?.spec
+ scope.row.matType = scope.row.matList.find((item) => item.id === matid)?.materialType
+ scope.row.matUnit = scope.row.matList.find((item) => item.id === matid)?.unit
+
+ scope.row.rgId = ''
+ scope.row.pnId = ''
+ if (matid.length == 0) {
+ }
- scope.row.pnlist = pnList.value.filter(pn => pn.wh_id == formData.value.whId && matLastData.value.filter( mat => mat.matId == matid && mat.pnId == pn.id).length>0)
+ scope.row.pnlist = pnList.value.filter(
+ (pn) =>
+ pn.wh_id == formData.value.whId &&
+ matLastData.value.filter((mat) => mat.matId == matid && mat.pnId == pn.id).length > 0
+ )
}
const matLastData = ref([])
@@ -746,14 +739,14 @@ const btnCancel = ref(false)
// 根据页面动作和数据状态控制按钮输入框信息
const initStatus = async (status) => {
- switch(status){
+ switch (status) {
case 1:
ctrView.value = false
ctrSave.value = false
ctrCancel.value = true
ctrDelete.value = false
- btnSave.value= true
+ btnSave.value = true
btnCancel.value = false
break
case 2:
@@ -761,7 +754,7 @@ const initStatus = async (status) => {
ctrSave.value = true
ctrCancel.value = false
ctrDelete.value = true
- btnSave.value= false
+ btnSave.value = false
btnCancel.value = true
break
case 3:
@@ -769,21 +762,21 @@ const initStatus = async (status) => {
ctrSave.value = true
ctrCancel.value = true
ctrDelete.value = true
- btnSave.value= false
+ btnSave.value = false
btnCancel.value = false
break
default:
break
}
// 查看页面时可操作控件禁用
- if(query.type === 'review'){
- ctrView.value = true
- ctrSave.value = true
- ctrCancel.value = true
- ctrDelete.value = true
-
- btnSave.value= false
- btnCancel.value = false
+ if (query.type === 'review') {
+ ctrView.value = true
+ ctrSave.value = true
+ ctrCancel.value = true
+ ctrDelete.value = true
+
+ btnSave.value = false
+ btnCancel.value = false
}
}
const matList = ref([]) // 物料列表
@@ -793,7 +786,6 @@ const matSimpList = ref([]) // 物料基本信息列表
const matSimpVirtualList = ref([]) // 物料基本信息列表
/** 初始化 **/
onMounted(async () => {
-
// 页面标题展示
dialogTitle.value = query.type === 'review' ? '查看' : t('action.' + query.type)
@@ -808,17 +800,15 @@ onMounted(async () => {
// 编辑时获取入库单据信息,包括基础信息、物料信息、附件信息
if (query.id) {
-
// 获取原始物料信息
matSimpList.value = await MaterialApi.getSimpList()
matSimpVirtualList.value = await MaterialApi.getSimpVirtualList()
matEditList.value = matSimpList.value //matSimpList.value.filter( mat => matLastData.value.filter( row => row.matId == mat.id).length>0)
-
// 获取库存信息
formData.value = await StorageApi.getStorage(query.id)
- if(formData.value.vmatName){
+ if (formData.value.vmatName) {
matEditList.value = matSimpVirtualList.value
}
@@ -827,11 +817,11 @@ onMounted(async () => {
// 获得库区列表
const dataRgList = await RgApi.getSimpList()
- rgList.value = dataRgList.filter( rg => rg.wh_id == formData.value.whId)
+ rgList.value = dataRgList.filter((rg) => rg.wh_id == formData.value.whId)
// 获得库区列表
const dataPnList = await PnApi.getSimpList()
- pnList.value = dataPnList.filter( pn => pn.wh_id == formData.value.whId)
+ pnList.value = dataPnList.filter((pn) => pn.wh_id == formData.value.whId)
// 获取库存物料列表信息
const queryParamsMat = reactive({
@@ -845,13 +835,15 @@ onMounted(async () => {
formData.value.matItemDOList.forEach((item) => {
item.cid = matCount
item.matId = matEditList.value.find((record) => record.id === item.matId)?.id
- item.matCode = matEditList.value.find( (record) => record.id === item.matId)?.code
+ item.matCode = matEditList.value.find((record) => record.id === item.matId)?.code
item.matName = matEditList.value.find((record) => record.id === item.matId)?.name
item.matSpec = matEditList.value.find((record) => record.id === item.matId)?.spec
item.matType = matEditList.value.find((record) => record.id === item.matId)?.material_type
item.matUnit = matEditList.value.find((record) => record.id === item.matId)?.unit
- item.matRest = matLastData.value.find( row => row.matId == item.matId && row.pnId == item.pnId)?.matRest
- item.matRest = (item.matRest==undefined || item.matRest.length==0)?0:item.matRest
+ item.matRest = matLastData.value.find(
+ (row) => row.matId == item.matId && row.pnId == item.pnId
+ )?.matRest
+ item.matRest = item.matRest == undefined || item.matRest.length == 0 ? 0 : item.matRest
item.pnlist = pnList.value.filter((pn) => pn.wh_id === item.whId)
item.matList = matEditList.value.filter((record) => record.id === item.matId)
matCount = matCount + 1