From 9f0347b482911e017920b58256902108195c1041 Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期四, 29 二月 2024 16:28:07 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/ERP_override
---
north-glass-erp/northglass-erp/src/views/sd/order/SelectOrder.vue | 4 +-
north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue | 51 ++++++++++++++++++++++---
north-glass-erp/northglass-erp/src/hook/mouseMove.ts | 17 ++++++--
3 files changed, 60 insertions(+), 12 deletions(-)
diff --git a/north-glass-erp/northglass-erp/src/hook/mouseMove.ts b/north-glass-erp/northglass-erp/src/hook/mouseMove.ts
index 7701139..ff0bd80 100644
--- a/north-glass-erp/northglass-erp/src/hook/mouseMove.ts
+++ b/north-glass-erp/northglass-erp/src/hook/mouseMove.ts
@@ -11,7 +11,12 @@
//鑾峰彇椤甸潰ref鑺傜偣
//鑾峰彇vxetable琛ㄦ牸鑺傜偣
let xGrid = ref()
-let cellarea = ref()
+let cellarea = ref(`
+ <div class="vxe-table--cell-area" >
+ <span class="vxe-table--cell-main-area" ></span>
+ <span class="vxe-table--cell-active-area" ></span>
+ </div>
+`)
let leftfixedcellarea = ref()
let rightfixedcellarea = ref()
const getTablexGrid = () => {
@@ -19,10 +24,14 @@
}
//娣诲姞浜嬩欢
-const addListener = (xGrids,gridOption,cellareas) => {
+const addListener = (xGrids,gridOption) => {
xGrid.value = xGrids
gridOptions = gridOption
- cellarea.value = cellareas
+ let newElement = document.createElement('div')
+ const parser = new DOMParser();
+ const htmlDoc = parser.parseFromString(cellarea.value, 'text/html')
+ newElement.innerHTML = htmlDoc.body.innerHTML
+ //cellarea.value = newElement
//娣诲姞澶氶�夊垪
nextTick(() => {
window.addEventListener("mousedown", tableOutDestroyAreaBox)//缁檞indow娣诲姞榧犳爣鎸変笅浜嬩欢,鍒ゆ柇鏄惁鍦ㄨ〃鏍煎,鏄攢姣�
@@ -39,7 +48,7 @@
let bodyWrapper = getTablexGrid().$el.querySelector(".vxe-table--main-wrapper .vxe-table--body-wrapper")//鑾峰彇姝e父鍖哄煙鐨刡ody
if (bodyWrapper) {
//娉ㄦ剰杩欓噷鐨剅ef鍚嶇О锛岃繖閲屾槸闈瀎ixed鍖哄煙鐨勬鐨勫悕绉�
- bodyWrapper.appendChild(cellarea.value)//娣诲姞鑼冨洿妗嗗厓绱�
+ bodyWrapper.appendChild(newElement)//娣诲姞鑼冨洿妗嗗厓绱�
// let geticon = document.getElementById("getIcon")
// geticon.addEventListener("click", ()=>{
// alert(2)
diff --git a/north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue b/north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue
index e104c19..58b65a0 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue
@@ -83,6 +83,8 @@
{ code: 'deleteRow', name: '鍒犻櫎', prefixIcon: 'vxe-icon-delete', visible: true, disabled: true },
{ code: 'copyChecked', name: '閫変腑鐩稿悓', prefixIcon: 'vxe-icon-copy', visible: true, disabled: false },
{ code: 'copyAll', name: '涔嬪悗鐩稿悓', prefixIcon: 'vxe-icon-feedback', visible: true, disabled: false },
+ { code: 'clearChecked', name: '娓呴櫎閫変腑', prefixIcon: 'vxe-icon-indicator', visible: true, disabled: false },
+ { code: 'computedMoney', name: '璁$畻閲戦', prefixIcon: 'vxe-icon-chart-bar-x', visible: true, disabled: true },
]
]
}
@@ -131,6 +133,9 @@
{ min: 0, max: 255, message: '鍚嶇О闀垮害鍦� 0 鍒� 255 涓瓧绗�' }
],
productId: [
+ { required: true, message: '璇烽�夋嫨浜у搧' }
+ ],
+ productName: [
{ required: true, message: '璇烽�夋嫨浜у搧' }
],
price: [
@@ -243,6 +248,11 @@
ElMessage.error('娌℃湁琛ㄦ牸鏁版嵁锛�')
return
}
+ if(!gridOptions.menuConfig.body.options[0][5].disabled){
+ ElMessage.error('璇峰厛鎵撳紑鍙冲嚮鑿滃崟閲嶆柊璁$畻閲戦鍚庯紝鍐嶄繚瀛橈紒')
+ return
+ }
+
const project = titleUploadData.value.project
if(project === null || project === undefined || project === ''){
ElMessage.error('杈撳叆椤圭洰鍚嶇О锛�')
@@ -302,6 +312,7 @@
$grid.remove(rowClickIndex.value)
rowClickIndex.value = null
gridOptions.menuConfig.body.options[0][1].disabled=true
+ gridOptions.menuConfig.body.options[0][5].disabled=false
break
}
case 'copyChecked' :{
@@ -315,6 +326,7 @@
}
})
}
+ gridOptions.menuConfig.body.options[0][5].disabled=false
break
}
case 'copyAll' :{
@@ -328,6 +340,34 @@
}
})
}
+ gridOptions.menuConfig.body.options[0][5].disabled=false
+ break
+ }
+ case 'clearChecked' :{
+ let result = toolbarButtonClickEvent()
+ if(result){
+ const dataList = xGrid.value.getTableData().visibleData
+ dataList.forEach((item,index) =>{
+ if(index>=result.start && index<=result.end){
+ item[result.cell] = ''
+ }
+ })
+ }
+ gridOptions.menuConfig.body.options[0][5].disabled=false
+ break
+ }
+ case 'computedMoney' :{
+ const dataList = xGrid.value.getTableData().fullData
+ dataList.forEach((item,index) =>{
+ item.area = area(item)
+ item.grossArea = countArea(item)
+ item.computeArea = item.area
+ item.computeGrossArea = item.grossArea
+ item.grossAmount=parseFloat((item.price * item.computeGrossArea).toFixed(2))
+ })
+ titleUploadData.value.money=countMoney(xGrid.value.getTableData().fullData).toString()
+
+ gridOptions.menuConfig.body.options[0][5].disabled=true
break
}
}
@@ -354,8 +394,7 @@
//鍒濆鍖栧垽鏂槸鍚︽湁id浼犲叆
onMounted(()=>{
//鍚敤琛ㄦ牸鎷栧姩閫変腑
- addListener(xGrid.value,gridOptions,cellArea.value)
-
+ addListener(xGrid.value,gridOptions)
const str = route.query.orderId
if (typeof str === 'undefined' || str === null || str === '' || str === '\n' || str === '\r'){
return
@@ -686,11 +725,11 @@
<select-product :rowIndex="rowIndex" @getProductRow="getProductRow" style="width: 100%;height: 100%" />
</el-dialog>
<!--閫変腑琛ㄦ牸 -->
- <div class="vxe-table--cell-area" ref="cellArea" >
- <span class="vxe-table--cell-main-area" ></span>
+<!-- <div class="vxe-table--cell-area" ref="cellArea" >-->
+<!-- <span class="vxe-table--cell-main-area" ></span>-->
- <span class="vxe-table--cell-active-area" ></span>
- </div>
+<!-- <span class="vxe-table--cell-active-area" ></span>-->
+<!-- </div>-->
</div>
</template>
diff --git a/north-glass-erp/northglass-erp/src/views/sd/order/SelectOrder.vue b/north-glass-erp/northglass-erp/src/views/sd/order/SelectOrder.vue
index d968a16..4d00f0a 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/order/SelectOrder.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/order/SelectOrder.vue
@@ -240,7 +240,7 @@
</script>
<template>
- <div style="width: 100%;height: 100%">
+ <div style="width: 100%;height: 100% ;">
<el-date-picker
v-model="selectDate"
type="daterange"
@@ -254,7 +254,7 @@
<vxe-grid
@filter-change="filterChanged"
@cell-dblclick="cellClickEvent"
- max-height="97%"
+ style="max-height: 95%"
class="mytable-scrollbar"
ref="xGrid"
v-bind="gridOptions"
--
Gitblit v1.8.0