Browse Source

优化

master
常熟吴彦祖 2 months ago
parent
commit
8b3dd94e57
  1. 6
      src/api/check/physicalInventory.js
  2. 117
      src/views/modules/check/searchPhysicalInventory.vue

6
src/api/check/physicalInventory.js

@ -23,6 +23,12 @@ export const queryMaterialForManualCount = data => createAPI(`/check/physicalInv
// 手工盘点 - 添加物料到盘点单
export const addMaterialToCount = data => createAPI(`/check/physicalInventory/addMaterialToCount`, 'post', data)
// 一键添加物料 - 根据物料号精确查询所有标签并添加到盘点单 - rqrq
export const quickAddMaterialByPartNo = data => createAPI(`/check/physicalInventory/quickAddMaterialByPartNo`, 'post', data)
// 一键删除物料 - 根据物料号删除盘点单中该物料的所有标签 - rqrq
export const deleteMaterialByPartNo = data => createAPI(`/check/physicalInventory/deleteMaterialByPartNo`, 'post', data)
// 下达盘点单
export const releaseCount = data => createAPI(`/check/physicalInventory/releaseCount`, 'post', data)

117
src/views/modules/check/searchPhysicalInventory.vue

@ -309,8 +309,34 @@
<!-- 添加物料弹窗显示已有标签列表-->
<el-dialog :title="'添加物料 - ' + (addMaterialRow ? addMaterialRow.countNo : '')" :visible.sync="addMaterialDialogVisible" width="1000px" :close-on-click-modal="false" v-drag>
<div style="margin-bottom: 10px;">
<el-button type="primary" size="small" @click="showMaterialQueryDialog">添加物料</el-button>
<div style="margin-bottom: 10px; display: flex; align-items: center; gap: 15px;">
<el-button type="primary" size="small" @click="showMaterialQueryDialog">选择物料</el-button>
<!-- 一键物料操作 - rqrq -->
<div style="display: flex; align-items: center; gap: 5px;">
<span style="font-size: 12px; color: #606266;">一键物料操作:</span>
<el-input
v-model="quickMaterialPartNo"
placeholder="输入物料号回车"
clearable
ref="part"
size="small"
style="width: 150px;"
@keyup.enter.native="handleQuickMaterialAction"
:disabled="quickMaterialLoading">
</el-input>
<el-select v-model="quickMaterialAction" size="small" style="width: 80px;">
<el-option label="添加" value="add"></el-option>
<el-option label="删除" value="delete"></el-option>
</el-select>
<el-button
:type="quickMaterialAction === 'add' ? 'success' : 'danger'"
size="small"
@click="handleQuickMaterialAction"
:loading="quickMaterialLoading"
:disabled="quickMaterialLoading || !quickMaterialPartNo">
{{ quickMaterialLoading ? '处理中...' : (quickMaterialAction === 'add' ? '添加' : '删除') }}
</el-button>
</div>
</div>
<!-- 当前标签列表表格 - rqrq -->
<el-table :data="currentLabelList" :height="350" border v-loading="currentLabelListLoading" style="width: 100%;">
@ -377,7 +403,7 @@
</template>
<script>
import { searchCountHeaderList, createCycleCount, createManualCount, queryMaterialForManualCount, addMaterialToCount, releaseCount, pushCountToWcs, completeCount, cancelCount, deleteCount, searchCountLabelList, searchCountPalletList, searchCountResultList, searchMaterialSummary, searchOrderTaskByCountNo, searchOrderTaskDetail, getSysIfCount, updateSysIfCount, queryAdjustmentTransList, queryAdjustmentTransSubList } from '@/api/check/physicalInventory'
import { searchCountHeaderList, createCycleCount, createManualCount, queryMaterialForManualCount, addMaterialToCount, quickAddMaterialByPartNo, deleteMaterialByPartNo, releaseCount, pushCountToWcs, completeCount, cancelCount, deleteCount, searchCountLabelList, searchCountPalletList, searchCountResultList, searchMaterialSummary, searchOrderTaskByCountNo, searchOrderTaskDetail, getSysIfCount, updateSysIfCount, queryAdjustmentTransList, queryAdjustmentTransSubList } from '@/api/check/physicalInventory'
export default {
name: 'searchPhysicalInventory',
@ -527,6 +553,11 @@ export default {
currentLabelList: [],
currentLabelListLoading: false,
// - rqrq
quickMaterialPartNo: '',
quickMaterialAction: 'add', // add- delete-
quickMaterialLoading: false,
// - rqrq
currentLabelColumnList: [
{ columnProp: "unitId", headerAlign: "center", align: "center", columnLabel: "标签号", columnWidth: 150, columnSortable: false, showOverflowTooltip: true, fixed: "" },
@ -1003,6 +1034,86 @@ export default {
this.materialQueryDialogVisible = true
},
// - rqrq
handleQuickMaterialAction() {
if (!this.quickMaterialPartNo) {
this.$message.warning('请输入物料号')
return
}
if (!this.addMaterialRow) return
const partNo = this.quickMaterialPartNo.trim()
if (this.quickMaterialAction === 'add') {
// - rqrq
// this.$confirm(` ${partNo} `, '', {
// confirmButtonText: '',
// cancelButtonText: '',
// type: 'info'
// }).then(() => {
this.quickMaterialLoading = true
const params = {
site: this.$store.state.user.site,
countNo: this.addMaterialRow.countNo,
searchPartNo: partNo,
username: this.$store.state.user.name
}
quickAddMaterialByPartNo(params).then(({ data }) => {
if (data && data.code === 0) {
this.$message.success('添加成功,新增 ' + data.result + ' 个标签')
this.quickMaterialPartNo = ''
this.loadCurrentLabelList()
this.getDataList()
this.$nextTick(() => {
setTimeout(() => {
this.$refs.part.focus();
}, 50);
});
} else {
this.$alert(data.msg || '添加失败', '提示', { type: 'error' })
}
}).catch(() => {
this.$alert('网络错误', '错误', { confirmButtonText: '确定' })
}).finally(() => {
this.quickMaterialLoading = false
})
// }).catch(() => {})
} else {
// - rqrq
// this.$confirm(` ${partNo} `, '', {
// confirmButtonText: '',
// cancelButtonText: '',
// type: 'warning'
// }).then(() => {
this.quickMaterialLoading = true
const params = {
site: this.$store.state.user.site,
countNo: this.addMaterialRow.countNo,
searchPartNo: partNo
}
deleteMaterialByPartNo(params).then(({ data }) => {
if (data && data.code === 0) {
this.$message.success('删除成功,已删除 ' + data.result + ' 个标签')
this.quickMaterialPartNo = ''
this.loadCurrentLabelList()
this.getDataList()
this.$nextTick(() => {
setTimeout(() => {
this.$refs.part.focus();
}, 50);
});
} else {
this.$alert(data.msg || '删除失败', '提示', { type: 'error' })
}
}).catch(() => {
this.$alert('网络错误', '错误', { confirmButtonText: '确定' })
}).finally(() => {
this.quickMaterialLoading = false
})
// }).catch(() => {})
}
},
// - rqrq
queryMaterialForAdd() {
if (!this.materialQueryForm.searchPartNo) {

Loading…
Cancel
Save