|
|
|
@ -81,11 +81,11 @@ |
|
|
|
width="100" |
|
|
|
label="操作"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<a v-if="!authUpdate" type="text" size="small" @click="createBillLading(scope.row)">创建提货单</a> |
|
|
|
<a v-if="scope.row.status === '保存'" type="text" size="small" @click="createBillLading(scope.row)">创建提货单</a> |
|
|
|
<el-dropdown trigger="click"> |
|
|
|
<el-link style="cursor: pointer;font-size: 12px">更多</el-link> |
|
|
|
<el-dropdown-menu slot="dropdown"> |
|
|
|
<el-dropdown-item @click.native="getBillOfLadingDetail(scope.row)">提货单明细</el-dropdown-item> |
|
|
|
<el-dropdown-item @click.native="getBillLadingDetail(scope.row)">提货单明细</el-dropdown-item> |
|
|
|
<el-dropdown-item @click.native="createBillLadingSummary(scope.row)">创建提货单汇总</el-dropdown-item> |
|
|
|
<el-dropdown-item @click.native="getBillLadingSummary(scope.row)">提货单汇总</el-dropdown-item> |
|
|
|
</el-dropdown-menu> |
|
|
|
@ -104,61 +104,31 @@ |
|
|
|
layout="total, sizes, prev, pager, next, jumper"> |
|
|
|
</el-pagination> |
|
|
|
|
|
|
|
<el-dialog title="申请单" :close-on-click-modal="false" v-drag :visible.sync="modalFlag" width="600px"> |
|
|
|
<el-form :model="modalData" :rules="rules" label-position="top" label-width="100px"> |
|
|
|
<el-form-item label="申请单号" prop="notifyNo"> |
|
|
|
<el-input v-model="modalData.notifyNo" :disabled="modalDisableFlag"></el-input> |
|
|
|
<el-dialog title="新增" :close-on-click-modal="false" v-drag :visible.sync="modalFlag" width="458px"> |
|
|
|
<el-form :inline="true" label-position="top" :model="modalData" :rules="rules" style="margin-top: 5px;"> |
|
|
|
<el-form-item label="要求发料日期" prop="needDate" :rules="rules.needDate"> |
|
|
|
<el-date-picker v-model="modalData.needDate" type="date" placeholder="选择日期" |
|
|
|
style="width: 160px"></el-date-picker> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="站点" prop="site"> |
|
|
|
<el-input v-model="modalData.site" :disabled="modalDisableFlag"></el-input> |
|
|
|
<el-form-item label="3H订单号" prop="thOrderNo" :rules="rules.thOrderNo"> |
|
|
|
<el-input v-model="modalData.thOrderNo" style="width: 120px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="申请日期" prop="notifyDate"> |
|
|
|
<el-date-picker v-model="modalData.notifyDate" type="date" placeholder="选择日期"></el-date-picker> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="申请人" prop="createBy"> |
|
|
|
<el-input v-model="modalData.createBy"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="录入时间" prop="createDate"> |
|
|
|
<el-date-picker v-model="modalData.createDate" type="datetime" placeholder="选择日期时间"></el-date-picker> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="备注" prop="remark"> |
|
|
|
<el-input v-model="modalData.remark"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="是否领料" prop="issueFlag"> |
|
|
|
<el-select v-model="modalData.issueFlag" placeholder="请选择"> |
|
|
|
<el-option label="是" value="Y"></el-option> |
|
|
|
<el-option label="否" value="N"></el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="领料结果" prop="issueResult"> |
|
|
|
<el-input v-model="modalData.issueResult"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="状态" prop="status"> |
|
|
|
<el-input v-model="modalData.status"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="IFS提货单号" prop="ifsPickListNo"> |
|
|
|
<el-input v-model="modalData.ifsPickListNo"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="3H订单号" prop="thOrderNo"> |
|
|
|
<el-input v-model="modalData.thOrderNo"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="要求发料日期" prop="needDate"> |
|
|
|
<el-date-picker v-model="modalData.needDate" type="date" placeholder="选择日期"></el-date-picker> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="生产订单号" prop="orderNo"> |
|
|
|
<el-input v-model="modalData.orderNo"></el-input> |
|
|
|
<el-form-item label="生产订单号" prop="orderNo" :rules="rules.orderNo"> |
|
|
|
<el-input v-model="modalData.orderNo" style="width: 120px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<span slot="footer" class="dialog-footer"> |
|
|
|
<el-footer |
|
|
|
style="height:35px; margin-top: 20px; padding-bottom:5px; text-align:center" |
|
|
|
> |
|
|
|
<el-button type="primary" @click="saveData()">保存</el-button> |
|
|
|
<el-button type="primary" @click="modalFlag = false; modalDisableFlag = false">关闭</el-button> |
|
|
|
</span> |
|
|
|
<el-button type="primary" @click="modalFlag = false">关闭</el-button> |
|
|
|
</el-footer> |
|
|
|
</el-dialog> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
|
|
|
|
<script> |
|
|
|
import {issueNotifyPageSearch} from "../../../../api/issueNotify/issueNotify"; |
|
|
|
import {issueNotifyPageSearch, createBillLading, addBillLading} from "../../../../api/issueNotify/issueNotify"; |
|
|
|
|
|
|
|
export default { |
|
|
|
name: 'IssureNotifyList', |
|
|
|
@ -189,117 +159,184 @@ export default { |
|
|
|
modalFlag: false, |
|
|
|
modalDisableFlag: false, |
|
|
|
modalData: { |
|
|
|
notifyNo: '', |
|
|
|
site: '', |
|
|
|
notifyDate: '', |
|
|
|
createBy: '', |
|
|
|
createDate: '', |
|
|
|
remark: '', |
|
|
|
issueFlag: '', |
|
|
|
issueResult: '', |
|
|
|
site: this.$store.state.user.site, |
|
|
|
status: '', |
|
|
|
ifsPickListNo: '', |
|
|
|
updateBy: '', |
|
|
|
updateDate: '', |
|
|
|
thOrderNo: '', |
|
|
|
needDate: '', |
|
|
|
orderNo: '' |
|
|
|
}, |
|
|
|
modalCompareData: {}, |
|
|
|
// ======== 必填规则 ======== |
|
|
|
rules: { |
|
|
|
notifyNo: [{ required: true, message: '请输入申请单号', trigger: 'blur' }], |
|
|
|
site: [{ required: true, message: '请输入站点', trigger: 'blur' }] |
|
|
|
orderNo: [ |
|
|
|
{required: true, message: ' ', trigger: 'change'}, |
|
|
|
{required: true, message: ' ', trigger: 'blur'}, |
|
|
|
], |
|
|
|
needDate: [ |
|
|
|
{required: true, message: ' ', trigger: 'change'}, |
|
|
|
{required: true, message: ' ', trigger: 'blur'}, |
|
|
|
], |
|
|
|
thOrderNo: [ |
|
|
|
{required: true, message: ' ', trigger: 'change'}, |
|
|
|
{required: true, message: ' ', trigger: 'blur'}, |
|
|
|
], |
|
|
|
}, |
|
|
|
columnList: [ |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 400002, |
|
|
|
serialNumber: '400002Table1ReleaseNo', |
|
|
|
tableId: '400002Table1', |
|
|
|
tableName: '领料申请单表', |
|
|
|
columnProp: 'notifyNo', |
|
|
|
columnLabel: '申请单号', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'center', |
|
|
|
columnSortable: false, |
|
|
|
columnWidth: 120, |
|
|
|
align: 'left', |
|
|
|
columnHidden: false, |
|
|
|
fixed: '' |
|
|
|
columnImage: false, |
|
|
|
columnSortable: false, |
|
|
|
sortLv: 0, |
|
|
|
status: true, |
|
|
|
fixed: '', |
|
|
|
columnWidth: 90, |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 400002, |
|
|
|
serialNumber: '400002Table1NotifyDate', |
|
|
|
tableId: '400002Table1', |
|
|
|
tableName: '领料申请单表', |
|
|
|
columnProp: 'notifyDate', |
|
|
|
columnLabel: '申请日期', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'center', |
|
|
|
columnSortable: false, |
|
|
|
columnWidth: 120, |
|
|
|
columnHidden: false, |
|
|
|
fixed: '' |
|
|
|
columnImage: false, |
|
|
|
columnSortable: false, |
|
|
|
sortLv: 0, |
|
|
|
status: true, |
|
|
|
fixed: '', |
|
|
|
columnWidth: 90, |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 400002, |
|
|
|
serialNumber: '400002Table1Status', |
|
|
|
tableId: '400002Table1', |
|
|
|
tableName: '领料申请单表', |
|
|
|
columnProp: 'status', |
|
|
|
columnLabel: '状态', |
|
|
|
columnLabel: '状态', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'center', |
|
|
|
columnHidden: false, |
|
|
|
columnImage: false, |
|
|
|
columnSortable: false, |
|
|
|
sortLv: 0, |
|
|
|
status: true, |
|
|
|
fixed: '', |
|
|
|
columnWidth: 80, |
|
|
|
columnHidden: false, |
|
|
|
fixed: '' |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 400002, |
|
|
|
serialNumber: '400002Table1IfsPickListNo', |
|
|
|
tableId: '400002Table1', |
|
|
|
columnProp: 'ifsPickListNo', |
|
|
|
columnLabel: 'IFS提货单号', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'center', |
|
|
|
columnSortable: false, |
|
|
|
columnWidth: 130, |
|
|
|
align: 'left', |
|
|
|
columnHidden: false, |
|
|
|
fixed: '' |
|
|
|
columnImage: false, |
|
|
|
columnSortable: false, |
|
|
|
sortLv: 0, |
|
|
|
status: true, |
|
|
|
fixed: '', |
|
|
|
columnWidth: 70, |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 400002, |
|
|
|
serialNumber: '400002Table1ThOrderNo', |
|
|
|
tableId: '400002Table1', |
|
|
|
columnProp: 'thOrderNo', |
|
|
|
columnLabel: '3H订单号', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'center', |
|
|
|
columnSortable: false, |
|
|
|
columnWidth: 130, |
|
|
|
align: 'left', |
|
|
|
columnHidden: false, |
|
|
|
fixed: '' |
|
|
|
columnImage: false, |
|
|
|
columnSortable: false, |
|
|
|
sortLv: 0, |
|
|
|
status: true, |
|
|
|
fixed: '', |
|
|
|
columnWidth: 80, |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 400002, |
|
|
|
serialNumber: '400002Table1NeedDate', |
|
|
|
tableId: '400002Table1', |
|
|
|
columnProp: 'needDate', |
|
|
|
columnLabel: '要求发料日期', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'center', |
|
|
|
columnSortable: false, |
|
|
|
columnWidth: 120, |
|
|
|
columnHidden: false, |
|
|
|
fixed: '' |
|
|
|
columnImage: false, |
|
|
|
columnSortable: false, |
|
|
|
sortLv: 0, |
|
|
|
status: true, |
|
|
|
fixed: '', |
|
|
|
columnWidth: 90, |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 400002, |
|
|
|
serialNumber: '400002Table1OrderNo', |
|
|
|
tableId: '400002Table1', |
|
|
|
columnProp: 'orderNo', |
|
|
|
columnLabel: '生产订单号', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'center', |
|
|
|
columnSortable: false, |
|
|
|
columnWidth: 130, |
|
|
|
align: 'left', |
|
|
|
columnHidden: false, |
|
|
|
fixed: '' |
|
|
|
columnImage: false, |
|
|
|
columnSortable: false, |
|
|
|
sortLv: 0, |
|
|
|
status: true, |
|
|
|
fixed: '', |
|
|
|
columnWidth: 70, |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 400002, |
|
|
|
serialNumber: '400002Table1CreateBy', |
|
|
|
tableId: '400002Table1', |
|
|
|
columnProp: 'createBy', |
|
|
|
columnLabel: '申请人', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'center', |
|
|
|
columnSortable: false, |
|
|
|
columnWidth: 100, |
|
|
|
align: 'left', |
|
|
|
columnHidden: false, |
|
|
|
fixed: '' |
|
|
|
columnImage: false, |
|
|
|
columnSortable: false, |
|
|
|
sortLv: 0, |
|
|
|
status: true, |
|
|
|
fixed: '', |
|
|
|
columnWidth: 70, |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 400002, |
|
|
|
serialNumber: '400002Table1CreateDate', |
|
|
|
tableId: '400002Table1', |
|
|
|
columnProp: 'createDate', |
|
|
|
columnLabel: '录入时间', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'center', |
|
|
|
columnSortable: false, |
|
|
|
columnWidth: 140, |
|
|
|
columnHidden: false, |
|
|
|
fixed: '' |
|
|
|
columnImage: false, |
|
|
|
columnSortable: false, |
|
|
|
sortLv: 0, |
|
|
|
status: true, |
|
|
|
fixed: '', |
|
|
|
columnWidth: 90, |
|
|
|
}, |
|
|
|
] |
|
|
|
}; |
|
|
|
@ -358,71 +395,59 @@ export default { |
|
|
|
this.modalFlag = true; |
|
|
|
}, |
|
|
|
createBillLading(row) { |
|
|
|
let inData = { |
|
|
|
site: row.site, |
|
|
|
notifyNo: row.notifyNo, |
|
|
|
thOrderNo: row.thOrderNo, |
|
|
|
needDate: row.needDate, |
|
|
|
createBy: this.$store.state.user.name, |
|
|
|
}; |
|
|
|
this.$confirm('确定创建提货单吗?', '提示', { |
|
|
|
confirmButtonText: '确定', |
|
|
|
cancelButtonText: '取消', |
|
|
|
type: 'warning' |
|
|
|
}).then(() => { |
|
|
|
axios.post('/createBillLading', row) |
|
|
|
.then(response => { |
|
|
|
this.$message.success('创建成功'); |
|
|
|
this.getDataList(); |
|
|
|
createBillLading(inData).then(({data}) => |
|
|
|
{ |
|
|
|
if (data.code === 0) { |
|
|
|
this.$message.success('创建成功'); |
|
|
|
this.getDataList(); |
|
|
|
} else { |
|
|
|
this.$message.error('创建失败:' + data.msg); |
|
|
|
} |
|
|
|
}) |
|
|
|
.catch(error => { |
|
|
|
this.$message.error('创建失败'); |
|
|
|
}); |
|
|
|
}).catch(() => {}); |
|
|
|
}) |
|
|
|
}, |
|
|
|
saveData() { |
|
|
|
if (!this.modalData.notifyNo) { |
|
|
|
this.$message.warning('申请单号不能为空'); |
|
|
|
if (!this.modalData.thOrderNo) { |
|
|
|
this.$message.error('3H订单号不能为空'); |
|
|
|
return; |
|
|
|
} |
|
|
|
if (!this.modalData.site) { |
|
|
|
this.$message.warning('站点不能为空'); |
|
|
|
if (!this.modalData.orderNo) { |
|
|
|
this.$message.error('生产订单号不能为空'); |
|
|
|
return; |
|
|
|
} |
|
|
|
if (this.modalDisableFlag) { |
|
|
|
// 编辑模式 |
|
|
|
axios.put('/issureNotify', this.modalData) |
|
|
|
.then(response => { |
|
|
|
this.$message.success('修改成功'); |
|
|
|
this.getDataList(); |
|
|
|
this.modalFlag = false; |
|
|
|
this.modalDisableFlag = false; |
|
|
|
}) |
|
|
|
.catch(error => { |
|
|
|
this.$message.error('修改失败'); |
|
|
|
}); |
|
|
|
} else { |
|
|
|
// 新增模式 |
|
|
|
axios.post('/issureNotify', this.modalData) |
|
|
|
.then(response => { |
|
|
|
this.$message.success('新增成功'); |
|
|
|
this.getDataList(); |
|
|
|
this.modalFlag = false; |
|
|
|
}) |
|
|
|
.catch(error => { |
|
|
|
this.$message.error('新增失败'); |
|
|
|
}); |
|
|
|
if (!this.modalData.needDate) { |
|
|
|
this.$message.error('要求发料日期不能为空'); |
|
|
|
return; |
|
|
|
} |
|
|
|
// 将needDate转换为GMT+8 |
|
|
|
let gmt8Date = new Date(new Date(this.modalData.needDate).getTime() + 8 * 60 * 60 * 1000); |
|
|
|
// 格式化为yyyy-MM-dd |
|
|
|
this.modalData.needDate = `${gmt8Date.getFullYear()}-${(gmt8Date.getMonth() + 1).toString().padStart(2, '0')}-${gmt8Date.getDate().toString().padStart(2, '0')}`; |
|
|
|
this.modalData.status = '保存'; |
|
|
|
this.modalData.site = this.$store.state.user.site; |
|
|
|
addBillLading(this.modalData).then(({data}) => |
|
|
|
{ |
|
|
|
if (data.code === 0) { |
|
|
|
this.modalFlag = false; |
|
|
|
this.$message.success('创建成功'); |
|
|
|
this.getDataList(); |
|
|
|
} else { |
|
|
|
this.$message.error('创建失败:' + data.msg); |
|
|
|
} |
|
|
|
}) |
|
|
|
}, |
|
|
|
deleteIssureNotify(row) { |
|
|
|
this.$confirm('确定删除该记录吗?', '提示', { |
|
|
|
confirmButtonText: '确定', |
|
|
|
cancelButtonText: '取消', |
|
|
|
type: 'warning' |
|
|
|
}).then(() => { |
|
|
|
axios.delete(`/issureNotify/${row.notifyNo}/${row.site}`) |
|
|
|
.then(response => { |
|
|
|
this.$message.success('删除成功'); |
|
|
|
this.getDataList(); |
|
|
|
}) |
|
|
|
.catch(error => { |
|
|
|
this.$message.error('删除失败'); |
|
|
|
}); |
|
|
|
}).catch(() => {}); |
|
|
|
} |
|
|
|
} |
|
|
|
}; |
|
|
|
</script> |
|
|
|
|