Browse Source

【nev-pc】截止1030 成品发运批量生成需求更改

ag_report_nev
安虹睿 7 months ago
parent
commit
54cf2c9acf
  1. 9
      fe/PC/src/api/wms-api.js
  2. 9
      fe/PC/src/components/umyTable/index.vue
  3. 2
      fe/PC/src/utils/index.js
  4. 2
      fe/PC/src/utils/tableColumns/index.js
  5. 2
      fe/PC/src/utils/tabsDesTions/index.js
  6. 4
      fe/PC/src/views/finishedProductManage/deliver/FISDeliverNote-Query.vue
  7. 91
      fe/PC/src/views/finishedProductManage/deliver/FISDeliverRequest.vue
  8. 452
      fe/PC/src/views/finishedProductManage/deliver/FISDeliverRequest_old.vue

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

@ -708,6 +708,15 @@ export function getInventoryByPackingCode(packingCode){
})
}
// 成品发运申请-批量生成发货单前提示,出货价格校验
export function deliverRequestHandleTip(data) {
return request({
url: baseURL + 'basedata/sale-price-sheet/get-list-by-itemcode-and-customercode',
method: 'post',
data:data
})
}
// 成品发运申请-批量生成发货单
export function deliverRequestHandleList(ids,params) {
return request({

9
fe/PC/src/components/umyTable/index.vue

@ -19,6 +19,7 @@
:row-class-name="tableRowClassName"
use-virtual
:cell-class-name="cellClassName"
@expand-change="handleExpandChange"
>
<!-- 最前端列插槽 -->
<slot name="beforeTableColumn"></slot>
@ -586,6 +587,14 @@ export default {
this.setTableHeightHandle()
},
methods: {
//
handleExpandChange(row, expandedRows) {
if (expandedRows.length) {
this.$nextTick(() => {
this.$refs.multipleTable.doLayout();
});
}
},
//
selectEnable(row, rowIndex) {
if (!row.tableSelectEnable) {

2
fe/PC/src/utils/index.js

@ -601,7 +601,7 @@ export function initInterfaceType(res){
_item.interfaceType = '【TYRP】-【出货单】'
} else if (item.transType == 23 && item.transSubType == 2303) {
_item.interfaceType = '【TYRP】-【出货单】'
} else if (item.transType == 23) {
} else if (item.transType == 34) {
_item.interfaceType = '【TYRP】-【非生产领料单】'
} else if (item.transType == 33 && item.transSubType == 0) {
_item.interfaceType = '【TYRP】-【非生产退料】'

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

@ -2519,7 +2519,7 @@ export const pickingJob = [
{ label: _Names.itemDesc2, prop: "itemDesc2" },
// { label: "领料类别", prop: 'unplannedIssueType', type: "filter", filters: "unplannedIssueType" },
{ label: "建档日期", prop: "buildDate", type: "dateTime" },
{ label: "操作员", prop: "worker" },
// { label: "操作员", prop: "worker" },
{ label: "部门代码", prop: "deptCode" },
{ label: "部门名称", prop: "deptName" },
{ label: "创建时间", prop: "creationTime", type: "dateTime" },

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

@ -1696,7 +1696,7 @@ export const pickingJob = [
{ label: _Names.itemDesc2, prop: "itemDesc2" },
// { label: "领料类别", prop: 'unplannedIssueType', type: "filter", filters: "unplannedIssueType" },
{ label: "建档日期", prop: "buildDate", type: "dateTime" },
{ label: "操作员", prop: "worker" },
// { label: "操作员", prop: "worker" },
{ label: "部门代码", prop: "deptCode" },
{ label: "部门名称", prop: "deptName" },
{ label: "创建时间", prop: "creationTime", type: "dateTime" },

4
fe/PC/src/views/finishedProductManage/deliver/FISDeliverNote-Query.vue

@ -23,7 +23,7 @@
@overallSearchFormClick="overallSearchFormClick"
:httpOverallSearchData="httpOverallSearchData"
>
<template v-slot:beforeTableColumn>
<!-- <template v-slot:beforeTableColumn>
<u-table-column type="expand">
<template slot-scope="props">
<el-table
@ -49,7 +49,7 @@
</el-table>
</template>
</u-table-column>
</template>
</template> -->
</tablePagination>
<curren-Drawer
:title="tableColumns"

91
fe/PC/src/views/finishedProductManage/deliver/FISDeliverRequest.vue

@ -25,14 +25,14 @@
:httpOverallSearchData="httpOverallSearchData"
:tableSelection="true"
>
<template v-slot:beforeTableColumn>
<!-- <template v-slot:beforeTableColumn>
<u-table-column type="expand" fixed="left">
<template slot-scope="props">
<el-table
maxHeight="300px"
max-height="250"
:data="tableData2"
:border="true"
style="width: 100%">
>
<el-table-column
prop="code"
label="ERP料号"
@ -66,7 +66,7 @@
</el-table>
</template>
</u-table-column>
</template>
</template> -->
</tablePagination>
<!--抽屉-->
<curren-Drawer
@ -114,6 +114,16 @@
<el-button type="primary" @click="creatDeliverSure()"> </el-button>
</div>
</el-dialog>
<!-- 批量生成发货单提示-弹窗 -->
<el-dialog
:visible="creatDeliverTipShow"
:append-to-body="true"
>
<div v-html="creatDeliverTipper"></div>
<div slot="footer">
<el-button type="primary" @click="creatDeliverTipSure()"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
@ -122,6 +132,7 @@ import {
getDetailed,
getPageListWip,
deliverRequestHandleList,
deliverRequestHandleTip,
deliverRequestDelete
} from "@/api/wms-api";
import { tableMixins } from "@/mixins/TableMixins"
@ -192,6 +203,7 @@ export default {
chkw2:'WIP'
},],
URL: 'wms/store/deliver-request-fis',
pagingShowDetail:true,
importUploadURL:'wms/store/deliver-request/import',
//
currenButtonData: [
@ -249,6 +261,8 @@ export default {
showFilterSta_fis:false,//fis
//
creatDeliverShow:false,
creatDeliverTipShow:false,
creatDeliverTipper:"",
creatDeliverForm:{
truckNumber:""
},
@ -413,33 +427,61 @@ export default {
this.$refs.creatDeliverRef.validate((valid) => {
if (valid) {
this.Loading.appMainLoading = true
let _params = {truckNumber:String(this.creatDeliverForm.truckNumber)}
this.creatDeliverClose()
let _ids = []
this.multipleSelection.forEach(select=>{ _ids.push(select.id) })
deliverRequestHandleList(_ids,_params)
//
let _details = {}
this.multipleSelection.forEach(item=>{
item.details.forEach(deItem=>{
deItem.customerCode = item.customerCode
//
let _name = deItem.customerCode + '_' + deItem.itemCode
if(!_details[_name])_details[_name] = deItem
})
})
//
let _dtos = []
for(let i in _details){
let _item = {
customerCode:_details[i].customerCode,
itemCode:_details[i].itemCode
}
_dtos.push(_item)
}
deliverRequestHandleTip(_dtos)
.then(res => {
this.Loading.appMainLoading = false
this.$refs.FISDeliverRequestTable_Ref.clearSelection()
this.paging()
this.$successMsg('操作成功!')
//
if(res && res.length > 0){
this.creatDeliverTipper = res
this.creatDeliverTipShow = true
}
//
else{
this.creatDeliverTipSure()
}
}).catch(err => {
this.Loading.appMainLoading = false
})
} else {
console.log('error submit!!');
return false;
}
});
// this.$confirm('?', '', {
// confirmButtonText: '',
// cancelButtonText: '',
// type: 'warning'
// }).then(() => {
// }).catch(() => {
// });
},
creatDeliverTipSure(){
this.Loading.appMainLoading = true
let _params = {truckNumber:String(this.creatDeliverForm.truckNumber)}
let _ids = []
this.multipleSelection.forEach(select=>{ _ids.push(select.id) })
this.creatDeliverClose()
this.creatDeliverTipShow = false
deliverRequestHandleList(_ids,_params)
.then(res => {
this.Loading.appMainLoading = false
this.$refs.FISDeliverRequestTable_Ref.clearSelection()
this.paging()
this.$successMsg('操作成功!')
}).catch(err => {
this.Loading.appMainLoading = false
})
}
}
}
@ -447,6 +489,9 @@ export default {
<style lang="scss" scoped>
@import "../../../styles/mainbasicData.scss";
::v-deep .el-table__expanded-cell{
padding:20px 120px !important
padding:20px 20px 20px 120px !important
}
// ::v-deep .el-table__fixed{
// height:100% !important
// }
</style>

452
fe/PC/src/views/finishedProductManage/deliver/FISDeliverRequest_old.vue

@ -0,0 +1,452 @@
<template>
<div class="page-box" v-loading="Loading.appMainLoading">
<tablePagination
ref="FISDeliverRequestTable_Ref"
:currenButtonData="currenButtonData"
:tableData="tableData"
:tableLoading="Loading.tableLoading"
:tableColumns="tableColumns"
@rowDrop="rowDrop"
:totalCount="totalCount"
:multipleSelection="multipleSelection"
:MaxResultCount="PageListParams.MaxResultCount"
@topbutton="topbuttonHandle"
@inlineDialog="inlineDialog"
@sortChange="sortChange"
@alertoldSkipCount="alertoldSkipCount"
@alterResultCount="alterResultCount"
@handleSelectionChange="handleSelectionChange"
:currentPageProps="oldSkipCount"
:quicklySearchOption="quicklySearchOption"
@quicklySearchClick="quicklySearchClick"
@quicklySearchClear="quicklySearchClear"
:primarySearchOption="primarySearchOption"
@overallSearchFormClick="(options)=>{overallSearchFormClick(options,overallSearchFormCallback)}"
:httpOverallSearchData="httpOverallSearchData"
:tableSelection="true"
>
<!-- <template v-slot:beforeTableColumn>
<u-table-column type="expand" fixed="left">
<template slot-scope="props">
<el-table
maxHeight="300px"
:data="tableData2"
:border="true"
style="width: 100%">
<el-table-column
prop="code"
label="ERP料号"
width="180">
</el-table-column>
<el-table-column
prop="date"
label="日期"
width="230">
</el-table-column>
<el-table-column
prop="qty"
width="260"
label="数量">
</el-table-column>
<el-table-column
prop="number"
width="260"
label="底盘号">
</el-table-column>
<el-table-column
prop="chkw"
width="260"
label="出货库位">
</el-table-column>
<el-table-column
prop="chkw2"
width="260"
label="出货ERP储位">
</el-table-column>
</el-table>
</template>
</u-table-column>
</template> -->
</tablePagination>
<!--抽屉-->
<curren-Drawer
:title="tableColumns"
:DrawerLoading="Loading.DrawerLoading"
:drawer="displayDialog.detailsDialog"
:propsData="propsData"
:tabsDesTions="tabsDesTions"
:Butttondata="DrawerButtonData"
@drawerShut="(val) => (displayDialog.detailsDialog = val)"
@drawerbutton="drawerbuttonHandle"
@handleCommand="drawerHandle"
@close-value="closeValue"
:tableColumns="detailsTableColumns"
:totalCount="totalCountDetails"
:MaxResultCount="MaxResultCountDetails"
@alterResultCountDetails="alterResultCountDetails"
@alertoldSkipCountDetails="alertoldSkipCountDetails"
></curren-Drawer>
<!-- 新导入 disabledMethod 导入方式禁用 disabledIsAllowPartImport 是否局部导入禁用-->
<!-- methodValue 导入方式默认选项 是否局部导入 默认选项 -->
<importFile
:loading="Loading.importLoading"
:show="displayDialog.importDialog"
:URL="URL"
:disabledMethod = {method1:false,method2:false,method3:false}
:disabledIsAllowPartImport = {isAllowPartImport1:false,isAllowPartImport2:false}
isAllowPartImportValue="1"
@importClick="postImportMergeClick(arguments)"
@postImportDown="importDown('wms/store/deliver-request')"
></importFile>
<!-- 批量生成发货单弹窗 -->
<el-dialog
title="批量生成发货单"
:visible="creatDeliverShow"
:append-to-body="true"
>
<el-form :model="creatDeliverForm" :rules="creatDeliverRules" ref="creatDeliverRef">
<el-form-item label="车牌号" prop="truckNumber">
<el-input v-model="creatDeliverForm.truckNumber"></el-input>
</el-form-item>
</el-form>
<div slot="footer">
<el-button @click="creatDeliverClose()"> </el-button>
<el-button type="primary" @click="creatDeliverSure()"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {
processRequest,
getDetailed,
getPageListWip,
deliverRequestHandleList,
deliverRequestDelete
} from "@/api/wms-api";
import { tableMixins } from "@/mixins/TableMixins"
import { LoadingMixins } from "@/mixins/LoadingMixins"
import { drawerMixins } from "@/mixins/drawerMixins"
import { TableHeaderMixins } from "@/mixins/TableHeaderMixins"
import { mixins } from "@/mixins/mixins"
import { requestData } from "@/utils/processButtonData"
import { initPrintAllData } from '@/mixins/printMixin'
export default {
name: "FISDeliverRequest",
mixins: [
tableMixins,
LoadingMixins,
drawerMixins,
TableHeaderMixins,
mixins,
],
computed: {
// ()
hideButton_normalSta: function () {
return function (val) {
return this.showFilterSta_normal == val
}
},
// (FIS)
hideButton_FISSta: function () {
return function (val) {
return this.showFilterSta_fis == val
}
},
//
hideDelButton: function () {
return function () {
return this.propsData.deliverRequestType != 1
}
},
},
data () {
return {
tableData2: [{
code:'CA130D0A012AA',
date: '2016-05-02',
qty: '20',
number: '111',
chkw:'WIP',
chkw2:'WIP'
},{
code:'CA130D0A013AA',
date: '2016-05-02',
qty: '5',
number: '222',
chkw:'WIP',
chkw2:'WIP'
},{
code:'CA130D0A013AA',
date: '2016-05-02',
qty: '15',
number: '333',
chkw:'WIP',
chkw2:'WIP'
},{
code:'CA130D0A013AA',
date: '2016-05-02',
qty: '12',
number: '444',
chkw:'WIP',
chkw2:'WIP'
},],
URL: 'wms/store/deliver-request-fis',
importUploadURL:'wms/store/deliver-request/import',
//
currenButtonData: [
this.defaultImportBtn(),//
{
type: "success",
icon: "el-icon-d-arrow-right",
label: "批量生成发货单",
name: "creatDeliver",
size: "mini",
},
{
type: "primary",
label: "筛选[普通发货]",
name: "normalSta",
size: "mini",
hide: () => { return this.hideButton_normalSta(true) },
},
{
type: "danger",
label: "重置[普通发货]",
name: "normalSta-reset",
size: "mini",
hide: () => { return this.hideButton_normalSta(false) },
},
{
type: "warning",
label: "筛选[FIS发货]",
name: "FISSta",
size: "mini",
hide: () => { return this.hideButton_FISSta(true) },
},
{
type: "danger",
label: "重置[FIS发货]",
name: "normalSta-reset",
size: "mini",
hide: () => { return this.hideButton_FISSta(false) },
},
this.defaultFieldSettingBtn(),//
this.defaultFreshBtn(),//
this.defaultFilterBtn(),//
],
DrawerButtonData: [
{
type: "danger",
label: "删除",
name: "delete",
size: "mini",
hide: () => { return this.hideDelButton() },
},
// ...requestData(this)
],
showFilterSta_normal:false,//
showFilterSta_fis:false,//fis
//
creatDeliverShow:false,
creatDeliverForm:{
truckNumber:""
},
creatDeliverRules:{
truckNumber: [{ required: true, trigger: "blur", message: "不可为空" }]
}
};
},
mounted () {
this.paging();
},
methods:{
overallSearchFormCallback(){
this.showFilterSta_normal = false
this.showFilterSta_fis = false
},
// fis
fasterSearchHandle(type){
this.PageListParams.condition.filters = [{
logic: "And",
column: "deliverRequestType",
action: "==",
value: String(type)
}]
this.paging()
this.httpOverallSearchData = null
},
// fis
resetSearchHandle(){
this.showFilterSta_normal = false
this.showFilterSta_fis = false
this.PageListParams.condition.filters = []
this.paging()
this.httpOverallSearchData = null
},
topbuttonHandle(val,item){
//
if(val == "creatDeliver"){
if(!this.multipleSelection || this.multipleSelection.length <= 0){
this.$warningMsg("至少选择一条数据")
return
}
let _hasNoSame = 0
for(let i = 0;i<this.multipleSelection.length;i++){
if(this.multipleSelection[i].customerCode != this.multipleSelection[0].customerCode){
_hasNoSame ++
}
}
if(_hasNoSame != 0){
this.$errorMsg("所选数据的客户代码必须一致!")
return
}
this.creatDeliverShow = true
}
//
else if(val == 'normalSta'){
this.showFilterSta_normal = true
this.showFilterSta_fis = false
this.fasterSearchHandle('1')
}
// fis
else if(val == 'FISSta'){
this.showFilterSta_fis = true
this.showFilterSta_normal = false
this.fasterSearchHandle('2')
}
//
else if(val == 'normalSta-reset' || val == 'FISSta-reset'){
this.resetSearchHandle()
}
else{
this.topbutton(val,item)
}
},
printHandle(){
this.Loading.appMainLoading = true
let param = {
maxResultCount: 1000,
condition: {
filters: [{
logic: "And",
column: "deliverRequestNumber",
action: "==",
value: this.propsData.number
}]
},
sorting: "",
skipCount: 0
}
//
this.Loading.appMainLoading = true
getPageListWip(param, 'wms/store/deliver-note/list-for-fis',true)
.then(async res => {
let _option = {
details:{
packingCode:"toPackingCode",
}
}
let data = await initPrintAllData(res.items[0],'chdmxb.rdlx',false,_option);
this.Print(data)
this.Loading.appMainLoading = false
})
.catch(err=>{
console.log(err)
})
},
drawerbuttonHandle(val){
//
// if (val == 'agreeRequest') {
// this.Loading.appMainLoading = true
// processRequest(this.propsData.id, this.URL + '/agree/').then(res => {
// getDetailed(this.propsData.id, this.URL).then(res => {
// this.propsData = res
// })
// this.paging()
// this.$confirm('', '', {
// confirmButtonText: '',
// cancelButtonText: '',
// type: 'warning'
// }).then(() => {
// //
// this.printHandle()
// }).catch(() => {
// });
// this.Loading.appMainLoading = false
// }).catch(err => {
// this.Loading.appMainLoading = false
// })
// }
if(val == 'delete'){
this.$confirm('您确定删除吗, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.Loading.appMainLoading = true;
deliverRequestDelete(this.propsData.id)
.then(res=>{
this.$successMsg("删除成功!")
this.paging()
this.displayDialog.detailsDialog = false
this.Loading.appMainLoading = false;
}).catch(() => {
this.Loading.appMainLoading = false;
});
}).catch(() => {
});
}
else{
this.drawerbutton(val)
}
},
// -
creatDeliverClose(){
this.creatDeliverForm.truckNumber = ""
this.creatDeliverShow = false
},
// -
creatDeliverSure(){
this.$refs.creatDeliverRef.validate((valid) => {
if (valid) {
this.Loading.appMainLoading = true
let _params = {truckNumber:String(this.creatDeliverForm.truckNumber)}
this.creatDeliverClose()
let _ids = []
this.multipleSelection.forEach(select=>{ _ids.push(select.id) })
deliverRequestHandleList(_ids,_params)
.then(res => {
this.Loading.appMainLoading = false
this.$refs.FISDeliverRequestTable_Ref.clearSelection()
this.paging()
this.$successMsg('操作成功!')
}).catch(err => {
this.Loading.appMainLoading = false
})
} else {
console.log('error submit!!');
return false;
}
});
// this.$confirm('?', '', {
// confirmButtonText: '',
// cancelButtonText: '',
// type: 'warning'
// }).then(() => {
// }).catch(() => {
// });
}
}
}
</script>
<style lang="scss" scoped>
@import "../../../styles/mainbasicData.scss";
::v-deep .el-table__expanded-cell{
padding:20px 120px !important
}
</style>
Loading…
Cancel
Save