From 736dd5afb982ce1c19b15633ffd3495f6f8822ec Mon Sep 17 00:00:00 2001 From: chenlu <1320612696@qq.com> Date: 星期二, 20 二月 2024 16:19:38 +0800 Subject: [PATCH] 工单管理转生产订单、删除,流程卡管理部分查询相关代码 --- north-glass-erp/northglass-erp/src/views/pp/processCard/SelectAddProcess.vue | 298 +++++++++++++++++++++++++++++++++++++---------------------- 1 files changed, 186 insertions(+), 112 deletions(-) diff --git a/north-glass-erp/northglass-erp/src/views/pp/processCard/SelectAddProcess.vue b/north-glass-erp/northglass-erp/src/views/pp/processCard/SelectAddProcess.vue index 756c9eb..5233edf 100644 --- a/north-glass-erp/northglass-erp/src/views/pp/processCard/SelectAddProcess.vue +++ b/north-glass-erp/northglass-erp/src/views/pp/processCard/SelectAddProcess.vue @@ -1,13 +1,17 @@ <script setup> -import {reactive} from "vue"; +import {reactive, ref} from "vue"; import {useRouter} from 'vue-router' +import request from "@/utils/request"; +import deepClone from "@/utils/deepClone"; +import {ElDatePicker, ElMessage} from "element-plus"; +import {Search} from "@element-plus/icons-vue"; let router=useRouter() const getTableRow = (row,type) =>{ switch (type) { case 'edit' :{ //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅') - router.push({path: '/main/processCard/SplittingDetails', query: { id: row.id }}) + router.push({path: '/main/processCard/SplittingDetails', query: { orderId: row.orderId }}) break } case 'delete':{ @@ -21,6 +25,11 @@ } } +//瀹氫箟鏃堕棿 +const form = reactive({ + date1: '', +}) + //琛ㄥ熬姹傚拰 const sumNum = (list, field) => { let count = 0 @@ -30,21 +39,153 @@ return count.toFixed(2) } +//瀹氫箟婊氬姩鏉¢珮搴� +let scrollTop = ref(null) +let scrollHeight = ref(null) +let clientHeight = ref(null) +const scrollEvnt = (row) => { + // 鍐呭楂樺害 + scrollTop.value = row.$event.target.scrollTop + scrollHeight.value = row.$event.target.scrollHeight + clientHeight.value = row.$event.target.clientHeight +} +//绛涢�夋潯浠讹紝鏈夊閿渶瑕佸厛瀹氫箟鏄庣粏閲岄潰鐨勬暟鎹� +let filterData = ref({ + order: { + batch: '' + }, + orderDetail: { + productName: '', + computeArea: '', + quantity: '', + computeGrossArea: '', + perimeter: '', + bendRadius: '', + processingNote: '' + } + +}) +//瀹氫箟椤甸潰鎬婚〉鏁� +let pageTotal = ref('') +//瀹氫箟鏁版嵁杩斿洖缁撴灉 +let produceList = ref([]) +//瀹氫箟褰撳墠椤垫暟 +let pageNum = $ref(1) +let pageState = null + +//鑾峰彇涓冨ぉ鍓嶅埌褰撳墠鏃堕棿 +function getNowTime() { + const start = new Date(new Date().getTime() - 3600 * 1000 * 24 * 7) + .toISOString() + .replace('T', ' ') + .slice(0, 10) //榛樿寮�濮嬫椂闂�7澶╁墠 + const end = new Date(new Date().getTime()) + .toISOString() + .replace('T', ' ') + .slice(0, 10)//榛樿缁撴潫鏃堕棿褰撳墠鏃堕棿 + return [start, end] +} + + +//绗竴娆″姞杞借幏鍙栬繎涓冨ぉ鏃堕棿鍜岄粯璁ょ姸鎬� +form.date1 = getNowTime() +let startTime = form.date1[0] +let endTime = form.date1[1] + +//绗竴娆″姞杞芥暟鎹� + +request.post(`/processCard/selectAddProcess/${startTime}/${endTime}`, filterData.value).then((res) => { + + if (res.code == 200) { + console.log(res.data.data) + pageTotal.value = res.data.total + produceList = produceList.value.concat(deepClone(res.data.data)) + xGrid.value.reloadData(produceList) + gridOptions.loading = false + } else { + ElMessage.warning(res.msg) + } +}) + +//鐐瑰嚮鏌ヨ +const getWorkOrder = () => { + + let startTime = form.date1[0] + let endTime = form.date1[1] + request.post(`/processCard/selectAddProcess/${startTime}/${endTime}`, filterData.value).then((res) => { + if (res.code == 200) { + + pageTotal.value = res.data.total + xGrid.value.loadData(res.data.data) + gridOptions.loading = false + } else { + ElMessage.warning(res.msg) + } + }) +} + +/*浣跨敤绛涢�夛紝鍚庣鑾峰彇鏁版嵁*/ +const changeFilterEvent = (event, option, $panel,) => { + // 鎵嬪姩瑙﹀彂绛涢�� + $panel.changeOption(event, !!option.data, option) +} + +function filterChanged(column) { + gridOptions.loading = true + //绛涢�夋潯浠跺彂鐢熷彉鍖栨潯浠跺彂鐢熷彉鍖� + let value = column.datas[0] != undefined ? column.datas[0] : '' + value = value.trim() + //鍒ゆ柇鏄惁瀛樺湪澶栭敭 + if (column.property.indexOf('.') > -1) { + const columnArr = column.property.split('.') + filterData.value[columnArr[0]] = { + [columnArr[1]]: value + } + } else { + filterData.value[column.property] = value + } + +//鑾峰彇閫変腑鏃堕棿 + let startTime = form.date1[0] + let endTime = form.date1[1] + + request.post(`/processCard/selectAddProcess/${startTime}/${endTime}`, filterData.value).then((res) => { + if (res.code == 200) { + pageTotal.value = res.data.total + + produceList = deepClone(res.data.data) + xGrid.value.loadData(produceList) + gridOptions.loading = false + } else { + ElMessage.warning(res.msg) + } + }) +} + +/*鍚庣杩斿洖缁撴灉澶氬眰宓屽灞曠ず*/ +const hasDecimal = (value) => { + const regex = /\./; // 瀹氫箟姝e垯琛ㄨ揪寮忥紝鏌ユ壘灏忔暟鐐� + return regex.test(value); // 杩斿洖true/false +} + //瀛愮粍浠舵帴鏀跺弬鏁� +const xGrid = ref() const gridOptions = reactive({ - border: "full",//琛ㄦ牸鍔犺竟妗� + loading: true, + border: "full",//琛ㄦ牸鍔犺竟妗� keepSource: true,//淇濇寔婧愭暟鎹� align: 'center',//鏂囧瓧灞呬腑 - stripe:true,//鏂戦┈绾� - rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒 - id: 'CustomerList', + stripe: true,//鏂戦┈绾� + rowConfig: {isCurrent: true, isHover: true,height: 30},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒 + id: 'demo_1', showFooter: true,//鏄剧ず鑴� printConfig: {}, importConfig: {}, exportConfig: {}, - scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔� - showOverflow:true, + scrollX: {enabled: true}, + scrollY: {enabled: true, gt: 0},//寮�鍚櫄鎷熸粴鍔� + showOverflow: true, columnConfig: { resizable: true, useKey: true @@ -64,17 +205,16 @@ {type:'expand',fixed:"left",slots: { content:'content' },width: 50}, {title: '鎿嶄綔', width: 80, slots: { default: 'button_slot' },fixed:"left"}, { type: 'seq',fixed:"left", title: '鑷簭', width: 50 }, - {field: '閿�鍞崟鍙�', title: '閿�鍞崟鍙�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true, }, - {field: '瀹㈡埛鍚嶇О', title: '瀹㈡埛鍚嶇О', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, - {field: '椤圭洰鍚嶇О', title: '椤圭洰鍚嶇О', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, - {field: '鎵规', title: '鎵规',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}, - {field: '鍘熺墖瑕佹眰', title: '鍘熺墖瑕佹眰', sortable: true,showOverflow:"ellipsis"}, - {field: '鍟嗘爣閫夐」', title: '鍟嗘爣閫夐」', sortable: true}, - {field: '璁㈠崟绫诲瀷', title: '璁㈠崟绫诲瀷', sortable: true}, - {field: '涓氬姟鍛�', title: '涓氬姟鍛�', sortable: true}, - {field: '鍔犲伐瑕佹眰', title: '鍔犲伐瑕佹眰', sortable: true,showOverflow:"ellipsis"}, - {field: '閫佽揣鍦板潃', title: '閫佽揣鍦板潃', sortable: true}, - {field: '浜よ揣鏃ユ湡', title: '浜よ揣鏃ユ湡', sortable: true} + {field: 'orderId', title: '閿�鍞崟鍙�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true, }, + {field: 'customerName', title: '瀹㈡埛鍚嶇О', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, + {field: 'project', title: '椤圭洰鍚嶇О', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, + {field: 'batch', title: '鎵规',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}, + {field: 'otherRemarks', title: '鍘熺墖瑕佹眰', sortable: true,showOverflow:"ellipsis"}, + {field: 'icon', title: '鍟嗘爣閫夐」', sortable: true}, + {field: 'orderType', title: '璁㈠崟绫诲瀷', sortable: true}, + {field: 'salesman', title: '涓氬姟鍛�', sortable: true}, + {field: 'processingNote', title: '鍔犲伐瑕佹眰', sortable: true,showOverflow:"ellipsis"}, + {field: 'deliveryAddress', title: '閫佽揣鍦板潃', sortable: true}, ],//琛ㄥご鎸夐挳 toolbarConfig: { @@ -87,99 +227,7 @@ zoom: true, custom: true }, - data: [ - { - 閿�鍞崟鍙�: 'NG231201', - 瀹㈡埛鍚嶇О:"鎱曞鍏徃", - 椤圭洰鍚嶇О: '淇″悎鏄ュぉ閲�', - 鎵规: '23鎵�', - 鍘熺墖瑕佹眰: '2022/5/24XFPO202205202', - 鍟嗘爣閫夐」:'鍖楃幓鍟嗘爣', - 璁㈠崟绫诲瀷: '鏅�氳鍗�', - 涓氬姟鍛�: 'XXX', - 鍔犲伐瑕佹眰: '1)鎸変紒鏍�2)姣忕墖鐜荤拑鏍囩璐村澶栭潰銆傚唴鐗囩幓鐠冩墦鈥�3C鍟嗘爣鈥濓紝缁熶竴鎵撳湪鐜荤拑鈥滃搴︹�濇柟鍚戝彸涓嬭4)鎸夋壒娆″崟鐙惤鏋躲��', - 閫佽揣鍦板潃:'宸ュ湴', - 浜よ揣鏃ユ湡:'2024-01-12' - }, - { - 閿�鍞崟鍙�: 'NG231201', - 瀹㈡埛鍚嶇О:"鎱曞鍏徃", - 椤圭洰鍚嶇О: '淇″悎鏄ュぉ閲�', - 鎵规: '23鎵�', - 鍘熺墖瑕佹眰: '2022/5/24XFPO202205202', - 鍟嗘爣閫夐」:'鍖楃幓鍟嗘爣', - 璁㈠崟绫诲瀷: '鏅�氳鍗�', - 涓氬姟鍛�: 'XXX', - 鍔犲伐瑕佹眰: '1)鎸変紒鏍�2)姣忕墖鐜荤拑鏍囩璐村澶栭潰銆傚唴鐗囩幓鐠冩墦鈥�3C鍟嗘爣鈥濓紝缁熶竴鎵撳湪鐜荤拑鈥滃搴︹�濇柟鍚戝彸涓嬭4)鎸夋壒娆″崟鐙惤鏋躲��', - 閫佽揣鍦板潃:'宸ュ湴', - 浜よ揣鏃ユ湡:'2024-01-12' - }, - { - 閿�鍞崟鍙�: 'NG231201', - 瀹㈡埛鍚嶇О:"鎱曞鍏徃", - 椤圭洰鍚嶇О: '淇″悎鏄ュぉ閲�', - 鎵规: '23鎵�', - 鍘熺墖瑕佹眰: '2022/5/24XFPO202205202', - 鍟嗘爣閫夐」:'鍖楃幓鍟嗘爣', - 璁㈠崟绫诲瀷: '鏅�氳鍗�', - 涓氬姟鍛�: 'XXX', - 鍔犲伐瑕佹眰: '1)鎸変紒鏍�2)姣忕墖鐜荤拑鏍囩璐村澶栭潰銆傚唴鐗囩幓鐠冩墦鈥�3C鍟嗘爣鈥濓紝缁熶竴鎵撳湪鐜荤拑鈥滃搴︹�濇柟鍚戝彸涓嬭4)鎸夋壒娆″崟鐙惤鏋躲��', - 閫佽揣鍦板潃:'宸ュ湴', - 浜よ揣鏃ユ湡:'2024-01-12' - }, - { - 閿�鍞崟鍙�: 'NG231201', - 瀹㈡埛鍚嶇О:"鎱曞鍏徃", - 椤圭洰鍚嶇О: '淇″悎鏄ュぉ閲�', - 鎵规: '23鎵�', - 鍘熺墖瑕佹眰: '2022/5/24XFPO202205202', - 鍟嗘爣閫夐」:'鍖楃幓鍟嗘爣', - 璁㈠崟绫诲瀷: '鏅�氳鍗�', - 涓氬姟鍛�: 'XXX', - 鍔犲伐瑕佹眰: '1)鎸変紒鏍�2)姣忕墖鐜荤拑鏍囩璐村澶栭潰銆傚唴鐗囩幓鐠冩墦鈥�3C鍟嗘爣鈥濓紝缁熶竴鎵撳湪鐜荤拑鈥滃搴︹�濇柟鍚戝彸涓嬭4)鎸夋壒娆″崟鐙惤鏋躲��', - 閫佽揣鍦板潃:'宸ュ湴', - 浜よ揣鏃ユ湡:'2024-01-12' - }, - { - 閿�鍞崟鍙�: 'NG231201', - 瀹㈡埛鍚嶇О:"鎱曞鍏徃", - 椤圭洰鍚嶇О: '淇″悎鏄ュぉ閲�', - 鎵规: '23鎵�', - 鍘熺墖瑕佹眰: '2022/5/24XFPO202205202', - 鍟嗘爣閫夐」:'鍖楃幓鍟嗘爣', - 璁㈠崟绫诲瀷: '鏅�氳鍗�', - 涓氬姟鍛�: 'XXX', - 鍔犲伐瑕佹眰: '1)鎸変紒鏍�2)姣忕墖鐜荤拑鏍囩璐村澶栭潰銆傚唴鐗囩幓鐠冩墦鈥�3C鍟嗘爣鈥濓紝缁熶竴鎵撳湪鐜荤拑鈥滃搴︹�濇柟鍚戝彸涓嬭4)鎸夋壒娆″崟鐙惤鏋躲��', - 閫佽揣鍦板潃:'宸ュ湴', - 浜よ揣鏃ユ湡:'2024-01-12' - }, - { - 閿�鍞崟鍙�: 'NG231201', - 瀹㈡埛鍚嶇О:"鎱曞鍏徃", - 椤圭洰鍚嶇О: '淇″悎鏄ュぉ閲�', - 鎵规: '23鎵�', - 鍘熺墖瑕佹眰: '2022/5/24XFPO202205202', - 鍟嗘爣閫夐」:'鍖楃幓鍟嗘爣', - 璁㈠崟绫诲瀷: '鏅�氳鍗�', - 涓氬姟鍛�: 'XXX', - 鍔犲伐瑕佹眰: '1)鎸変紒鏍�2)姣忕墖鐜荤拑鏍囩璐村澶栭潰銆傚唴鐗囩幓鐠冩墦鈥�3C鍟嗘爣鈥濓紝缁熶竴鎵撳湪鐜荤拑鈥滃搴︹�濇柟鍚戝彸涓嬭4)鎸夋壒娆″崟鐙惤鏋躲��', - 閫佽揣鍦板潃:'宸ュ湴', - 浜よ揣鏃ユ湡:'2024-01-12' - }, - { - 閿�鍞崟鍙�: 'NG231201', - 瀹㈡埛鍚嶇О:"鎱曞鍏徃", - 椤圭洰鍚嶇О: '淇″悎鏄ュぉ閲�', - 鎵规: '23鎵�', - 鍘熺墖瑕佹眰: '2022/5/24XFPO202205202', - 鍟嗘爣閫夐」:'鍖楃幓鍟嗘爣', - 璁㈠崟绫诲瀷: '鏅�氳鍗�', - 涓氬姟鍛�: 'XXX', - 鍔犲伐瑕佹眰: '1)鎸変紒鏍�2)姣忕墖鐜荤拑鏍囩璐村澶栭潰銆傚唴鐗囩幓鐠冩墦鈥�3C鍟嗘爣鈥濓紝缁熶竴鎵撳湪鐜荤拑鈥滃搴︹�濇柟鍚戝彸涓嬭4)鎸夋壒娆″崟鐙惤鏋躲��', - 閫佽揣鍦板潃:'宸ュ湴', - 浜よ揣鏃ユ湡:'2024-01-12' - }, - ],//table body瀹為檯鏁版嵁 + data: null,//琛ㄦ牸鏁版嵁 //鑴氶儴姹傚拰 footerMethod ({ columns, data }) {//椤佃剼鍑芥暟 let footList=['total','TotalArea','Cases'] @@ -204,6 +252,28 @@ <template> <div class="main-div-customer"> + <div id="selectForm"> + <el-row :gutter="0"> + <el-date-picker + v-model="form.date1" + type="daterange" + format="YYYY/MM/DD" + value-format="YYYY-MM-DD" + start-placeholder="寮�濮嬫椂闂�" + end-placeholder="缁撴潫鏃堕棿" + :default-time="defaultTime" + + /> + + + <el-button + @click="getWorkOrder" + id="select" + type="primary" :icon="Search">鏌ヨ + </el-button> + </el-row> + + </div> <vxe-grid max-height="100%" @filter-change="filterChanged" @@ -246,4 +316,8 @@ width: 99%; height: 100%; } +#selectForm { + width: 50%; + text-align: center; +} </style> \ No newline at end of file -- Gitblit v1.8.0