| src/api/WorkOrder.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/styles/global.css | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/views/basicSettings/powerDivider.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/views/kanbanManager/cj.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/views/kanbanManager/ckgl.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/views/kanbanManager/zhkb.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/views/workOrder/produceOrderList.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/views/workOrder/workOrderClose.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/views/workOrder/workOrderList.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/views/workOrder/workOrderSend.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| vue.config.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/api/WorkOrder.js
@@ -43,6 +43,15 @@ }) } // ERP订单反关闭 export function ReverseClosedErpOrder(data) { return request({ url: 'WorkOrder/ReverseClosedErpOrder', method: 'post', params: data }) } // ERP订单删除 export function DeleteErpOrder(data) { return request({ @@ -61,6 +70,16 @@ }) } // MES工单启动提交 export function MesOrderBitchReverseClosedSeave(data) { return request({ url: 'WorkOrder/MesOrderBitchReverseClosedSeave', method: 'post', data }) } // MES报废补单工单查询 export function MesBadOrderSearch(data) { return request({ src/styles/global.css
@@ -179,22 +179,22 @@ 定义滚动条高宽及背景 高宽分别对应横竖滚动条的尺寸 */ ::-webkit-scrollbar { width: 7px; height: 7px; /*background-color: white;*/ background-color: #f8f8fa; } /*::-webkit-scrollbar {*/ /* width: 7px;*/ /* height: 7px;*/ /* !*background-color: white;*!*/ /* background-color: #f8f8fa;*/ /*}*/ ::-webkit-scrollbar-thumb { /*box-shadow: inset 0 0 0px white;*/ box-shadow: inset 0 0 0px #f8f8fa; /*-webkit-box-shadow: inset 0 0 0px white;*/ -webkit-box-shadow: inset 0 0 0px #f8f8fa; background-color: rgb(193, 193, 193); /*滚动条的背景颜色*/ border-radius: 20px; } /*::-webkit-scrollbar-thumb {*/ /* !*box-shadow: inset 0 0 0px white;*!*/ /* box-shadow: inset 0 0 0px #f8f8fa;*/ /* !*-webkit-box-shadow: inset 0 0 0px white;*!*/ /* -webkit-box-shadow: inset 0 0 0px #f8f8fa;*/ /* background-color: rgb(193, 193, 193);*/ /* !*滚动条的背景颜色*!*/ /* border-radius: 20px;*/ /*}*/ /*解决表格固定列时的压样式问题*/ .el-table__fixed { src/views/basicSettings/powerDivider.vue
@@ -64,7 +64,7 @@ @mouseover="isScroll='left'" > <div style=" "> <i class="el-icon-s-operation" :style="{color:$store.state.settings.theme}" /> 菜单权限 <i class="el-icon-s-operation" :style="{color:$store.state.settings.theme}"/> 菜单权限 </div> <el-tree @@ -131,36 +131,36 @@ <!-- </div>--> </div> </el-tab-pane> <!-- <el-tab-pane label="APP端" name="APP">--> <!-- <div style="display: flex;">--> <!-- <div--> <!-- ref="scrollLeft"--> <!-- style="border-right: 1px solid rgba(0,0,0,0.2);width:100%;--> <!-- overflow-y: auto;overflow-x:hidden;"--> <!-- :style="{height:(tableHeight-40)+'px'}"--> <!-- @scroll="scrollLeftScroll()"--> <!-- @mouseover="isScroll='left'"--> <!-- >--> <!-- <div style=" ">--> <!-- <i class="el-icon-s-operation" :style="{color:$store.state.settings.theme}" /> 菜单权限--> <!-- </div>--> <!-- <el-tab-pane label="APP端" name="APP">--> <!-- <div style="display: flex;">--> <!-- <div--> <!-- ref="scrollLeft"--> <!-- style="border-right: 1px solid rgba(0,0,0,0.2);width:100%;--> <!-- overflow-y: auto;overflow-x:hidden;"--> <!-- :style="{height:(tableHeight-40)+'px'}"--> <!-- @scroll="scrollLeftScroll()"--> <!-- @mouseover="isScroll='left'"--> <!-- >--> <!-- <div style=" ">--> <!-- <i class="el-icon-s-operation" :style="{color:$store.state.settings.theme}" /> 菜单权限--> <!-- </div>--> <!-- <el-tree--> <!-- ref="treeCenterAPPRef"--> <!-- style="padding-top: 10px;"--> <!-- :data="treeCenter"--> <!-- highlight-current--> <!-- :props="defaultPropsCenter"--> <!-- show-checkbox--> <!-- node-key="menucode"--> <!-- :default-expand-all="true"--> <!-- @check-change="handleTreeCenterCheckChange"--> <!-- @check="handleTreeCenterCheck"--> <!-- @node-click="getLeftTreeNode"--> <!-- />--> <!-- </div>--> <!-- </div>--> <!-- </el-tab-pane>--> <!-- <el-tree--> <!-- ref="treeCenterAPPRef"--> <!-- style="padding-top: 10px;"--> <!-- :data="treeCenter"--> <!-- highlight-current--> <!-- :props="defaultPropsCenter"--> <!-- show-checkbox--> <!-- node-key="menucode"--> <!-- :default-expand-all="true"--> <!-- @check-change="handleTreeCenterCheckChange"--> <!-- @check="handleTreeCenterCheck"--> <!-- @node-click="getLeftTreeNode"--> <!-- />--> <!-- </div>--> <!-- </div>--> <!-- </el-tab-pane>--> <!-- <el-tab-pane label="工控端" name="工控端">工控端</el-tab-pane>--> </el-tabs> @@ -185,7 +185,7 @@ export default { name: 'PowerDivider', directives: { waves }, directives: {waves}, data() { return { mainHeight: 0, @@ -234,7 +234,7 @@ // 获取角色权限查询角色 async getRolePermissionSearchRole() { const { data: res } = await RolePermissionSearchRole() const {data: res} = await RolePermissionSearchRole() this.treeLeft = res let rolecode = '' @@ -262,12 +262,12 @@ // 获取菜单权限对应的按钮 async getRolePermissionSearchRoleMenuButton(rolecode) { const { data: res } = await RolePermissionSearchRoleMenuButton({ rolecode, type: this.activeName }) const {data: res} = await RolePermissionSearchRoleMenuButton({rolecode, type: this.activeName}) this.allButtonData = res.length > 0 ? JSON.parse(res[0].jsondate) : [] }, // 获取菜单权限 async getRolePermissionSearchRoleMenu(rolecode) { const { data: res } = await RolePermissionSearchRoleMenu({ rolecode, type: this.activeName }) const {data: res} = await RolePermissionSearchRoleMenu({rolecode, type: this.activeName}) // 拿到数组list转换成树形tree const result = arrayToTree(res, { @@ -277,7 +277,7 @@ }) this.treeCenter = [ { menucode: '-1', menuname: '全部', children: result } {menucode: '-1', menuname: '全部', children: result} ] this.treeCenter[0].children.sort((a, b) => a.menu_seq - b.menu_seq) @@ -429,7 +429,7 @@ this.$forceUpdate() }, // 处理中间树形勾选 handleTreeCenterCheck(obj, { checkedNodes, checkedKeys, halfCheckedNodes, halfCheckedKeys }) { handleTreeCenterCheck(obj, {checkedNodes, checkedKeys, halfCheckedNodes, halfCheckedKeys}) { // console.log(obj, checkedNodes, checkedKeys, halfCheckedNodes, halfCheckedKeys, '加多宝') if (checkedKeys.length === 0) { // 树形菜单全不选的情况下 @@ -513,6 +513,10 @@ this.$notify.success(rolename + '的角色权限提交成功!') await this.getRolePermissionSearchRoleMenuButton(rolecode) this.$store.state.app.buttonIsDisabled = false setTimeout(() => { location.reload() }, 2000) } }, // 获取页面高度 src/views/kanbanManager/cj.vue
@@ -6,7 +6,7 @@ <div class="kb_header"> <div class="kb_headTime" style="top: 35px;left: 20px"> <span>浙江寅寅科技有限公司</span> <span>浙江阿鲁克健身器材有限公司</span> </div> <div class="kb_headTime kb_header_text" style="top: 35px;left: 828px"> src/views/kanbanManager/ckgl.vue
@@ -5,7 +5,7 @@ <div class="kb_backgroundCustom" /> <div class="kb_header"> <div class="kb_headTime" style="top: 35px;left: 20px"> <span>浙江寅寅科技有限公司</span> <span>浙江阿鲁克健身器材有限公司</span> </div> <div class="kb_headTime kb_header_text" style="top: 35px;left: 800px"> src/views/kanbanManager/zhkb.vue
@@ -6,7 +6,7 @@ <div class="kb_header"> <div class="kb_headTime" style="top: 35px;left: 20px"> <span>浙江寅寅科技有限公司</span> <span>浙江阿鲁克健身器材有限公司</span> </div> <div class="kb_headTime kb_header_text" style="top: 35px;left: 800px"> src/views/workOrder/produceOrderList.vue
@@ -7,10 +7,17 @@ > <div style="font-weight: bolder;">订单状态</div> <div class="statusItem" :class="{statusItemLight:form.erporderstus===''}" @click="statusChange('')">全部</div> <div class="statusItem" :class="{statusItemLight:form.erporderstus==='NEW'}" @click="statusChange('NEW')">新订单</div> <div class="statusItem" :class="{statusItemLight:form.erporderstus==='CREATING'}" @click="statusChange('CREATING')">部分下达</div> <div class="statusItem" :class="{statusItemLight:form.erporderstus==='CREATED'}" @click="statusChange('CREATED')">全部下达</div> <div class="statusItem" :class="{statusItemLight:form.erporderstus==='CLOSED'}" @click="statusChange('CLOSED')">已关闭</div> <div class="statusItem" :class="{statusItemLight:form.erporderstus==='NEW'}" @click="statusChange('NEW')">新订单 </div> <div class="statusItem" :class="{statusItemLight:form.erporderstus==='CREATING'}" @click="statusChange('CREATING')">部分下达 </div> <div class="statusItem" :class="{statusItemLight:form.erporderstus==='CREATED'}" @click="statusChange('CREATED')">全部下达 </div> <div class="statusItem" :class="{statusItemLight:form.erporderstus==='CLOSED'}" @click="statusChange('CLOSED')"> 已关闭 </div> </div> <div class="bodyTopButtonGroup" style="justify-content: space-between;margin-top: 5px;"> @@ -74,22 +81,22 @@ </el-select> </el-form-item> <el-form-item label="订单编号" style=" display: flex;"> <el-input v-model="form.erpordercode" placeholder="请输入" style="width: 200px" /> <el-input v-model="form.erpordercode" placeholder="请输入" style="width: 200px"/> </el-form-item> <el-form-item label="销售订单" style=" display: flex;"> <el-input v-model="form.saleordercode" style="width: 200px" placeholder="请输入" /> <el-input v-model="form.saleordercode" style="width: 200px" placeholder="请输入"/> </el-form-item> <el-form-item v-show="isExpandForm" label="产品编码" style=" display: flex;"> <el-input v-model="form.partcode" style="width: 200px" placeholder="请输入" /> <el-input v-model="form.partcode" style="width: 200px" placeholder="请输入"/> </el-form-item> <el-form-item v-show="isExpandForm" label="产品名称" style=" display: flex;"> <el-input v-model="form.partname" style="width: 200px" placeholder="请输入" /> <el-input v-model="form.partname" style="width: 200px" placeholder="请输入"/> </el-form-item> <el-form-item v-show="isExpandForm" label="产品规格" style=" display: flex;"> <el-input v-model="form.partspec" style="width: 200px" placeholder="请输入" /> <el-input v-model="form.partspec" style="width: 200px" placeholder="请输入"/> </el-form-item> <DateType @@ -237,7 +244,7 @@ <el-table-column show-tooltip-when-overflow prop="saleOrderCode" label="销售订单" label="销售订单/预测单" sortable="custom" width="150" > @@ -273,6 +280,30 @@ </template> </el-table-column> <el-table-column prop="TopInventoryCode" label="顶级物料编码" sortable="custom" show-tooltip-when-overflow min-width="130" > <template slot-scope="{row}"> <div v-if="row.TopInventoryCode">{{ row.TopInventoryCode }}</div> <div v-else>/</div> </template> </el-table-column> <el-table-column prop="TopInventoryName" label="顶级物料名称" sortable="custom" show-tooltip-when-overflow min-width="130" > <template slot-scope="{row}"> <div v-if="row.TopInventoryName">{{ row.TopInventoryName }}</div> <div v-else>/</div> </template> </el-table-column> <el-table-column prop="qty" label="订单数量" width="150" @@ -286,66 +317,66 @@ width="150" sortable="custom" /> <!-- <el-table-column--> <!-- prop="priuserdefnvc1"--> <!-- label="客户名称"--> <!-- width="110"--> <!-- sortable="custom"--> <!-- >--> <!-- <template slot-scope="{row}">--> <!-- {{ row.priuserdefnvc1 ? row.priuserdefnvc1 : '/' }}--> <!-- </template>--> <!-- </el-table-column>--> <!-- <el-table-column--> <!-- prop="priuserdefnvc6"--> <!-- label="客户编码"--> <!-- width="110"--> <!-- sortable="custom"--> <!-- >--> <!-- <template slot-scope="{row}">--> <!-- {{ row.priuserdefnvc6 ? row.priuserdefnvc6 : '/' }}--> <!-- </template>--> <!-- </el-table-column>--> <!-- <el-table-column--> <!-- prop="priuserdefnvc2"--> <!-- label="对内名称"--> <!-- width="110"--> <!-- sortable="custom"--> <!-- >--> <!-- <template slot-scope="{row}">--> <!-- {{ row.priuserdefnvc2 ? row.priuserdefnvc2 : '/' }}--> <!-- </template>--> <!-- </el-table-column>--> <!-- <el-table-column--> <!-- prop="priuserdefnvc3"--> <!-- label="CTP日期"--> <!-- width="110"--> <!-- sortable="custom"--> <!-- >--> <!-- <template slot-scope="{row}">--> <!-- {{ row.priuserdefnvc3 ? row.priuserdefnvc3 : '/' }}--> <!-- </template>--> <!-- </el-table-column>--> <!-- <el-table-column--> <!-- prop="priuserdefnvc4"--> <!-- label="钢刀编号"--> <!-- width="110"--> <!-- sortable="custom"--> <!-- >--> <!-- <template slot-scope="{row}">--> <!-- {{ row.priuserdefnvc4 ? row.priuserdefnvc4 : '/' }}--> <!-- </template>--> <!-- </el-table-column>--> <!-- <el-table-column--> <!-- prop="priuserdefnvc5"--> <!-- label="盒型"--> <!-- width="110"--> <!-- sortable="custom"--> <!-- >--> <!-- <template slot-scope="{row}">--> <!-- {{ row.priuserdefnvc5 ? row.priuserdefnvc5 : '/' }}--> <!-- </template>--> <!-- </el-table-column>--> <!-- <el-table-column--> <!-- prop="priuserdefnvc1"--> <!-- label="客户名称"--> <!-- width="110"--> <!-- sortable="custom"--> <!-- >--> <!-- <template slot-scope="{row}">--> <!-- {{ row.priuserdefnvc1 ? row.priuserdefnvc1 : '/' }}--> <!-- </template>--> <!-- </el-table-column>--> <!-- <el-table-column--> <!-- prop="priuserdefnvc6"--> <!-- label="客户编码"--> <!-- width="110"--> <!-- sortable="custom"--> <!-- >--> <!-- <template slot-scope="{row}">--> <!-- {{ row.priuserdefnvc6 ? row.priuserdefnvc6 : '/' }}--> <!-- </template>--> <!-- </el-table-column>--> <!-- <el-table-column--> <!-- prop="priuserdefnvc2"--> <!-- label="对内名称"--> <!-- width="110"--> <!-- sortable="custom"--> <!-- >--> <!-- <template slot-scope="{row}">--> <!-- {{ row.priuserdefnvc2 ? row.priuserdefnvc2 : '/' }}--> <!-- </template>--> <!-- </el-table-column>--> <!-- <el-table-column--> <!-- prop="priuserdefnvc3"--> <!-- label="CTP日期"--> <!-- width="110"--> <!-- sortable="custom"--> <!-- >--> <!-- <template slot-scope="{row}">--> <!-- {{ row.priuserdefnvc3 ? row.priuserdefnvc3 : '/' }}--> <!-- </template>--> <!-- </el-table-column>--> <!-- <el-table-column--> <!-- prop="priuserdefnvc4"--> <!-- label="钢刀编号"--> <!-- width="110"--> <!-- sortable="custom"--> <!-- >--> <!-- <template slot-scope="{row}">--> <!-- {{ row.priuserdefnvc4 ? row.priuserdefnvc4 : '/' }}--> <!-- </template>--> <!-- </el-table-column>--> <!-- <el-table-column--> <!-- prop="priuserdefnvc5"--> <!-- label="盒型"--> <!-- width="110"--> <!-- sortable="custom"--> <!-- >--> <!-- <template slot-scope="{row}">--> <!-- {{ row.priuserdefnvc5 ? row.priuserdefnvc5 : '/' }}--> <!-- </template>--> <!-- </el-table-column>--> <el-table-column prop="clerkuser" label="销售业务员" @@ -473,12 +504,21 @@ @click="edit('edit',row)" /> </el-tooltip> <el-tooltip v-del-tab-index class="item" effect="dark" content="订单关闭" placement="top"> <el-tooltip v-del-tab-index class="item" effect="dark" :content="row.status!=='CLOSED'?'订单关闭':'订单启动'" placement="top"> <i v-if="row.status!=='CLOSED'" class="el-icon-switch-button" :style="{color:'red'}" style="cursor: pointer;margin-left: 15px" @click="orderClose(row)" /> <i v-if="row.status==='CLOSED'" class="el-icon-thumb" :style="{color:$store.state.settings.theme}" style="cursor: pointer;margin-left: 15px" @click="orderClose(row.id)" @click="orderOpen(row)" /> </el-tooltip> @@ -519,26 +559,35 @@ > <el-form ref="dialogForm" inline :rules="dialogFormRules" :model="dialogForm" label-width="106px"> <el-form-item label="订单编号" prop="erpordercode"> <el-input v-model="dialogForm.erpordercode" disabled style="width: 200px" /> <el-input v-model="dialogForm.erpordercode" disabled style="width: 200px"/> </el-form-item> <el-form-item label="产品编码" prop="partcode"> <el-input v-model="dialogForm.partcode" disabled style="width: 200px" /> <el-input v-model="dialogForm.partcode" disabled style="width: 200px"/> </el-form-item> <el-form-item label="产品名称" prop="partname"> <el-input v-model="dialogForm.partname" disabled style="width: 200px" /> <el-input v-model="dialogForm.partname" disabled style="width: 200px"/> </el-form-item> <el-form-item label="产品规格" prop="partspec"> <el-input v-model="dialogForm.partspec" disabled style="width: 200px" /> <el-input v-model="dialogForm.partspec" disabled style="width: 200px"/> </el-form-item> <el-form-item label="顶级物料编码" prop="TopInventoryCode"> <el-input v-model="dialogForm.TopInventoryCode" disabled style="width: 200px"/> </el-form-item> <el-form-item label="顶级物料名称" prop="TopInventoryName"> <el-input v-model="dialogForm.TopInventoryName" disabled style="width: 200px"/> </el-form-item> <el-form-item label="生产车间" prop="wkshopname"> <el-input v-model="dialogForm.wkshopname" disabled style="width: 200px" /> <el-input v-model="dialogForm.wkshopname" disabled style="width: 200px"/> </el-form-item> <el-form-item label="所属仓库" prop="warehousename"> <el-input v-model="dialogForm.warehousename" disabled style="width: 200px" /> <el-input v-model="dialogForm.warehousename" disabled style="width: 200px"/> </el-form-item> <el-form-item label="订单数量" prop="erpqty"> <el-input v-model="dialogForm.erpqty" disabled style="width: 200px" /> <el-input v-model="dialogForm.erpqty" disabled style="width: 200px"/> </el-form-item> <el-form-item label="已下单数" prop="relse_qty"> <el-input @@ -636,7 +685,7 @@ <script> import Pagination from '@/components/Pagination' import { handleDatetime } from '@/utils/global' import {handleDatetime} from '@/utils/global' import elDragDialog from '@/directive/el-drag-dialog' import waves from '@/directive/waves' import { @@ -644,10 +693,10 @@ DeleteErpOrder, ErpOrderSearch, MarkBatchSaveErpOrder, MarkSaveErpOrder MarkSaveErpOrder, ReverseClosedErpOrder } from '@/api/WorkOrder' import { SeaveSearchErpOrder } from '@/api/ErpSyncMes' import { PrentOrganizationNoCompany } from '@/api/GeneralBasicData' import {SeaveSearchErpOrder} from '@/api/ErpSyncMes' import {PrentOrganizationNoCompany} from '@/api/GeneralBasicData' import DateType from '@/components/DateType' const SER_HZ = /^[\u4e00-\u9fa5]+$/ @@ -656,7 +705,7 @@ components: { Pagination, DateType }, directives: { elDragDialog, waves }, directives: {elDragDialog, waves}, data() { const validateName = (rule, value, callback) => { if (!value) { @@ -698,10 +747,10 @@ }, erporderstusArr: [ { code: 'NEW', name: '新订单' }, { code: 'CREATING', name: '部分下达' }, { code: 'CREATED', name: '全部下达' }, { code: 'CLOSED', name: '已关闭' } {code: 'NEW', name: '新订单'}, {code: 'CREATING', name: '部分下达'}, {code: 'CREATED', name: '全部下达'}, {code: 'CLOSED', name: '已关闭'} ], wkshopcodeArr: [], total: 10, @@ -729,6 +778,10 @@ ordernum: '', // 下单单数 relse_qty: '', // 已下单数量 idTopInventory: '', // 顶级物料id TopInventoryCode: '', // 顶级物料编码 TopInventoryName: '', // 顶级物料名称 clerkuser: '', // 销售业务员 saleOrderDeliveryDate: '', // 预计交付日期 @@ -745,13 +798,13 @@ // { required: true, validator: validateName, trigger: ['blur', 'change'] } // ], markqty: [ { required: true, message: '请输入下单数量', trigger: ['blur', 'change'] } {required: true, message: '请输入下单数量', trigger: ['blur', 'change']} ], ordernum: [ { required: true, message: '请输入下单单数', trigger: ['blur', 'change'] } {required: true, message: '请输入下单单数', trigger: ['blur', 'change']} ], saleOrderDeliveryDate: [ { required: true, message: '请选择预计交付日期', trigger: ['blur', 'change'] } {required: true, message: '请选择预计交付日期', trigger: ['blur', 'change']} ] }, @@ -804,7 +857,7 @@ }, async getPrentOrganizationNoCompany() { const { data: res } = await PrentOrganizationNoCompany() const {data: res} = await PrentOrganizationNoCompany() this.wkshopcodeArr = res }, async getErpOrderSearch() { @@ -853,7 +906,7 @@ this.total = res.count }, // 排序改变时 sortChange({ column, prop, order }) { sortChange({column, prop, order}) { if (order === 'descending') { order = 'desc' } else if (order === 'ascending') { @@ -939,7 +992,7 @@ cancelButtonText: '取消', type: 'warning' }).then(() => { DeleteErpOrder({ erpordercode: item.wo, erporderid: id }).then(res => { DeleteErpOrder({erpordercode: item.wo, erporderid: id}).then(res => { if (res.code === '200') { this.$message.success('订单删除成功!') this.getErpOrderSearch() @@ -953,28 +1006,41 @@ }) }, // 订单关闭 async orderClose(id) { this.tableData.forEach(item => { if (item.id === id) { if (item.status !== 'NEW') { return this.$message.info('此订单非新订单,无法关闭!') } else { this.$confirm('是否确认关闭订单?', '提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning' }).then(() => { ClosedErpOrder({ erpordercode: item.wo, erporderid: id }).then(res => { if (res.code === '200') { this.$message.success('订单关闭成功!') this.getErpOrderSearch() } }) }).catch(() => { this.$message.info('已取消关闭!') }) async orderClose(row) { if (row.status !== 'NEW') { return this.$message.info('此订单非新订单,无法关闭!') } else { this.$confirm('是否确认关闭订单?', '提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning' }).then(() => { ClosedErpOrder({erpordercode: row.wo, erporderid: row.id}).then(res => { if (res.code === '200') { this.$message.success('订单关闭成功!') this.getErpOrderSearch() } }) }).catch(() => { this.$message.info('已取消关闭!') }) } }, // 订单开启 async orderOpen(row) { this.$confirm('是否确认启动订单,该订单下的所有工单将会开启!', '提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning' }).then(() => { ReverseClosedErpOrder({erpordercode: row.wo, erporderid: row.id}).then(res => { if (res.code === '200') { this.$message.success('订单启动成功!') this.getErpOrderSearch() } } }) }).catch(() => { this.$message.info('已取消关闭!') }) }, batchHandle() { @@ -1065,6 +1131,11 @@ this.dialogForm.markqty = parseFloat(row.qty) - parseFloat(row.relse_qty) this.dialogForm.ordernum = 1 this.dialogForm.relse_qty = row.relse_qty this.dialogForm.idTopInventory = row.idTopInventory this.dialogForm.TopInventoryCode = row.TopInventoryCode this.dialogForm.TopInventoryName = row.TopInventoryName this.dialogForm.clerkuser = row.clerkuser this.dialogForm.paystartdate = row.planstartdate @@ -1093,6 +1164,10 @@ markqty: '', // 下单数量 ordernum: '', // 下单单数 relse_qty: '', // 已下单数量 idTopInventory: '', // 顶级物料id TopInventoryCode: '', // 顶级物料编码 TopInventoryName: '', // 顶级物料名称 payenddate: '', // 预计完工日期 paystartdate: '', // 预计开工日期 @@ -1130,6 +1205,11 @@ 'partcode': this.dialogForm.partcode, 'wkshopcode': this.dialogForm.wkshopcode, 'warehousecode': this.dialogForm.warehousecode, 'idTopInventory': this.dialogForm.idTopInventory, 'TopInventoryCode': this.dialogForm.TopInventoryCode, 'TopInventoryName': this.dialogForm.TopInventoryName, 'clerkuser': this.dialogForm.clerkuser, 'erpqty': this.dialogForm.erpqty, 'markqty': this.dialogForm.markqty, @@ -1162,11 +1242,11 @@ this.$refs.tableDataRef.doLayout() }) }, tableRowClassName({ row, rowIndex }) { tableRowClassName({row, rowIndex}) { return 'custom-row' }, getSummaries(param) { const { columns, data } = param const {columns, data} = param const sums = [] const i = 7 columns.forEach((column, index) => { @@ -1363,12 +1443,13 @@ padding: 10px 10px 0 10px; } .statusItem{ .statusItem { margin-left: 20px; cursor: pointer; color: #a7a7a7; } .statusItemLight{ .statusItemLight { font-weight: bolder; color: #42b983; } src/views/workOrder/workOrderClose.vue
@@ -3,7 +3,8 @@ <div class="body" :style="{height:mainHeight+'px'}"> <div class="bodyTopButtonGroup"> <el-button v-waves icon="el-icon-switch-button" type="success" @click="orderClose()">工单关闭</el-button> <el-button v-waves icon="el-icon-switch-button" type="danger" @click="orderClose()">工单关闭</el-button> <el-button v-waves icon="el-icon-thumb" type="success" @click="orderOpen()">工单启动</el-button> </div> <div class="bodyTopFormGroup"> @@ -49,13 +50,13 @@ </el-select> </el-form-item> <el-form-item label="工单编号" style=" display: flex;"> <el-input v-model="form.mesordercode" placeholder="请输入" style="width: 200px" /> <el-input v-model="form.mesordercode" placeholder="请输入" style="width: 200px"/> </el-form-item> <el-form-item label="源单单号" style="display: flex;"> <el-input v-model="form.sourceorder" style="width: 200px" placeholder="请输入" /> <el-input v-model="form.sourceorder" style="width: 200px" placeholder="请输入"/> </el-form-item> <el-form-item v-show="isExpandForm" label="销售订单" style="display: flex;"> <el-input v-model="form.saleordercode" style="width: 200px" placeholder="请输入" /> <el-input v-model="form.saleordercode" style="width: 200px" placeholder="请输入"/> </el-form-item> <el-form-item v-show="isExpandForm" label="单据类型" style=" display: flex;"> <el-select @@ -74,16 +75,16 @@ </el-select> </el-form-item> <el-form-item v-show="isExpandForm" label="产品编码" style=" display: flex;"> <el-input v-model="form.partcode" style="width: 200px" placeholder="请输入" /> <el-input v-model="form.partcode" style="width: 200px" placeholder="请输入"/> </el-form-item> <el-form-item v-show="isExpandForm" label="产品名称" style=" display: flex;"> <el-input v-model="form.partname" style="width: 200px" placeholder="请输入" /> <el-input v-model="form.partname" style="width: 200px" placeholder="请输入"/> </el-form-item> <el-form-item v-show="isExpandForm" label="产品规格" style=" display: flex;"> <el-input v-model="form.partspec" style="width: 200px" placeholder="请输入" /> <el-input v-model="form.partspec" style="width: 200px" placeholder="请输入"/> </el-form-item> <el-form-item v-show="isExpandForm" label="创建人员" style=" display: flex;"> <el-input v-model="form.creatuser" style="width: 200px" placeholder="请输入" /> <el-input v-model="form.creatuser" style="width: 200px" placeholder="请输入"/> </el-form-item> <el-form-item v-show="isExpandForm" label="创建时间" style=" display: flex;"> <!-- <el-date-picker--> @@ -154,8 +155,8 @@ <el-table-column type="selection" width="50" :selectable="selected" /> <!-- :selectable="selected"--> <el-table-column prop="rowNum" width="50" @@ -202,7 +203,7 @@ </el-table-column> <el-table-column prop="saleOrderCode" label="销售订单" label="销售订单/预测单" sortable="custom" show-tooltip-when-overflow min-width="160" @@ -258,66 +259,66 @@ show-tooltip-when-overflow width="100" /> <!-- <el-table-column--> <!-- prop="priuserdefnvc1"--> <!-- label="客户名称"--> <!-- width="110"--> <!-- sortable="custom"--> <!-- >--> <!-- <template slot-scope="{row}">--> <!-- {{ row.priuserdefnvc1 ? row.priuserdefnvc1 : '/' }}--> <!-- </template>--> <!-- </el-table-column>--> <!-- <el-table-column--> <!-- prop="priuserdefnvc6"--> <!-- label="客户编码"--> <!-- width="110"--> <!-- sortable="custom"--> <!-- >--> <!-- <template slot-scope="{row}">--> <!-- {{ row.priuserdefnvc6 ? row.priuserdefnvc6 : '/' }}--> <!-- </template>--> <!-- </el-table-column>--> <!-- <el-table-column--> <!-- prop="priuserdefnvc2"--> <!-- label="对内名称"--> <!-- width="110"--> <!-- sortable="custom"--> <!-- >--> <!-- <template slot-scope="{row}">--> <!-- {{ row.priuserdefnvc2 ? row.priuserdefnvc2 : '/' }}--> <!-- </template>--> <!-- </el-table-column>--> <!-- <el-table-column--> <!-- prop="priuserdefnvc3"--> <!-- label="CTP日期"--> <!-- width="110"--> <!-- sortable="custom"--> <!-- >--> <!-- <template slot-scope="{row}">--> <!-- {{ row.priuserdefnvc3 ? row.priuserdefnvc3 : '/' }}--> <!-- </template>--> <!-- </el-table-column>--> <!-- <el-table-column--> <!-- prop="priuserdefnvc4"--> <!-- label="钢刀编号"--> <!-- width="110"--> <!-- sortable="custom"--> <!-- >--> <!-- <template slot-scope="{row}">--> <!-- {{ row.priuserdefnvc4 ? row.priuserdefnvc4 : '/' }}--> <!-- </template>--> <!-- </el-table-column>--> <!-- <el-table-column--> <!-- prop="priuserdefnvc5"--> <!-- label="盒型"--> <!-- width="110"--> <!-- sortable="custom"--> <!-- >--> <!-- <template slot-scope="{row}">--> <!-- {{ row.priuserdefnvc5 ? row.priuserdefnvc5 : '/' }}--> <!-- </template>--> <!-- </el-table-column>--> <!-- <el-table-column--> <!-- prop="priuserdefnvc1"--> <!-- label="客户名称"--> <!-- width="110"--> <!-- sortable="custom"--> <!-- >--> <!-- <template slot-scope="{row}">--> <!-- {{ row.priuserdefnvc1 ? row.priuserdefnvc1 : '/' }}--> <!-- </template>--> <!-- </el-table-column>--> <!-- <el-table-column--> <!-- prop="priuserdefnvc6"--> <!-- label="客户编码"--> <!-- width="110"--> <!-- sortable="custom"--> <!-- >--> <!-- <template slot-scope="{row}">--> <!-- {{ row.priuserdefnvc6 ? row.priuserdefnvc6 : '/' }}--> <!-- </template>--> <!-- </el-table-column>--> <!-- <el-table-column--> <!-- prop="priuserdefnvc2"--> <!-- label="对内名称"--> <!-- width="110"--> <!-- sortable="custom"--> <!-- >--> <!-- <template slot-scope="{row}">--> <!-- {{ row.priuserdefnvc2 ? row.priuserdefnvc2 : '/' }}--> <!-- </template>--> <!-- </el-table-column>--> <!-- <el-table-column--> <!-- prop="priuserdefnvc3"--> <!-- label="CTP日期"--> <!-- width="110"--> <!-- sortable="custom"--> <!-- >--> <!-- <template slot-scope="{row}">--> <!-- {{ row.priuserdefnvc3 ? row.priuserdefnvc3 : '/' }}--> <!-- </template>--> <!-- </el-table-column>--> <!-- <el-table-column--> <!-- prop="priuserdefnvc4"--> <!-- label="钢刀编号"--> <!-- width="110"--> <!-- sortable="custom"--> <!-- >--> <!-- <template slot-scope="{row}">--> <!-- {{ row.priuserdefnvc4 ? row.priuserdefnvc4 : '/' }}--> <!-- </template>--> <!-- </el-table-column>--> <!-- <el-table-column--> <!-- prop="priuserdefnvc5"--> <!-- label="盒型"--> <!-- width="110"--> <!-- sortable="custom"--> <!-- >--> <!-- <template slot-scope="{row}">--> <!-- {{ row.priuserdefnvc5 ? row.priuserdefnvc5 : '/' }}--> <!-- </template>--> <!-- </el-table-column>--> <el-table-column prop="wkshp_name" label="生产车间" @@ -405,12 +406,20 @@ /> </el-tooltip> <el-tooltip class="item" effect="dark" content="工单关闭" placement="top"> <el-tooltip class="item" effect="dark" :content="row.status!=='CLOSED'?'工单关闭':'工单启动'" placement="top"> <i v-if="row.status!=='CLOSED'" class="el-icon-switch-button" style="cursor: pointer;margin-left: 15px" :style="{color:$store.state.settings.theme}" :style="{color:'red'}" @click.stop="orderClose(row)" /> <i v-if="row.status==='CLOSED'" class="el-icon-thumb" style="cursor: pointer;margin-left: 15px" :style="{color:$store.state.settings.theme}" @click.stop="orderOpen(row)" /> </el-tooltip> @@ -589,7 +598,7 @@ <el-form-item label="工单编号" prop="mesordercode"> <!-- <el-input v-model="dialogForm.mesordercode" :disabled="operation!=='add'" style="width: 200px" />--> <el-input v-model="dialogForm.mesordercode" disabled style="width: 200px" /> <el-input v-model="dialogForm.mesordercode" disabled style="width: 200px"/> </el-form-item> <!-- <div style="display: flex">--> <el-form-item label="工单类型" prop="mesorderstus"> @@ -670,7 +679,7 @@ <!-- <el-input v-model="dialogForm.partcode" disabled style="width: 200px" />--> <!-- </el-form-item>--> <el-form-item label="产品规格" prop="partspec"> <el-input v-model="dialogForm.partspec" disabled style="width: 200px" /> <el-input v-model="dialogForm.partspec" disabled style="width: 200px"/> </el-form-item> <!-- :disabled="dialogForm.partcode===''"--> <el-form-item label="所属车间" prop="wkshopcode"> @@ -1011,20 +1020,20 @@ </el-select> </el-form-item> <el-form-item label="工单编号" style=" display: flex;"> <el-input v-model="sourceForm.sourceorder" placeholder="请输入" style="width: 200px" /> <el-input v-model="sourceForm.sourceorder" placeholder="请输入" style="width: 200px"/> </el-form-item> <el-form-item label="产品编码" style=" display: flex;"> <el-input v-model="sourceForm.partcode" style="width: 200px" placeholder="请输入" /> <el-input v-model="sourceForm.partcode" style="width: 200px" placeholder="请输入"/> </el-form-item> <el-form-item v-show="isExpandDialog" label="产品名称" style=" display: flex;"> <el-input v-model="sourceForm.partname" style="width: 200px" placeholder="请输入" /> <el-input v-model="sourceForm.partname" style="width: 200px" placeholder="请输入"/> </el-form-item> <el-form-item v-show="isExpandDialog" label="产品规格" style=" display: flex;"> <el-input v-model="sourceForm.partspec" style="width: 200px" placeholder="请输入" /> <el-input v-model="sourceForm.partspec" style="width: 200px" placeholder="请输入"/> </el-form-item> <el-form-item v-show="isExpandDialog" label="创建人员" style=" display: flex;"> <el-input v-model="sourceForm.creatuser" style="width: 200px" placeholder="请输入" /> <el-input v-model="sourceForm.creatuser" style="width: 200px" placeholder="请输入"/> </el-form-item> <el-form-item @@ -1348,9 +1357,9 @@ justify-content: center; position: relative;" > <div id="qrCode0" ref="qrCodeDiv0" /> <div id="qrCode0" ref="qrCodeDiv0"/> </div> <div style="background-color: #fff;width: 20px;height:120px; position: absolute;right: 0" /> <div style="background-color: #fff;width: 20px;height:120px; position: absolute;right: 0"/> <div style="z-index: 10;background-color:transparent;width: 120px;height:120px; position: absolute;right: 21px" /> @@ -1381,7 +1390,7 @@ align="center" > <template slot-scope="{row}"> <div :id="'qrCode'+row.seq" :ref="'qrCodeDiv'+row.seq" class="tableColumn" /> <div :id="'qrCode'+row.seq" :ref="'qrCodeDiv'+row.seq" class="tableColumn"/> </template> </el-table-column> <el-table-column @@ -1915,11 +1924,11 @@ @close="handleCloseRoute" > <div> <i class="el-icon-s-comment" style="color:#42b983;" /> 产品名称:{{ dialogFormRoute.projectName }} <i class="el-icon-s-comment" style="color:#42b983;"/> 产品名称:{{ dialogFormRoute.projectName }} </div> <el-divider /> <el-divider/> <div style="margin-bottom: 10px"> <i class="el-icon-s-operation" style="color:#42b983;" /> 工艺路线集合 <i class="el-icon-s-operation" style="color:#42b983;"/> 工艺路线集合 </div> <div class="myCheckboxGroup"> @@ -1943,9 +1952,9 @@ </div> </div> <el-divider /> <el-divider/> <div> <i class="el-icon-s-operation" style="color:#42b983;" /> 默认工艺路线 <i class="el-icon-s-operation" style="color:#42b983;"/> 默认工艺路线 </div> <div style="margin-top: 20px"> <el-select @@ -1963,9 +1972,9 @@ /> </el-select> </div> <el-divider /> <el-divider/> <div style="margin-bottom: 10px"> <i class="el-icon-s-operation" style="color:#42b983;" /> 工序列表 <i class="el-icon-s-operation" style="color:#42b983;"/> 工序列表 </div> <div style="overflow-y: scroll"> <el-table @@ -2001,11 +2010,11 @@ > <template slot-scope="{row}"> <div v-if="row.enable==='Y'"> <svg-icon icon-class="circleYes" style="margin-right: 2px" /> <svg-icon icon-class="circleYes" style="margin-right: 2px"/> 是 </div> <div v-if="row.enable==='N'"> <svg-icon icon-class="circleNo" style="margin-right: 2px" /> <svg-icon icon-class="circleNo" style="margin-right: 2px"/> 否 </div> </template> @@ -2025,8 +2034,8 @@ <script> import Pagination from '@/components/Pagination' import { handleDatetime, handleDatetime2, validateCode } from '@/utils/global' import { getCookie } from '@/utils/auth' import {handleDatetime, handleDatetime2, validateCode} from '@/utils/global' import {getCookie} from '@/utils/auth' import QRCode from 'qrcodejs2' import $ from 'jquery' import elDragDialog from '@/directive/el-drag-dialog' @@ -2036,20 +2045,20 @@ AddUpdateMesOrder, DeleteMesOrder, MesBadOrderSearch, MesOrderDistribution, MesOrderClosedSearch, UpdateMesOrderStepSearch, MesOrderBitchClosedSeave UpdateMesOrderStepSearch, MesOrderBitchClosedSeave, MesOrderBitchReverseClosedSeave } from '@/api/WorkOrder' import { PartSelect } from '@/api/ProductModel' import { PrentOrganization, PrentOrganizationNoCompany, StepData } from '@/api/GeneralBasicData' import {PartSelect} from '@/api/ProductModel' import {PrentOrganization, PrentOrganizationNoCompany, StepData} from '@/api/GeneralBasicData' import Sortable from 'sortablejs' import ElDragSelect from '@/components/DragSelect' import { MesOrderPrintSearch } from '@/api/GridReport' // base on element-ui import {MesOrderPrintSearch} from '@/api/GridReport' // base on element-ui export default { name: 'WorkOrderClose', components: { Pagination, ElDragSelect }, directives: { elDragDialog, waves }, directives: {elDragDialog, waves}, data() { return { mouseHoverType: 'mouseout', @@ -2082,8 +2091,8 @@ // { code: 'CREATED', name: '已关闭' } // { code: 'ALLO', name: '已派发' } // 已关闭:CLOSED 未关闭:NOCLOSED { code: 'NOCLOSED', name: '未关闭' }, { code: 'CLOSED', name: '已关闭' } {code: 'NOCLOSED', name: '未关闭'}, {code: 'CLOSED', name: '已关闭'} // { code: 'NOSCHED', name: '待排程' }, // { code: 'SCHED', name: '已排程' } ], @@ -2112,51 +2121,51 @@ mesmaxqty: 0// 工单的最大值 }, ordertypeArr: [// 工单类型 { code: 'PO', name: '标准工单' }, { code: 'FO', name: '报废补单' } {code: 'PO', name: '标准工单'}, {code: 'FO', name: '报废补单'} ], partArr: [], // 产品信息 wkshopArr: [], // 生产车间数组 routeArr: [], // 工艺路线数组 orderlevArr: [ { code: 1, name: '特级' }, { code: 2, name: '紧急' }, { code: 3, name: '正常' } {code: 1, name: '特级'}, {code: 2, name: '紧急'}, {code: 3, name: '正常'} ], // 工单等级数组 operation: '', dialogFormRules: { mesorderstus: [ { required: true, message: '请选择订单状态', trigger: ['blur', 'change'] } {required: true, message: '请选择订单状态', trigger: ['blur', 'change']} ], partcode: [ { required: true, message: '请选择产品信息', trigger: ['blur', 'change'] } {required: true, message: '请选择产品信息', trigger: ['blur', 'change']} ], mesordercode: [ { required: true, validator: validateCode, trigger: ['blur', 'change'] } {required: true, validator: validateCode, trigger: ['blur', 'change']} ], mesqty: [ { required: true, message: '请输入工单数量', trigger: ['blur', 'change'] } {required: true, message: '请输入工单数量', trigger: ['blur', 'change']} ], wkshopcode: [ { required: true, message: '请选择生产车间', trigger: ['blur', 'change'] } {required: true, message: '请选择生产车间', trigger: ['blur', 'change']} ], deliverydate: [ { required: true, message: '请选择预计交付日期', trigger: ['blur', 'change'] } {required: true, message: '请选择预计交付日期', trigger: ['blur', 'change']} ], planstartdate: [ { required: true, message: '请选择开始时间', trigger: ['blur', 'change'] } {required: true, message: '请选择开始时间', trigger: ['blur', 'change']} ], planenddate: [ { required: true, message: '请选择结束时间', trigger: ['blur', 'change'] } {required: true, message: '请选择结束时间', trigger: ['blur', 'change']} ], orderlev: [ { required: true, message: '请选择工单等级', trigger: ['blur', 'change'] } {required: true, message: '请选择工单等级', trigger: ['blur', 'change']} ], isAps: [ { required: true, message: '请选择是否排程', trigger: ['blur', 'change'] } {required: true, message: '请选择是否排程', trigger: ['blur', 'change']} ], bomId: [ { required: true, message: '请选择物料清单', trigger: ['blur', 'change'] } {required: true, message: '请选择物料清单', trigger: ['blur', 'change']} ] }, @@ -2266,9 +2275,9 @@ tableDataDetail: [], // 点击工单表的行 显示详细信息 printSize: 0, printSizeSelectArr: [// 宽*高 { code: 0, name: '80*50' }, { code: 1, name: '78*60' }, { code: 2, name: '60*40' } {code: 0, name: '80*50'}, {code: 1, name: '78*60'}, {code: 2, name: '60*40'} // { code: 2, name: '50*60' }, // { code: 3, name: '50*40' }, // { code: 4, name: '50*80' }, @@ -2299,7 +2308,7 @@ watch: { 'stepSelectedValue': { // deep: true, handler: function(val) { handler: function (val) { // do something with the new and old value of stepSelectedValue console.log(val, 1) const arr = JSON.parse(JSON.stringify(this.stepTableData)) @@ -2338,7 +2347,7 @@ const el = this.$refs.stepTableDataRef.$el.querySelectorAll('.el-table__body-wrapper > table > tbody')[0] this.sortable = Sortable.create(el, { ghostClass: 'sortable-ghost', // Class name for the drop placeholder, setData: function(dataTransfer) { setData: function (dataTransfer) { // to avoid Firefox bug // Detail see : https://github.com/RubaXa/Sortable/issues/1012 dataTransfer.setData('Text', '') @@ -2354,7 +2363,7 @@ } }) }, tableRowClassName({ row, rowIndex }) { tableRowClassName({row, rowIndex}) { return 'custom-row' }, handleRequest() { @@ -2366,7 +2375,7 @@ }) }, async getPrentOrganizationNoCompany() { const { data: res } = await PrentOrganizationNoCompany() const {data: res} = await PrentOrganizationNoCompany() this.wkshopcodeArr = res }, async getMesOrderClosedSearch() { @@ -2397,19 +2406,19 @@ this.total = res.count // this.form.createdate = tempDate return { code: res.code } return {code: res.code} }, async getSelect() { // 获取产品信息 const { data: res1 } = await PartSelect() const {data: res1} = await PartSelect() this.partArr = res1 // 获取组织 const { data: res2 } = await PrentOrganization() const {data: res2} = await PrentOrganization() this.wkshopArr = res2 // 获取工序 const { data: res3 } = await StepData() const {data: res3} = await StepData() this.stepSelectArr = res3 }, // 订单状态改变时 @@ -2417,7 +2426,7 @@ this.form.mesorderstus = val }, // 排序改变时 sortChange({ column, prop, order }) { sortChange({column, prop, order}) { if (order === 'descending') { order = 'desc' } else if (order === 'ascending') { @@ -2429,7 +2438,7 @@ this.form.prop = prop this.getMesOrderClosedSearch() }, sourceSortChange({ column, prop, order }) { sourceSortChange({column, prop, order}) { if (order === 'descending') { order = 'desc' } else if (order === 'ascending') { @@ -2463,7 +2472,7 @@ }, // 新增按钮 async add(operation) { const { data: res } = await AddMesOrderCodeSearch() const {data: res} = await AddMesOrderCodeSearch() this.dialogForm.mesordercode = res this.operation = operation this.dialogVisible = true @@ -2488,7 +2497,8 @@ this.dialogVisibleTask = false }, handleSelectionChange(val) { this.multipleSelection = val.map(i => i.wo_code) // this.multipleSelection = val.map(i => i.wo_code) this.multipleSelection = val }, selected(row, index) { @@ -2567,7 +2577,7 @@ wocode: this.dialogForm.mesordercode, data_sources: this.dialogForm.data_sources } const { data: res } = await UpdateMesOrderStepSearch(data) const {data: res} = await UpdateMesOrderStepSearch(data) this.dialogForm.mesmaxqty = res.canupdate_qty this.stepTableData = res.stepdata // res.stepdata.forEach(i => { @@ -2585,17 +2595,47 @@ }, // 工单关闭事件 async orderClose(row) { this.$confirm('是否确认删除?', '提示', { this.$confirm('是否确认关闭?', '提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning' }).then(() => { if (row) { // 行关闭工单 this.multipleSelection = [row.wo_code] let data = null if (row) { // 行启动工单 data = [row.wo_code] } else { data = this.multipleSelection.filter(i => i.status === 'CLOSED').map(i => i.wo_code) } MesOrderBitchClosedSeave(this.multipleSelection).then(res => { MesOrderBitchClosedSeave(data).then(res => { if (res.code === '200') { this.$notify.success('关闭成功!') // if (this.form.page > 1 && this.tableData.length === 1) { // this.form.page-- // } this.getMesOrderClosedSearch() } }) }).catch(() => { this.$notify.info('已取消删除!') }) }, // 工单启动事件 async orderOpen(row) { this.$confirm('是否确认启动?', '提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning' }).then(() => { let data = null if (row) { // 行启动工单 data = [row.wo_code] } else { data = this.multipleSelection.filter(i => i.status === 'CLOSED').map(i => i.wo_code) } MesOrderBitchReverseClosedSeave(data).then(res => { if (res.code === '200') { this.$notify.success('启动成功!') // if (this.form.page > 1 && this.tableData.length === 1) { // this.form.page-- // } @@ -2735,7 +2775,7 @@ return this.$message.info('请先选择工艺路线!') } this.dialogVisibleSearch = true const { data: res } = await SelectRouteStep({ routecode: this.dialogForm.routecode }) const {data: res} = await SelectRouteStep({routecode: this.dialogForm.routecode}) this.searchTableData = res }, dialogVisibleSearchBack() { @@ -2890,7 +2930,7 @@ }, // 补打生产入库条码 async getProductInHouseLabCode(ordercode) { const res = await ProductInHouseLabCode({ ordercode }) const res = await ProductInHouseLabCode({ordercode}) console.log(res) this.isLastPrint = true @@ -3051,7 +3091,7 @@ this.dialogFormRoute.projectCode = row.partcode this.dialogFormRoute.projectName = row.partname this.dialogVisibleRoute = true const { data: res } = await InventoryFileAssociationRoute({ partcode: this.dialogFormRoute.projectCode }) const {data: res} = await InventoryFileAssociationRoute({partcode: this.dialogFormRoute.projectCode}) this.dialogFormRoute.routeOperationArr = res this.dialogFormRoute.routeOperationArr.forEach((item, index) => { @@ -3093,7 +3133,7 @@ const data = [] this.dialogFormRoute.routeOperationArr.forEach(item => { if (item.isSelected2) { data.push({ code: item.code, name: item.name }) data.push({code: item.code, name: item.name}) } }) @@ -3136,7 +3176,7 @@ wocode: row.wo_code, data_sources: row.data_sources } const { data: res } = await UpdateMesOrderStepSearch(data) const {data: res} = await UpdateMesOrderStepSearch(data) this.tableDataDetail = res.stepdata }, // 工序删除 @@ -3157,10 +3197,10 @@ }, printMe2StylePadding(val) { if (val === 0) { return { paddingLeft: '10px', paddingTop: '5px' } return {paddingLeft: '10px', paddingTop: '5px'} } if (val === 5) { return { paddingLeft: '15px', paddingTop: '7px' } return {paddingLeft: '15px', paddingTop: '7px'} } }, src/views/workOrder/workOrderList.vue
@@ -225,7 +225,7 @@ </el-table-column> <el-table-column prop="saleOrderCode" label="销售订单" label="销售订单/预测单" sortable="custom" show-tooltip-when-overflow min-width="160" @@ -288,7 +288,30 @@ <div v-else>/</div> </template> </el-table-column> <el-table-column prop="TopInventoryCode" label="顶级物料编码" sortable="custom" show-tooltip-when-overflow min-width="130" > <template slot-scope="{row}"> <div v-if="row.TopInventoryCode">{{ row.TopInventoryCode }}</div> <div v-else>/</div> </template> </el-table-column> <el-table-column prop="TopInventoryName" label="顶级物料名称" sortable="custom" show-tooltip-when-overflow min-width="130" > <template slot-scope="{row}"> <div v-if="row.TopInventoryName">{{ row.TopInventoryName }}</div> <div v-else>/</div> </template> </el-table-column> <el-table-column prop="plan_qty" label="工单数" @@ -782,6 +805,14 @@ <!-- </el-form-item>--> <el-form-item label="产品规格" prop="partspec"> <el-input v-model="dialogForm.partspec" disabled style="width: 200px" /> </el-form-item> <el-form-item v-if="operation!=='add'" label="顶级物料编码" prop="TopInventoryCode"> <el-input v-model="dialogForm.TopInventoryCode" disabled style="width: 200px" /> </el-form-item> <el-form-item v-if="operation!=='add'" label="顶级物料名称" prop="TopInventoryName"> <el-input v-model="dialogForm.TopInventoryName" disabled style="width: 200px" /> </el-form-item> <!-- :disabled="dialogForm.partcode===''"--> @@ -1502,6 +1533,9 @@ <el-form-item label="产品规格:" class="formContent"> {{ formApprove.partspec }} </el-form-item> <el-form-item label="顶级物料:" class="formContent"> {{ formApprove.TopInventoryName }} </el-form-item> <el-form-item label="工单数量:" class="formContent"> {{ formApprove.plan_qty }} </el-form-item> @@ -1599,22 +1633,29 @@ <el-table-column id="column4" prop="good_qty" width="100" width="60" align="center" label="合格数量" label="合格" /> <el-table-column id="column5" width="100" width="60" prop="ng_qty" align="center" label="不良数量" label="不良" /> <el-table-column id="column6" prop="desc" align="center" width="120" width="100" label="检验员" /> <el-table-column id="column6" prop="desc" align="center" width="100" label="备注" /> </el-table> @@ -2770,7 +2811,9 @@ deliverydate: '', // 交付时间 data_sources: '', // 数据来源 idTopInventory: '', // 顶级物料id TopInventoryCode: '', // 顶级物料编码 TopInventoryName: '', // 顶级物料名称 routecode: '', // 工艺路线 mesmaxqty: 0, // 工单的最大值 @@ -2863,6 +2906,7 @@ partname: '', partspec: '', plan_qty: '', TopInventoryName: '', routename: '', lm_date: '', priuserdefnvc1: '', @@ -3660,6 +3704,9 @@ this.dialogForm.routecode = row.route_code this.dialogForm.deliverydate = row.saleOrderDeliveryDate.substring(0, 11) this.dialogForm.mesqty = row.plan_qty this.dialogForm.TopInventoryCode = row.TopInventoryCode this.dialogForm.TopInventoryName = row.TopInventoryName this.dialogForm.idTopInventory = row.idTopInventory this.dialogForm.mesqtyinit = row.plan_qty @@ -3872,7 +3919,9 @@ mesqty: '', // 工单数量 wkshopcode: '', // 生产车间编码 wkshopname: '', // 生产车间名称 idTopInventory: '', // 顶级物料id TopInventoryCode: '', // 顶级物料编码 TopInventoryName: '', // 顶级物料名称 deliverydate: '', // 交付时间 data_sources: '' // 数据来源 } @@ -4028,6 +4077,8 @@ this.formApprove.priuserdefnvc5 = row.priuserdefnvc5 ? row.priuserdefnvc5 : '/' this.formApprove.priuserdefnvc6 = row.priuserdefnvc6 ? row.priuserdefnvc6 : '/' this.formApprove.TopInventoryName = row.TopInventoryName || '/' this.formApprove.saleOrderCode = this.formApprove.saleOrderCode !== '' ? this.formApprove.saleOrderCode : saleOrderCode const data2 = { mesordercode: wo_code || this.dialogForm.mesordercode @@ -4138,7 +4189,7 @@ this.formApprove.plan_qty = '' this.formApprove.routename = '' this.formApprove.lm_date = '' this.formApprove.TopInventoryName = '' this.formApprove.priuserdefnvc1 = '' this.formApprove.priuserdefnvc2 = '' this.formApprove.priuserdefnvc3 = '' src/views/workOrder/workOrderSend.vue
@@ -209,7 +209,7 @@ </el-table-column> <el-table-column prop="saleOrderCode" label="销售订单" label="销售订单/预测单" sortable="custom" show-tooltip-when-overflow min-width="160" vue.config.js
@@ -52,7 +52,7 @@ }, proxy: { [process.env.VUE_APP_BASE_API]: { target: 'http://121.196.36.24:8042', // 本地 target: 'http://121.196.36.24:8048', // 本地 // target: 'http://192.168.1.21:9000', // 阿鲁克(新) changeOrigin: true, // 请求跨域时,需 配置此项 pathRewrite: { // 路径重写,替换target中的请求地址