Browse Source

托书发票打印,发运明细调整

zengtx 2 years ago
parent
commit
b409672ac5
11 changed files with 169 additions and 52 deletions
  1. 26 0
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/letterDeposit/controller/SyLetterDepositController.java
  2. 30 7
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/shippingDetails/controller/SyShippingDetailsController.java
  3. 2 1
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/shippingDetails/entity/SyShippingDetailsItem.java
  4. 3 0
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/shippingDetails/entity/VO/PushShippingDeialVo.java
  5. 1 1
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/shippingDetails/entity/VO/PushShippingVO.java
  6. 20 13
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/shippingDetails/mapper/xml/SyShippingDetailsMapper.xml
  7. 39 18
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/shippingDetails/service/impl/SyShippingDetailsServiceImpl.java
  8. 20 5
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/syShippingOrder/controller/SyShippingOrderController.java
  9. 3 0
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/syShippingOrder/entity/SyShippingOrderItem.java
  10. 1 1
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/syShippingOrder/mapper/xml/SyShippingOrderMapper.xml
  11. 24 6
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/syShippingOrder/service/impl/SyShippingOrderServiceImpl.java

+ 26 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/letterDeposit/controller/SyLetterDepositController.java

@@ -195,6 +195,10 @@ public class SyLetterDepositController extends JeecgController<SyLetterDeposit,
 	public Result<SyLetterDeposit> edit(@RequestBody SyLetterDeposit syLetterDeposit) {
 
 		Result<SyLetterDeposit> result = new Result<SyLetterDeposit>();
+
+		//预装箱单ID集合
+		List<String> assembledList = new ArrayList<>();
+
 		try {
 			if(syLetterDeposit.getSyLetterDepositItemList().size()==0){
 				result.setSuccess(true);
@@ -208,6 +212,28 @@ public class SyLetterDepositController extends JeecgController<SyLetterDeposit,
 				result.setMessage("编辑失败,该单据已提交,不能修改!");
 				return result;
 			}
+			//查询预托书子表
+			QueryWrapper<SyLetterDepositItem> queryWrapper = new QueryWrapper<>();
+			queryWrapper.eq("sy_letter_deposit_id",syLetterDeposit.getId()).eq("del_flag",0);
+			List<SyLetterDepositItem> list = syLetterDepositItemService.list(queryWrapper);
+
+			//判断预装箱单下游有没有装箱单数据
+			//查询装箱单子表数据
+			String assIds = list.get(0).getPreIds();
+			String assSplit[] = assIds.split(",");
+			for(String str:assSplit){
+				assembledList.add(str);
+			}
+			//查询是否游下游装箱单sy_packing_list_tailoring_item
+			QueryWrapper<SyPackingListTailoringItem> queryWrapper1 = new QueryWrapper<>();
+			queryWrapper1.in("sy_Pre_Assembled_Packing_List_Item_Id",assembledList).eq("del_flag",0);
+			List<SyPackingListTailoringItem> itemList = syPackingListTailoringItemService.list(queryWrapper1);
+			if(itemList.size() !=0 ){
+				result.setSuccess(false);
+				result.setMessage("该单据参照的预装箱单下游装箱单有单据,无法修改");
+				return result;
+
+			}
 
 			SyLetterDeposit entity = syLetterDepositService.syLetterDepositEdit(syLetterDeposit);
             result.setMessage("编辑成功!");

+ 30 - 7
jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/shippingDetails/controller/SyShippingDetailsController.java

@@ -515,6 +515,12 @@ public class SyShippingDetailsController extends JeecgController<SyShippingDetai
 						  result.setMessage("部分单据已提交,请勿重复提交!");
 						  return result;
 					  }
+					  //判断物料成份。isTc、款号是否为空,为空不允许提交
+					  if(oConvertUtils.isEmpty(li.getItemNumber()) || oConvertUtils.isEmpty(li.getMaterialComposition()) || oConvertUtils.isEmpty(li.getIsTc())){
+						  result.setSuccess(false);
+						  result.setMessage("物料成份/款号/是否TC 未维护,不允许提交!");
+						  return result;
+					  }
 				  }
 			  }else{
 				  for (SyShippingDetailsItem li : list) {
@@ -644,12 +650,15 @@ public class SyShippingDetailsController extends JeecgController<SyShippingDetai
 	  */
 	 @AutoLog(value = "发运明细推送接口")
 	 @ApiOperation(value="发运明细推送接口", notes="发运明细推送接口")
-	 @GetMapping(value = "/pushSyShipping")
-  public JSONObject pushSyShipping(String id){
+	 @GetMapping(value = "/pushSyShippingInfo")
+  public Result<PushShippingDeialVo> pushSyShippingInfo(String id){
+
+	 	Result<PushShippingDeialVo> pushvo = new Result<>();
 
 	  JSONObject result = new JSONObject();
 	  List<PushShippingVO> list = new ArrayList<PushShippingVO>();
 
+
 	  try {
 	      if(oConvertUtils.isEmpty(id)){
 			  System.out.println("ID为空!");
@@ -672,15 +681,23 @@ public class SyShippingDetailsController extends JeecgController<SyShippingDetai
 		  //查询明细
 		  List<PushShippingDeialVo> pushShippingDeialVoList =  syShippingDetailsService.pushSyShippingDeial(id);
 		  for(PushShippingDeialVo li:pushShippingDeialVoList){
+
+			  List<PushShippingDeialVo> listItem = new ArrayList<PushShippingDeialVo>();
+
 			   if(li.getSubmitStatus().equals("0")){
-				   result.put("success","false");
-				   result.put("message","该单据部分未提交,请全部提交再推送!");
-				   return result;
+				   pushvo.setSuccess(false);
+				   pushvo.setMessage("该单据部分未提交,请全部提交再推送!");
+				   return pushvo;
 			   }
 			  //查询主表
 			  PushShippingVO pushShippingVO =  syShippingDetailsService.pushSyShipping(id);
 			  pushShippingVO.setPoNo(li.getPoNo());
-			  pushShippingVO.setLines(li);
+			  pushShippingVO.setPackingHeaderNum(pushShippingVO.getAttributeString1()+"-"+li.getPackingLineNum());
+			  pushShippingVO.setPoNo(li.getPoNo());
+			  pushShippingVO.setAttributeBigint1(li.getOmpoId());
+			  pushShippingVO.setSupplierNumber(li.getSupplierCode());
+			  listItem.add(li);
+			  pushShippingVO.setLines(listItem);
 			  list.add(pushShippingVO);
 		  }
 
@@ -710,9 +727,15 @@ public class SyShippingDetailsController extends JeecgController<SyShippingDetai
 			shippingDetails.setPushState("1");
 			shippingDetails.setPushMessage(message);
 
+			  pushvo.setSuccess(true);
+			  pushvo.setResult(pushShippingDeialVoList.get(0));
+			  pushvo.setMessage("推送成功!");
 		  }else{
 			  shippingDetails.setPushState("2");
 			  shippingDetails.setPushMessage(message);
+			  pushvo.setSuccess(false);
+			  pushvo.setResult(pushShippingDeialVoList.get(0));
+			  pushvo.setMessage("推送失败!");
 		  }
 		  syShippingDetailsService.updateById(shippingDetails);
 
@@ -721,7 +744,7 @@ public class SyShippingDetailsController extends JeecgController<SyShippingDetai
 		  ex.printStackTrace();
 		  log.error("推送失败:" + ex.getMessage());
 	  }
-	  return  result;
+	  return  pushvo;
   }
 
 

+ 2 - 1
jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/shippingDetails/entity/SyShippingDetailsItem.java

@@ -57,7 +57,7 @@ public class SyShippingDetailsItem {
 	/**订单日期*/
 	@Excel(name = "订单日期", width = 20, format = "yyyy-MM-dd")
 	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
-    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
     @ApiModelProperty(value = "订单日期")
 	private java.util.Date orderDate;
 	/**业务类型*/
@@ -441,6 +441,7 @@ public class SyShippingDetailsItem {
         this.weight = orderDataVo.getWeight();
         this.rSupplier = orderDataVo.getRSupplier();
         this.rSupplierCode = orderDataVo.getRSupplierCode();
+        this.orderDate = orderDataVo.getOrderDate();
 
 	}
 }

+ 3 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/shippingDetails/entity/VO/PushShippingDeialVo.java

@@ -46,4 +46,7 @@ public class PushShippingDeialVo {
     //订单号
     private String poNo;
 
+    private String ompoId;
+
+    private String supplierCode;
 }

+ 1 - 1
jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/shippingDetails/entity/VO/PushShippingVO.java

@@ -29,5 +29,5 @@ public class PushShippingVO {
     private String preparationTime;
 
     //明细对象
-    private  PushShippingDeialVo lines;
+    private  List<PushShippingDeialVo> lines;
 }

+ 20 - 13
jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/shippingDetails/mapper/xml/SyShippingDetailsMapper.xml

@@ -53,9 +53,9 @@
 <select id="queryShippingDetails" resultType="org.jeecg.modules.documents.shippingDetails.entity.VO.SyShippingDetailsVo">
     select t.* from(select b.is_reference as isReference,a.id as id,GROUP_CONCAT(b.id) as itemIds,a.document_no as documentNo,a.document_date as documentDate,b.order_number as orderNumber,a.push_state,b.submit_status as submitStatus,
     b.customer_abbreviation as customerAbbreviation,b.sales_department as salesDepartment,b.salesman as salesman,a.customer as customer,b.specification_and_model as specificationAndModel,
-    b.small_po as smallPo,b.pack_id as packId,b.pre_delivery_date as preDeliveryDate,a.declaration_name as declarationName,b.order_date as orderDate,
+    b.small_po as smallPo,b.pack_id as packId,b.pre_delivery_date as preDeliveryDate,b.order_date as orderDate,
     sum(b.shipment_quantity) as shipmentQuantity,b.customs_declaration_unit_price as customsDeclarationUnitPrice,b.order_quantity as orderQuantity,
-    b.is_tc as isTc,a.hs_code as hsCode,b.distribution_point as distributionPoint,b.item_number as itemNumber,b.business_type_text as businessTypeText,
+    b.is_tc as isTc,b.distribution_point as distributionPoint,b.item_number as itemNumber,b.business_type_text as businessTypeText,
     b.arrival_date as arrivalDate,b.inventory_name as inventoryName,b.sales_unit_price as salesUnitPrice,b.order_remaining_quantity as orderRemainingQuantity,
     b.pur_or_sub_order as purOrSubOrder,a.order_type as orderType,b.factory_unit_price as factoryUnitPrice,b.third_party as thirdParty,b.customer_order as customerOrder,
     b.material_composition as materialComposition,b.currency_text as currencyText,b.brand_side as brandSide,b.deposit_ratio as depositRatio,
@@ -63,9 +63,13 @@
     b.order_remarks as orderRemarks,b.price_remarks as priceRemarks,b.order_change_description as orderChangeDescription,b.pre_completion_date as preCompletionDate,
     b.sales_type_text as salesTypeText,b.customer_name as customerName,b.exchange_rate as exchangeRate,a.whole_order_total as wholeOrderTotal,
     b.declaration_elements as declarationElements,b.number_of_sets as numberOfSets,a.chinese_name as chineseName,b.account as account,b.supplier as supplier,
-    a.english_product_name as englishProductName,b.garment_factory as garmentFactory,b.elements_id as elementsId from sy_shipping_details a
+    b.garment_factory as garmentFactory,b.elements_id as elementsId,
+     c.declaration_name as declarationName,c.hs_code as hsCode,c.english_product_name as englishProductName
+     from sy_shipping_details a
 left join sy_shipping_details_item b
 on a.id = b.shipping_details_id and b.del_flag = 0
+left join sy_declaration_elements c
+on b.elements_id = c.id
 where a.del_flag = 0
   AND b.inventory_ccode like '19%'
 
@@ -78,9 +82,9 @@ ${ew.customSqlSegment}
     <select id="queryShippingDetailsGarment" resultType="org.jeecg.modules.documents.shippingDetails.entity.VO.SyShippingDetailsVo">
     select t.* from(select b.is_reference as isReference,a.id as id,GROUP_CONCAT(b.id) as itemIds,a.document_no as documentNo,a.document_date as documentDate,b.order_number as orderNumber,a.push_state,b.submit_status as submitStatus,
     b.customer_abbreviation as customerAbbreviation,b.sales_department as salesDepartment,b.salesman as salesman,a.customer as customer,b.specification_and_model as specificationAndModel,
-    b.small_po as smallPo,b.pack_id as packId,b.pre_delivery_date as preDeliveryDate,a.declaration_name as declarationName,b.order_date as orderDate,
+    b.small_po as smallPo,b.pack_id as packId,b.pre_delivery_date as preDeliveryDate,b.order_date as orderDate,
     sum(b.shipment_quantity) as shipmentQuantity,b.customs_declaration_unit_price as customsDeclarationUnitPrice,b.order_quantity as orderQuantity,
-    b.is_tc as isTc,a.hs_code as hsCode,b.distribution_point as distributionPoint,b.item_number as itemNumber,b.business_type_text as businessTypeText,
+    b.is_tc as isTc,b.distribution_point as distributionPoint,b.item_number as itemNumber,b.business_type_text as businessTypeText,
     b.arrival_date as arrivalDate,b.inventory_name as inventoryName,b.sales_unit_price as salesUnitPrice,b.order_remaining_quantity as orderRemainingQuantity,
     b.pur_or_sub_order as purOrSubOrder,a.order_type as orderType,b.factory_unit_price as factoryUnitPrice,b.third_party as thirdParty,b.customer_order as customerOrder,
     b.material_composition as materialComposition,b.currency_text as currencyText,b.brand_side as brandSide,b.deposit_ratio as depositRatio,
@@ -88,10 +92,13 @@ ${ew.customSqlSegment}
     b.order_remarks as orderRemarks,b.price_remarks as priceRemarks,b.order_change_description as orderChangeDescription,b.pre_completion_date as preCompletionDate,
     b.sales_type_text as salesTypeText,b.customer_name as customerName,b.exchange_rate as exchangeRate,a.whole_order_total as wholeOrderTotal,
     b.declaration_elements as declarationElements,b.number_of_sets as numberOfSets,a.chinese_name as chineseName,b.account as account,b.supplier as supplier,
-    a.english_product_name as englishProductName,b.garment_factory as garmentFactory,b.elements_id as elementsId from sy_shipping_details a
+    b.garment_factory as garmentFactory,b.elements_id as elementsId,
+     c.declaration_name as declarationName,c.hs_code as hsCode,c.english_product_name as englishProductName
+     from sy_shipping_details a
 left join sy_shipping_details_item b
 on a.id = b.shipping_details_id and b.del_flag = 0
-where a.del_flag = 0
+left join sy_declaration_elements c
+on b.elements_id = c.id
   AND b.inventory_ccode not like '19%'
 GROUP BY b.group_id
  order by a.create_time desc) as t
@@ -106,11 +113,11 @@ ${ew.customSqlSegment}
     </update>
 
 
-    <select id="pushSyShipping" resultType="org.jeecg.modules.documents.shippingDetails.entity.VO.PushShippingDeialVo">
+    <select id="pushSyShipping" resultType="org.jeecg.modules.documents.shippingDetails.entity.VO.PushShippingVO">
       select
-       concat(a.document_no,'-',b.sort) as packingHeaderNum,a.document_no as attributeString1,
-          'ACCESSORIES' as packingType,'NEW' as packingStatus,b.pur_or_sub_order as poNo,
-          b.ompo_id as attributeBigint1,b.supplier_code as supplierNumber,'成衣工厂' as factory,
+      a.document_no as attributeString1,
+          'ACCESSORIES' as packingType,'NEW' as packingStatus,
+           '成衣工厂' as factory,
            a.create_by as preparer,a.create_time as preparationTime
           from sy_shipping_details a
           where a.del_flag = 0 and a.id = #{id}
@@ -119,13 +126,13 @@ ${ew.customSqlSegment}
 
     <select id="pushSyShippingDeial" resultType="org.jeecg.modules.documents.shippingDetails.entity.VO.PushShippingDeialVo">
 
-      select b.sort as packingLineNum,
+      select b.sort as packingLineNum,b.ompo_id as ompoId,b.supplier_code as supplierCode,
            b.ompo_id_item as moDetailId,b.item_number as styleNo,b.colour as color,b.pur_or_sub_order as poNo,
            b.inventory_code as itemCode,b.inventory_name as itemDesc,c.declaration_name as declarationName,
            b.material_composition as composition,'0' as width,'0' as rolls,b.shipment_quantity as planPackingQty,
            b.treatment_method as treatmentMethod,b.manual_yarn_flag as manualYarnFlag,
            manual_yarn_unit_price as manualYarnUnitPrice,b.manual_yarn_proportion as manualYarnProportion,
-           '' as remark,b.submit_status as submitStatus
+           '' as remark,b.submit_status as submitStatus,b.pur_or_sub_order as ordernum
         from sy_shipping_details_item b
         left join sy_declaration_elements c
         on b.elements_id = c.id

+ 39 - 18
jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/shippingDetails/service/impl/SyShippingDetailsServiceImpl.java

@@ -82,7 +82,7 @@ public class SyShippingDetailsServiceImpl extends ServiceImpl<SyShippingDetailsM
          syShippingDetails.setId(id);
          //设置单据号(F2206201305854)
         if(oConvertUtils.isEmpty(syId)){
-        SimpleDateFormat sf = new SimpleDateFormat("yyMMddHHmmSS");
+        SimpleDateFormat sf = new SimpleDateFormat("yyMMddHHmmss");
             SimpleDateFormat sf1 = new SimpleDateFormat("yyyy-MM-dd");
         String createTime = sf.format(new Date());
         syShippingDetails.setDocumentNo("F"+createTime);
@@ -122,12 +122,18 @@ public class SyShippingDetailsServiceImpl extends ServiceImpl<SyShippingDetailsM
                     entity.setGroupId(gourpid);
                 }
 
-                //设置物料成分
-                if(syShippingDetails.getReadyFabric().equals("成衣")){
-                    entity.setMaterialComposition(li.getSpecificationAndModel());//取规格型号
-                }else{
-                    entity.setMaterialComposition(li.getInventoryName());//取存货名称
+                //设置物料成分 和 是否TC
+                //根据款号物料名称查询相同数据并赋值
+                QueryWrapper<SyShippingDetailsItem> queryWrapper1 = new QueryWrapper<>();
+                queryWrapper1.eq("item_number",li.getItemNumber()).eq("inventory_code",li.getInventoryCode()).eq("del_flag",0);
+                queryWrapper1.orderByDesc("create_time");
+                List<SyShippingDetailsItem> list = syShippingDetailsItemService.list(queryWrapper1);
+                if(list.size()!=0){
+                    SyShippingDetailsItem itemEntity = list.get(0);
+                    entity.setMaterialComposition(itemEntity.getMaterialComposition());
+                    entity.setIsTc(itemEntity.getIsTc());
                 }
+
                 //设置排序
                 entity.setSort(sort);
                 //设置主表自建
@@ -324,19 +330,34 @@ public class SyShippingDetailsServiceImpl extends ServiceImpl<SyShippingDetailsM
     @Override
     public int updateByTcNumberMaterial(String ids, String itemNumber, String materialComposition, String tc) {
         int i = 0;
+        boolean boo = false;
         String idsSplit[] = ids.split(",");
-        for(String str:idsSplit){
-            SyShippingDetailsItem itemEntity = new SyShippingDetailsItem();
-            itemEntity.setId(str);
-            itemEntity.setItemNumber(itemNumber);
-            itemEntity.setMaterialComposition(materialComposition);
-            itemEntity.setIsTc(tc);
-            Boolean boo =  syShippingDetailsItemService.updateById(itemEntity);
-           if(boo){
-               i= 1;
-           }else{
-               i= 0;
-           }
+//        for(String str:idsSplit){
+//            SyShippingDetailsItem itemEntity = new SyShippingDetailsItem();
+//            itemEntity.setId(str);
+//            itemEntity.setItemNumber(itemNumber);
+//            itemEntity.setMaterialComposition(materialComposition);
+//            itemEntity.setIsTc(tc);
+//            boo =  syShippingDetailsItemService.updateById(itemEntity);
+//            if(boo){
+//                i = 1;
+//            }
+//
+//        }
+        SyShippingDetailsItem itemEntity = syShippingDetailsItemService.getById(idsSplit[0]);
+        //修改所有相同款号、物料名称的数据
+        QueryWrapper<SyShippingDetailsItem> queryWrapper1 = new QueryWrapper<>();
+        queryWrapper1.eq("item_number",itemEntity.getItemNumber()).eq("inventory_code",itemEntity.getInventoryCode()).eq("del_flag",0);
+        queryWrapper1.orderByDesc("create_time");
+        List<SyShippingDetailsItem> list = syShippingDetailsItemService.list(queryWrapper1);
+        for(SyShippingDetailsItem li: list){
+            li.setMaterialComposition(materialComposition);
+            li.setItemNumber(itemNumber);
+            li.setIsTc(tc);
+            boo =  syShippingDetailsItemService.updateById(li);
+        }
+        if(boo){
+            i = 1;
         }
         return i;
     }

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

@@ -262,6 +262,21 @@ public class SyShippingOrderController extends JeecgController<SyShippingOrder,
 			return result;
 		}
 		SyShippingOrder syShippingOrder = syShippingOrderService.getById(id);
+		//查询数据字典获取text
+		List<DictModel> sysDicts1 = sysDictService.queryDictItemsByCode("port_of_destination");
+		for(DictModel di:sysDicts1){
+			if(di.getValue().equals(syShippingOrder.getDestinationPort())){
+				//设置目的港
+				syShippingOrder.setDestinationPort(di.getText());
+			}
+		}
+		List<DictModel> sysDicts2 = sysDictService.queryDictItemsByCode("country_of_arrival");
+		for(DictModel di:sysDicts2){
+			if(di.getValue().equals(syShippingOrder.getArriveInCountry())){
+				//设置运抵国别
+				syShippingOrder.setArriveInCountry(di.getText());
+			}
+		}
 
 		//查询子表数据
 		List<SyShippingOrderItem> list = syShippingOrderMapper.queryItem(id);
@@ -382,7 +397,7 @@ public class SyShippingOrderController extends JeecgController<SyShippingOrder,
 		  }
 		  //外销发票号
 		  if(oConvertUtils.isNotEmpty(syPackingList.getExportInvoiceNo())){
-			  queryWrapper.eq("b.export_invoice_no",syPackingList.getExportInvoiceNo());
+			  queryWrapper.eq("a.export_invoice_no",syPackingList.getExportInvoiceNo());
 		  }
 		  //集装箱号
 		  if(oConvertUtils.isNotEmpty(syPackingList.getContainerNumber())){
@@ -627,7 +642,7 @@ public class SyShippingOrderController extends JeecgController<SyShippingOrder,
 
 				 List<Map<String, Object>> listMap1 = new ArrayList<Map<String, Object>>();
 
-				 TemplateExportParams params = new TemplateExportParams("D:\\"+testName+".xlsx");
+				 TemplateExportParams params = new TemplateExportParams("D:\\单证模板\\"+testName+".xlsx");
 
 				 QueryWrapper<SyShippingOrderItem> queryWrapper = new QueryWrapper<>();
 				 queryWrapper.eq("sy_shipping_order_item_id",entity.getId()).eq("del_flag",0).groupBy("elements_Id");
@@ -688,7 +703,7 @@ public class SyShippingOrderController extends JeecgController<SyShippingOrder,
 
 				 List<Map<String, Object>> listMap1 = new ArrayList<Map<String, Object>>();
 
-				 TemplateExportParams params = new TemplateExportParams("D:\\"+testName+".xlsx");
+				 TemplateExportParams params = new TemplateExportParams("D:\\单证模板\\"+testName+".xlsx");
 
 				 QueryWrapper<SyShippingOrderItem> queryWrapper = new QueryWrapper<>();
 				 queryWrapper.eq("sy_shipping_order_item_id",entity.getId()).eq("del_flag",0).groupBy("elements_Id");
@@ -860,7 +875,7 @@ public class SyShippingOrderController extends JeecgController<SyShippingOrder,
 					 }
 				 }
 
-				 TemplateExportParams params = new TemplateExportParams("D:\\"+testName+".xlsx");
+				 TemplateExportParams params = new TemplateExportParams("D:\\单证模板\\"+testName+".xlsx");
 
 				 //转map
 				 Field[] fields = entity.getClass().getDeclaredFields();
@@ -922,7 +937,7 @@ public class SyShippingOrderController extends JeecgController<SyShippingOrder,
 					 }
 				 }
 
-				 TemplateExportParams params = new TemplateExportParams("D:\\"+testName+".xlsx");
+				 TemplateExportParams params = new TemplateExportParams("D:\\单证模板\\"+testName+".xlsx");
 
 				 //转map
 				 Field[] fields = entity.getClass().getDeclaredFields();

+ 3 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/syShippingOrder/entity/SyShippingOrderItem.java

@@ -202,6 +202,9 @@ public class SyShippingOrderItem {
 
 	//分组ID
 	private String groupId;
+	@Excel(name = "单位", width = 15)
+	@ApiModelProperty(value = "单位")
+	private String masterMetering;
 
 
 	/**

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

@@ -103,7 +103,7 @@ group by b.hs_code,b.declaration_name
     <select id="queryEelement" resultType="org.jeecg.modules.documents.syShippingOrder.entity.SyShippingOrderItem">
 
 select GROUP_CONCAT(a.id) as id,b.hs_code as hsCode,b.declaration_name as declarationName,b.english_product_name as englishProductName,sum(a.number) as number,a.unit_price as unitPrice,
-sum(a.number*a.unit_price) as totalPrice,sum(a.gross_weight) as grossWeight,sum(a.net_weight) as netWeight,'PCS' as pcs,sum(a.volume) as volume,
+sum(a.number*a.unit_price) as totalPrice,sum(a.gross_weight) as grossWeight,sum(a.net_weight) as netWeight,a.master_metering as pcs,sum(a.volume) as volume,
 'USD' as curr,'CHAIN' as dree,'宁波其他/宁波象山县' as place,'照章征税' as certificate,a.style_number as styleNumber,a.smail_po as smailPo,
 a.order_number as orderNumber,a.client_abbreviation as clientAbbreviation
  from sy_shipping_order_item a

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

@@ -167,11 +167,11 @@ public class SyShippingOrderServiceImpl extends ServiceImpl<SyShippingOrderMappe
                         syShippingOrderItem.setCreateTime(sf.parse(createTime));
                         syShippingOrderItem.setDelFlag("0");
                         syShippingOrderItem.setStyleNumber(itemli.getItemNumber());
-                        syShippingOrderItem.setNumber(itemli.getInventoryQuantity());//数量
+                        syShippingOrderItem.setNumber(itemli.getActualDeclaredQuantity());//数量(取实际报关数量)
 
                         if(oConvertUtils.isEmpty(itemli.getU8Id())){
                             syShippingOrderItem.setReadyFabric("面料");
-                            syShippingOrderItem.setBoxNumber(BigDecimal.ZERO);
+                            syShippingOrderItem.setBoxNumber(itemli.getRolls());
                         }else{
                             syShippingOrderItem.setReadyFabric("辅料");
                             syShippingOrderItem.setBoxNumber(itemli.getRolls());
@@ -201,6 +201,7 @@ public class SyShippingOrderServiceImpl extends ServiceImpl<SyShippingOrderMappe
                         syShippingOrderItem.setSupplierCode(itemli.getSupplierCode());
                         syShippingOrderItem.setRSupplier(itemli.getSupplierDyeingPlant());//染厂供应商
                         syShippingOrderItem.setRSupplierCode(itemli.getSupplierCodeDyeingPlant());//染厂供应商编码
+                        syShippingOrderItem.setMasterMetering(itemli.getMasterMetering());//单位
                         syShippingOrderItem.setGarmentFactory(li.getGarmentFactory());
 
                          itemList.add(syShippingOrderItem);
@@ -210,10 +211,13 @@ public class SyShippingOrderServiceImpl extends ServiceImpl<SyShippingOrderMappe
                     if(oConvertUtils.isEmpty(syPackingListFabric)){
                         throw new JeecgBootException("没有查询到装箱单面料数据!");
                     }
-                    //回写预装箱面料外销发票号、是否被参照、托书号
-                    syPackingListFabric.setExportInvoiceNo(syShippingOrder.getExportInvoiceNo());
+                    //回写预装箱面料外销发票号、是否被参照、托书号,集装箱号,集装箱代号
+                    syPackingListFabric.setExportInvoiceNo(syShippingOrder.getShippingOrderNumber());
                     syPackingListFabric.setIsReference(1);
                     syPackingListFabric.setShippingOrderNumber(syShippingOrder.getShippingOrderNumber());
+                    syPackingListFabric.setContainerCode(li.getContainerCode());
+                    syPackingListFabric.setContainerNumber(li.getContainerNumber());
+
                     syPackingListFabricService.updateById(syPackingListFabric);
 
                 }else{ //成衣
@@ -268,14 +272,16 @@ public class SyShippingOrderServiceImpl extends ServiceImpl<SyShippingOrderMappe
 
                     }
 
-                    //回写预装箱成衣外销发票号、是否被参照、托书号
+                    //回写预装箱成衣外销发票号、是否被参照、托书号,集装箱号,集装箱代号
                     SyPackingListTailoring syPackingListTailoring = syPackingListTailoringService.getById(li.getTailoringFabricId());
                     if(oConvertUtils.isEmpty(syPackingListTailoring)){
                         throw new JeecgBootException("没有查询到装箱单数据!");
                     }
-                    syPackingListTailoring.setExportInvoiceNo(syShippingOrder.getExportInvoiceNo());
+                    syPackingListTailoring.setExportInvoiceNo(syShippingOrder.getShippingOrderNumber());
                     syPackingListTailoring.setIsReference(1);
                     syPackingListTailoring.setShippingOrderNumber(syShippingOrder.getShippingOrderNumber());
+                    syPackingListTailoring.setContainerCode(li.getContainerCode());
+                    syPackingListTailoring.setContainerNumber(li.getContainerNumber());
                     syPackingListTailoringService.updateById(syPackingListTailoring);
 
                 }
@@ -349,6 +355,9 @@ public class SyShippingOrderServiceImpl extends ServiceImpl<SyShippingOrderMappe
                 //回写预装箱-面料是否被参照,托书号
                 syPackingListFabric.setIsReference(0);
                 syPackingListFabric.setShippingOrderNumber(null);
+                syPackingListFabric.setExportInvoiceNo(null);
+                syPackingListFabric.setContainerCode(null);
+                syPackingListFabric.setContainerNumber(null);
                 syPackingListFabricService.updateById(syPackingListFabric);
 
             }else{//成衣
@@ -359,6 +368,9 @@ public class SyShippingOrderServiceImpl extends ServiceImpl<SyShippingOrderMappe
                 }
                 syPackingListTailoring.setIsReference(0);
                 syPackingListTailoring.setShippingOrderNumber(null);
+                syPackingListTailoring.setExportInvoiceNo(null);
+                syPackingListTailoring.setContainerCode(null);
+                syPackingListTailoring.setContainerNumber(null);
                 syPackingListTailoringService.updateById(syPackingListTailoring);
             }
             //删除子表
@@ -427,6 +439,9 @@ public class SyShippingOrderServiceImpl extends ServiceImpl<SyShippingOrderMappe
                 //回写预装箱-面料是否被参照,托书号
                 syPackingListFabric.setIsReference(0);
                 syPackingListFabric.setShippingOrderNumber(null);
+                syPackingListFabric.setExportInvoiceNo(null);
+                syPackingListFabric.setContainerCode(null);
+                syPackingListFabric.setContainerNumber(null);
                 syPackingListFabricService.updateById(syPackingListFabric);
 
             }else{//成衣
@@ -437,6 +452,9 @@ public class SyShippingOrderServiceImpl extends ServiceImpl<SyShippingOrderMappe
                 }
                 syPackingListTailoring.setIsReference(0);
                 syPackingListTailoring.setShippingOrderNumber(null);
+                syPackingListTailoring.setExportInvoiceNo(null);
+                syPackingListTailoring.setContainerCode(null);
+                syPackingListTailoring.setContainerNumber(null);
                 syPackingListTailoringService.updateById(syPackingListTailoring);
             }
         }