外协接口联调

dev-scheduling
jinna 2 months ago
parent b85b12209d
commit cc13fd19bf
  1. 11
      src/api/outsourcingManagement/baseTemplate.js
  2. 20
      src/api/outsourcingManagement/oemApproval.js
  3. 26
      src/api/outsourcingManagement/oemOrder.js
  4. 227
      src/views/oem/baseTemplate/index.vue
  5. 74
      src/views/oem/facInnerApproval/approvalDialog.vue
  6. 40
      src/views/oem/facInnerApproval/index.vue
  7. 74
      src/views/oem/oemApproval/approvalDialog.vue
  8. 671
      src/views/oem/oemApproval/index.vue
  9. 21
      src/views/oem/oemOrder/index.vue
  10. 70
      src/views/oem/oemOrder/manufacturerChange.vue
  11. 102
      src/views/oem/oemOrder/materialPrint.vue

@ -0,0 +1,11 @@
// 外协绩效模板
import request from '@/axios';
// 列表
export const getList = params => {
return request({
url: '/api/blade-desk/mesOemAndAbility/page',
method: 'get',
params
});
};

@ -0,0 +1,20 @@
// 转外协审批
import request from '@/axios';
// 获取列表
export const getList = params => {
return request({
url: '/api/blade-desk/oemOrder/queryOemApproval',
method: 'get',
params
});
};
// 审批
export const oemApproval = data => {
return request({
url: '/api/blade-desk/oemOrder/approval',
method: 'post',
data: data
});
};

@ -27,3 +27,29 @@ export const getInProcess = data => {
data data
}); });
}; };
// 更改厂家
export const changeFactory = data => {
return request({
url: '/api/blade-desk/oemOrder/changeOemManufacturer',
method: 'post',
params:data
});
};
// 外协厂商下拉
export const getOemManufacturer = () => {
return request({
url: '/api/blade-desk/BA/Oem/listForSelect',
method: 'get'
});
};
// 领料单打印分页
export const getPrintList = params => {
return request({
url: '/api/blade-desk/oemOrder/oemMaterialRequisitionPage',
method: 'get',
params
});
};

@ -29,6 +29,7 @@
</basic-container> </basic-container>
</template> </template>
<script> <script>
import {getList} from "@/api/outsourcingManagement/baseTemplate"
import maintenanceDialog from './components/maintenanceDialog.vue' import maintenanceDialog from './components/maintenanceDialog.vue'
import basicImport from '@/components/basic-import/main.vue' import basicImport from '@/components/basic-import/main.vue'
export default { export default {
@ -40,6 +41,7 @@ export default {
return { return {
isShowImport: false, isShowImport: false,
loading: false, loading: false,
query:{},
selectionList: [], selectionList: [],
option: { option: {
height: 'auto', height: 'auto',
@ -175,119 +177,138 @@ export default {
}).then(() => { }).then(() => {
}) })
}, },
searchChange(params, done){
this.query = params;
this.page.currentPage = 1
this.onLoad()
done()
},
searchReset(){
this.query = {}
this.onLoad()
},
// //
selectionChange(list) { selectionChange(list) {
this.selectionList = list; this.selectionList = list;
}, },
onLoad() { onLoad() {
this.loading = true this.loading = true
this.data = [ getList({
{ current:this.page.currentPage,
"ocName": "厂家1", size:this.page.pageSize,
"bsOemCustomer": { ...this.query
"abbreviation": "L076", }).then(res =>{
"address": "aaa", this.data = res.data.data.records
"codeAndName": "L076/L076", this.page.total = res.data.data.total
"contactMan": "aaa", this.loading = false
"contactPhone": "aaa", })
"craftAbility": "镀银、挂镀银、喷砂、涂色标、铜合金化学镀镍、电镀镍、DL零件包装", // this.data = [
"curStatus": 0, // {
"curStatusText": "正常供货", // "ocName": "1",
"email": "aaa", // "bsOemCustomer": {
"keyValue": 21, // "abbreviation": "L076",
"limitType": 0, // "address": "aaa",
"ocCode": "L076", // "codeAndName": "L076/L076",
"ocId": 21, // "contactMan": "aaa",
// "contactPhone": "aaa",
// "craftAbility": "DL",
// "curStatus": 0,
// "curStatusText": "",
// "email": "aaa",
// "keyValue": 21,
// "limitType": 0,
// "ocCode": "L076",
// "ocId": 21,
"oemPassword": null, // "oemPassword": null,
"partCodeYesOrNo": false, // "partCodeYesOrNo": false,
"qualification": 10, // "qualification": 10,
"qualificationTitle": null, // "qualificationTitle": null,
"region": "陕西省", // "region": "西",
"updateTime": "2023-04-14 18:33:49" // "updateTime": "2023-04-14 18:33:49"
}, // },
"createMan": { // "createMan": {
"userId": 541, // "userId": 541,
"userName": "崔殿龙" // "userName": "殿"
}, // },
"createTime": "2023-11-10 18:06:40", // "createTime": "2023-11-10 18:06:40",
"keyValue": 1, // "keyValue": 1,
"oaaId": 1, // "oaaId": 1,
"plate": "镀金" // "plate": ""
}, // },
{ // {
"ocName": "厂家1", // "ocName": "1",
"bsOemCustomer": { // "bsOemCustomer": {
"abbreviation": "L120", // "abbreviation": "L120",
"address": "aaa", // "address": "aaa",
"codeAndName": "L120/L120", // "codeAndName": "L120/L120",
"contactMan": "aaa", // "contactMan": "aaa",
"contactPhone": "aaa", // "contactPhone": "aaa",
"craftAbility": "不锈钢涂福斯润滑剂、DL零件包装、", // "craftAbility": "DL",
"curStatus": 0, // "curStatus": 0,
"curStatusText": "正常供货", // "curStatusText": "",
"email": "aaa", // "email": "aaa",
"keyValue": 2, // "keyValue": 2,
"limitType": 0, // "limitType": 0,
"ocCode": "L120", // "ocCode": "L120",
"ocId": 2, // "ocId": 2,
"oemPassword": null, // "oemPassword": null,
"partCodeYesOrNo": false, // "partCodeYesOrNo": false,
"qualification": 0, // "qualification": 0,
"qualificationTitle": "民品&普军", // "qualificationTitle": "&",
"region": "江苏省", // "region": "",
"updateTime": "2023-04-14 18:33:49" // "updateTime": "2023-04-14 18:33:49"
}, // },
"createMan": { // "createMan": {
"userId": 541, // "userId": 541,
"userName": "崔殿龙" // "userName": "殿"
}, // },
"createTime": "2023-11-10 18:06:40", // "createTime": "2023-11-10 18:06:40",
"keyValue": 4, // "keyValue": 4,
"oaaId": 4, // "oaaId": 4,
"plate": "镀金" // "plate": ""
}, // },
{ // {
"ocName": "L070", // "ocName": "L070",
"bsOemCustomer": { // "bsOemCustomer": {
"abbreviation": "L070", // "abbreviation": "L070",
"address": "aaa", // "address": "aaa",
"codeAndName": "L070/L070", // "codeAndName": "L070/L070",
"contactMan": "aaa", // "contactMan": "aaa",
"contactPhone": "aaa", // "contactPhone": "aaa",
"craftAbility": "滚镀金或振镀金、局部镀厚金、闪镀金、镀铂金、局部退火", // "craftAbility": "退",
"curStatus": 0, // "curStatus": 0,
"curStatusText": "正常供货", // "curStatusText": "",
"email": "aaa", // "email": "aaa",
"keyValue": 5, // "keyValue": 5,
"limitType": 0, // "limitType": 0,
"ocCode": "L070", // "ocCode": "L070",
"ocId": 5, // "ocId": 5,
"oemPassword": null, // "oemPassword": null,
"partCodeYesOrNo": false, // "partCodeYesOrNo": false,
"qualification": 10, // "qualification": 10,
"qualificationTitle": null, // "qualificationTitle": null,
"region": "江苏省", // "region": "",
"updateTime": "2023-04-14 18:33:49" // "updateTime": "2023-04-14 18:33:49"
}, // },
"createMan": { // "createMan": {
"userId": 541, // "userId": 541,
"userName": "崔殿龙" // "userName": "殿"
}, // },
"createTime": "2023-12-06 17:24:48", // "createTime": "2023-12-06 17:24:48",
"keyValue": 21, // "keyValue": 21,
"oaaId": 21, // "oaaId": 21,
"plate": "镀银" // "plate": ""
}, // },
] // ]
this.page.total = this.data.length // this.page.total = this.data.length
this.loading = false // this.loading = false
setTimeout(() => { // setTimeout(() => {
this.selectionClear() // this.selectionClear()
}, 500) // }, 500)
} }
} }
} }

@ -1,16 +1,17 @@
<template> <template>
<el-dialog title="审批" append-to-body :modelValue="openShow" width="30%" @close="closeDialog"> <el-dialog title="审批" append-to-body :modelValue="openShow" width="30%" @close="closeDialog">
<avue-form :option="option"></avue-form> <avue-form :option="option" ref="form" v-model="formData"></avue-form>
<template #footer> <template #footer>
<span class="dialog-footer"> <span class="dialog-footer">
<el-button type="primary" @click="rejection(4, '通过')">通过</el-button> <el-button @click="closeDialog">取消</el-button>
<el-button type="danger" @click="rejection(3, '不通过')">不通过</el-button> <el-button type="primary" @click="submit">确定</el-button>
</span> </span>
</template> </template>
</el-dialog> </el-dialog>
</template> </template>
<script> <script>
import {oemApproval} from "@/api/outsourcingManagement/oemApproval"
export default { export default {
props: { props: {
showDialog: { showDialog: {
@ -26,6 +27,29 @@ export default {
submitBtn: false, submitBtn: false,
emptyBtn: false, emptyBtn: false,
column: [ column: [
{
label: '审批结果',
prop: 'approvalStatus',
span: 24,
type: 'radio',
dicData: [
{
label: '通过',
value: 4
},
{
label: '不通过',
value: 3
}
],
rules: [
{
required: true,
message: '请选择审批结果',
}
]
},
{ {
label: '审批意见', label: '审批意见',
prop: 'approvalMemo', prop: 'approvalMemo',
@ -35,7 +59,7 @@ export default {
rules: [ rules: [
{ {
required: true, required: true,
message: '请输入性别', message: '请输入审批意见',
trigger: 'blur' trigger: 'blur'
} }
] ]
@ -49,32 +73,26 @@ export default {
this.openShow = this.showDialog this.openShow = this.showDialog
}, },
methods: { methods: {
closeDialog() { closeDialog(val) {
this.openShow = false this.openShow = false
this.$emit('closeDialog'); this.$emit('closeDialog',val);
},
submit(){
this.$refs.form.validate((valid, done, msg) => {
if(valid){
// this.$emit('approval', this.formData)
oemApproval({
...this.formData,
workOrderRunId:this.woId
}).then(res =>{
if(res.data.code == 200){
this.$message.success('审批成功')
this.closeDialog(true)
}
})
}
})
}, },
rejection(approvalStatus, approvalMemo) {
// if (this.formData.approvalMemo === null || this.formData.approvalMemo === undefined || this.formData.approvalMemo === '') {
// this.$set(this.formData, 'approvalMemo', approvalMemo);
// }
// this.$refs.form.validate((valid) => {
// if (valid) {
// this.$ajax
// .post('prWorkOrderRun/approval', {
// worId: this.rowItem.worId,
// approvalMemo: this.formData.approvalMemo,
// approvalStatus: approvalStatus
// })
// .then((res) => {
// if (this.$ifAjax(res)) {
// this.$message.success(this.$t('global.successfulOperation'));
// this.cancel(true);
// }
// });
// }
// });
this.closeDialog()
}
} }
} }
</script> </script>

@ -21,7 +21,7 @@
</template> </template>
<template #menu-right> </template> <template #menu-right> </template>
<template #menu="scope"> <template #menu="scope">
<el-button type="text" @click="approval(scope.row.tbId)">审批</el-button> <el-button type="text" @click="approval(scope.row)">审批</el-button>
</template> </template>
</avue-crud> </avue-crud>
@ -65,7 +65,7 @@ export default {
editBtnIcon: " ", editBtnIcon: " ",
viewBtnText: "详情", viewBtnText: "详情",
labelWidth: 120, labelWidth: 120,
menuWidth: 120, menuWidth: 80,
dialogWidth: 1040, dialogWidth: 1040,
dialogClickModal: false, dialogClickModal: false,
searchEnter: true, searchEnter: true,
@ -80,7 +80,7 @@ export default {
searchLabelPosition: "left", searchLabelPosition: "left",
searchGutter: 24, searchGutter: 24,
searchSpan: 6, searchSpan: 6,
menuAlign: "left", menuAlign: "center",
gridBtn: false, gridBtn: false,
searchMenuPosition: "right", searchMenuPosition: "right",
addBtnIcon: " ", addBtnIcon: " ",
@ -103,7 +103,7 @@ export default {
{ {
label: "零件号", label: "零件号",
prop: "partCode", prop: "partCode",
bind: "prWorkOrder.pjYieldOrder.partCode", // bind: "prWorkOrder.pjYieldOrder.partCode",
sortable: true, sortable: true,
filter: true, filter: true,
span: 12, span: 12,
@ -113,7 +113,7 @@ export default {
{ {
label: "批次号", label: "批次号",
prop: "batchNo", prop: "batchNo",
bind: "prWorkOrder.batchNo", // bind: "prWorkOrder.batchNo",
sortable: true, sortable: true,
filter: true, filter: true,
span: 12, span: 12,
@ -123,7 +123,7 @@ export default {
{ {
label: "产品名称", label: "产品名称",
prop: "partName", prop: "partName",
bind: "prWorkOrder.pjYieldOrder.partName", // bind: "prWorkOrder.pjYieldOrder.partName",
sortable: true, sortable: true,
filter: true, filter: true,
span: 12, span: 12,
@ -132,8 +132,8 @@ export default {
}, },
{ {
label: "生产标识", label: "生产标识",
prop: "prodIdent", prop: "productIdent",
bind: "prWorkOrder.pjYieldOrder.prodIdent", // bind: "prWorkOrder.pjYieldOrder.prodIdent",
sortable: true, sortable: true,
filter: true, filter: true,
span: 12, span: 12,
@ -143,7 +143,7 @@ export default {
{ {
label: "生产数量", label: "生产数量",
prop: "makeQty", prop: "makeQty",
bind: "prWorkOrder.makeQty", // bind: "prWorkOrder.makeQty",
sortable: true, sortable: true,
filter: true, filter: true,
span: 12, span: 12,
@ -152,8 +152,8 @@ export default {
}, },
{ {
label: "面积(d㎡)", label: "面积(d㎡)",
prop: "poArea", prop: "totalArea",
bind: "prWorkOrder.pjYieldOrder.poArea", // bind: "prWorkOrder.pjYieldOrder.poArea",
sortable: true, sortable: true,
filter: true, filter: true,
span: 12, span: 12,
@ -206,8 +206,8 @@ export default {
}, },
{ {
label: "申请人", label: "申请人",
prop: "userName", prop: "proposer",
bind: "createMan.userName", // bind: "createMan.userName",
sortable: true, sortable: true,
filter: true, filter: true,
span: 12, span: 12,
@ -216,8 +216,8 @@ export default {
}, },
{ {
label: "审批人", label: "审批人",
prop: "userName", prop: "approver",
bind: "approvalMan.userName", // bind: "approvalMan.userName",
sortable: true, sortable: true,
filter: true, filter: true,
span: 12, span: 12,
@ -255,10 +255,18 @@ export default {
}, },
methods: { methods: {
approval(row) { approval(row) {
console.log('row--------',row)
if(!row && this.selectionList.length == 0){
this.$message.error("请至少选择一条数据");
return
}
this.isOpen = true; this.isOpen = true;
}, },
closeDialog() { closeDialog(val) {
this.isOpen = false; this.isOpen = false;
if(val){
this.onLoad()
}
}, },
handleDelete() { handleDelete() {
if (this.selectionList.length === 0) { if (this.selectionList.length === 0) {

@ -1,16 +1,17 @@
<template> <template>
<el-dialog title="审批" append-to-body :modelValue="openShow" width="30%" @close="closeDialog"> <el-dialog title="审批" append-to-body :modelValue="openShow" width="30%" @close="closeDialog">
<avue-form :option="option"></avue-form> <avue-form :option="option" ref="form" v-model="formData"></avue-form>
<template #footer> <template #footer>
<span class="dialog-footer"> <span class="dialog-footer">
<el-button type="primary" @click="rejection(4, '通过')">通过</el-button> <el-button @click="closeDialog">取消</el-button>
<el-button type="danger" @click="rejection(3, '不通过')">不通过</el-button> <el-button type="primary" @click="submit">确定</el-button>
</span> </span>
</template> </template>
</el-dialog> </el-dialog>
</template> </template>
<script> <script>
import {oemApproval} from "@/api/outsourcingManagement/oemApproval"
export default { export default {
props: { props: {
showDialog: { showDialog: {
@ -26,6 +27,29 @@ export default {
submitBtn: false, submitBtn: false,
emptyBtn: false, emptyBtn: false,
column: [ column: [
{
label: '审批结果',
prop: 'approvalStatus',
span: 24,
type: 'radio',
dicData: [
{
label: '通过',
value: 4
},
{
label: '不通过',
value: 3
}
],
rules: [
{
required: true,
message: '请选择审批结果',
}
]
},
{ {
label: '审批意见', label: '审批意见',
prop: 'approvalMemo', prop: 'approvalMemo',
@ -35,7 +59,7 @@ export default {
rules: [ rules: [
{ {
required: true, required: true,
message: '请输入性别', message: '请输入审批意见',
trigger: 'blur' trigger: 'blur'
} }
] ]
@ -49,32 +73,26 @@ export default {
this.openShow = this.showDialog this.openShow = this.showDialog
}, },
methods: { methods: {
closeDialog() { closeDialog(val) {
this.openShow = false this.openShow = false
this.$emit('closeDialog'); this.$emit('closeDialog',val);
},
submit(){
this.$refs.form.validate((valid, done, msg) => {
if(valid){
// this.$emit('approval', this.formData)
oemApproval({
...this.formData,
workOrderRunId:this.woId
}).then(res =>{
if(res.data.code == 200){
this.$message.success('审批成功')
this.closeDialog(true)
}
})
}
})
}, },
rejection(approvalStatus, approvalMemo) {
// if (this.formData.approvalMemo === null || this.formData.approvalMemo === undefined || this.formData.approvalMemo === '') {
// this.$set(this.formData, 'approvalMemo', approvalMemo);
// }
// this.$refs.form.validate((valid) => {
// if (valid) {
// this.$ajax
// .post('prWorkOrderRun/approval', {
// worId: this.rowItem.worId,
// approvalMemo: this.formData.approvalMemo,
// approvalStatus: approvalStatus
// })
// .then((res) => {
// if (this.$ifAjax(res)) {
// this.$message.success(this.$t('global.successfulOperation'));
// this.cancel(true);
// }
// });
// }
// });
this.closeDialog()
}
} }
} }
</script> </script>

@ -35,6 +35,7 @@
</basic-container> </basic-container>
</template> </template>
<script> <script>
import {getList,oemApproval} from "@/api/outsourcingManagement/oemApproval"
import approvalDialog from "./approvalDialog.vue"; import approvalDialog from "./approvalDialog.vue";
export default { export default {
components: { components: {
@ -67,7 +68,7 @@ export default {
editBtnIcon: " ", editBtnIcon: " ",
viewBtnText: "详情", viewBtnText: "详情",
labelWidth: 120, labelWidth: 120,
menuWidth: 120, menuWidth: 80,
dialogWidth: 1040, dialogWidth: 1040,
dialogClickModal: false, dialogClickModal: false,
searchEnter: true, searchEnter: true,
@ -81,7 +82,7 @@ export default {
searchLabelPosition: "left", searchLabelPosition: "left",
searchGutter: 24, searchGutter: 24,
searchSpan: 6, searchSpan: 6,
menuAlign: "left", menuAlign: "center",
gridBtn: false, gridBtn: false,
searchMenuPosition: "right", searchMenuPosition: "right",
addBtnIcon: " ", addBtnIcon: " ",
@ -103,7 +104,7 @@ export default {
{ {
label: "零件号", label: "零件号",
prop: "partCode", prop: "partCode",
bind: "prWorkOrder.pjYieldOrder.partCode", // bind: "prWorkOrder.pjYieldOrder.partCode",
sortable: true, sortable: true,
filter: true, filter: true,
span: 12, span: 12,
@ -113,7 +114,7 @@ export default {
{ {
label: "批次号", label: "批次号",
prop: "batchNo", prop: "batchNo",
bind: "prWorkOrder.batchNo", // bind: "prWorkOrder.batchNo",
sortable: true, sortable: true,
filter: true, filter: true,
span: 12, span: 12,
@ -123,7 +124,7 @@ export default {
{ {
label: "产品名称", label: "产品名称",
prop: "partName", prop: "partName",
bind: "prWorkOrder.pjYieldOrder.partName", // bind: "prWorkOrder.pjYieldOrder.partName",
sortable: true, sortable: true,
filter: true, filter: true,
span: 12, span: 12,
@ -132,8 +133,8 @@ export default {
}, },
{ {
label: "生产标识", label: "生产标识",
prop: "prodIdent", prop: "productIdent",
bind: "prWorkOrder.pjYieldOrder.prodIdent", // bind: "prWorkOrder.pjYieldOrder.prodIdent",
sortable: true, sortable: true,
filter: true, filter: true,
span: 12, span: 12,
@ -143,7 +144,7 @@ export default {
{ {
label: "生产数量", label: "生产数量",
prop: "makeQty", prop: "makeQty",
bind: "prWorkOrder.makeQty", // bind: "prWorkOrder.makeQty",
sortable: true, sortable: true,
filter: true, filter: true,
span: 12, span: 12,
@ -152,8 +153,8 @@ export default {
}, },
{ {
label: "面积(d㎡)", label: "面积(d㎡)",
prop: "poArea", prop: "totalArea",
bind: "prWorkOrder.pjYieldOrder.poArea", // bind: "prWorkOrder.pjYieldOrder.poArea",
sortable: true, sortable: true,
filter: true, filter: true,
span: 12, span: 12,
@ -206,8 +207,8 @@ export default {
}, },
{ {
label: "申请人", label: "申请人",
prop: "userName", prop: "proposer",
bind: "createMan.userName", // bind: "createMan.userName",
sortable: true, sortable: true,
filter: true, filter: true,
span: 12, span: 12,
@ -216,8 +217,8 @@ export default {
}, },
{ {
label: "审批人", label: "审批人",
prop: "userName", prop: "approver",
bind: "approvalMan.userName", // bind: "approvalMan.userName",
sortable: true, sortable: true,
filter: true, filter: true,
span: 12, span: 12,
@ -245,6 +246,8 @@ export default {
], ],
}, },
form: {}, form: {},
query:{},
loading:false,
page: { page: {
pageSize: 10, pageSize: 10,
currentPage: 1, currentPage: 1,
@ -255,10 +258,18 @@ export default {
}, },
methods: { methods: {
approval(row) { approval(row) {
console.log('row--------',row)
if(!row && this.selectionList.length == 0){
this.$message.error("请至少选择一条数据");
return
}
this.isOpen = true; this.isOpen = true;
}, },
closeDialog() { closeDialog(val) {
this.isOpen = false; this.isOpen = false;
if(val){
this.onLoad()
}
}, },
handleDelete() { handleDelete() {
if (this.selectionList.length === 0) { if (this.selectionList.length === 0) {
@ -277,316 +288,326 @@ export default {
}, },
onLoad() { onLoad() {
this.loading = true; this.loading = true;
this.data = [ getList({
{ current:this.page.currentPage,
approvalMan: null, size:this.page.pageSize,
approvalMemo: null, runType:1,
approvalTime: null, ...this.query,
collaborate: true, }).then(res =>{
createMan: { this.data = res.data.data.records
userId: 541, this.page.total = res.data.data.total
userName: "崔殿龙", this.loading = false
}, })
createTime: "2024-01-22 09:48:54", // this.data = [
deliverKey: null, // {
inCustomer: null, // approvalMan: null,
inTeam: null, // approvalMemo: null,
keyValue: 8246, // approvalTime: null,
memo: "11111", // collaborate: true,
outCustomer: null, // createMan: {
outTeam: { // userId: 541,
tsCode: "006", // userName: "殿",
tsId: 66, // },
tsName: "化学镀镍一班郭家梁", // createTime: "2024-01-22 09:48:54",
}, // deliverKey: null,
prWorkOrder: { // inCustomer: null,
approvalStatus: 2, // inTeam: null,
batchArea: 43.48, // keyValue: 8246,
batchNo: "Y0382304283", // memo: "11111",
bsOemCustomer: null, // outCustomer: null,
ca: "E386-化学镀镍", // outTeam: {
cardNo: "1016870429", // tsCode: "006",
closeMan: null, // tsId: 66,
closeTime: null, // tsName: "",
collaborate: false, // },
collaborateText: "否", // prWorkOrder: {
createTime: "2023-04-14 18:19:35", // approvalStatus: 2,
currentBsOemCustomer: null, // batchArea: 43.48,
currentMakeTeam: { // batchNo: "Y0382304283",
tsCode: "006", // bsOemCustomer: null,
tsId: 66, // ca: "E386-",
tsName: "化学镀镍一班郭家梁", // cardNo: "1016870429",
}, // closeMan: null,
demandDate: "2023-04-18", // closeTime: null,
dispatcher: { // collaborate: false,
userId: 355, // collaborateText: "",
userName: "07188", // createTime: "2023-04-14 18:19:35",
}, // currentBsOemCustomer: null,
frontProcedureSet: null, // currentMakeTeam: {
handoverTime: null, // tsCode: "006",
hrTypeBool: null, // tsId: 66,
inventoryQty: 0.0, // tsName: "",
jcName: null, // },
keyValue: 2485, // demandDate: "2023-04-18",
lastInstoreTime: null, // dispatcher: {
lossQty: 0, // userId: 355,
mainProcessingUnit: "化学镀镍一班郭家梁", // userName: "07188",
makeQty: 100.0, // },
makeTeam: { // frontProcedureSet: null,
tsCode: "006", // handoverTime: null,
tsId: 66, // hrTypeBool: null,
tsName: "化学镀镍一班郭家梁", // inventoryQty: 0.0,
}, // jcName: null,
makeUnit: "化学镀镍一班郭家梁", // keyValue: 2485,
meetCycle: 0, // lastInstoreTime: null,
memo: null, // lossQty: 0,
mesCardNo: null, // mainProcessingUnit: "",
moCode: null, // makeQty: 100.0,
moLocal: null, // makeTeam: {
nextBsOemCustomer: null, // tsCode: "006",
nextMakeTeam: { // tsId: 66,
tsCode: "006", // tsName: "",
tsId: 66, // },
tsName: "化学镀镍一班郭家梁", // makeUnit: "",
}, // meetCycle: 0,
nextOrders: "0010", // memo: null,
nextProcedureSet: { // mesCardNo: null,
assist: false, // moCode: null,
assistTitle: "否", // moLocal: null,
createMan: { // nextBsOemCustomer: null,
userId: 1, // nextMakeTeam: {
userName: "admin", // tsCode: "006",
}, // tsId: 66,
createTime: "2022-11-15 10:30:45", // tsName: "",
cycle: 0.0, // },
cyropactorControl: true, // nextOrders: "0010",
deleted: false, // nextProcedureSet: {
eleRate: true, // assist: false,
eleStream: true, // assistTitle: "",
keyValue: 7, // createMan: {
mainProcess: true, // userId: 1,
mainProcessTitle: "是", // userName: "admin",
niValue: true, // },
phValue: true, // createTime: "2022-11-15 10:30:45",
ppsCode: "003", // cycle: 0.0,
ppsId: 7, // cyropactorControl: true,
ppsName: "化学镀镍", // deleted: false,
special: false, // eleRate: true,
specialTitle: "否", // eleStream: true,
team: null, // keyValue: 7,
updateTime: "2022-11-15 10:30:45", // mainProcess: true,
vSpeed: true, // mainProcessTitle: "",
}, // niValue: true,
notInQty: 100.0, // phValue: true,
nowWorkCenter: { // ppsCode: "003",
area: 13000.0, // ppsId: 7,
batchNo: null, // ppsName: "",
bigBatch: false, // special: false,
bsJfCenter: { // specialTitle: "",
createMan: { // team: null,
userId: 1, // updateTime: "2022-11-15 10:30:45",
userName: "admin", // vSpeed: true,
}, // },
createTime: "2024-12-09 00:00:00", // notInQty: 100.0,
deleted: false, // nowWorkCenter: {
jcCode: "RBZX", // area: 13000.0,
jcId: 1, // batchNo: null,
jcName: "热表中心", // bigBatch: false,
keyValue: 1, // bsJfCenter: {
updateTime: "2024-12-09 00:00:00", // createMan: {
}, // userId: 1,
checkout: false, // userName: "admin",
craftAbility: "化学镀镍", // },
createMan: { // createTime: "2024-12-09 00:00:00",
userId: 1, // deleted: false,
userName: "admin", // jcCode: "RBZX",
}, // jcId: 1,
createTime: "2023-02-06 12:31:36", // jcName: "",
deleted: false, // keyValue: 1,
describe: null, // updateTime: "2024-12-09 00:00:00",
endPoint: null, // },
keyValue: 81, // checkout: false,
leaderUser: { // craftAbility: "",
userId: 541, // createMan: {
userName: "崔殿龙", // userId: 1,
}, // userName: "admin",
limitType: 0, // },
processes: "上挂、下挂、交检、化学镀镍、喷砂", // createTime: "2023-02-06 12:31:36",
quantity: null, // deleted: false,
roundCycle: null, // describe: null,
saturation: 85.0, // endPoint: null,
sign: "4", // keyValue: 81,
startPoint: null, // leaderUser: {
team: "化学镀镍一班崔胜伟、化学镀镍一班郭家梁", // userId: 541,
updateTime: "2023-03-06 18:42:47", // userName: "殿",
wcCode: "001", // },
wcId: 81, // limitType: 0,
wcName: "化学镀镍作业中心", // processes: "",
whetherPlate: false, // quantity: null,
}, // roundCycle: null,
oem: false, // saturation: 85.0,
oemOut: true, // sign: "4",
oemType: -1, // startPoint: null,
oldRunStatus: null, // team: "",
orderMarkTitle: "热表中心", // updateTime: "2023-03-06 18:42:47",
orderWoCode: "WO-221296443-R06", // wcCode: "001",
orderWoCodeDeliverKey: null, // wcId: 81,
orders: "0005", // wcName: "",
outTime: null, // whetherPlate: false,
pgrId: null, // },
pickingStatus: 0, // oem: false,
pickingStatusTitle: "未领取", // oemOut: true,
pjYieldOrder: { // oemType: -1,
batchNo: "Y0382304283", // oldRunStatus: null,
bsProcedureQua: null, // orderMarkTitle: "",
businessType: 1, // orderWoCode: "WO-221296443-R06",
businessTypeTitle: "热表中心", // orderWoCodeDeliverKey: null,
cardNo: "1016870429", // orders: "0005",
craftId: null, // outTime: null,
curStatus: 0, // pgrId: null,
curStatusTitle: "待接收", // pickingStatus: 0,
custodian: "杨肖肖", // pickingStatusTitle: "",
demandDate: "2023-06-16", // pjYieldOrder: {
dsCraft: null, // batchNo: "Y0382304283",
dsPart: null, // bsProcedureQua: null,
entrustDept: "采购与物流中心(成件)", // businessType: 1,
failureMan: { // businessTypeTitle: "",
userId: 326, // cardNo: "1016870429",
userName: "02051", // craftId: null,
}, // curStatus: 0,
failureMemo: "分派成功!", // curStatusTitle: "",
failureTime: null, // custodian: "",
fatherYoId: null, // demandDate: "2023-06-16",
keyValue: 156703, // dsCraft: null,
manualIncrease: false, // dsPart: null,
memo: "XXXX", // entrustDept: "()",
newlevFlag: null, // failureMan: {
nextRoam: null, // userId: 326,
nextRoamName: null, // userName: "02051",
partCode: "21E8-154-1516-E9", // },
partName: "18-线夹", // failureMemo: "",
pdmUrl: null, // failureTime: null,
planUser: "白洁", // fatherYoId: null,
plate: "XXX", // keyValue: 156703,
poArea: 0.4348, // manualIncrease: false,
poCode: "WO-221296443", // memo: "XXXX",
poMemo: null, // newlevFlag: null,
poProdLine: null, // nextRoam: null,
poQty: 100.0, // nextRoamName: null,
primaryCraft: "库1-2(机加)-4(表)-库2", // partCode: "21E8-154-1516-E9",
priority: 1, // partName: "18-线",
prodIdent: "JII", // pdmUrl: null,
produceBool: false, // planUser: "",
productType: "XXXX", // plate: "XXX",
recseqno: null, // poArea: 0.4348,
releaseDate: "2022-12-17", // poCode: "WO-221296443",
reworkCode: null, // poMemo: null,
reworkMemo: null, // poProdLine: null,
reworkNo: null, // poQty: 100.0,
roamName: null, // primaryCraft: "1-2-4-2",
roamNo: "B5286963", // priority: 1,
siteWork: false, // prodIdent: "JII",
sjKitPreparation: null, // produceBool: false,
sjMoldPreparation: null, // productType: "XXXX",
syncTime: "2023-04-14 14:42:49", // recseqno: null,
useDept: "制造一部(38999)", // releaseDate: "2022-12-17",
useDeptcode: null, // reworkCode: null,
yieldType: 1, // reworkMemo: null,
yoCode: "WX-2212694911", // reworkNo: null,
yoId: 156703, // roamName: null,
}, // roamNo: "B5286963",
planEndDate: "2023-04-18 18:19:35", // siteWork: false,
planner: { // sjKitPreparation: null,
userId: 355, // sjMoldPreparation: null,
userName: "07188", // syncTime: "2023-04-14 14:42:49",
}, // useDept: "(38999)",
plateGoodsCode: null, // useDeptcode: null,
plateSingleQuota: 0.0, // yieldType: 1,
plateSingleQuotaTotal: 0.0, // yoCode: "WX-2212694911",
printCode: "HZQD20230509001", // yoId: 156703,
printFlag: true, // },
printMan: { // planEndDate: "2023-04-18 18:19:35",
userId: 541, // planner: {
userName: "崔殿龙", // userId: 355,
}, // userName: "07188",
printTime: "2023-05-09 19:08:13", // },
priority: 1, // plateGoodsCode: null,
priorityTitle: "正常", // plateSingleQuota: 0.0,
procedureSet: { // plateSingleQuotaTotal: 0.0,
assist: false, // printCode: "HZQD20230509001",
assistTitle: "否", // printFlag: true,
createMan: { // printMan: {
userId: 1, // userId: 541,
userName: "admin", // userName: "殿",
}, // },
createTime: "2022-11-15 10:30:29", // printTime: "2023-05-09 19:08:13",
cycle: 0.0, // priority: 1,
cyropactorControl: false, // priorityTitle: "",
deleted: false, // procedureSet: {
eleRate: true, // assist: false,
eleStream: true, // assistTitle: "",
keyValue: 6, // createMan: {
mainProcess: true, // userId: 1,
mainProcessTitle: "是", // userName: "admin",
niValue: false, // },
phValue: false, // createTime: "2022-11-15 10:30:29",
ppsCode: "002", // cycle: 0.0,
ppsId: 6, // cyropactorControl: false,
ppsName: "上挂", // deleted: false,
special: false, // eleRate: true,
specialTitle: "否", // eleStream: true,
team: null, // keyValue: 6,
updateTime: "2022-11-15 10:30:29", // mainProcess: true,
vSpeed: false, // mainProcessTitle: "",
}, // niValue: false,
processingUnit: "化学镀镍一班郭家梁", // phValue: false,
producycle: 4, // ppsCode: "002",
pushFlag: true, // ppsId: 6,
putStoreTime: null, // ppsName: "",
qcReworkCode: null, // special: false,
quotaExceptional: false, // specialTitle: "",
reInStore: false, // team: null,
readStatus: null, // updateTime: "2022-11-15 10:30:29",
readStatusTiTle: "未准备", // vSpeed: false,
recDept: null, // },
receptionTime: null, // processingUnit: "",
reworkCode: null, // producycle: 4,
reworkMemo: null, // pushFlag: true,
reworkNo: null, // putStoreTime: null,
rsCode: null, // qcReworkCode: null,
runStatus: 3, // quotaExceptional: false,
runStatusTitle: "加工中", // reInStore: false,
schedStatus: 0, // readStatus: null,
scrapQty: 0.0, // readStatusTiTle: "",
sendDownTime: "2023-04-14 18:19:35", // recDept: null,
smBatch: "是", // receptionTime: null,
subList: null, // reworkCode: null,
subRunStatus: null, // reworkMemo: null,
testQty: 0, // reworkNo: null,
tools: null, // rsCode: null,
totalArea: 43.48, // runStatus: 3,
woCode: "WO-221296443-R06", // runStatusTitle: "",
woId: 2485, // schedStatus: 0,
wpId: 14788, // scrapQty: 0.0,
ybCode: null, // sendDownTime: "2023-04-14 18:19:35",
ybLocal: null, // smBatch: "",
}, // subList: null,
printFlag: false, // subRunStatus: null,
printMan: null, // testQty: 0,
runStatus: 2, // tools: null,
runStatusTitle: "审批中", // totalArea: 43.48,
runType: 1, // woCode: "WO-221296443-R06",
runTypeTitle: "转外协", // woId: 2485,
systemData: false, // wpId: 14788,
woCode: "WO-221296443-R06", // ybCode: null,
worId: 8246, // ybLocal: null,
}, // },
]; // printFlag: false,
this.page.total = this.data.length; // printMan: null,
this.loading = false; // runStatus: 2,
setTimeout(() => { // runStatusTitle: "",
this.selectionClear(); // runType: 1,
}, 500); // runTypeTitle: "",
// systemData: false,
// woCode: "WO-221296443-R06",
// worId: 8246,
// },
// ];
// this.page.total = this.data.length;
// this.loading = false;
// setTimeout(() => {
// this.selectionClear();
// }, 500);
}, },
}, },
}; };

@ -18,7 +18,9 @@
@on-load="onLoad" @on-load="onLoad"
:row-class-name="rowCLassName" :row-class-name="rowCLassName"
> >
<template #menu-left> </template> <template #menu-left>
<el-button type="primary" @click="materialFormPrint">领料单打印</el-button>
</template>
<template #menu-right="{ size }"> <template #menu-right="{ size }">
<!-- 加工中 --> <!-- 加工中 -->
@ -44,12 +46,12 @@
</template> </template>
<template #menu="scope"> <template #menu="scope">
<!-- <el-button type="primary" link @click="memoDialogFun(scope.row)">关闭</el-button> --> <!-- <el-button type="primary" link @click="memoDialogFun(scope.row)">关闭</el-button> -->
<template v-if="scope.row.approvalStatus == 2"> <!-- <template v-if="scope.row.approvalStatus == 2"> -->
<!-- <el-button type="primary" link @click="takeBack(scope.row)" <!-- <el-button type="primary" link @click="takeBack(scope.row)"
>领料单打印</el-button >领料单打印</el-button
> --> > -->
<el-button type="primary" link @click="changeFn(scope.row)">厂家更改</el-button> <el-button type="primary" link @click="changeFn(scope.row)">厂家更改</el-button>
</template> <!-- </template> -->
<template <template
v-if="scope.row.approvalStatus != 2 && scope.row.runStatus < 15" v-if="scope.row.approvalStatus != 2 && scope.row.runStatus < 15"
@ -112,7 +114,10 @@
@cancel="cancel" @cancel="cancel"
:takeBackOpen="changeOpen" :takeBackOpen="changeOpen"
v-if="changeOpen" v-if="changeOpen"
:wor-id="worId"
></manufacturerChange> ></manufacturerChange>
<!-- 领料单打印 -->
<materialPrint v-if="showPrint" :showPrint="showPrint" @cancel="cancel"></materialPrint>
</basic-container> </basic-container>
</template> </template>
<script> <script>
@ -122,16 +127,19 @@ import memoDialog from "./memoDialog.vue";
import takeBack from "./takeBack.vue"; import takeBack from "./takeBack.vue";
import turnFacInner from "./turnFacInner.vue"; import turnFacInner from "./turnFacInner.vue";
import manufacturerChange from "./manufacturerChange.vue"; import manufacturerChange from "./manufacturerChange.vue";
import materialPrint from "./materialPrint.vue"
export default { export default {
components: { components: {
memoDialog, memoDialog,
takeBack, takeBack,
turnFacInner, turnFacInner,
manufacturerChange, manufacturerChange,
materialPrint,
// setCraftAbility // setCraftAbility
}, },
data() { data() {
return { return {
showPrint:false,
turnFacInnerOpen: false, turnFacInnerOpen: false,
rowItem: {}, rowItem: {},
takeBackOpen: false, takeBackOpen: false,
@ -588,7 +596,8 @@ export default {
}, },
methods: { methods: {
// //
changeFn() { changeFn(row) {
this.worId = row.woId
this.changeOpen = true; this.changeOpen = true;
}, },
turnFacInner(row) { turnFacInner(row) {
@ -637,6 +646,7 @@ export default {
this.showIp = true; this.showIp = true;
}, },
cancel(isRefresh) { cancel(isRefresh) {
this.showPrint = false
this.workRateOpen = false; this.workRateOpen = false;
this.isOpen = false; this.isOpen = false;
this.turnOemOpen = false; this.turnOemOpen = false;
@ -777,6 +787,9 @@ export default {
} }
done(); done();
}, },
materialFormPrint(){
this.showPrint = true
},
// beforeClose // beforeClose
beforeClose(done) { beforeClose(done) {
this.parentId = ""; this.parentId = "";

@ -1,6 +1,6 @@
<template> <template>
<el-dialog title="厂家更改" v-model="setCrewShow" :before-close="cancel" width="450px" @open="open"> <el-dialog title="厂家更改" v-model="setCrewShow" :before-close="cancel" width="450px" @open="open">
<avue-form :option="option"></avue-form> <avue-form ref="form" v-model="formData" :option="option"></avue-form>
<template #footer> <template #footer>
<div class="dialog-footer"> <div class="dialog-footer">
<el-button @click="cancel()">取消</el-button> <el-button @click="cancel()">取消</el-button>
@ -10,6 +10,7 @@
</el-dialog> </el-dialog>
</template> </template>
<script> <script>
import {changeFactory} from "@/api/outsourcingManagement/oemOrder"
export default { export default {
props: { props: {
takeBackOpen: { takeBackOpen: {
@ -33,33 +34,45 @@ export default {
submitBtn: false, submitBtn: false,
emptyBtn: false, emptyBtn: false,
column: [ column: [
{ // {
label: '旧厂家', // label: '',
prop: 'scrapQty', // prop: 'scrapQty',
span: 23, // span: 23,
controlsPosition: '', // controlsPosition: '',
disabled:true, // disabled:true,
}, // },
{ {
label: '新厂家', label: '新厂家',
prop: 'deliverKey', prop: 'deliverKey',
span: 23, span: 23,
type:'select', type:'select',
dicData:[ dicUrl:'/api/blade-desk/BA/Oem/listForSelect',
{ props:{
label:'厂家一', label:"ocName",
value:1 value:'id'
}, },
rules:[
{ {
label:'厂家2', required:true,
value:2 message:'请选择厂家',
}, trigger:'blur'
{
label:'厂家3',
value:3
} }
] ]
// dicData:[
// {
// label:'',
// value:1
// },
// {
// label:'2',
// value:2
// },
// {
// label:'3',
// value:3
// }
// ]
}, },
// { // {
// label: '', // label: '',
@ -110,7 +123,22 @@ export default {
this.formData = { ocId: null }; this.formData = { ocId: null };
// this.$refs.form.resetFields(); // this.$refs.form.resetFields();
this.$emit('cancel', typeof isRefresh === 'boolean' && isRefresh); this.$emit('cancel', typeof isRefresh === 'boolean' && isRefresh);
} },
submit(){
this.$refs.form.validate((valid, done, msg) => {
if(valid){
changeFactory({
worId:this.worId,
ocId:this.formData.deliverKey
}).then(res =>{
if(res.data.code == 200){
this.$message.success('修改成功')
this.cancel(true)
}
})
}
})
},
}, },
mounted() { mounted() {
this.setCrewShow = this.takeBackOpen this.setCrewShow = this.takeBackOpen

@ -0,0 +1,102 @@
<template>
<el-dialog title="领料单打印" v-model="setCrewShow" :before-close="cancel" fullscreen @open="open">
<el-form :inline="true" ref="linesForm" :model="lineForm" :rules="lineRules" label-width="90px">
<el-row :gutter="24">
<el-col :span="6">
<el-form-item label="外协厂商:" prop="ocId">
<el-select v-model="lineForm.ocId" placeholder="请选择" style="width: 300px;">
<el-option v-for="item in ocData" :key="item.id" :label="item.ocName" :value="item.id" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="外协单号:" prop="wxNo">
<el-input v-model="lineForm.wxNo" placeholder="请输入" style="width: 300px;"></el-input>
</el-form-item>
</el-col>
<!-- <el-col :span="6">
<el-form-item label="分派日期:" prop="wxNo">
<el-date-picker type="daterange" placeholder="请选择" v-model="lineForm.planIssuanceTime"
format="YYYY-MM-DD" value-format="YYYY-MM-DD" style="width: 300px;"></el-date-picker>
</el-form-item>
</el-col> -->
<el-col :span="6">
<el-form-item style="float: right;">
<el-button type="primary" @click="handleSearch">搜索</el-button>
<el-button @click="handleReset">重置</el-button>
</el-form-item>
</el-col>
</el-row>
</el-form>
<el-table :data="tableData">
<el-table-column type="selection" width="55px"></el-table-column>
<el-table-column label="外协订单号" prop="wxNo"></el-table-column>
<el-table-column label="零件号" prop="partCode"></el-table-column>
<el-table-column label="批次号" prop="batchNo"></el-table-column>
<el-table-column label="生产标识" prop="productIdent"></el-table-column>
<el-table-column label="分派日期" prop="planIssuanceTime"></el-table-column>
<el-table-column label="需求数量" prop="makeQty"></el-table-column>
<el-table-column label="协作计划工序" prop="planningProcess"></el-table-column>
<el-table-column label="计划类型" prop="planningType"></el-table-column>
<el-table-column label="主工序代码" prop="mainProcessCode"></el-table-column>
<el-table-column label="单间面积" prop="area"></el-table-column>
<el-table-column label="镀种" prop="plate"></el-table-column>
<el-table-column label="备注" prop="memo"></el-table-column>
</el-table>
<template #footer>
<div class="dialog-footer">
<el-button @click="cancel()">取消</el-button>
<el-button type="primary" @click="submit()"> 确认</el-button>
</div>
</template>
</el-dialog>
</template>
<script>
import {getOemManufacturer,getPrintList} from "@/api/outsourcingManagement/oemOrder"
export default {
props: {
showPrint: {
type: Boolean,
default: false,
},
},
data() {
return {
setCrewShow: false,
lineForm:{},
lineRules:{},
ocData:[],
tableData:[],
};
},
async mounted() {
const ocRes = await getOemManufacturer();
this.ocData = ocRes.data.data;
this.setCrewShow = this.showPrint;
},
methods: {
cancel(val) {
this.setCrewShow = false;
this.$emit('cancel', val);
},
handleSearch(){
let params = {
ocId:this.lineForm.ocId && this.lineForm.ocId,
wxNo:this.lineForm.wxNo && this.lineForm.wxNo,
current:1,
size:9999
// planIssuanceTimeStart:this.lineForm.planIssuanceTime && this.lineForm.planIssuanceTime.length != 0 && this.lineForm.planIssuanceTime[0],
// planIssuanceTimeEnd:this.lineForm.planIssuanceTime && this.lineForm.planIssuanceTime.length != 0 && this.lineForm.planIssuanceTime[1],
}
getPrintList(params).then(res=>{
console.log('res-----------',res)
this.tableData = res.data.data.records
})
},
},
};
</script>
<style>
</style>
Loading…
Cancel
Save