入库更改

master
lion 1 week ago
parent 1b7419cd2d
commit e81a99313b

@ -450,26 +450,30 @@
},
// 保存数据 判断是否有相同的 物资
isHasEqual(arr, key, key1) {
if (arr.length === 0) {
return
}
for (let i = 0; i < arr.length; i++) {
if (arr.filter(item => item[key] == arr[i][key]).length > 1 && arr.filter(item => item[key1] == arr[i][key1])
.length > 1) {
return true
}
}
return false
const keys = arr.map(item => this.form.rukuleixing === '归还入库'
? String(item.inventorys_id)
: JSON.stringify([String(item[key]), String(item[key1])]))
return new Set(keys).size !== keys.length
},
saveData() {
this.form.id_stocks_items_stocks_id_relation = this.mingxiList
console.log('form', this.form)
// 保存时再次校验,覆盖导入和绕过明细弹窗的情况。
if (this.form.rukuleixing === '归还入库') {
const invalid = this.mingxiList.find(item => !item.inventorys_id ||
!Number.isFinite(Number(item.rukushuliang)) || Number(item.rukushuliang) <= 0 ||
(item.wuzileixing === '一物一码' && Number(item.rukushuliang) !== 1))
if (invalid) {
this.$message.warning('归还明细必须选择库存;一物一码设备每条归还数量必须为1')
return
}
}
// 是否有 重复的物资
const has = this.isHasEqual(this.form.id_stocks_items_stocks_id_relation, 'wuzibianma', 'rukupici')
if (has) {
Message({
type: 'warning',
message: '同一物资同一批次请不要重复录入'
message: this.form.rukuleixing === '归还入库' ? '同一库存设备请不要重复归还' : '同一物资同一批次请不要重复录入'
})
return
}

@ -75,7 +75,9 @@
</el-select> -->
</el-form-item>
<el-form-item label="入库数量" prop="rukushuliang">
<el-input-number v-model="formData.rukushuliang" style="width:100%" :min="0" />
<el-input-number v-model="formData.rukushuliang" style="width:100%"
:min="1" :max="rukuleixing === '归还入库' && formData.wuzileixing === '一物一码' ? 1 : Infinity"
:disabled="rukuleixing === '归还入库' && formData.wuzileixing === '一物一码'" />
</el-form-item>
<el-form-item label="生产日期" prop="shengchanriqi">
<el-date-picker v-model="formData.shengchanriqi" :disabled="hasPici" style="width:100%"
@ -377,7 +379,9 @@
this.formData.zichanmingcheng = res.zichanmingcheng
this.formData.wuzileixing = res.wuzileixing
this.formData.guigexinghao = res.guigexinghao
this.formData.zaikushuliang = res.res ? res.zaikushuliang : 0
this.formData.zaikushuliang = res.zaikushuliang == null ? 0 : res.zaikushuliang
this.formData.shunxuhao = res.shunxuhao
if (res.wuzileixing === '一物一码') this.formData.rukushuliang = 1
this.formData.wuziguige = stocks_items_info.wuziguige
this.formData.jiliangdanwei = stocks_items_info.jiliangdanwei
this.formData.fenlei = stocks_items_info.fenlei
@ -491,7 +495,17 @@
this.$refs.form.validate(valid => {
console.log('this.formData.rukushuliang', this.formData.rukushuliang)
if (valid) {
if (parseFloat(this.formData.rukushuliang) < 1) {
if (this.rukuleixing === '归还入库') {
if (!this.formData.inventorys_id) {
this.$message.warning('请选择归还的库存设备')
return
}
if (this.formData.wuzileixing === '一物一码' && Number(this.formData.rukushuliang) !== 1) {
this.$message.warning('一物一码设备每条归还数量必须为1')
return
}
}
if (!Number.isFinite(Number(this.formData.rukushuliang)) || parseFloat(this.formData.rukushuliang) < 1) {
this.$message.warning('请填写正确的入库数量')
return
}

Loading…
Cancel
Save