Browse Source

费用支出单

zengtx 2 years ago
parent
commit
f2118602f9

+ 115 - 1
jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/syShippingOrder/controller/SyShippingOrderController.java

@@ -41,7 +41,11 @@ import lombok.extern.slf4j.Slf4j;
 import org.jeecg.common.system.base.controller.JeecgController;
 import org.jeecg.modules.documents.syShippingOrder.service.impl.SyShippingOrderItemServiceImpl;
 import org.jeecg.modules.documents.syShippingOrder.tool.TopinYin;
+import org.jeecg.modules.splfi.entity.SyPackingListFabricItem;
+import org.jeecg.modules.splfi.service.impl.SyPackingListFabricItemServiceImpl;
+import org.jeecg.modules.splt.entity.SyPackingListTailoringItem;
 import org.jeecg.modules.splt.mapper.SyPackingListTailoringItemMapper;
+import org.jeecg.modules.splt.service.impl.SyPackingListTailoringItemServiceImpl;
 import org.jeecg.modules.system.entity.SysDict;
 import org.jeecg.modules.system.service.impl.SysDictServiceImpl;
 import org.jeecgframework.poi.excel.ExcelExportUtil;
@@ -80,6 +84,10 @@ public class SyShippingOrderController extends JeecgController<SyShippingOrder,
 	 private SyLetterDepositServiceImpl syLetterDepositService;
 	 @Resource
 	 private SyLetterDepositMapper syLetterDepositMapper;
+	 @Autowired
+	 private SyPackingListFabricItemServiceImpl syPackingListFabricItemService;
+	 @Autowired
+	 private SyPackingListTailoringItemServiceImpl syPackingListTailoringItemService;
 
 	
 	/**
@@ -347,7 +355,7 @@ public class SyShippingOrderController extends JeecgController<SyShippingOrder,
   public Result<IPage<SyPackingList>> queryTailoring(SyPackingList syPackingList,String tailoringOrFabric,String name,String supplier,
 													 String type,
 													 @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
-													 @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+													 @RequestParam(name="pageSize", defaultValue="50") Integer pageSize,
 													 HttpServletRequest request, HttpServletResponse response){
 
 	  Result<IPage<SyPackingList>> result = new Result<IPage<SyPackingList>>();
@@ -1191,5 +1199,111 @@ public class SyShippingOrderController extends JeecgController<SyShippingOrder,
 
 	 }
 
+	 /**
+	  * 推送U8费用支出单
+	  * @param syShippingOrder
+	  * @return
+	  */
+	 @GetMapping("/expensesU8")
+	 public Result<Integer> expensesU8(SyShippingOrder syShippingOrder) throws IllegalAccessException {
+		 Result<Integer> result = new Result<Integer>();
+
+		 if(oConvertUtils.isEmpty(syShippingOrder.getId())){
+		 	result.setSuccess(false);
+		 	result.setMessage("未获取到ID!");
+		 	result.setResult(0);
+		 	return result;
+		 }
+//		 if(entity.a){
+//
+//		 }
+		 Map<String,Object> map = new HashMap<>();
+		 List<Map<String,Object>> listmap = new ArrayList<>();
+		 List<Map<String,Object>> rmbmap = new ArrayList<>();
+		 List<Map<String,Object>> usdmap = new ArrayList<>();
+
+		 //查询主表信息
+		 SyShippingOrder entity = syShippingOrderService.getById(syShippingOrder.getId());
+		 //转map
+		 Field[] fields = entity.getClass().getDeclaredFields();
+		 for (Field field : fields) {
+			 field.setAccessible(true);
+			 map.put(field.getName(), field.get(entity));
+		 }
+
+		 //查询子表信息
+		 List<SyShippingOrderItem> itemList = syShippingOrderMapper.qeuryItemInfo(entity.getId());
+		 //集合转map
+		 for(SyShippingOrderItem li:itemList){
+			 Field[] fieldsList = li.getClass().getDeclaredFields();
+			 Map<String, Object> mapList = new HashMap<String, Object>();
+			 for (Field field : fieldsList) {
+				 field.setAccessible(true);
+				 mapList.put(field.getName(), field.get(li));
+			 }
+			 listmap.add(mapList);
+		 }
+
+
+		 //查询人民币信息
+		 List<SyRmb> rmbList = syShippingOrderMapper.rmbList(entity.getId());
+		 //集合转map
+		 for(SyRmb li:rmbList){
+			 Field[] fieldsList = li.getClass().getDeclaredFields();
+			 Map<String, Object> mapList = new HashMap<String, Object>();
+			 for (Field field : fieldsList) {
+				 field.setAccessible(true);
+				 mapList.put(field.getName(), field.get(li));
+			 }
+			 rmbmap.add(mapList);
+		 }
+
+		 //查询美元信息
+		 List<SyUsd> usdList = syShippingOrderMapper.usdList(entity.getId());
+		 //集合转map
+		 for(SyUsd li:usdList){
+			 Field[] fieldsList = li.getClass().getDeclaredFields();
+			 Map<String, Object> mapList = new HashMap<String, Object>();
+			 for (Field field : fieldsList) {
+				 field.setAccessible(true);
+				 mapList.put(field.getName(), field.get(li));
+			 }
+			 usdmap.add(mapList);
+		 }
+
+		 //查询装箱单子表,获取销售订单主表ID
+		 for(Map<String,Object> li:listmap) {
+			 //查面料
+			 SyPackingListFabricItem fabricEntity = syPackingListFabricItemService.getById(li.get("tailoringFabricItemId").toString());
+			 SyPackingListTailoringItem tailoringEntity = syPackingListTailoringItemService.getById(li.get("tailoringFabricItemId").toString());
+			 if (oConvertUtils.isNotEmpty(fabricEntity)) {
+				 //获取业务员编码、销售部门编码、客户简称
+				 li.put("orderId",fabricEntity.getSyOrderDataId());// = syShippingOrderMapper.querySOMain();
+			 } else if (oConvertUtils.isNotEmpty(tailoringEntity)) {
+				 li.put("orderId",fabricEntity.getSyOrderDataId());//  = syShippingOrderMapper.querySOMain(tailoringEntity.getSyOrderDataId());
+			 } else {
+				 result.setResult(0);
+				 result.setMessage("推送失败!请联系管理员");
+				 result.setSuccess(false);
+				 return result;
+			 }
+		 }
+
+         int i = syShippingOrderService.saveSalePayVouchThree(map,listmap,rmbmap,usdmap);
+         if(i>0){
+         	//修改同步状态
+			 entity.setSyStuta("1");
+			 syShippingOrderService.updateById(entity);
+         	result.setResult(1);
+         	result.setMessage("推送成功!");
+         	result.setSuccess(true);
+		 }else{
+			 result.setResult(0);
+			 result.setMessage("推送失败!请联系管理员");
+			 result.setSuccess(false);
+		 }
+
+		 return result;
+	 }
 
 }

+ 18 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/syShippingOrder/mapper/SyShippingOrderMapper.java

@@ -1,6 +1,7 @@
 package org.jeecg.modules.documents.syShippingOrder.mapper;
 
 import java.util.List;
+import java.util.Map;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -48,4 +49,21 @@ public interface SyShippingOrderMapper extends BaseMapper<SyShippingOrder> {
     //合并按钮(新增界面使用)
     public List<SyPackingList> syShippingOrderMerge(@Param("ids") List<String> ids);
 
+    //新增U8费用支出单主表
+    public Integer saveSalePayVouch(@Param("map") Map<String,Object> map);
+    //新增U8费用支出单子表
+    public Integer saveSalePayVouchs(@Param("map") Map<String,Object> map);
+
+    //查询销售订单的业务员和销售部门、客户简称
+    public Map<String,Object> querySOMain(@Param("id") String id);
+
+    //查询人民币信息
+    public List<SyRmb> rmbList(@Param("id") String id);
+
+    //查询美元信息
+    public List<SyUsd> usdList(@Param("id") String id);
+
+    //查询子表信息
+    public List<SyShippingOrderItem> qeuryItemInfo(@Param("id") String id);
+
 }

+ 54 - 1
jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/syShippingOrder/mapper/xml/SyShippingOrderMapper.xml

@@ -49,7 +49,7 @@ d.terms_of_deliveryvalue as termsOfDeliveryvalue
   select c.hs_code as hsCode,c.declaration_name as declarationName,a.id as id ,GROUP_CONCAT(b.id) as itemId,a.document_No as documentNo,a.create_by as createBy,
   a.export_invoice_no as exportInvoiceNo,a.container_number as containerNumber,a.garment_Factory as garmentFactory,
   b.supplier as supplier,a.plumbum_No as plumbumNo,a.customer_abbreviation as customerAbbreviation,
-  case when b.u8_Pid is null then sum(b.actual_declared_quantity) else sum(b.gross_weight) end as Total,sum(b.actual_declared_quantity) as number,
+  case when b.u8_Pid is null then sum(b.actual_declared_quantity) else sum(b.gross_weight) end as Total,concat(sum(b.actual_declared_quantity),'.00') as number,
    sum(b.rolls) as planQuantity,
   b.item_Number as itemNumber,b.small_Po as smallPo,round(sum(b.gross_weight),2) as grossWeight,
   round(sum(b.net_weight),2) as netWeight,'0' as totalVolume,b.distribution_Point as distributionPoint,
@@ -156,4 +156,57 @@ group by a.group_id) t group by styleNumber
 
     </select>
 
+
+<!--    新增费用支出单主表-->
+    <insert id="saveSalePayVouch">
+
+ insert into SalePayVouch(cSPVCode,ID,dDate,cPersonCode,cDepCode,cCusCode,cDefine10,cVouchType,cMaker,
+   iSourceId,cSourceCode,cSOCode,cnextsystem,iexchrate,cVouchID,Cexch_Name,iVTid)
+   value (#{map.cSPVCode},#{map.ID},#{map.dDate},#{map.cPersonCode},#{map.cDepCode},#{map.cCusCode},
+   #{map.cDefine10},#{map.cVouchType},#{map.cMaker},#{map.iSourceId},#{map.cSourceCode},#{map.cSOCode},
+   #{map.cnextsystem},#{map.iexchrate},#{map.cVouchID},#{map.Cexch_Name},#{map.iVTid})
+
+    </insert>
+
+    <!--    新增费用支出单子表-->
+    <insert id="saveSalePayVouchs">
+
+--   insert into SalePayVouch(cVouchID,cMaker,ID,cSPVCode,dDate,cDefine10,cCusCode,cDepCode,cPersonCode,Cexch_Name,iexchrate,cSOCode,cvencode,cnextsystem)
+--      values('0000002979','应甜甜','1000001209','0000001132','2022-12-16 15:37:00','22TW-CAM-44','T020001','TSM03','T0149','人民币','1','SYW440-马菲羊-面料','0176','其他应付单')
+   insert into SalePayVouchs(cSPVCode,iMoney,cExpCode,ID,irowno)
+   value (#{map.cSPVCode},#{map.iMoney},#{map.cExpCode},#{map.ID},#{map.irowno})
+
+    </insert>
+
+    <select id="querySOMain" parameterType="java.lang.String" resultType="java.util.HashMap">
+
+        select ID,cDepCode,cPersonCode,cCusCode from SO_SOMain
+        where ID = #{id}
+
+    </select>
+
+    <select id="rmbList" resultType="org.jeecg.modules.documents.letterDeposit.entity.SyRmb">
+        select * from sy_rmb where sy_letter_deposit_id = #{id} and del_flag = '0'
+    </select>
+
+    <select id="usdList" resultType="org.jeecg.modules.documents.letterDeposit.entity.SyUsd">
+        select * from sy_usd where sy_letter_deposit_id = #{id} and del_flag = '0'
+    </select>
+
+
+    <select id="qeuryItemInfo" resultType="org.jeecg.modules.documents.syShippingOrder.entity.SyShippingOrderItem">
+        SELECT GROUP_CONCAT(id) as id, sy_shipping_order_item_id as syShippingOrderItemId, english_name as englishName, style_number as styleNumber, smail_po as smailPo,create_by as createBy,order_number as orderNumber,
+sum(number) as number,
+case when ready_fabric != '成衣' then sum(box_number) else box_number end as boxNumber,
+case when ready_fabric != '成衣' then sum(gross_weight) else gross_weight end as grossWeight,
+case when ready_fabric != '成衣' then sum(net_weight) else net_weight end as netWeight,
+case when ready_fabric != '成衣' then volume else volume end as volume,round(sum(total_price),2) as totalPrice,
+distribution_point as distributionPoint, container_code as containerCode, container_number as containerNumber, unit_price as unitPrice, pre_shipment_date as preShipmentDate,
+salesman, operating_department as operatingDepartment, purchase_outsourcing_order_no as purOrSubOrder, outsourcing_factory_for_procurement as outsourcingFactoryForProcurement,
+ memo, sort, ready_fabric as readyFabric, tailoring_fabric_id as tailoringFabricId, GROUP_CONCAT(tailoring_fabric_item_id) as tailoringFabricItemId,client_abbreviation as clientAbbreviation
+ FROM sy_shipping_order_item where del_flag = 0 and sy_shipping_order_item_id = #{id}
+group by order_number
+    </select>
+
+
 </mapper>

+ 10 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/syShippingOrder/service/ISyShippingOrderService.java

@@ -5,10 +5,12 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.jeecg.modules.documents.shippingDetails.entity.VO.OrderDataVo;
 import org.jeecg.modules.documents.syShippingOrder.entity.SyShippingOrder;
 import com.baomidou.mybatisplus.extension.service.IService;
+import org.jeecg.modules.documents.syShippingOrder.entity.VO.SalePayVouchVo;
 import org.jeecg.modules.documents.syShippingOrder.entity.VO.SyPackingList;
 
 import java.text.ParseException;
 import java.util.List;
+import java.util.Map;
 
 /**
  * @Description: 托书主表实体类
@@ -38,4 +40,12 @@ public interface ISyShippingOrderService extends IService<SyShippingOrder> {
 
     //删除子表数据
     public void syShippingOrderItemDelete(String id);
+
+    //费用支出传U8
+    public Integer saveSalePayVouchOne(SyShippingOrder syShippingOrder);
+    public Integer saveSalePayVouchTwo(SyShippingOrder syShippingOrder);
+    public Integer saveSalePayVouchThree(Map<String,Object> map,List<Map<String,Object>> itemList,List<Map<String,Object>> rmbList,List<Map<String,Object>> udsList);
+
+
+
 }

+ 180 - 5
jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/syShippingOrder/service/impl/SyShippingOrderServiceImpl.java

@@ -1,8 +1,8 @@
 package org.jeecg.modules.documents.syShippingOrder.service.impl;
 
+import com.baomidou.dynamic.datasource.annotation.DS;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
-import org.apache.poi.util.StringUtil;
 import org.apache.shiro.SecurityUtils;
 import org.jeecg.common.exception.JeecgBootException;
 import org.jeecg.common.system.vo.LoginUser;
@@ -10,12 +10,13 @@ import org.jeecg.common.util.oConvertUtils;
 import org.jeecg.modules.documents.letterDeposit.entity.SyRmb;
 import org.jeecg.modules.documents.letterDeposit.entity.SyUsd;
 import org.jeecg.modules.documents.letterDeposit.mapper.SyLetterDepositMapper;
-import org.jeecg.modules.documents.shippingDetails.entity.SyShippingDetails;
 import org.jeecg.modules.documents.syShippingOrder.entity.SyShippingOrder;
 import org.jeecg.modules.documents.syShippingOrder.entity.SyShippingOrderItem;
+import org.jeecg.modules.documents.syShippingOrder.entity.VO.SalePayVouchVo;
 import org.jeecg.modules.documents.syShippingOrder.entity.VO.SyPackingList;
 import org.jeecg.modules.documents.syShippingOrder.mapper.SyShippingOrderMapper;
 import org.jeecg.modules.documents.syShippingOrder.service.ISyShippingOrderService;
+import org.jeecg.modules.openApi.mapper.PurchaseWarehousingMapper;
 import org.jeecg.modules.splfi.entity.SyPackingListFabric;
 import org.jeecg.modules.splfi.entity.SyPackingListFabricItem;
 import org.jeecg.modules.splfi.service.impl.SyPackingListFabricItemServiceImpl;
@@ -24,6 +25,7 @@ import org.jeecg.modules.splt.entity.SyPackingListTailoring;
 import org.jeecg.modules.splt.entity.SyPackingListTailoringItem;
 import org.jeecg.modules.splt.service.impl.SyPackingListTailoringItemServiceImpl;
 import org.jeecg.modules.splt.service.impl.SyPackingListTailoringServiceImpl;
+import org.jeecgframework.codegenerate.generate.util.SimpleFormat;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -34,9 +36,7 @@ import javax.annotation.Resource;
 import java.math.BigDecimal;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
+import java.util.*;
 
 /**
  * @Description: 托书主表实体类
@@ -62,6 +62,8 @@ public class SyShippingOrderServiceImpl extends ServiceImpl<SyShippingOrderMappe
     private SyPackingListTailoringServiceImpl syPackingListTailoringService;
     @Autowired
     private SyPackingListTailoringItemServiceImpl syPackingListTailoringItemService;
+    @Resource
+    private PurchaseWarehousingMapper purchaseWarehousingMapper;
 
 
     /**
@@ -487,4 +489,177 @@ public class SyShippingOrderServiceImpl extends ServiceImpl<SyShippingOrderMappe
 
     }
 
+    @Override
+    public Integer saveSalePayVouchOne(SyShippingOrder syShippingOrder) {
+        return 1;
+    }
+
+    @Override
+    public Integer saveSalePayVouchTwo(SyShippingOrder syShippingOrder) {
+        return 1;
+    }
+
+    @DS("multi-three")
+    @Override
+    public Integer saveSalePayVouchThree(Map<String,Object> map,List<Map<String,Object>> itemList,List<Map<String,Object>> rmbList,List<Map<String,Object>> udsList) {
+
+        int i = this.saveSalePayVouch(map,itemList,rmbList,udsList);
+        return i;
+    }
+
+
+    /**
+     * 新增
+     * @param map1
+     * @return
+     */
+    public Integer saveSalePayVouch(Map<String,Object> map1,List<Map<String,Object>> itemList,List<Map<String,Object>> rmbList,List<Map<String,Object>> usdList){
+
+        //主表集合
+        List<Map<String,Object>> listmap = new ArrayList<>();
+        //子表集合
+        List<Map<String,Object>> listmaps = new ArrayList<>();
+
+        SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd 00:00:00.000");
+
+        //记录每次ID
+        String id = "";
+        //记录每次单据号
+        String cCode = "";
+        String cVouchID = "";
+        //获取单据号加1
+        cCode= org.jeecg.modules.system.util.oConvertUtils.addOne(purchaseWarehousingMapper.getMaxCode("cSPVCode","SalePayVouch","dcreatesystime"));
+        //获取ID
+        id = org.jeecg.modules.system.util.oConvertUtils.addOne(purchaseWarehousingMapper.getMaxCode("ID","SalePayVouch","dcreatesystime"));
+        //单据id
+        //cVouchID = org.jeecg.modules.system.util.oConvertUtils.addOne(purchaseWarehousingMapper.getMaxCode("cVouchID","SalePayVouch","dcreatesystime"));
+
+        int ii = 0;
+
+        try {
+
+        //业务场景
+        //一张托书有五个销售订单号,美元代币有三个,人民币代币有三个,此时需要生成30张销售费用支出单,每一个销售订单需要生成6个费用支出单,所以(5*6=30)
+        for(Map<String,Object> li: itemList){
+            //人民币信息
+            for(Map<String,Object> rmb:rmbList){
+                ii++;
+                Map<String,Object> map = new HashMap<>();
+                Map<String,Object> mapPo;
+
+                String orderId = li.get("orderId").toString();
+                mapPo = syShippingOrderMapper.querySOMain(orderId.substring(3,orderId.length()));//li.get("orderId").toString()
+
+                if(ii>1){
+                    cCode = org.jeecg.modules.system.util.oConvertUtils.addOne(cCode);
+                    //cVouchID = org.jeecg.modules.system.util.oConvertUtils.addOne(cVouchID);
+                    id = org.jeecg.modules.system.util.oConvertUtils.addOne(id);
+                    map.put("cSPVCode",cCode);//单据号
+                   // map.put("cVouchID",cVouchID);
+                    map.put("ID",id);//ID
+                }else{
+                    map.put("cSPVCode",cCode);//单据号
+                    //map.put("cVouchID",cVouchID);
+                    map.put("ID",id);//ID
+                }
+                map.put("dDate",sf.format(new Date()));//日期
+                map.put("cPersonCode",mapPo.get("cPersonCode"));//业务员
+                map.put("cDepCode",mapPo.get("cDepCode"));//部门
+                map.put("cCusCode",mapPo.get("cCusCode"));//客户简称
+                map.put("cDefine10",map1.get("shippingOrderNumber"));//外销发票号
+                map.put("cVouchType","PO");//单据类型
+                map.put("cMaker",map1.get("createBy"));//制单人
+                map.put("iSourceId",mapPo.get("ID"));//来源ID、
+                map.put("cSourceCode",li.get("orderNumber"));//订单号
+                map.put("cSOCode",li.get("orderNumber"));//订单号
+                map.put("cnextsystem","其他应付单");//单据流向
+                map.put("iexchrate","1");//汇率
+                map.put("Cexch_Name","人民币");
+                map.put("iVTid","57");
+
+                map.put("cvencode","");
+                listmap.add(map);
+
+
+                //添加子表信息
+                Map<String,Object> maps = new HashMap<>();
+                maps.put("cSPVCode",cCode);//销售支出单号
+                maps.put("iMoney",new BigDecimal(li.get("grossWeight").toString()).multiply(new BigDecimal(rmb.get("amount").toString())));
+                maps.put("cExpCode","0000"+ii);//项目编码
+                    maps.put("ID", id);
+                maps.put("irowno","1");//行号
+                listmaps.add(maps);
+            }
+
+            //美元信息
+            for(Map<String,Object> usd:usdList){
+                Map<String,Object> map = new HashMap<>();
+                Map<String,Object> mapPo;
+
+                String orderId = li.get("orderId").toString();
+                mapPo = syShippingOrderMapper.querySOMain(orderId.substring(3,orderId.length()));//li.get("orderId").toString()
+
+                cCode = org.jeecg.modules.system.util.oConvertUtils.addOne(cCode);
+                //cVouchID = org.jeecg.modules.system.util.oConvertUtils.addOne(cVouchID);
+                id = org.jeecg.modules.system.util.oConvertUtils.addOne(id);
+                map.put("cSPVCode",cCode);//单据号
+                map.put("ID",id);//ID
+                //map.put("cVouchID",cVouchID);
+
+                map.put("dDate",sf.format(new Date()));//日期
+                map.put("cPersonCode",mapPo.get("cPersonCode"));//业务员
+                map.put("cDepCode",mapPo.get("cDepCode"));//部门
+                map.put("cCusCode",mapPo.get("cCusCode"));//客户简称
+                map.put("cDefine10",map1.get("shippingOrderNumber"));//外销发票号
+                map.put("cVouchType","PO");//单据类型
+                map.put("cMaker",map1.get("createBy"));//制单人
+                map.put("iSourceId",mapPo.get("ID"));//来源ID、
+                map.put("cSourceCode","SYW440-马菲羊-面料");//订单号li.get("orderNumber")
+                map.put("cSOCode","SYW440-马菲羊-面料");//订单号
+                map.put("cnextsystem","其他应付单");//单据流向
+                map.put("iexchrate","1");//汇率
+                map.put("Cexch_Name","美元");
+                map.put("iVTid","57");//单据模板号
+
+                listmap.add(map);
+
+
+                //添加子表信息
+                Map<String,Object> maps = new HashMap<>();
+                maps.put("cSPVCode",cCode);//销售支出单号
+                maps.put("iMoney",new BigDecimal(li.get("grossWeight").toString()).multiply(new BigDecimal(usd.get("amount").toString())));
+                maps.put("cExpCode","0000"+ii);//项目编码
+
+                maps.put("ID", id);
+                maps.put("irowno","1");//行号
+                listmaps.add(maps);
+            }
+
+        }
+
+
+            //循环新增主表
+            for(Map<String,Object> ma:listmap){
+               // syShippingOrderMapper.saveSalePayVouch(ma);
+            }
+
+            //循环新增子表
+            for(Map<String,Object> ma:listmaps){
+              // syShippingOrderMapper.saveSalePayVouchs(ma);
+            }
+
+            //修改最大编码
+           // purchaseWarehousingMapper.updateVoucherHistoryCNumber(org.jeecg.modules.system.util.oConvertUtils.maxNumber(cCode),"09");
+
+
+        }catch (Exception e){
+            e.printStackTrace();
+            throw new JeecgBootException("失败:"+e.getMessage());
+
+        }
+        return 1;
+
+    }
+
+
 }