From f0420251442ac6f7bfb6beafa37ad045b4f6478a Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期三, 31 十二月 2025 15:49:05 +0800
Subject: [PATCH] 报工多工序,用户多工序修改

---
 north-glass-erp/northglass-erp/src/views/system/user/UserList.vue                             |   90 +++++++++++++++++-----
 north-glass-erp/src/main/resources/mapper/sd/DeliveryDetailMapper.xml                         |    8 ++
 north-glass-erp/src/main/java/com/example/erp/mapper/sd/DeliveryDetailMapper.java             |    6 -
 north-glass-erp/src/main/java/com/example/erp/controller/userInfo/UserInfoController.java     |    5 
 north-glass-erp/src/main/java/com/example/erp/entity/sd/DeliveryOtherMoney.java               |    1 
 north-glass-erp/src/main/java/com/example/erp/service/sd/DeliveryService.java                 |   26 ++++++
 north-glass-erp/northglass-erp/src/views/pp/productionBasicData/SelectProductionBasicData.vue |    2 
 north-glass-erp/northglass-erp/src/views/pp/reportingWorks/AddReportingWork.vue               |   67 +++++++++++++++-
 north-glass-erp/src/main/java/com/example/erp/service/userInfo/UserService.java               |    8 +
 north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java                    |    2 
 north-glass-erp/src/main/resources/mapper/pp/ReportingWork.xml                                |    9 ++
 11 files changed, 187 insertions(+), 37 deletions(-)

diff --git a/north-glass-erp/northglass-erp/src/views/pp/productionBasicData/SelectProductionBasicData.vue b/north-glass-erp/northglass-erp/src/views/pp/productionBasicData/SelectProductionBasicData.vue
index ec2e63b..7194a35 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/productionBasicData/SelectProductionBasicData.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/productionBasicData/SelectProductionBasicData.vue
@@ -129,7 +129,7 @@
     {field: 'id', width: 60, title: t('productionBasicData.id'),filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod: filterChanged,},
     {field: 'basic_type',width: 370, title: t('machine.type'), showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod: filterChanged},
     {field: 'basic_name', width: 330,title: t('orderBasicData.name'), filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod: filterChanged},
-    {field: 'd_basic_name',width: 330, title: t('productionBasicData.basicName')},
+    {field: 'd_basic_name',width: 330, title: t('productionBasicData.basicName'), filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod: filterChanged},
   ],
   //琛ㄥご鎸夐挳
   toolbarConfig: {
diff --git a/north-glass-erp/northglass-erp/src/views/pp/reportingWorks/AddReportingWork.vue b/north-glass-erp/northglass-erp/src/views/pp/reportingWorks/AddReportingWork.vue
index 15addfc..308c20d 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/reportingWorks/AddReportingWork.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/reportingWorks/AddReportingWork.vue
@@ -67,6 +67,8 @@
     customerName: '',
     //椤圭洰鍚嶇О
     project: '',
+    //鎵规
+    batch:'',
   },
   flowCard: {
     //鍙姤宸ユ暟閲�
@@ -964,7 +966,28 @@
   done()
 }
 
+const parseProcessData = (rawData) => {
+  if (!rawData) return [] // 绌哄�艰繑鍥炵┖鏁扮粍
 
+  // 姝ラ1锛氬厛杞负瀛楃涓插苟鍘婚櫎棣栧熬澶氫綑鐨勫紩鍙凤紙澶勭悊鍚庣杩斿洖鐨� "\"[\"纾ㄨ竟\",\"鎵撳瓟\"]\"" 鎯呭喌锛�
+  let str = String(rawData).trim()
+  if (str.startsWith('"') && str.endsWith('"')) {
+    str = str.slice(1, -1) // 鍘绘帀棣栧熬鐨勫紩鍙�
+  }
+
+  // 姝ラ2锛氳В鏋怞SON瀛楃涓蹭负鏁扮粍
+  try {
+    const arr = JSON.parse(str)
+    // 纭繚瑙f瀽鍚庢槸鏁扮粍锛屼笖鍏冪礌鍘荤┖鏍�
+    return Array.isArray(arr) ? arr.map(item => item.trim()) : []
+  } catch (e) {
+    // 瑙f瀽澶辫触鏃讹紝闄嶇骇澶勭悊锛堟寜閫楀彿鍒嗗壊锛�
+    console.warn('宸ュ簭鏁版嵁瑙f瀽澶辫触锛岄檷绾у鐞嗭細', e)
+    return str.split(',').filter(item => item.trim())
+  }
+}
+
+const currentProcessOptions = ref([])
 //绗竴娆″姞杞芥暟鎹�
 let groupChangeProcess = ref(false)//鐢ㄤ簬鏈彮缁勬樉绀洪棶棰�
 const initTiltle = async () => {
@@ -973,20 +996,47 @@
     if (res.code == 200) {
       titleSelectJson.value.processType = res.data.process
       processName  = res.data.processNameList
+
       if(user.user.address!==null && user.user.address!==''){
-        titleUploadData.value.thisProcess = user.user.address
+        user.user.address=parseProcessData(user.user.address)
+        titleUploadData.value.thisProcess = user.user.address[0] // 鏁扮粍鍙栫涓�涓綔涓洪粯璁ゅ�硷紙鍙�夛級
         titleUploadData.value.teamsGroupsName = user.user.userName
-        groupChangeProcess.value = true
+        currentProcessOptions.value = user.user.address.map((name, index) => ({
+          id: `user_process_${index}`,
+          basic_name: name,
+          basic_type: 'process',
+          basic_category: index + 1
+        }));
+
         if (user.user.address==='鎶�鏈儴澶氭洸' || user.user.address==='澶硅兌'){
           groupChangeProcess.value = false
+          currentProcessOptions.value = titleSelectJson.value.processType
         }
         gridOptions.toolbarConfig.buttons[1].visible=false
+      }else {
+        currentProcessOptions.value = titleSelectJson.value.processType // 鏃犻粯璁ゅ�兼樉绀哄叏閮�
       }
 
     } else {
       ElMessage.warning(res.msg)
     }
   })
+}
+
+const filterCurrentProcessOptions = () => {
+  // ======== 鏍稿績淇敼寮�濮� ========
+  const userBelongProcess = user.user.address || [];
+  // 濮嬬粓鍙樉绀哄憳宸ユ墍灞炲伐搴忥紙鏈夊�硷級鎴栧叏閮ㄥ伐搴忥紙鏃犲�硷級
+  if (userBelongProcess.length > 0) {
+    currentProcessOptions.value = user.user.address.map((name, index) => ({
+      id: `user_process_${index}`,
+      basic_name: name,
+      basic_type: 'process',
+      basic_category: index + 1
+    }));
+  } else {
+    currentProcessOptions.value = titleSelectJson.value.processType;
+  }
 }
 
 
@@ -1301,6 +1351,10 @@
       titleUploadData.value.processId = processId
       titleUploadData.value.teamsGroupsName = user.user.userName
       titleUploadData.value.laminating = res.data.laminating
+      if(titleUploadData.value.order.batch!=null&&titleUploadData.value.order.batch!=""){
+        titleUploadData.value.order.project=titleUploadData.value.order.project+'('+titleUploadData.value.order.batch+')'
+      }
+
       //璁惧涓嬫媺妗�
       titleSelectJson.value.deviceType = res.data.device
       //鐝粍涓嬫媺妗�
@@ -1352,6 +1406,9 @@
       });
       detail.value = modifiedCollection
       xGrid.value.reloadData(detail.value)
+
+      filterCurrentProcessOptions()
+
       hideButton()
       // nextTick(() => {
       //   hiddenCompletedOk()
@@ -1684,7 +1741,7 @@
                  style="width: 120px"
                  @change="getWork();getQuantity()">
         <el-option
-            v-for="item in titleSelectJson['processType']"
+            v-for="item in currentProcessOptions"
             :key="item.id"
             :label="item.basic_name"
             :value="item.basic_name"
@@ -1738,10 +1795,10 @@
           <el-text>{{$t('processCard.customerName')}}锛�</el-text>
         </el-col>
         <el-col :span="3">
-          <el-text class="customClass"></el-text>
+          <el-text class="customClass">{{ titleUploadData.order.customerName }}</el-text>
         </el-col>
         <el-col :span="2">
-          <el-text >{{$t('order.project')}}锛�</el-text>
+          <el-text >{{$t('order.project')}}({{$t('order.batch')}})锛�</el-text>
         </el-col>
         <el-col :span="3">
           <el-input :readonly="true" v-model="titleUploadData.order.project"/>
diff --git a/north-glass-erp/northglass-erp/src/views/system/user/UserList.vue b/north-glass-erp/northglass-erp/src/views/system/user/UserList.vue
index 03a0511..2f6294f 100644
--- a/north-glass-erp/northglass-erp/src/views/system/user/UserList.vue
+++ b/north-glass-erp/northglass-erp/src/views/system/user/UserList.vue
@@ -12,7 +12,7 @@
 const dialogVisibleProcess = ref(false)
 let roleList = ref([])
 //宸ュ簭
-const processValue = ref()
+const processValue = ref([])
 let userRole= ref({
   userId:'',
   roles:[]
@@ -94,12 +94,39 @@
     arr.forEach(item=>{
       let bValues = item.userRoleList.map(item => item.role);
       item.role = bValues.join(',')
+      // 鏍稿績锛氬鐞嗗伐搴忓垪鏄剧ず锛堣浆涓哄垏鍓诧紝纾ㄨ竟鏍煎紡锛�
+      item.address = formatProcessForTable(item.address)
     })
     gridOptions.data = res.data.users[0]
     roleList.value = res.data.role[0]
   })
 
 })
+
+// 宸ュ叿鍑芥暟锛氱粺涓�澶勭悊宸ュ簭鏁版嵁涓洪�楀彿鍒嗛殧瀛楃涓诧紙閫傞厤琛ㄦ牸鏄剧ず锛�
+const formatProcessForTable = (processData) => {
+  if (!processData) return ''
+
+  // 姝ラ1锛氬鐞咼SON瀛楃涓诧紙濡� "\"[\"鍒囧壊\",\"纾ㄨ竟\"]\""锛�
+  let str = String(processData).trim()
+  if (str.startsWith('"') && str.endsWith('"')) {
+    str = str.slice(1, -1)
+  }
+
+  // 姝ラ2锛氬皾璇曡В鏋愪负鏁扮粍
+  try {
+    const arr = JSON.parse(str)
+    if (Array.isArray(arr)) {
+      return arr.join(',') // 涓枃閫楀彿鍒嗛殧锛屽闇�鑻辨枃閫楀彿鏀逛负 ','
+    }
+  } catch (e) {
+    // 瑙f瀽澶辫触锛岀洿鎺ヤ娇鐢ㄥ師瀛楃涓诧紙濡傚凡涓�"鍒囧壊锛岀(杈�"锛�
+    return str.replace(/[,锛宂/g, '锛�') // 缁熶竴涓轰腑鏂囬�楀彿
+  }
+
+  // 鍏滃簳锛氶潪鏁扮粍鏍煎紡鐩存帴杩斿洖
+  return str
+}
 
 const getTableRow =  (row,type) => {
   switch (type) {
@@ -126,11 +153,17 @@
     case 'editProcess': {
       dialogVisibleProcess.value = true
       processRow.value.userId = row.id
+      // 娓呯┖涔嬪墠閫夋嫨鐨勫伐搴�
+      processValue.value = []
+
+      processValue.value = row.address ? row.address.split(',').filter(item => item.trim()) : []
       break
     }
 
   }
 }
+
+
 
 const handleClose = (done) => {
   userRole.value.roles = []
@@ -156,20 +189,28 @@
 }
 
 const updateProcess = () => {
-  let userId=processRow.value.userId
-  if (processValue.value!=null){
-    request.post(`userInfo/updateProcess/${userId}/${processValue.value}`).then(res=>{
-      if(res.code==200 && res.data===true){
-        ElMessage.success(t('basicData.msg.saveSuccess'))
-        router.push({path:'/main/user/userList',query:{random:Math.random()}})
-      }
+  const userId = processRow.value.userId
+  // 妫�鏌ユ槸鍚﹂�夋嫨浜嗗伐搴�
+  let processStr=""
+  if (processValue.value && processValue.value.length > 0) {
+    // 灏嗛�変腑鐨勫伐搴忔暟缁勮浆涓哄瓧绗︿覆锛堟牴鎹悗绔渶姹傝皟鏁存牸寮忥級
+     processStr = JSON.stringify(processValue.value)
 
-    })
-    dialogVisible.value = false
-  }else {
-    ElMessage.warning(t('report.pleaseSelectAProcessFirst'))
   }
-
+  try {
+    request.post(`userInfo/updateProcess/${userId}`,{processList: processStr}).then(res => {
+      if (res.code == 200 && res.data === true) {
+        ElMessage.success(t('basicData.msg.saveSuccess'))
+        router.push({ path: '/main/user/userList', query: { random: Math.random() } })
+        // 鍏抽棴宸ュ簭寮圭獥
+        dialogVisibleProcess.value = false
+      }
+    })
+  }catch (err) {
+    // 鎹曡幏缃戠粶閿欒銆佹帴鍙f姤閿欑瓑鎵�鏈夊紓甯�
+    console.error('鍒濆鍖栧伐搴忓け璐ワ細', err);
+    ElMessage.error('鍒濆鍖栨暟鎹け璐ワ紝璇峰埛鏂伴噸璇�');
+  }
 }
 
 
@@ -237,14 +278,21 @@
         width="30%"
         :before-close="handleClose"
     >
-      <el-select v-model="processValue" clearable :placeholder="$t('reportingWorks.selectProcess')" default-value="default_city" style="width: 120px">
-        <el-option
-            v-for="item in processRow['process']"
-            :key="item.id"
-            :label="item.basic_name"
-            :value="item.basic_name"
-        />
-      </el-select>
+      <div class="process-checkbox-group">
+        <el-checkbox-group
+            v-model="processValue"
+            class="checkbox-group"
+        >
+          <el-checkbox
+              v-for="item in processRow.process"
+              :key="item.id"
+              :label="item.basic_name"
+              class="checkbox-item"
+          >
+            {{ item.basic_name }}
+          </el-checkbox>
+        </el-checkbox-group>
+      </div>
       <template #footer>
       <span class="dialog-footer">
         <el-button @click="dialogVisibleProcess = false">{{ $t('basicData.cancelButtonText') }}</el-button>
diff --git a/north-glass-erp/src/main/java/com/example/erp/controller/userInfo/UserInfoController.java b/north-glass-erp/src/main/java/com/example/erp/controller/userInfo/UserInfoController.java
index 842e467..3ad3716 100644
--- a/north-glass-erp/src/main/java/com/example/erp/controller/userInfo/UserInfoController.java
+++ b/north-glass-erp/src/main/java/com/example/erp/controller/userInfo/UserInfoController.java
@@ -10,6 +10,7 @@
 import io.swagger.annotations.ApiOperation;
 import org.springframework.web.bind.annotation.*;
 
+import java.util.List;
 import java.util.Map;
 
 @RestController
@@ -79,8 +80,8 @@
 
     @ApiOperation("淇敼鐢ㄦ埛宸ュ簭")
     @SaCheckPermission("userList.search")
-    @PostMapping("updateProcess/{id}/{process}")
-    public Result updateProcess(@PathVariable Integer id,@PathVariable String process){
+    @PostMapping("updateProcess/{id}")
+    public Result updateProcess(@PathVariable Integer id, @RequestBody Map<String, String>  process){
         return Result.success(userService.updateProcessSv(id,process));
     }
 }
diff --git a/north-glass-erp/src/main/java/com/example/erp/entity/sd/DeliveryOtherMoney.java b/north-glass-erp/src/main/java/com/example/erp/entity/sd/DeliveryOtherMoney.java
index 36b8973..5719a91 100644
--- a/north-glass-erp/src/main/java/com/example/erp/entity/sd/DeliveryOtherMoney.java
+++ b/north-glass-erp/src/main/java/com/example/erp/entity/sd/DeliveryOtherMoney.java
@@ -19,5 +19,6 @@
     private Double money;
     private String alias;
     private Integer deliveryState;
+    private String orderId;
     private LocalDateTime createTime;
 }
diff --git a/north-glass-erp/src/main/java/com/example/erp/mapper/sd/DeliveryDetailMapper.java b/north-glass-erp/src/main/java/com/example/erp/mapper/sd/DeliveryDetailMapper.java
index 8ae4813..25e29eb 100644
--- a/north-glass-erp/src/main/java/com/example/erp/mapper/sd/DeliveryDetailMapper.java
+++ b/north-glass-erp/src/main/java/com/example/erp/mapper/sd/DeliveryDetailMapper.java
@@ -2,10 +2,7 @@
 
 import com.example.erp.dto.sd.DeliveryDetailDTO;
 import com.example.erp.dto.sd.DeliveryDetailProductDTO;
-import com.example.erp.entity.sd.Delivery;
-import com.example.erp.entity.sd.DeliveryDetail;
-import com.example.erp.entity.sd.Order;
-import com.example.erp.entity.sd.OrderDetail;
+import com.example.erp.entity.sd.*;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 import org.springframework.data.repository.CrudRepository;
@@ -109,4 +106,5 @@
     Boolean updateDeliveryDetailmonye(@Param("price") Double price,@Param("deliveryDetail") DeliveryDetail deliveryDetail);
     Boolean updateDeliverymonye(@Param("deliveryId") String deliveryId,@Param("money") Double money);
 
+    Boolean insertDeliveryOtherMoney(@Param("orderOtherMoney")OrderOtherMoney orderOtherMoney,@Param("deliveryId") String deliveryId);
 }
diff --git a/north-glass-erp/src/main/java/com/example/erp/service/sd/DeliveryService.java b/north-glass-erp/src/main/java/com/example/erp/service/sd/DeliveryService.java
index 25dd224..5ba8efb 100644
--- a/north-glass-erp/src/main/java/com/example/erp/service/sd/DeliveryService.java
+++ b/north-glass-erp/src/main/java/com/example/erp/service/sd/DeliveryService.java
@@ -6,7 +6,9 @@
 import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.TypeReference;
 import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.example.erp.dto.sd.DeliveryDetailDTO;
 import com.example.erp.dto.sd.DeliveryDetailProductDTO;
@@ -60,6 +62,8 @@
     SysErrorService sysErrorService;
     @Autowired
     FinishedGoodsInventoryService finishedGoodsInventoryService;
+    @Autowired
+    OrderOtherMoneyMapper orderOtherMoneyMapper;
 
 
     public Map<String, Object> getSelectShippingOrder(Integer pageNum, Integer pageSize,List<String> selectDate, Map<String,Object> config) throws JsonProcessingException {
@@ -224,6 +228,7 @@
                         //杩樺師搴撳瓨鏁颁互鍙婅鍗曟槑缁嗙殑鍙戣揣鏁�
                         finishedGoodsInventoryMapper.updateInventoryquantityIntBybox(deliveryDetail.getOrderId(), deliveryDetail.getOrderNumber(), deliveryDetail.getQuantity(),deliveryDetail.getBoxNo());
                         deliveryDetailMapper.updateIsNotOrderDetailDeliveryNum(deliveryDetail.getOrderId(), deliveryDetail.getOrderNumber(), deliveryDetail.getQuantity());
+
                     }
                 }
                 //杩樺師鍙戣揣琛ㄧ殑闈㈢Н鏁伴噺閲戦
@@ -330,6 +335,27 @@
 
                     }*/
 
+                            List<OrderOtherMoney> orderOtherMoneyList = orderOtherMoneyMapper.selectList(
+                                    new QueryWrapper<OrderOtherMoney>()
+                                            .eq("order_id",orderDetail.getOrderId())
+                                            .eq("delivery_state",0)
+                                            .isNull("`column`")
+                            );
+
+                            if(orderOtherMoneyList.size()>0){
+                                for (OrderOtherMoney orderOtherMoney:orderOtherMoneyList){
+                                    otherMoneys=otherMoneys+orderOtherMoney.getMoney();
+                                    deliveryDetailMapper.insertDeliveryOtherMoney(orderOtherMoney,oddNumber);
+                                }
+                                orderOtherMoneyMapper.update(null, new LambdaUpdateWrapper<OrderOtherMoney>()
+                                        .set(OrderOtherMoney::getDeliveryState, 1)
+                                        .eq(OrderOtherMoney::getOrderId, orderDetail.getOrderId())
+                                        .isNull(OrderOtherMoney::getColumn)
+                                );
+                            }
+
+
+
 
 
                             if(orderDetail.getOtherColumns()!="{}"&&orderDetail.getOtherColumns()!=null){
diff --git a/north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java b/north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java
index c27975a..4e1add2 100644
--- a/north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java
+++ b/north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java
@@ -564,7 +564,7 @@
 
                     if(value!=null && !value.equals("") && key.contains("M")) {
                         orderOtherMoneyLists.forEach(orderOtherMoney -> {
-                            if (orderOtherMoney.getColumn().equals(key)) {
+                            if (orderOtherMoney.getColumn()!=null&&orderOtherMoney.getColumn().equals(key)) {
                                 orderOtherMoney.setQuantity(
                                         orderOtherMoney.getQuantity()+(Double.parseDouble((String) value)  * finalOrderDetail.getQuantity()));
                             }
diff --git a/north-glass-erp/src/main/java/com/example/erp/service/userInfo/UserService.java b/north-glass-erp/src/main/java/com/example/erp/service/userInfo/UserService.java
index 64ca017..ebcb818 100644
--- a/north-glass-erp/src/main/java/com/example/erp/service/userInfo/UserService.java
+++ b/north-glass-erp/src/main/java/com/example/erp/service/userInfo/UserService.java
@@ -198,8 +198,12 @@
         return map;
     }
 
-    public Boolean updateProcessSv(Integer id, String process) {
-        return userMapper.updateProcessMp(id,process);
+    public Boolean updateProcessSv(Integer id, Map<String, String> process) {
+        String processList=null;
+        if(!Objects.equals(process.get("processList"), "")){
+             processList=process.get("processList");
+        }
+        return userMapper.updateProcessMp(id, processList);
     }
 
     public Object findByAddress(Map<String,String> userName) {
diff --git a/north-glass-erp/src/main/resources/mapper/pp/ReportingWork.xml b/north-glass-erp/src/main/resources/mapper/pp/ReportingWork.xml
index 636a063..8cf8c23 100644
--- a/north-glass-erp/src/main/resources/mapper/pp/ReportingWork.xml
+++ b/north-glass-erp/src/main/resources/mapper/pp/ReportingWork.xml
@@ -69,6 +69,7 @@
 <!--    鏌ヨ褰撳墠宸ュ簭鐨勮〃澶存暟鎹�-->
     <select id="AddSelectLastWorkMp" resultMap="reportingWorkMap">
         select o.order_id,
+               o.batch,
                fc.production_id,
                fc.process_id as 'processIdFirst',
                o.customer_id,
@@ -104,7 +105,13 @@
     </select>
 
     <select id="SelectWorkBasicTeamsMp">
-        select id,login_name,user_name,address from erp_user_info.`user` WHERE address=#{process}
+        select id,login_name,user_name,address from erp_user_info.`user`
+        where
+            address is not null and address != ''
+            and (
+                (JSON_VALID(address) and JSON_CONTAINS(address,CONCAT('"', #{process}, '"') ))
+                or (not JSON_VALID(address) and address = #{process})
+            )
     </select>
 
     <!--    鏌ヨ娴佺▼鍗″伐鑹烘祦绋�-->
diff --git a/north-glass-erp/src/main/resources/mapper/sd/DeliveryDetailMapper.xml b/north-glass-erp/src/main/resources/mapper/sd/DeliveryDetailMapper.xml
index 2cf1f94..fb1200f 100644
--- a/north-glass-erp/src/main/resources/mapper/sd/DeliveryDetailMapper.xml
+++ b/north-glass-erp/src/main/resources/mapper/sd/DeliveryDetailMapper.xml
@@ -1443,4 +1443,12 @@
         update sd.delivery set money=#{money}
         where delivery_id=#{deliveryId}
     </update>
+
+    <insert id="insertDeliveryOtherMoney" useGeneratedKeys="true">
+        insert into sd.delivery_other_money (delivery_id,quantity,price,money,alias,order_id,create_time)
+        values (
+                   #{deliveryId},#{orderOtherMoney.quantity},#{orderOtherMoney.price},
+                   #{orderOtherMoney.money},#{orderOtherMoney.alias},#{orderOtherMoney.orderId},now()
+               )
+    </insert>
 </mapper>
\ No newline at end of file

--
Gitblit v1.8.0