| | |
| | | import {VXETable} from "vxe-table"; |
| | | import useUserInfoStore from '@/stores/userInfo' |
| | | import {useI18n} from "vue-i18n"; |
| | | import UpdateOrderCraft from "@/components/sd/order/UpdateOrderCraft.vue"; |
| | | import {filterChanged} from "@/hook"; |
| | | let productGlassTypeStore = useProductGlassTypeStore() |
| | | const { t } = useI18n() |
| | | const userStore = useUserInfoStore() |
| | |
| | | let pageNum=ref(1) |
| | | let pageState = null |
| | | |
| | | let craftVisible = ref(false) |
| | | |
| | | const craftObj = reactive({ |
| | | newCraft: [], |
| | | oldCraft: [], |
| | | }) |
| | | |
| | | const numberList = reactive({ |
| | | technologyNumber:[], |
| | | }) |
| | | |
| | | const saveCraft = () => { |
| | | //rowIndex.value.process = craftObj.newCraft.join('->') |
| | | let orderProcess= craftObj.newCraft.join('->') |
| | | request.post(`/processCard/updateProcess/${rowIndex.value.process_id}/${rowIndex.value.technology_number}/${rowIndex.value.order_id}/${orderProcess}`, craftObj).then((res) => { |
| | | if (res.code == 200 && res.data === true) { |
| | | ElMessage.success(t('basicData.msg.saveSuccess')) |
| | | router.push({ |
| | | path: '/main/processCard/SelectDetailProcessCard', |
| | | query: {processId: processId,random: Math.random()} |
| | | }) |
| | | } else { |
| | | |
| | | ElMessage.warning('保存失败,检查是否报工') |
| | | |
| | | } |
| | | }) |
| | | craftVisible.value= false |
| | | } |
| | | |
| | | |
| | | let process = ref([]) |
| | | request.get(`/basicData/BasicDataByType/product/process`).then((res) =>{ |
| | | if (res.code==200){ |
| | | process.value=res.data |
| | | } |
| | | }) |
| | | |
| | | let rowIndex = ref({}) |
| | | const updateCraft = (row) => { |
| | | craftVisible.value= true |
| | | Object.keys(craftObj).forEach((key) =>{ |
| | | craftObj[key] = row['process'].split('->') |
| | | }) |
| | | Object.keys(numberList).forEach((key) =>{ |
| | | numberList[key] = row['concatNumber'].split(',') |
| | | }) |
| | | craftObj.technologyNumber=[] |
| | | craftObj.technologyNumber.push(...numberList.technologyNumber); |
| | | rowIndex.value = row |
| | | } |
| | | //第一次加载 |
| | | |
| | | const {currentRoute} = useRouter() |
| | |
| | | },//表头参数 |
| | | columns:[ |
| | | {type:'expand',fixed:"left",slots: { content:'content' },width: 50}, |
| | | {title: t('basicData.operate'), width: 100, slots: { default: 'button_slot' },fixed:"left",}, |
| | | { type: 'seq',fixed:"left", title: t('basicData.Number'), width: 50 }, |
| | | {field: 'order_id', title: t('order.orderId'),filters:[{ data: '' }],slots: { filter: 'num1_filter' },width: 80 }, |
| | | {field: 'order_id', title: t('order.orderId'),filters:[{ data: '' }],slots: { filter: 'num1_filter' },width: 110 }, |
| | | {field: 'process_id', width: 140, title: t('processCard.processId') ,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'order_number', title: t('order.OrderNum') ,filters:[{ data: '' }],slots: { filter: 'num1_filter' },}, |
| | | {field: 'technology_number', title: t('processCard.technologyNumber') ,filters:[{ data: '' }],slots: { filter: 'num1_filter' },}, |
| | | {field: 'order_number', title: t('order.OrderNum') ,filters:[{ data: '' }],slots: { filter: 'num1_filter' },width: 100}, |
| | | {field: 'technology_number', title: t('processCard.technologyNumber') ,filters:[{ data: '' }],slots: { filter: 'num1_filter' },width: 100}, |
| | | {field: 'quantity', title: t('order.quantity'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, width: 80}, |
| | | {field: 'child_width', title: t('order.width'), }, |
| | | {field: 'child_height', title: t('order.height'), }, |
| | | {field: 'area', title: t('order.area') ,showOverflow:"ellipsis"}, |
| | | {field: 'product_name', title: t('order.product'), }, |
| | | {field: 'glass_child', title: t('reportingWorks.glassChild'), }, |
| | | {field: 'founder', title: t('processCard.founder'), }, |
| | | {field: 'splitFrame_time', title: t('processCard.splitFrameTime'), }, |
| | | {field: 'child_width', title: t('order.width'),width: 80 }, |
| | | {field: 'child_height', title: t('order.height'),width: 80 }, |
| | | {field: 'area', title: t('order.area') ,showOverflow:"ellipsis",width: 70}, |
| | | {field: 'process',width:250, title: t('craft.process'),filters:[{ data: '' }],slots: { filter: 'num1_filter' },}, |
| | | {field: 'product_name', title: t('order.product'),width: 310 }, |
| | | {field: 'glass_child', title: t('reportingWorks.glassChild'),width: 200 }, |
| | | {field: 'founder', title: t('processCard.founder'),width: 110 }, |
| | | {field: 'splitFrame_time', title: t('processCard.splitFrameTime'),width: 110 }, |
| | | {field: 'concatNumber', title: '总序号',width: 110}, |
| | | |
| | | ],//表头按钮 |
| | | |
| | | toolbarConfig: { |
| | | buttons: [ |
| | | {'code': 'add', 'name': t('processCard.merge'),status: 'primary'} |
| | | {'code': 'add', 'name': t('processCard.merge'),status: 'primary'}, |
| | | |
| | | ], |
| | | import: false, |
| | | // export: true, |
| | |
| | | <div class="main-div-customer"> |
| | | |
| | | <vxe-grid |
| | | max-height="100%" |
| | | height="99%" |
| | | @filter-change="filterChanged" |
| | | class="mytable-scrollbar" |
| | | ref="xGrid" |
| | |
| | | <!--左边固定显示的插槽--> |
| | | |
| | | |
| | | <template #num1_filter="{ column, $panel }"> |
| | | <div> |
| | | <div v-for="(option, index) in column.filters" :key="index"> |
| | | <input type="type" v-model="option.data" |
| | | @keyup.enter.native="$panel.confirmFilter()" |
| | | @input="changeFilterEvent($event, option, $panel)"/> |
| | | </div> |
| | | </div> |
| | | <!--左边固定显示的插槽--> |
| | | <template #button_slot="{ row }"> |
| | | <el-button @click="updateCraft(row)" link type="primary" size="small">{{$t('craft.updateCraft')}}</el-button> |
| | | </template> |
| | | |
| | | |
| | | </vxe-grid> |
| | | |
| | | <el-dialog id="processChange" |
| | | v-model="craftVisible" |
| | | :title="$t('craft.technologicalProcess')" |
| | | :close-on-click-modal="false" |
| | | :close-on-press-escape="false" |
| | | style="width: 60%;height:60% ;position: relative;" > |
| | | |
| | | <update-order-craft |
| | | :craftObj="craftObj" |
| | | :process="process" |
| | | @saveCraft="saveCraft" |
| | | /> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | |