Browse Source

【nev-pc】暂存

ag_report_nev
安虹睿 1 year ago
parent
commit
11806b5829
  1. 16
      fe/PC/src/api/wms-api.js
  2. 7
      fe/PC/src/filters/status.js
  3. 48
      fe/PC/src/router/index.js
  4. 1
      fe/PC/src/utils/detailsTableColumns/index.js
  5. 9
      fe/PC/src/utils/tableColumns/index.js
  6. 9
      fe/PC/src/utils/tabsDesTions/index.js
  7. 54
      fe/PC/src/views/basicData/ItemsManage/Utensil.vue
  8. 57
      fe/PC/src/views/finishedProductManage/dismantle/customerDismantleJob.vue
  9. 34
      fe/PC/src/views/inventoryManage/InventoryQuery/InventoryTransaction-Query.vue
  10. 39
      fe/PC/src/views/materialIssueManage/PT/IssueJobPT.vue
  11. 6
      fe/PC/src/views/materialIssueManage/PT/IssueRequestPT.vue
  12. 39
      fe/PC/src/views/materialIssueManage/ZP/IssueJobZP.vue
  13. 6
      fe/PC/src/views/materialIssueManage/ZP/IssueRequestZP.vue
  14. 38
      fe/PC/src/views/materialIssueManage/ZS/IssueJobZS.vue
  15. 6
      fe/PC/src/views/materialIssueManage/ZS/IssueRequestZS.vue
  16. 166
      fe/PC/src/views/materialIssueManage/libraryShiftSearch.vue

16
fe/PC/src/api/wms-api.js

@ -656,14 +656,6 @@ export async function productionRecycleJobHandle(id,data) {
}) })
} }
// 客户退拆任务-完成 todo
export async function productionRecycleJobComplete(id) {
return request({
url: baseURL + 'wms/store/production-recycle-job/handle/'+id,
method: 'post',
})
}
// 客户退拆任务-执行后打印 // 客户退拆任务-执行后打印
export async function productRecycleNoteExport(data) { export async function productRecycleNoteExport(data) {
return request({ return request({
@ -674,6 +666,14 @@ export async function productRecycleNoteExport(data) {
}) })
} }
// 客户退拆任务-完成 todo
// export async function productionRecycleJobComplete(id) {
// return request({
// url: baseURL + 'wms/store/production-recycle-job/handle/'+id,
// method: 'post',
// })
// }
// 根据编号获取字典信息 // 根据编号获取字典信息
// export function getDictByCode(code) { // export function getDictByCode(code) {
// return request({ // return request({

7
fe/PC/src/filters/status.js

@ -83,6 +83,11 @@ import store from '@/store/index'
value: 3, value: 3,
background:"#31BB99", background:"#31BB99",
}, },
4: {
label: "部分完成",
value: 4,
background:"#21DF4B",
},
8: { 8: {
label: "关闭", label: "关闭",
value: 8, value: 8,
@ -2470,7 +2475,7 @@ export function utensilType(index, prop) {
}, },
2: { 2: {
value: 2, value: 2,
label: "客户" label: "外物流"
}, },
} }
return Enum(type, index, prop) return Enum(type, index, prop)

48
fe/PC/src/router/index.js

@ -318,6 +318,54 @@ export const constantRoutes = [
} }
}] }]
}, },
{
path: '/',
component: Layout,
redirect: '/gridlayout',
hidden: true,
children: [{
path: 'IssueRequestZP',
component: () => import('@/views/materialIssueManage/ZP/IssueRequestZP.vue'),
name: 'IssueRequestZP',
meta: {
keepAlive : true,
title: '人工发料申请(装配)',
icon: '成品发运任务',
}
}]
},
{
path: '/',
component: Layout,
redirect: '/gridlayout',
hidden: true,
children: [{
path: 'IssueJobZP',
component: () => import('@/views/materialIssueManage/ZP/IssueJobZP.vue'),
name: 'IssueJobZP',
meta: {
keepAlive : true,
title: '人工发料任务(装配)',
icon: '成品发运任务',
}
}]
},
{
path: '/',
component: Layout,
redirect: '/gridlayout',
hidden: true,
children: [{
path: 'IssueNoteZP',
component: () => import('@/views/materialIssueManage/ZP/IssueNoteZP.vue'),
name: 'IssueNoteZP',
meta: {
keepAlive : true,
title: '人工发料记录(装配)',
icon: '成品发运任务',
}
}]
},
{ {
path: '/', path: '/',
component: Layout, component: Layout,

1
fe/PC/src/utils/detailsTableColumns/index.js

@ -1760,6 +1760,7 @@ export const customerDismantleJob = [
{ label: "标包数量", prop: 'stdPackQty' }, { label: "标包数量", prop: 'stdPackQty' },
{ label: "单位", prop: 'uom' }, { label: "单位", prop: 'uom' },
{ label: "数量", prop: 'qty' }, { label: "数量", prop: 'qty' },
{ label: "已完成数量", prop: 'executedQty' },
{ label: "Bom版本", prop: 'bomVersion' }, { label: "Bom版本", prop: 'bomVersion' },
{ label: "库位代码", prop: 'locationCode' }, { label: "库位代码", prop: 'locationCode' },
{ label: "库区", prop:"locationArea" }, { label: "库区", prop:"locationArea" },

9
fe/PC/src/utils/tableColumns/index.js

@ -2354,6 +2354,7 @@ export const customerDismantleJob = [
type: "name", type: "name",
width: orderWidth width: orderWidth
}, },
{ label: "申请单号", prop: "requestNumber",width: orderWidth },
{ label: "状态", prop: "jobStatus", type: "tagFilter", filters: "jobStatus" }, { label: "状态", prop: "jobStatus", type: "tagFilter", filters: "jobStatus" },
{ label: "承接时间", prop: 'acceptTime', type: "dateTime" }, { label: "承接时间", prop: 'acceptTime', type: "dateTime" },
{ label: "承接者用户名", prop: 'acceptUserName' }, { label: "承接者用户名", prop: 'acceptUserName' },
@ -4073,7 +4074,9 @@ export const Utensil = [
fixed: "left", fixed: "left",
type: "name" type: "name"
}, },
{ label: _Names.stdPackQty, prop: "stdQty",isNumber:true }, // { label: _Names.stdPackQty, prop: "stdQty",isNumber:true },
{ label: "器具类型", prop: 'containerType',type:"filter",filters:"utensilType" },
{ label: "器具规格", prop: "specificationsType",type: "filter", filters: "getDict" , dictType:"ContainerSpecificationsType"},
{ label: _Public.creationTime, prop: "creationTime", type: "dateTime" }, { label: _Public.creationTime, prop: "creationTime", type: "dateTime" },
{ label: '创建人', prop: "creator" }, { label: '创建人', prop: "creator" },
{ label: _Public.lastModificationTime, prop: "lastModificationTime", type: "dateTime" }, { label: _Public.lastModificationTime, prop: "lastModificationTime", type: "dateTime" },
@ -4105,8 +4108,8 @@ export const callEmptyUtensilJob = [
}, },
{ label: "状态", prop: "jobStatus",type: "tagFilter", filters: "jobStatus" }, { label: "状态", prop: "jobStatus",type: "tagFilter", filters: "jobStatus" },
{ label: "器具呼叫号码", prop: 'containerRequestNumber' }, { label: "器具呼叫号码", prop: 'containerRequestNumber' },
{ label: "器具类型", prop: 'containerType' }, { label: "器具类型", prop: 'containerType',type:"filter",filters:"utensilType" },
{ label: "器具规格", prop: 'specificationsType' }, { label: "器具规格", prop: "specificationsType",type: "filter", filters: "getDict" , dictType:"ContainerSpecificationsType"},
{ label: "呼叫库位代码", prop: 'requestLocationCode' }, { label: "呼叫库位代码", prop: 'requestLocationCode' },
{ label: "任务类型", prop: "jobType", type: "filter", filters: "taskType" }, { label: "任务类型", prop: "jobType", type: "filter", filters: "taskType" },
{ label: "任务描述", prop: 'jobDescription' }, { label: "任务描述", prop: 'jobDescription' },

9
fe/PC/src/utils/tabsDesTions/index.js

@ -1699,6 +1699,7 @@ export const customerDismantleJob = [
fixed: "left", fixed: "left",
type: "name", type: "name",
}, },
{ label: "申请单号", prop: "requestNumber" },
{ label: "状态", prop: "jobStatus", type: "tagFilter", filters: "jobStatus" }, { label: "状态", prop: "jobStatus", type: "tagFilter", filters: "jobStatus" },
{ label: "承接时间", prop: 'acceptTime', type: "dateTime" }, { label: "承接时间", prop: 'acceptTime', type: "dateTime" },
{ label: "承接者用户名", prop: 'acceptUserName' }, { label: "承接者用户名", prop: 'acceptUserName' },
@ -2946,7 +2947,9 @@ export const PositionCode = [
// 器具 // 器具
export const Utensil = [ export const Utensil = [
{ label: '器具代码',prop: "code",}, { label: '器具代码',prop: "code",},
{ label: _Names.stdPackQty, prop: "stdQty" }, // { label: _Names.stdPackQty, prop: "stdQty" },
{ label: "器具类型", prop: 'containerType',type:"filter",filters:"utensilType" },
{ label: "器具规格", prop: "specificationsType",type: "filter", filters: "getDict" , dictType:"ContainerSpecificationsType"},
{ label: _Public.creationTime, prop: "creationTime", type: "dateTime" }, { label: _Public.creationTime, prop: "creationTime", type: "dateTime" },
{ label: '创建人', prop: "creator" }, { label: '创建人', prop: "creator" },
{ label: _Public.lastModificationTime, prop: "lastModificationTime", type: "dateTime" }, { label: _Public.lastModificationTime, prop: "lastModificationTime", type: "dateTime" },
@ -2967,8 +2970,8 @@ export const callEmptyUtensilJob = [
{ label: "任务编号", prop: "number" }, { label: "任务编号", prop: "number" },
{ label: "状态", prop: "status",type: "tagFilter", filters: "jobStatus" }, { label: "状态", prop: "status",type: "tagFilter", filters: "jobStatus" },
{ label: "器具呼叫号码", prop: 'containerRequestNumber' }, { label: "器具呼叫号码", prop: 'containerRequestNumber' },
{ label: "器具类型", prop: 'containerType' }, { label: "器具类型", prop: 'containerType',type:"filter",filters:"utensilType" },
{ label: "器具规格", prop: 'specificationsType' }, { label: "器具规格", prop: "specificationsType",type: "filter", filters: "getDict" , dictType:"ContainerSpecificationsType"},
{ label: "呼叫库位代码", prop: 'requestLocationCode' }, { label: "呼叫库位代码", prop: 'requestLocationCode' },
{ label: "任务类型", prop: "jobType", type: "filter", filters: "taskType" }, { label: "任务类型", prop: "jobType", type: "filter", filters: "taskType" },
{ label: "任务描述", prop: 'jobDescription' }, { label: "任务描述", prop: 'jobDescription' },

54
fe/PC/src/views/basicData/ItemsManage/Utensil.vue

@ -132,57 +132,47 @@ export default {
CreateFormData: { CreateFormData: {
code:null, code:null,
codeSuffix:null, codeSuffix:null,
type:"Q", prefixType:"Q",
stdQty:null,
creator: null, creator: null,
remark:null, remark:null,
model:null,
type:null,
}, },
// //
editFormData: { editFormData: {
code:null, code:null,
codeSuffix:null, codeSuffix:null,
type:"Q", prefixType:"Q",
stdQty:null,
remark:null, remark:null,
creator: null, creator: null,
concurrencyStamp: "" concurrencyStamp: "",
model:null,
type:null,
}, },
editOptions: {}, editOptions: {},
CreateForm: [ CreateForm: [
{ type: "prefixInput", label: "器具号", prop: "codeSuffix",prefixProp:"type",prefixWidth:'50px',prefixDisabled:true, colSpan: 12 }, { type: "prefixInput", label: "器具号", prop: "codeSuffix",prefixProp:"prefixType",prefixWidth:'50px',prefixDisabled:true, colSpan: 12 },
//todo: { type: "select", options: "ContainerSpecificationsType",label: "器具规格", prop: "model", colSpan: 12 },
{ type: "select", options: "ContainerSpecificationsType",label: "器具规格", prop: "size", colSpan: 12 }, { type: "select",options: "utensilType", label: "器具类型", prop: "type", colSpan: 12 },
//todo:
{ type: "select",options: "utensilType", label: "器具类型", prop: "type2", colSpan: 12 },
//todo
{ type: "inputNumber", label: "标包数量", prop: "stdQty", colSpan: 12, min:1 },
{ type: "input", label: "备注", prop: "remark", colSpan: 12 }, { type: "input", label: "备注", prop: "remark", colSpan: 12 },
], ],
editForm: [ editForm: [
{ disabled:true,type: "prefixInput", label: "器具号", prop: "codeSuffix",prefixProp:"type",prefixWidth:'50px',prefixDisabled:true, colSpan: 12 }, { disabled:true,type: "prefixInput", label: "器具号", prop: "codeSuffix",prefixProp:"prefixType",prefixWidth:'50px',prefixDisabled:true, colSpan: 12 },
//todo: { type: "select",options: "ContainerSpecificationsType", label: "器具规格", prop: "model", colSpan: 12 },
{ type: "select",options: "ContainerSpecificationsType", label: "器具规格", prop: "size", colSpan: 12 }, { type: "select",options: "utensilType", label: "器具类型", prop: "type", colSpan: 12 },
//todo:
{ type: "select",options: "utensilType", label: "器具类型", prop: "type2", colSpan: 12 },
//todo
{ type: "inputNumber", label: "标包数量", prop: "stdQty", colSpan: 12, min:1 },
{ type: "input", label: "备注", prop: "remark", colSpan: 12 }, { type: "input", label: "备注", prop: "remark", colSpan: 12 },
], ],
//todo:+ //todo:+
editRules: { editRules: {
cerateRule: { cerateRule: {
codeSuffix: [{ required: true, trigger: "blur", message: "不可为空" }], codeSuffix: [{ required: true, trigger: "blur", message: "不可为空" }],
stdQty: [ model: [{ required: true, trigger: "blur", message: "不可为空" }],
{ required: true, trigger: "blur", message: "不可为空" }, type: [{ required: true, trigger: "blur", message: "不可为空" }],
...detailsRules.numberInput
],
}, },
editRule: { editRule: {
codeSuffix: [{ required: true, trigger: "blur", message: "不可为空" }], codeSuffix: [{ required: true, trigger: "blur", message: "不可为空" }],
stdQty: [ model: [{ required: true, trigger: "blur", message: "不可为空" }],
{ required: true, trigger: "blur", message: "不可为空" }, type: [{ required: true, trigger: "blur", message: "不可为空" }],
...detailsRules.numberInput
],
} }
}, },
}; };
@ -213,9 +203,9 @@ export default {
this.displayDialog.editDialog = true this.displayDialog.editDialog = true
// todo:-code // todo:-code
this.editFormData.type = "Q" this.editFormData.prefixType = "Q"
this.editFormData.codeSuffix = (this.editFormData.type == 'Q') ? (this.editFormData.code && this.editFormData.code.length > 0 ? this.editFormData.code.slice(1) : null) : this.editFormData.code this.editFormData.codeSuffix = (this.editFormData.prefixType == 'Q') ? (this.editFormData.code && this.editFormData.code.length > 0 ? this.editFormData.code.slice(1) : null) : this.editFormData.code
// this.editFormData.type = this.editFormData.code && this.editFormData.code.length > 0 ? this.editFormData.code.slice(0,1) : "Q" // this.editFormData.prefixType = this.editFormData.code && this.editFormData.code.length > 0 ? this.editFormData.code.slice(0,1) : "Q"
// this.editFormData.codeSuffix = this.editFormData.code && this.editFormData.code.length > 0 ? this.editFormData.code.slice(1) : null // this.editFormData.codeSuffix = this.editFormData.code && this.editFormData.code.length > 0 ? this.editFormData.code.slice(1) : null
console.log(210,this.editFormData) console.log(210,this.editFormData)
}else{ }else{
@ -225,10 +215,10 @@ export default {
FormSubmitHandle(val){ FormSubmitHandle(val){
// todo:codeType + code // todo:codeType + code
if(this.formReveal){ if(this.formReveal){
this.CreateFormData.code = this.CreateFormData.type + this.CreateFormData.codeSuffix this.CreateFormData.code = this.CreateFormData.prefixType + this.CreateFormData.codeSuffix
this.CreateFormData.creator = store.getters.name.userName this.CreateFormData.creator = store.getters.name.userName
}else{ }else{
this.editFormData.code = this.editFormData.type + this.editFormData.codeSuffix this.editFormData.code = this.editFormData.prefixType + this.editFormData.codeSuffix
this.editFormData.creator = store.getters.name.userName this.editFormData.creator = store.getters.name.userName
} }
this.$nextTick(()=>{ this.$nextTick(()=>{

57
fe/PC/src/views/finishedProductManage/dismantle/customerDismantleJob.vue

@ -69,7 +69,7 @@ import {
getBomByComponentTree, getBomByComponentTree,
productRecycleNoteExport, productRecycleNoteExport,
productionRecycleJobHandle, productionRecycleJobHandle,
productionRecycleJobComplete // productionRecycleJobComplete
} from "@/api/wms-api"; } from "@/api/wms-api";
import { tableMixins } from "@/mixins/TableMixins" import { tableMixins } from "@/mixins/TableMixins"
import { LoadingMixins } from "@/mixins/LoadingMixins" import { LoadingMixins } from "@/mixins/LoadingMixins"
@ -118,18 +118,18 @@ export default {
type: 'warning', type: 'warning',
label: '执行', label: '执行',
name: "handle", name: "handle",
// todo: // ++
hide: () => { return this.hideButton([1]) }, hide: () => { return this.hideButton([1,2,4]) },
size: 'mini'
},
{
type: 'success',
label: '完成',
name: "complete",
// todo:
hide: () => { return this.hideButton([1]) },
size: 'mini' size: 'mini'
}, },
// {
// type: 'success',
// label: '',
// name: "complete",
// // todo:
// hide: () => { return this.hideButton([1]) },
// size: 'mini'
// },
], ],
// //
CreateFormData: { CreateFormData: {
@ -147,10 +147,10 @@ export default {
type: "number", type: "number",
trigger: ["blur"], trigger: ["blur"],
validator: (rule, value, callback) => { validator: (rule, value, callback) => {
// todo:recommendQty //
let _InventoryQty = Number(this.propsData.details[0].recommendQty) let _InventoryQty = Number(this.propsData.details[0].qty) - Number(this.propsData.details[0].executedQty)
if(_InventoryQty < value){ if(_InventoryQty < value){
return callback(new Error(`数量不能大于库存数量${_InventoryQty}`)) return callback(new Error(`数量不能大于未完成数量${_InventoryQty}`))
}else{ }else{
callback() callback()
} }
@ -197,10 +197,10 @@ export default {
// //
if (val == "handle") { if (val == "handle") {
this.formTitle = this.$route.meta.title + "执行"; this.formTitle = this.$route.meta.title + "执行";
this.displayDialog.newDialog = true
this.CreateFormData = JSON.parse(JSON.stringify(this.propsData)); this.CreateFormData = JSON.parse(JSON.stringify(this.propsData));
// todo: //
this.CreateFormData.qty = this.propsData.details[0].recommendQty let _qty = Number(this.propsData.details[0].qty) - Number(this.propsData.details[0].executedQty)
this.$set(this.CreateFormData, "qty", _qty)
this.childTableData = [{ this.childTableData = [{
partCode:undefined, partCode:undefined,
qty:undefined, qty:undefined,
@ -211,19 +211,20 @@ export default {
warehouseCode:undefined, warehouseCode:undefined,
}] }]
this.theEvent = "edit" this.theEvent = "edit"
this.displayDialog.newDialog = true
} }
// //
else if(val == "complete"){ // else if(val == "complete"){
// todo:,wsm-apiproductionRecycleJobComplete // // todo:,wsm-apiproductionRecycleJobComplete
this.Loading.appMainLoading = true // this.Loading.appMainLoading = true
productionRecycleJobComplete(this.propsData.id).then(res => { // productionRecycleJobComplete(this.propsData.id).then(res => {
this.Loading.appMainLoading = false // this.Loading.appMainLoading = false
this.paging() // this.paging()
this.displayDialog.detailsDialog = false // this.displayDialog.detailsDialog = false
}).catch(err => { // }).catch(err => {
this.Loading.appMainLoading = false // this.Loading.appMainLoading = false
}) // })
} // }
else{ else{
this.drawerbutton(val) this.drawerbutton(val)
} }

34
fe/PC/src/views/inventoryManage/InventoryQuery/InventoryTransaction-Query.vue

@ -1,10 +1,10 @@
<template> <template>
<div class="page-box" v-loading="Loading.appMainLoading"> <div class="page-box" v-loading="Loading.appMainLoading">
<tablePagination <tablePagination
:currenButtonData="currenButtonData" :currenButtonData="userCurrenButtonData ? userCurrenButtonData : currenButtonData"
:tableData="tableData" :tableData="tableData"
:tableLoading="Loading.tableLoading" :tableLoading="Loading.tableLoading"
:tableColumns="tableColumns" :tableColumns="userTableColumns ? userTableColumns : tableColumns"
@rowDrop="rowDrop" @rowDrop="rowDrop"
:totalCount="totalCount" :totalCount="totalCount"
:multipleSelection="multipleSelection" :multipleSelection="multipleSelection"
@ -22,6 +22,7 @@
:primarySearchOption="primarySearchOption" :primarySearchOption="primarySearchOption"
@overallSearchFormClick="overallSearchFormClick" @overallSearchFormClick="overallSearchFormClick"
:httpOverallSearchData="httpOverallSearchData" :httpOverallSearchData="httpOverallSearchData"
:setUTableHeight="userSetUTableHeight"
> >
</tablePagination> </tablePagination>
<curren-Drawer <curren-Drawer
@ -67,6 +68,32 @@ export default {
], ],
}; };
}, },
props:{
//
userCurrenButtonData: {
type: Array,
default: () => {
return null
}
},
//
userTableColumns: {
type: Array,
default: () => {
return null
}
},
//
userSetUTableHeight: {
type: Number,
default: null
},
//
userFilterSet:{
type:Function,
default:null,
}
},
mounted () { mounted () {
this.paging(); this.paging();
}, },
@ -113,6 +140,9 @@ export default {
this.PageListParams.condition.filters.push(_type35) this.PageListParams.condition.filters.push(_type35)
} }
} }
if(this.userFilterSet && this.userFilterSet()){
this.PageListParams.condition.filters.push(this.userFilterSet())
}
getPageList(this.PageListParams, this.URL).then(res => { getPageList(this.PageListParams, this.URL).then(res => {
res.items.map(item => { res.items.map(item => {

39
fe/PC/src/views/materialIssueManage/PT/IssueJobPT.vue

@ -54,7 +54,30 @@
:MaxResultCount="MaxResultCountDetails" :MaxResultCount="MaxResultCountDetails"
@alterResultCountDetails="alterResultCountDetails" @alterResultCountDetails="alterResultCountDetails"
@alertoldSkipCountDetails="alertoldSkipCountDetails" @alertoldSkipCountDetails="alertoldSkipCountDetails"
></curren-Drawer> >
<template>
<el-table-column
fixed="right"
label="操作"
align="center"
width="120"
>
<template slot-scope="scope">
<el-button
type="primary"
@click="showLibraryShift(scope)"
size="small"
>查看库移</el-button>
</template>
</el-table-column>
</template>
</curren-Drawer>
<!-- 查看库移弹窗 -->
<libraryShiftSearch
:rowData="libraryShiftRow"
:isShow="libraryShiftShow"
v-on:setClose='closeLibraryShift'
></libraryShiftSearch>
</div> </div>
</template> </template>
<script> <script>
@ -68,6 +91,8 @@ import { mixins } from "@/mixins/mixins"
import { newAndEdiDialogMixins } from "@/mixins/newAndEdiDialogMixins" import { newAndEdiDialogMixins } from "@/mixins/newAndEdiDialogMixins"
import store from '@/store' import store from '@/store'
import { initPrintAllData } from "@/mixins/printMixin" import { initPrintAllData } from "@/mixins/printMixin"
import libraryShiftSearch from "@/views/materialIssueManage/libraryShiftSearch"
export default { export default {
name: "IssueJobPT", name: "IssueJobPT",
mixins: [ mixins: [
@ -78,6 +103,7 @@ export default {
mixins, mixins,
newAndEdiDialogMixins newAndEdiDialogMixins
], ],
components:{libraryShiftSearch},
computed: { computed: {
editDialog: { editDialog: {
get: function () { get: function () {
@ -237,6 +263,8 @@ export default {
numberInput: [{ required: true, trigger: "blur", message: "不可为空" }], numberInput: [{ required: true, trigger: "blur", message: "不可为空" }],
} }
}, },
libraryShiftShow:false,//
libraryShiftRow:null,//
}; };
}, },
mounted () { mounted () {
@ -500,6 +528,15 @@ export default {
// }, // },
handleSelectionChange(val) { handleSelectionChange(val) {
this.handleMultipleSelection = val this.handleMultipleSelection = val
},
showLibraryShift(scope){
if(!scope.row.tenantId){return this.$errorMsg("事务类型有误")}
this.libraryShiftShow = true
this.libraryShiftRow = scope
},
closeLibraryShift(data){
this.libraryShiftShow = data
this.libraryShiftRow = null
} }
} }
}; };

6
fe/PC/src/views/materialIssueManage/PT/IssueRequestPT.vue

@ -101,16 +101,14 @@ export default {
DrawerButtonData: [ DrawerButtonData: [
// ...requestData(this), // ...requestData(this),
{ {
type: 'primary', type: 'success',
icon: 'el-icon-circle-check',
label: '完成', label: '完成',
hide: () => { return this.completeRequestInit([2,6])}, hide: () => { return this.completeRequestInit([2,6])},
name: "completeRequest", name: "completeRequest",
size: 'mini' size: 'mini'
}, },
{ {
type: 'primary', type: 'warning',
icon: 'el-icon-circle-check',
label: '执行', label: '执行',
name: "IssueRequest-zx", name: "IssueRequest-zx",
hide: () => { return this.againHandleRequestInit([9])}, hide: () => { return this.againHandleRequestInit([9])},

39
fe/PC/src/views/materialIssueManage/ZP/IssueJobZP.vue

@ -54,7 +54,30 @@
:MaxResultCount="MaxResultCountDetails" :MaxResultCount="MaxResultCountDetails"
@alterResultCountDetails="alterResultCountDetails" @alterResultCountDetails="alterResultCountDetails"
@alertoldSkipCountDetails="alertoldSkipCountDetails" @alertoldSkipCountDetails="alertoldSkipCountDetails"
></curren-Drawer> >
<template>
<el-table-column
fixed="right"
label="操作"
align="center"
width="120"
>
<template slot-scope="scope">
<el-button
type="primary"
@click="showLibraryShift(scope)"
size="small"
>查看库移</el-button>
</template>
</el-table-column>
</template>
</curren-Drawer>
<!-- 查看库移弹窗 -->
<libraryShiftSearch
:rowData="libraryShiftRow"
:isShow="libraryShiftShow"
v-on:setClose='closeLibraryShift'
></libraryShiftSearch>
</div> </div>
</template> </template>
<script> <script>
@ -68,6 +91,8 @@ import { mixins } from "@/mixins/mixins"
import { newAndEdiDialogMixins } from "@/mixins/newAndEdiDialogMixins" import { newAndEdiDialogMixins } from "@/mixins/newAndEdiDialogMixins"
import store from '@/store' import store from '@/store'
import { initPrintAllData } from "@/mixins/printMixin" import { initPrintAllData } from "@/mixins/printMixin"
import libraryShiftSearch from "@/views/materialIssueManage/libraryShiftSearch"
export default { export default {
name: "IssueJobZP", name: "IssueJobZP",
mixins: [ mixins: [
@ -78,6 +103,7 @@ export default {
mixins, mixins,
newAndEdiDialogMixins newAndEdiDialogMixins
], ],
components:{libraryShiftSearch},
computed: { computed: {
editDialog: { editDialog: {
get: function () { get: function () {
@ -237,6 +263,8 @@ export default {
numberInput: [{ required: true, trigger: "blur", message: "不可为空" }], numberInput: [{ required: true, trigger: "blur", message: "不可为空" }],
} }
}, },
libraryShiftShow:false,//
libraryShiftRow:null,//
}; };
}, },
mounted () { mounted () {
@ -500,6 +528,15 @@ export default {
// }, // },
handleSelectionChange(val) { handleSelectionChange(val) {
this.handleMultipleSelection = val this.handleMultipleSelection = val
},
showLibraryShift(scope){
if(!scope.row.tenantId){return this.$errorMsg("事务类型有误")}
this.libraryShiftShow = true
this.libraryShiftRow = scope
},
closeLibraryShift(data){
this.libraryShiftShow = data
this.libraryShiftRow = null
} }
} }
}; };

6
fe/PC/src/views/materialIssueManage/ZP/IssueRequestZP.vue

@ -101,16 +101,14 @@ export default {
DrawerButtonData: [ DrawerButtonData: [
// ...requestData(this), // ...requestData(this),
{ {
type: 'primary', type: 'success',
icon: 'el-icon-circle-check',
label: '完成', label: '完成',
hide: () => { return this.completeRequestInit([2,6])}, hide: () => { return this.completeRequestInit([2,6])},
name: "completeRequest", name: "completeRequest",
size: 'mini' size: 'mini'
}, },
{ {
type: 'primary', type: 'warning',
icon: 'el-icon-circle-check',
label: '执行', label: '执行',
name: "IssueRequest-zx", name: "IssueRequest-zx",
hide: () => { return this.againHandleRequestInit([9])}, hide: () => { return this.againHandleRequestInit([9])},

38
fe/PC/src/views/materialIssueManage/ZS/IssueJobZS.vue

@ -54,7 +54,30 @@
:MaxResultCount="MaxResultCountDetails" :MaxResultCount="MaxResultCountDetails"
@alterResultCountDetails="alterResultCountDetails" @alterResultCountDetails="alterResultCountDetails"
@alertoldSkipCountDetails="alertoldSkipCountDetails" @alertoldSkipCountDetails="alertoldSkipCountDetails"
></curren-Drawer> >
<template>
<el-table-column
fixed="right"
label="操作"
align="center"
width="120"
>
<template slot-scope="scope">
<el-button
type="primary"
@click="showLibraryShift(scope)"
size="small"
>查看库移</el-button>
</template>
</el-table-column>
</template>
</curren-Drawer>
<!-- 查看库移弹窗 -->
<libraryShiftSearch
:rowData="libraryShiftRow"
:isShow="libraryShiftShow"
v-on:setClose='closeLibraryShift'
></libraryShiftSearch>
</div> </div>
</template> </template>
<script> <script>
@ -68,6 +91,7 @@ import { mixins } from "@/mixins/mixins"
import { newAndEdiDialogMixins } from "@/mixins/newAndEdiDialogMixins" import { newAndEdiDialogMixins } from "@/mixins/newAndEdiDialogMixins"
import store from '@/store' import store from '@/store'
import { initPrintAllData } from "@/mixins/printMixin" import { initPrintAllData } from "@/mixins/printMixin"
import libraryShiftSearch from "@/views/materialIssueManage/libraryShiftSearch"
export default { export default {
name: "IssueJobZS", name: "IssueJobZS",
mixins: [ mixins: [
@ -78,6 +102,7 @@ export default {
mixins, mixins,
newAndEdiDialogMixins newAndEdiDialogMixins
], ],
components:{libraryShiftSearch},
computed: { computed: {
editDialog: { editDialog: {
get: function () { get: function () {
@ -237,6 +262,8 @@ export default {
numberInput: [{ required: true, trigger: "blur", message: "不可为空" }], numberInput: [{ required: true, trigger: "blur", message: "不可为空" }],
} }
}, },
libraryShiftShow:false,//
libraryShiftRow:null,//
}; };
}, },
mounted () { mounted () {
@ -500,6 +527,15 @@ export default {
// }, // },
handleSelectionChange(val) { handleSelectionChange(val) {
this.handleMultipleSelection = val this.handleMultipleSelection = val
},
showLibraryShift(scope){
if(!scope.row.tenantId){return this.$errorMsg("事务类型有误")}
this.libraryShiftShow = true
this.libraryShiftRow = scope
},
closeLibraryShift(data){
this.libraryShiftShow = data
this.libraryShiftRow = null
} }
} }
}; };

6
fe/PC/src/views/materialIssueManage/ZS/IssueRequestZS.vue

@ -101,16 +101,14 @@ export default {
DrawerButtonData: [ DrawerButtonData: [
// ...requestData(this), // ...requestData(this),
{ {
type: 'primary', type: 'success',
icon: 'el-icon-circle-check',
label: '完成', label: '完成',
hide: () => { return this.completeRequestInit([2,6])}, hide: () => { return this.completeRequestInit([2,6])},
name: "completeRequest", name: "completeRequest",
size: 'mini' size: 'mini'
}, },
{ {
type: 'primary', type: 'warning',
icon: 'el-icon-circle-check',
label: '执行', label: '执行',
name: "IssueRequest-zx", name: "IssueRequest-zx",
hide: () => { return this.againHandleRequestInit([9])}, hide: () => { return this.againHandleRequestInit([9])},

166
fe/PC/src/views/materialIssueManage/libraryShiftSearch.vue

@ -0,0 +1,166 @@
<template>
<el-dialog
:title="'查看库移'"
:visible="dialogVisible"
width="80%"
:modal-append-to-body="true"
:append-to-body="true"
id="libraryShiftSearchPop"
:top="'50px'"
>
<!-- 列表形式使用库存事务页面 -->
<!-- <InventoryTransaction
:userTableColumns="transactionColumns"
:userSetUTableHeight="280"
:userFilterSet="userFilterSet"
:userCurrenButtonData=[]
></InventoryTransaction> -->
<!-- 详情形式 -->
<div v-loading="loading" class="descriptionsContain">
<el-descriptions v-if="infoData && !loading" :column="3" :border="true">
<el-descriptions-item
v-for="(item,key) in transactionColumns"
:key="key"
:label=item.label
>{{ infoData[item.prop] }}</el-descriptions-item>
</el-descriptions>
<div v-if="!infoData && !loading" style="text-align:center;line-height:180px">暂无相关信息</div>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="close">关闭</el-button>
</span>
</el-dialog>
</template>
<script>
import { getPageList, getDetailed } from '@/api/wms-api'
import InventoryTransaction from "@/views/inventoryManage/InventoryQuery/InventoryTransaction-Query"
export default {
name: "libraryShiftSearch",
components:{InventoryTransaction},
props:{
rowData: {
type: Object,
default: null
},
isShow: {
type: Boolean,
default: false
},
},
watch:{
isShow(n,o){
this.dialogVisible = n;
if(n){this.getInfo()}
else{this.infoData = null}
},
},
data(){
return {
loading:false,
dialogVisible:false,
infoData:null,
transactionColumns:[
{ label: "事务编号", prop: "transNumber",width: 180 },
{ label: "物品代码", prop: "itemCode" },
{ label: "物品名称", prop: "itemName" },
{ label: "物品描述1", prop: "itemDesc1" },
{ label: "物品描述2", prop: "itemDesc2" },
{ label: "配置", prop: "item_configurationFromFE",showProp:true },
{ label: "事务分类", prop: "transType",type: "filter", filters: "TransTypeBase" },
{ label: "子事务类型", prop: "transSubType", type: "filter", filters: "transSubType" },
{ label: "出库/入库", prop: "transInOut",type: "filter", filters: "transInOutStatus" },
{ label: "接口对应类型", prop: "interfaceType", width: '360px', showProp: true },
{ label: "事务数量", prop: "qty",isNumber:true },
{ label: "箱码", prop: "packingCode" },
{ label: "ERP储位", prop: "locationErpCode" },
{ label: "库位代码", prop: "locationCode" },
{ label: "批次", prop: "lot" },
{ label: "到货单位", prop: "uom" },
{ label: "库存状态", prop: "status",type: "filter", filters: "inventoryStage" },
{ label: "任务编号", prop: "jobNumber",width: 180 },
{ label: "事务时间", prop: "transTime" ,type: "dateTime" },
{ label: "操作员", prop: "worker" },
{ label: "单据号", prop: "docNumber" },
{ label: "库位组", prop: "locationGroup" },
{ label: "库区", prop: "locationArea" },
{ label: "到货日期", prop: "arriveDate",type: "dateTime" },
{ label: "生产日期", prop: "produceDate",type: "dateTime" },
{ label: "过期时间", prop: "expireDate",type: "dateTime" },
{ label: "标包数量", prop: "stdPackQty",isNumber:true },
{ label: "管理类型", prop: "manageType", type: "filter", filters: "manageType" },
{ label: "供应商批次", prop: "supplierBatch" },
{ label: "备注", prop: "remark" },
{ label: "生效日期", prop: 'activeDate', type: "dateTime" },
{ label: "创建时间", prop: "creationTime",type: "dateTime" },
{ label: "上次修改时间", prop: "lastModificationTime",type: "dateTime" },
{ label: "仓库代码", prop: 'warehouseCode' },
]
}
},
methods:{
close(){
this.dialogVisible=false
this.$emit("setClose",this.dialogVisible)
},
getInfo(){
if(!this.rowData.row.tenantId){
return
}
this.loading = true
let _data = {
condition: {
filters: [
{
logic: "And",
column: "transNumber",
action: "==",
value: this.rowData.row.tenantId,
// value: "562468800474120192",
},
]
},
Sorting: "",
SkipCount: 0,
MaxResultCount: 20
}
getPageList(_data, 'wms/inventory/inventory-transaction').then(res => {
this.infoData = res.items[0]
console.log(128,this.infoData)
this.loading = false
}).catch(err => {
this.loading = false
})
},
userFilterSet(){
// if(!this.rowData.row.tenantId){
// return false
// }
return {
logic: "And",
column: "transNumber",
action: "==",
value: this.rowData.row.tenantId,
// value: "562468800474120192",
}
}
}
}
</script>
<style lang="scss">
#libraryShiftSearchPop {
// .el-dialog__body{
// padding-top:0 !important
// }
.el-dialog{
margin-bottom:0 !important
}
.descriptionsContain{
height:calc(100vh - 290px);
overflow: auto
}
}
</style>
Loading…
Cancel
Save