浏览代码

成衣推送u8接口修改

huxy 2 年之前
父节点
当前提交
d867b2a674

+ 1 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/spapl/mapper/xml/SyPreAssembledPackingListItemMapper.xml

@@ -19,6 +19,7 @@
 			ac_set_no,
 			garment_factory,
 			hod,
+			plan_Size,
 			style_no,
 			po_no,
 			item_code,

+ 2 - 2
jeecg-boot-module-system/src/main/java/org/jeecg/modules/spapl/service/impl/SyPreAssembledPackingListItemServiceImpl.java

@@ -35,12 +35,12 @@ public class SyPreAssembledPackingListItemServiceImpl extends ServiceImpl<SyPreA
 		for(SyPreAssembledPackingListItem spapl_item : list){
 			List<SizeTable> sizes=syPreAssembledPackingListItemMapper.querySize2(spapl_item.getGroupId(),spapl_item.getSyPreAssembledPackingListId());
 			sizes=sort(sizes);
-			String planSize="";
+			/*String planSize="";
 			for (SizeTable size : sizes){
 				planSize=planSize+size.getSize()+":"+size.getQuantity().intValue()+"+";
 			}
 			planSize=planSize.substring(0,planSize.length()-1);
-			spapl_item.setPlanSize(planSize);
+			spapl_item.setPlanSize(planSize);*/
 			spapl_item.setSizeTables(sizes);
 		}
 		return list;

+ 5 - 3
jeecg-boot-module-system/src/main/java/org/jeecg/modules/spapl/service/impl/SyPreAssembledPackingListServiceImpl.java

@@ -44,6 +44,7 @@ import java.util.Collection;
 /**
  * @Description: 预装箱单主表
  * @Author: jeecg-boot
+ *
  * @Date:   2022-04-20
  * @Version: V1.0
  */
@@ -97,6 +98,8 @@ public class SyPreAssembledPackingListServiceImpl extends ServiceImpl<SyPreAssem
 				//获取发育明细数据
 				SyShippingDetailsItem syItem=syShippingDetailsItemMapper.selectById(item1.getSyDeclarationElementsItemId());
 				item1.setOmpoIdItem(syItem.getOmpoIdItem());//获取委外/采购订单子表Id
+				item1.setOmpoId(syItem.getOmpoId());//获取委外/采购订单主表Id
+				item1.setOmpoAccount(syItem.getOmpoAccount());//采购委外账套号
 				item1.setOrderNumber(syItem.getOrderNumber());//获取订单号
 				item1.setSpurOrSubOrder(syItem.getPurOrSubOrder());//获取采购委外订货号
 				item1.setSyOrderDataItemId(syItem.getSyOrderDataItemId());//获取到订单子表id
@@ -558,7 +561,6 @@ public class SyPreAssembledPackingListServiceImpl extends ServiceImpl<SyPreAssem
 						//获取发育明细数据
 						SyShippingDetailsItem syItem=syShippingDetailsItemMapper.selectById(item1.getSyDeclarationElementsItemId());
 						if(syItem!=null){
-							item1.setOmpoIdItem(syItem.getOmpoIdItem());//获取委外/采购订单子表Id
 							item1.setUnitPrice(syItem.getSalesUnitPrice());//获取销售单价
 							item1.setFactoryUnitPrice(new BigDecimal(syItem.getFactoryUnitPrice()==null?"0":syItem.getFactoryUnitPrice()));//工厂单价
 							item1.setInventoryName(syItem.getInventoryName());//存货名称
@@ -572,9 +574,9 @@ public class SyPreAssembledPackingListServiceImpl extends ServiceImpl<SyPreAssem
 							item1.setSalesman(syItem.getSalesman());//获取业务员
 							item1.setSalesDepartment(syItem.getSalesDepartment());//获取销售部门
 							item1.setInventoryCode(syItem.getInventoryCcode());
-							item1.setOrderNumber(syItem.getOrderNumber());
-							item1.setSpurOrSubOrder(syItem.getPurOrSubOrder());
+							item1.setOrderNumber(syItem.getOrderNumber()); //销售订单号
 							item1.setOmpoId(syItem.getOmpoId());//采购委外订单id
+							item1.setOmpoAccount(syItem.getOmpoAccount());//采购委外账套号
 							item1.setOmpoIdItem(syItem.getOmpoIdItem());//采购委外订单子表id
 							syPreAssembledPackingList.setOrderNumber(syItem.getOrderNumber());
 							syPreAssembledPackingList.setItemNumber(syItem.getItemNumber());

+ 16 - 15
jeecg-boot-module-system/src/main/java/org/jeecg/modules/splfi/service/impl/SyPackingListFabricServiceImpl.java

@@ -139,10 +139,10 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 	@Transactional
 	public SyPackingListFabric updateMain(SyPackingListFabric syPackingListFabric,List<SyPackingListFabricItem> syPackingListFabricItemList) {
 		syPackingListFabricMapper.updateById(syPackingListFabric);
-		
+
 		//1.先删除子表数据
 		syPackingListFabricItemMapper.deleteByMainId(syPackingListFabric.getId());
-		
+
 		//2.子表数据重新插入
 		for(SyPackingListFabricItem entity:syPackingListFabricItemList) {
 			entity.setDelFlag("0");
@@ -683,7 +683,7 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 						"left join SO_SODetails f\n" +
 						"on b.iorderdid=f.iSOsID\n" +
 						"where " +
-					" cInvCCode not like '01%'\n" +
+						"cInvCCode not like '01%'\n" +
 					"and cInvCCode not like '02%'\n" +
 					"and cInvCCode not like '03%'\n" +
 					"and cInvCCode not like '04%'\n" +
@@ -745,18 +745,19 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 			}
 			for (String account : maps2.keySet()) {
 				//先插主表数据,然后根据主表id查询子表数据再添加
-				String sql = "select     \n" +
-						"a.id u8Id,      \n" +
-						"'1' as is_U8_Data,    \n" +
-						"a.cMemo memo,    \n" +
-						"0 as delflag,    \n" +
-						"0 as status,    \n" +
-						"a.cMaker createby,    \n" +
-						"a.cMaker preparedBy,    \n" +
-						"a.cDefine10  exportInvoiceNo,    \n" +
-						"a.dnmaketime  preparedDate    \n" +
-						"from rdrecord32 a    \n" +
-						"where id in (" + maps2.get(account).toString().substring(1, maps2.get(account).toString().length() - 1) + ")";//根据最后一次拉去时间
+				String sql ="select     \n" +
+							"a.id u8Id,       \n" +
+							"'1' as is_U8_Data,    \n" +
+							"a.cMemo memo,    \n" +
+							"0 as delflag,    \n" +
+							"0 as status,     \n" +
+							"a.cMaker createby,    \n" +
+							"a.cMaker preparedBy,  \n" +
+							"a.cDefine10  exportInvoiceNo,  \n" +
+							"a.dnmaketime  preparedDate     \n" +
+							"from rdrecord32 a     \n" +
+							"where id in (" + maps2.get(account).toString().
+							substring(1, maps2.get(account).toString().length() - 1) + ")";//获取所有id
 				List<Map<String, Object>> listMain = new ArrayList<>();
 				if (account.equals("903")) {
 					listMain = senYuDataSourceThree.queryForList(sql);//903

+ 73 - 25
jeecg-boot-module-system/src/main/java/org/jeecg/modules/splt/controller/SyPackingListTailoringController.java

@@ -1038,6 +1038,48 @@ public class SyPackingListTailoringController {
   		 return jsonArray;
 	 }
 
+	 @AutoLog(value = "装箱单成衣实体类数据")
+	 @ApiOperation(value="装箱单成衣实体类数据", notes="装箱单成衣实体类数据")
+	 @GetMapping(value = "/pushSplt2")
+	 public List<SyPackingListTailoring> pushSplt2(String id) {
+		 List list=new ArrayList();
+		 SyPackingListTailoring syPackingListTailoring= syPackingListTailoringService.getById(id);
+		 syPackingListTailoring.setContainerCode(null);//集装箱代号
+		 syPackingListTailoring.setContainerNumber(null);//集装箱号
+		 //syPackingListTailoring.setExportInvoiceNo(syPreAssembledPackingList);//外销发票号
+		 syPackingListTailoring.setDepositaryReceiptNo(null);//预托书号
+		 syPackingListTailoring.setBusinessTypeValue(null);//业务类型
+		 syPackingListTailoring.setSalesman(null);//业务员
+		 syPackingListTailoring.setSalesDepartment(null);//业务部门
+		 syPackingListTailoring.setCustomer(null);//客户
+		 syPackingListTailoring.setCreateTime(null);
+		 syPackingListTailoring.setCustomerAbbreviation(null);//客户简称
+		 QueryWrapper queryWrapper=new QueryWrapper();
+		 queryWrapper.eq("sy_packing_list_tailoring_id",id);
+		 List<SyPackingListTailoringItem> item=syPackingListTailoringItemService.list(queryWrapper);
+		 syPackingListTailoring.setId(null);
+		 for (SyPackingListTailoringItem s1 : item){
+			 s1.setId(null);
+			 s1.setCreateTime(null);
+			 s1.setTotalPrice(null);//计算总价
+			 s1.setSalesman(null);//业务员
+			 s1.setSalesDepartment(null);//业务部门
+			 s1.setSpurOrSubOrder(null);//采购委外订单号
+			 s1.setMasterMetering(null);//计量单位
+			 s1.setFactoryUnitPrice(null);//工厂单价
+			 s1.setInventoryCcode(null);//物料分类
+			 s1.setWithCode(null);//配码规则
+			 s1.setOmpoAccount(null);//采购委外账套号
+			 s1.setYmoney(null);//佣金
+			 s1.setElementsId(null);//申报要素id
+			/*s1.getOmpoId(null)//采购委外主表id
+			s1.setOmpoIdItem(null);//采购委外子表id*/
+		 }
+		 syPackingListTailoring.setSyPackingListTailoringItemList(item);
+		 list.add(syPackingListTailoring);
+		 return list;
+	 }
+
 	 @PostMapping(value = "/saveBath")
 	 @AutoLog(value = "测试接收功能")
 	 @ApiOperation(value="测试接收功能", notes="测试接收功能")
@@ -1135,44 +1177,50 @@ public class SyPackingListTailoringController {
 			 result.setSuccess(false);
 			 result.setMessage("请至少选中一条数据");
 			return result;
-		 }
-		 JSONArray items=new JSONArray();
-		 List<SyPackingListTailoring> mains1=new ArrayList<>();
-		 List<SyPackingListTailoring> mains2=new ArrayList<>();
-		 List<SyPackingListTailoring> mains3=new ArrayList<>();
+		 }/*
+		 JSONArray items=new JSONArray();*/
+		 List<SyPackingListTailoring> mains=new ArrayList<>();
+		 Map<String,String> map=new HashMap<>();
 		 for (int i=0;i<ids.length;i++){
 			 SyPackingListTailoring main=syPackingListTailoringService.getById(ids[i]);
-			 /*String orderDataId=syPackingListTailoringService.getOrderDataId(main.getSyPreAssembledPackingListId());
-			 System.out.println("orderDataId\t"+orderDataId);
-			 if(orderDataId!=null){
-				 System.out.println("orderDataId\t"+orderDataId.substring(3));
-			 	main.setSyOrderDataId(orderDataId.substring(3));
-			 }*/
 			 QueryWrapper queryWrapper=new QueryWrapper();
 			 queryWrapper.eq("sy_packing_list_tailoring_id",main.getId());
 			 queryWrapper.eq("del_flag","0");
 			 List<SyPackingListTailoringItem> syPackingListTailoringItems=syPackingListTailoringItemService.list(queryWrapper);
 			 if(syPackingListTailoringItems!=null){
-			 	main.setSyPackingListTailoringItemList(syPackingListTailoringItems);
+			 	 main.setSyPackingListTailoringItemList(syPackingListTailoringItems);
+			 	 mains.add(main);
+			 	 map.put("account",main.getSyPackingListTailoringItemList().get(0).getOmpoAccount());//委外采购账套号
+			 	 map.put("ompoId",main.getOmpoId());//采购委外主表id
+			 	 map.put("mpOrder",main.getPurchase());//采购委外订单号
+				 map.put("customerCode","one");//客户编码
+				 map.put("CVENCODE","one");//供应商编码
+			 	 map.put("orderNumber","one");//销售订单号
+			 	// map.put("soId","one");//销售订单号
 			 }
-			 if(main!=null&&main.getSyPackingListTailoringItemList()!=null&&main.getSyPackingListTailoringItemList().size()!=0){
-				 if(main.getSyPackingListTailoringItemList().get(0).getAcSetNo().equals("901")){
-					 mains1.add(main);
-				 }else if(main.getSyPackingListTailoringItemList().get(0).getAcSetNo().equals("902")){
-					 mains2.add(main);
-				 }else if(main.getSyPackingListTailoringItemList().get(0).getAcSetNo().equals("903")){
-					 mains3.add(main);
-				 }
+		 }
+		 for (int i=0;i<1;i++){//最多循环3次
+			 if (map.get("account").equals("903")){
+				 map=syPackingListTailoringService.three(mains,map);
+			 }else if(map.get("account").equals("902")){
+				 map=syPackingListTailoringService.two(mains,map);
+			 }else if(map.get("account").equals("901")){
+				 map=syPackingListTailoringService.one(mains,map);
 			 }
 		 }
-		 items.addAll(syPackingListTailoringService.one(mains1));
+		 //返回的map需要判断,是去102还是101或者完成
+		 //需要返回客户编码,销售订单号,账套号
+		 //--委外采购订单主表(主表id+订单号)-->委外采购订单子表(主表id)-->销售订单子表(销售订单子表ID)-->销售订单主表(主表id)
+		 //-->获取客户信息,如果是上游账套就再来一次-->怎么获取上一个账套的委外采购订单号
+
+		/* items.addAll(syPackingListTailoringService.one(mains1));
 		 items.addAll(syPackingListTailoringService.two(mains2));
-		 items.addAll(syPackingListTailoringService.three(mains3));
-		 result.setResult(items);
+		 items.addAll(syPackingListTailoringService.three(mains3));*/
+		// result.setResult(items);
 		 result.setSuccess(true);
 		 result.setMessage("未开发完,测试用");
-		 System.out.println("mapList\n"+items);
-		 System.out.println("mapList的长度\t"+items.size());
+		/* System.out.println("mapList\n"+items);
+		 System.out.println("mapList的长度\t"+items.size());*/
 		// System.out.println("生成流水号"+ org.jeecg.modules.system.util.oConvertUtils.maxNumber(String.valueOf("00108")));
 		 long endTime = System.currentTimeMillis();
 		 System.out.println("查询子表后程序运行时间:" + (endTime - startTime) + "ms");

+ 2 - 2
jeecg-boot-module-system/src/main/java/org/jeecg/modules/splt/mapper/SyPackingListTailoringMapper.java

@@ -33,10 +33,10 @@ public interface SyPackingListTailoringMapper extends BaseMapper<SyPackingListTa
     public String getWhCodeByVenCode(String venCode);
 
     //获取供应商,区分来源
-    public Map<String,Object> getOmOrPo(@Param("tableName")String tableName,@Param("ompoId")String ompoId,@Param("orderName")String orderName);
+    public Map<String,Object> getOmOrPo(@Param("tableName")String tableName,@Param("orderName")String orderName,@Param("id")String id);
 
     //获取供应商,区分来源
-    public Map<String,Object> getOmOrPoItem(@Param("tableName")String tableName ,@Param("orderName")String orderName);
+    public Map<String,Object> getOmOrPoItem(@Param("tableName")String tableName ,@Param("orderName")String orderName,@Param("id")String id);
 
     //获取供应商,区分来源
     public Map<String,Object> getSoMain(String id);

+ 5 - 5
jeecg-boot-module-system/src/main/java/org/jeecg/modules/splt/mapper/xml/syPackingListTailoringMapper.xml

@@ -150,20 +150,20 @@
     </select>
 
     <select id="getOmOrPo" parameterType="java.lang.String" resultType="java.util.HashMap">
-        select cvencode,nflat,cPayCode  from ${tableName}
-        where ${ompoId} and ${orderName}
+        select cvencode,nflat,cPayCode,${id} as id  from ${tableName}
+        where  ${orderName}
     </select>
 
     <select id="getOmOrPoItem" parameterType="java.lang.String" resultType="java.util.HashMap">
-        select  iMoney,iNatMoney  from ${tableName} where  ${orderName}
+        select  iMoney,iNatMoney,iSOsID,${id} as id   from ${tableName} where  ${orderName}
     </select>
 
     <select id="getSoMain" parameterType="java.lang.String" resultType="java.util.HashMap">
-        select cPersonCode,cDepCode,cBusType,cPayCode,cexch_name,iExchRate   from SO_SOMain WHERE id=#{id}
+        select cPersonCode,cDepCode,cBusType,cPayCode,cexch_name,iExchRate,cCusCode,cSOCode    from SO_SOMain WHERE id=#{id}
     </select>
 
     <select id="getSoMainItem" parameterType="java.lang.String" resultType="java.util.HashMap">
-        select iTaxUnitPrice,iTaxRate  from SO_SODetails where AutoID=#{id}
+        select iTaxUnitPrice,iTaxRate,irowno,AutoID,id,iSOsID    from SO_SODetails where iSOsID=#{id}
     </select>
 
     <select id="getOrderDataId" parameterType="java.lang.String" resultType="java.lang.String">

+ 3 - 3
jeecg-boot-module-system/src/main/java/org/jeecg/modules/splt/service/ISyPackingListTailoringService.java

@@ -86,11 +86,11 @@ public interface ISyPackingListTailoringService extends IService<SyPackingListTa
 
     String test(List<SyPackingListTailoring> mains);
 
-	JSONArray one(List<SyPackingListTailoring> mains);
+	Map<String,String> one(List<SyPackingListTailoring> mains,Map<String,String> map);
 
-	JSONArray two(List<SyPackingListTailoring> mains);
+	Map<String,String> two(List<SyPackingListTailoring> mains,Map<String,String> map);
 
-	JSONArray three(List<SyPackingListTailoring> mains);
+	Map<String,String> three(List<SyPackingListTailoring> mains,Map<String,String> map);
 
     String getOrderDataId(String id);
 }

+ 199 - 116
jeecg-boot-module-system/src/main/java/org/jeecg/modules/splt/service/impl/SyPackingListTailoringServiceImpl.java

@@ -38,6 +38,9 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.interceptor.TransactionAspectSupport;
 
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.FileWriter;
 import java.io.Serializable;
 import java.math.BigDecimal;
 import java.text.ParseException;
@@ -107,6 +110,7 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
 				item1.setSpurOrSubOrder(syPreItem.getSpurOrSubOrder());//获取采购委外订单号
 				item1.setOmpoId(syPreItem.getOmpoId());//获取采购委外主表id
 				item1.setOmpoIdItem(syPreItem.getOmpoIdItem());//获取采购委外子表id
+				item1.setOmpoAccount(syPreItem.getOmpoAccount());//委外采购账套号
 				syPreAssembledPackingListItemMapper.updateById(syPreItem);//修改剩余数量
 				syPackingListTailoringItemMapper.insert(item1);//添加子表数据
 			}
@@ -201,7 +205,7 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
 	 * @return
 	 */
 	@Transactional
-	public synchronized SyPackingListTailoring saveMain(SyPackingListTailoring syPackingListTailoring)  {
+	public synchronized SyPackingListTailoring saveMain(SyPackingListTailoring  syPackingListTailoring)  {
 		List<SyPackingListTailoringItem> items=syPackingListTailoring.getSyPackingListTailoringItemList();
 		syPackingListTailoring.setDelFlag("0");//删除状态默认为0
 		syPackingListTailoring.setPushState("0");//推送状态默认为0
@@ -224,7 +228,7 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
 		syPackingListTailoring.setCustomer(syPreAssembledPackingList.getCustomer());//客户
 		syPackingListTailoring.setCustomerAbbreviation(syPreAssembledPackingList.getCustomerAbbreviation());//客户简称
 		syPackingListTailoringMapper.insert(syPackingListTailoring);//往主表添加数据
-		Map<String,String> mapId=new HashMap<String, String>();//key为发运明细子表id,value为分组id
+		Map<String,String> mapId=new HashMap<>();//key为发运明细子表id,value为分组id
 		/*syPackingListTailoring.setTotal(new BigDecimal("0"));
 		syPackingListTailoring.setTotalBoxes(new BigDecimal("0"));
 		syPackingListTailoring.setTotalVolume(new BigDecimal("0"));
@@ -283,12 +287,13 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
 	@Override
 	@Transactional
 	public List<SyPackingListTailoring> saveList(List<SyPackingListTailoring> syPackingListTailoring) {
+		List<SyPackingListTailoring> syPackingListTailorings=new ArrayList<>();
 		for (SyPackingListTailoring splt : syPackingListTailoring){
-			splt.setWhetherCloudFactoryPush("1");//1代表是云工厂推送的
+			splt.setWhetherCloudFactoryPush("2");//2代表是云工厂推送的
 			splt.setId(null);//id设置为null
-			saveMain(splt);//无sizeTable的新增方法
+			syPackingListTailorings.add(saveMain(splt));//无sizeTable
 		}
-		return syPackingListTailoring;
+		return syPackingListTailorings;
 	}
 
 	@Override
@@ -597,6 +602,7 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
 							item1.setSpurOrSubOrder(syPreItem.getSpurOrSubOrder());//获取采购委外订货号
 							item1.setOmpoId(syPreItem.getOmpoId());//主表id
 							item1.setOmpoIdItem(syPreItem.getOmpoIdItem());//子表id
+							item1.setOmpoAccount(syPreItem.getOmpoAccount());//子表id
 							syPreAssembledPackingListItemMapper.updateById(syPreItem);//修改剩余数量
 						}
 						syPackingListTailoring.setTotalPrice(syPackingListTailoring.getTotalPrice().add(item1.getTotalPrice()));//获取总价
@@ -664,55 +670,53 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
 	private PurchaseWarehousingMapper purchaseWarehousingMapper;//采购入库表
 
 	@DS("multi-one")
-	public JSONArray one(List<SyPackingListTailoring> mains){
-		return saveBatch(mains );
+	public Map<String,String> one(List<SyPackingListTailoring> mains,Map<String,String> map){
+		return saveBatch(mains,map);
 	}
 
 	@DS("multi-two")
-	public JSONArray two(List<SyPackingListTailoring> mains){
-		return saveBatch(mains );
+	public Map<String,String> two(List<SyPackingListTailoring> mains,Map<String,String> map){
+		return saveBatch(mains,map);
 	}
 
 	@DS("multi-three")
-	public JSONArray three(List<SyPackingListTailoring> mains){
-		return saveBatch(mains );
+	public Map<String,String> three(List<SyPackingListTailoring> mains,Map<String,String> map){
+		return saveBatch(mains,map);
 	}
 
 	public String getOrderDataId(String id){
 		return syPackingListTailoringMapper.getOrderDataId(id);
 	}
 
-	JSONArray saveBatch(List<SyPackingListTailoring> mains ){
+	Map<String,String> saveBatch(List<SyPackingListTailoring> mains,Map<String,String> mapt){
 		if(mains==null||mains.size()==0){
-			return new JSONArray();//为空就传回空对象
+			return new HashMap();//为空就传回空对象
 		}
 		JSONArray mapList=new JSONArray();
-		JSONArray mapList2=new JSONArray();
+		//JSONArray mapList2=new JSONArray();
 		JSONArray mapList3=new JSONArray();
 		JSONArray mapList4=new JSONArray();
 		JSONArray mapList5=new JSONArray();
 		JSONArray mapList6=new JSONArray();
 
 
+
 		JSONArray mapLists=new JSONArray();
 		//账套号
 		for (SyPackingListTailoring main : mains){
 			String createBy="进出口平台管理员";
-			String ompoId="";//采购委外id
-			String orderName="";//采购委外订单名
 			JSONObject map=new JSONObject();//采购(委外)入库单
 			map.put("CVOUCHCODE",purchaseWarehousingMapper.getMaxCode("id+1","RdRecord01","dnmaketime"));//获取单据号
 			map.put("DDATE",main.getCreateTime());//日期(格式2015-01-01)
 			map.put("CMAKER",createBy);//制单人
 			map.put("cVouchType",1);//传1
-			map.put("cOrderCode",main.getOrderNumber());//销售订单号
 
-			JSONObject map2=new JSONObject();//材料出库单
+		/*	JSONObject map2=new JSONObject();//材料出库单
 			map2.put("CVOUCHCODE",purchaseWarehousingMapper.getMaxCode("ID+1","rdrecord11","dnmaketime"));//单号
 			map2.put("DDATE",main.getCreateTime());//日期(格式2015-01-01)
 			map2.put("CHANDLER",createBy);//审核人
 			map2.put("CMAKER",createBy);//制单人
-			map2.put("cOrderCode",main.getOrderNumber());//销售订单号
+			map2.put("cOrderCode",main.getOrderNumber());//销售订单号*/
 
 			JSONObject map3=new JSONObject();//销售发货单
 			map3.put("CVOUCHCODE",purchaseWarehousingMapper.getMaxCode("DLID+1","DispatchList","dcreatesystime"));//发货单号
@@ -738,115 +742,135 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
 			map6.put("CMAKER",createBy);//制单人名称
 
 			JSONArray mapItems=new JSONArray();
-			JSONArray mapItems2=new JSONArray();
+			//JSONArray mapItems2=new JSONArray();
 			JSONArray mapItems3=new JSONArray();
 			JSONArray mapItems4=new JSONArray();
 			JSONArray mapItems5=new JSONArray();
 			JSONArray mapItems6=new JSONArray();
 
-			if(main.getSyOrderDataId()!=null){
-				Map<String,Object> order=syPackingListTailoringMapper.getSoMain(main.getSyOrderDataId().substring(3));
-				if(order!=null){
-					//cPersonCode,cDepCode,cBusType,cPayCode,cexch_name,nflat
-					map2.put("CDEPCODE",order.get("cDepCode"));//部门编码(如果传空,取来源单据)
-					map2.put("CEXCH_NAME",order.get("cexch_name"));//币种名称(如果传空,接口默认人民币)
-					map2.put("CPERSONCODE",order.get("cPersonCode"));//业务员编码(如果传空,取来源单据)
-					map3.put("CBUSTYPE",order.get("cBusType"));//业务类型(普通销售、分期付款)(如果传空,取来源单据)
-					map4.put("CEXCH_NAME",order.get("cexch_name"));//币种名称(如果传空,传来源单据;无来源单据,默认人民币)
-					map6.put("CBUSTYPE",order.get("cBusType"));//业务类型
+			Map<String,Object> orderData=null;
+
+			if(mapt.get("account").equals("903")){//查询委外订单主表数据	顺序---1
+				orderData=syPackingListTailoringMapper.getOmOrPo("om_momain","cCode='"+map.get("mpOrder")+"'","moid");
+				map.put("CRDCODE","委外入库");//入库类别(采购入库/委外入库)
+				//map2.put("CRDCODE","委外出库");//出库类别
+			}else {//查询委外订单表数据
+				if(mapt.get("orderNumber").equals("one")){
+					orderData=syPackingListTailoringMapper.getOmOrPo("PO_POMAIN","cPOID='"+map.get("mpOrder")+"'","POID");
+				}else{
+					orderData=syPackingListTailoringMapper.getOmOrPo("PO_POMAIN","cPOID='"+mapt.get("orderNumber")+"'","POID");//根据采购订单号判断
 				}
+				map.put("CRDCODE","采购入库");//入库类别(采购入库/委外入库)
+				//map2.put("CRDCODE","采购出库");//出库类别
+			}
+			if(orderData!=null){
+				map5.put("IEXCHRATE",orderData.get("nflat"));//汇率(如果传空,接口默认1)cPayCode
+				map5.put("CPAYCODE",orderData.get("cPayCode"));//付款条件编码(如果传空,取来源单据)
 			}
 			for (SyPackingListTailoringItem item : main.getSyPackingListTailoringItemList()){
 				JSONObject mapItem=new JSONObject();
-				JSONObject mapItem2=new JSONObject();
+				//JSONObject mapItem2=new JSONObject();
 				JSONObject mapItem3=new JSONObject();
 				JSONObject mapItem4=new JSONObject();
 				JSONObject mapItem5=new JSONObject();
 				JSONObject mapItem6=new JSONObject();
 
-				if(item.getSupplierCode()!=null){
-					map.put("CVENCODE",item.getSupplierCode());//供应商编码(如果传空,取来源单据)
+
+				map.put("CACCID",mapt.get("account"));//账套号
+				//map2.put("CACCID",mapt.get("account"));//账套号
+				map3.put("CACCID",mapt.get("account"));//账套号
+				map4.put("CACCID",mapt.get("account"));//账套号
+				map5.put("CACCID",mapt.get("account"));//账套号
+				map6.put("CACCID",mapt.get("account"));//账套号
+
+
+
+				Map<String,Object> orderDataItem=null;
+				if(!mapt.get("account").equals("903")){ //采购订单子表数据  顺序---2
+					if(mapt.get("orderNumber").equals("one")){
+						orderDataItem=syPackingListTailoringMapper.getOmOrPoItem("PO_PoDetails", "ID='"+item.getOmpoIdItem()+"'","ID");
+					}else{
+						orderDataItem=syPackingListTailoringMapper.getOmOrPoItem("PO_PoDetails", "poid='"+orderData.get("id")+"' and irowno=xxx" +
+								"xxxxxxxxxxxxxxxx" +
+								"xxxxxxxx" +
+								"xxxxxxxxxx" +
+								"xxxxxxxx" +
+								"xxxxxxx","ID");
+					}
+					mapItem.put("POAUTOIDCOL","ID");//订单明细ID对应字段名(关联单据类型为采购订单传ID,为采购到货单为Autoid,为委外订单传MODetailsID,为委外到货单为Autoid)
+					mapItem.put("AUTOID_PO",orderDataItem.get("id"));//明细ID(采购订单行ID/委外订单行ID)
+					mapItem5.put("POAUTOIDCOL","ID");//明细ID对应字段名(关联单据类型为采购订单传ID,委外订单传MODetailsID,入库单为Autoid)
+					mapItem5.put("AUTOID_PO",orderDataItem.get("id"));//明细ID(采购订单行ID/委外订单行ID)
+				}{//委外订单子表数据  顺序---2
+					//第二次怎么获取采购订单的子表id	查询销售订单子表保存行号去绑定上游的账套
+					orderDataItem=syPackingListTailoringMapper.getOmOrPoItem("OM_MODetails", "MODetailsID='"+item.getOmpoIdItem()+"'","MODetailsID");
+					Map<String,Object> orderDataItem2=purchaseWarehousingMapper.getOMMoDetails(item.getOmpoIdItem());
+					System.out.println("orderDataItme2\t"+orderDataItem2);
+					getcFree(mapItem,orderDataItem2);
+					System.out.println("mapItem\t"+mapItem);
+					mapItem.put("POAUTOIDCOL","MODetailsID");//订单明细ID对应字段名(关联单据类型为采购订单传ID,为采购到货单为Autoid,为委外订单传MODetailsID,为委外到货单为Autoid)
+					mapItem.put("AUTOID_PO",orderDataItem.get("id"));//明细ID(采购订单行ID/委外订单行ID)
+				/*	mapItem2.put("AUTOID_ALL",orderDataItem.get("id"));//关联明细ID
+					mapItem2.put("ALLCAUTOIDCOL","AllocateId");//订单明细ID对应字段名(固定AllocateId)*/
+					mapItem5.put("POAUTOIDCOL","MODetailsID");//明细ID对应字段名(关联单据类型为采购订单传ID,委外订单传MODetailsID,入库单为Autoid)
+					mapItem5.put("AUTOID_PO",orderDataItem.get("id"));//明细ID(采购订单行ID/委外订单行ID)
+				}
+				mapItem5.put("IORIMONEY",orderDataItem.get("iMoney"));//原币金额
+				mapItem5.put("IMONEY",orderDataItem.get("iNatMoney"));//本币金额
+
+
+				if(item.getSupplierCode()!=null){//查询供应商表获取编码 	顺序---3
+					map.put("CVENCODE",orderData.get("cVenCode"));//供应商编码(如果传空,取来源单据)
 					String wheCode=syPackingListTailoringMapper.getWhCodeByVenCode(item.getSupplierCode());
 					if(wheCode!=null){
 						map.put("CWHCODE",wheCode);//仓库编码
-						map2.put("CWHCODE",wheCode);//仓库编码
+					//	map2.put("CWHCODE",wheCode);//仓库编码
 						map4.put("CWHCODE",main.getCreateBy());//仓库编码
 						mapItem3.put("CWHCODE",wheCode);//仓库编码	这个是子表需要字段
 						mapItem6.put("CWHCODE",wheCode);//仓库编码
 					}
 				}
-				map.put("CACCID",item.getAcSetNo());//账套号
-				map2.put("CACCID",item.getAcSetNo());//账套号
-				map3.put("CACCID",item.getAcSetNo());//账套号
-				map4.put("CACCID",item.getAcSetNo());//账套号
-				map5.put("CACCID",item.getAcSetNo());//账套号
-				map6.put("CACCID",item.getAcSetNo());//账套号
-
-				if(map.get("cOrderCode")==null){
-					map.put("cOrderCode",item.getOrderNumber());//销售订单号
-					map2.put("cOrderCode",item.getOrderNumber());//销售订单号
-				}
-				ompoId=item.getOmpoId();
-				orderName=item.getSpurOrSubOrder();
-				if(ompoId!=null&&ompoId.length()!=0&&orderName!=null&&orderName.length()!=0&&!map.containsKey("CRDCODE")){
-					Map<String,Object> orderData=null;
-					orderData=syPackingListTailoringMapper.getOmOrPo("PO_POMAIN","POID='"+ompoId+"'","cPOID='"+orderName+"'");
-					map.put("CRDCODE","采购入库");//入库类别(采购入库/委外入库)
-					map2.put("CRDCODE","采购出库");//出库类别
-					if(orderData==null){
-						orderData=syPackingListTailoringMapper.getOmOrPo("om_momain","MOID='"+ompoId+"'","cCode='"+orderName+"'");
-						map.put("CRDCODE","委外入库");//入库类别(采购入库/委外入库)
-						map2.put("CRDCODE","委外出库");//出库类别
-					}
-					if(orderData!=null){
-						map5.put("IEXCHRATE",orderData.get("nflat"));//汇率(如果传空,接口默认1)cPayCode
-						map5.put("CPAYCODE",orderData.get("cPayCode"));//付款条件编码(如果传空,取来源单据)
-					}
-				}
-				if(map.containsKey("CRDCODE")&&map.get("CRDCODE").equals("采购入库")){
-					mapItem.put("POAUTOIDCOL","ID");//订单明细ID对应字段名(关联单据类型为采购订单传ID,为采购到货单为Autoid,为委外订单传MODetailsID,为委外到货单为Autoid)
-				}else if(map.containsKey("CRDCODE")&&map.get("CRDCODE").equals("委外入库")){
-					mapItem.put("POAUTOIDCOL","MODetailsID");//订单明细ID对应字段名(关联单据类型为采购订单传ID,为采购到货单为Autoid,为委外订单传MODetailsID,为委外到货单为Autoid)
-					mapItem2.put("AUTOID_ALL",item.getOmpoIdItem());//关联明细ID
-					mapItem2.put("ALLCAUTOIDCOL","AllocateId");//订单明细ID对应字段名(固定AllocateId)
-				}
 
-				Map<String,Object> orderDataItem=null;
-				if(map.containsKey("CRDCODE")&&map.get("CRDCODE").equals("采购入库")){
-					orderDataItem=syPackingListTailoringMapper.getOmOrPoItem("PO_PoDetails", "ID='"+item.getOmpoIdItem()+"'");
-					mapItem5.put("POAUTOIDCOL","ID");//明细ID对应字段名(关联单据类型为采购订单传ID,委外订单传MODetailsID,入库单为Autoid)
-					mapItem5.put("AUTOID_PO",item.getOmpoIdItem());//明细ID(采购订单行ID/委外订单行ID)
-				}else{
-					orderDataItem=syPackingListTailoringMapper.getOmOrPoItem("OM_MODetails", "MODetailsID='"+item.getOmpoIdItem()+"'");
-					mapItem5.put("POAUTOIDCOL","MODetailsID");//明细ID对应字段名(关联单据类型为采购订单传ID,委外订单传MODetailsID,入库单为Autoid)
-					mapItem5.put("AUTOID_PO",item.getOmpoIdItem());//明细ID(采购订单行ID/委外订单行ID)
-				}
-				mapItem5.put("IORIMONEY",orderDataItem.get("iMoney"));//原币金额
-				mapItem5.put("IMONEY",orderDataItem.get("iNatMoney"));//本币金额
 
-				if(item.getSyOrderDataItemId()!=null){
-					Map<String,Object> orderDataItem2=syPackingListTailoringMapper.getSoMainItem(item.getSyOrderDataItemId().substring(3));
+				if(item.getSyOrderDataItemId()!=null){//销售发货单 ---查询销售订单子表数据  顺序---5
+					Map<String,Object> orderDataItem2=syPackingListTailoringMapper.getSoMainItem(orderDataItem.get("iSOsID").toString());
 					mapItem3.put("ITAXUNITPRICE",orderDataItem2.get("iTaxUnitPrice"));//原币含税单价(如果传空,取来源单据)(以含税单价为准自动计算相关价格及金额)
 					mapItem3.put("ITAXRATE",orderDataItem2.get("iTaxRate"));//税率(如果传空,取来源单据,无来源单据,取存货档案对应的销项税率)
+					mapItem3.put("SOAUTOIDCOL","ISOSID");//来源单据明细ID对应字段名(如果取销售订单主键,需传固定值ISOSID)
+					mapItem3.put("AUTOID_SO",orderDataItem2.get("iSOsID"));//来源单据明细ID
+					mapt.put("orderNumber", orderDataItem2.get("id").toString());
+				}
+
+				if(!mapt.get("orderNumber").equals("one")){//销售订单
+					Map<String,Object> order=syPackingListTailoringMapper.getSoMain(mapt.get("orderNumber"));
+					if(order!=null){//销售订单主表
+						//cPersonCode,cDepCode,cBusType,cPayCode,cexch_name,nflat
+						/*map2.put("CDEPCODE",order.get("cDepCode"));//部门编码(如果传空,取来源单据)
+						map2.put("CEXCH_NAME",order.get("cexch_name"));//币种名称(如果传空,接口默认人民币)
+						map2.put("CPERSONCODE",order.get("cPersonCode"));//业务员编码(如果传空,取来源单据)*/
+						map.put("cOrderCode",order.get("cSOCode"));//销售订单号
+						map3.put("CBUSTYPE",order.get("cBusType"));//业务类型(普通销售、分期付款)(如果传空,取来源单据)
+						map4.put("CEXCH_NAME",order.get("cexch_name"));//币种名称(如果传空,传来源单据;无来源单据,默认人民币)
+						map6.put("CBUSTYPE",order.get("cBusType"));//业务类型
+					}
 				}
 
+
+
 				mapItem.put("CINVCODE",item.getInventoryCode());//存货编码
 				mapItem.put("IQUANTITY",item.getTotal());//数量
-				mapItem.put("AUTOID_PO",item.getOmpoIdItem());//明细ID(采购订单行ID/委外订单行ID)
-				mapItem.put("cBatch","x");//批号
+				//mapItem.put("cBatch","x");//批号
 
-				mapItem2.put("CINVCODE",item.getInventoryCode());//存货编码(如果来源单据是委外订单,此字段需要传该订单的子件编码)
-				mapItem2.put("IQUANTITY",item.getTotal());//数量
+				/*mapItem2.put("CINVCODE",item.getInventoryCode());//存货编码(如果来源单据是委外订单,此字段需要传该订单的子件编码)
+				mapItem2.put("IQUANTITY",item.getTotal());//数量*/
 
 				mapItem3.put("CINVCODE",item.getInventoryCode());//存货编码
 				mapItem3.put("IQUANTITY",item.getTotal());//数量
-				mapItem3.put("SOAUTOIDCOL","ISOSID");//来源单据明细ID对应字段名(如果取销售订单主键,需传固定值ISOSID)
-				mapItem3.put("AUTOID_SO",item.getSyOrderDataItemId());//来源单据明细ID
 
 				mapItem4.put("CINVCODE",item.getInventoryCode());//存货编码
 				mapItem4.put("IQUANTITY",item.getTotal());//数量
-				mapItem4.put("SOAUTOIDCOL","x");//订单明细ID对应字段名(关联单据类型为发货单IDLSID)
-				mapItem4.put("AUTOID_PO","x");//关联明细ID
+				mapItem4.put("SOAUTOIDCOL","IDLSID");//订单明细ID对应字段名(关联单据类型为发货单IDLSID)
+				mapItem4.put("AUTOID_PO","10300001");//关联明细ID 测试用先写
 
 				mapItem5.put("CINVCODE",item.getInventoryCode());//存货编码
 				mapItem5.put("IQUANTITY",item.getTotal());//数量
@@ -855,7 +879,7 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
 				mapItem6.put("IQUNTITY",item.getTotal());//数量
 
 				mapItems.add(mapItem);
-				mapItems2.add(mapItem2);
+				//mapItems2.add(mapItem2);
 				mapItems3.add(mapItem3);
 				mapItems4.add(mapItem4);
 				mapItems5.add(mapItem5);
@@ -864,8 +888,8 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
 
 			map.put("DETAILList",mapItems);//明细集合
 			mapList.add(map);
-			map2.put("DETAILList",mapItems2);//明细集合
-			mapList2.add(map2);
+		/*	map2.put("DETAILList",mapItems2);//明细集合
+			mapList2.add(map2);*/
 			map3.put("DETAILList",mapItems3);//明细集合
 			mapList3.add(map3);
 			map4.put("DETAILList",mapItems4);//明细集合
@@ -876,34 +900,93 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
 			mapList6.add(map6);
 		}
 
-		mapLists.addAll(mapList);/*
-		mapLists.addAll(mapList2);
+		mapLists.addAll(mapList);
+		String txtWorld=mapt.get("account")+"\t"+new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SSS").format(System.currentTimeMillis())+"\n\n";
+		txtWorld+=mapList.toString()+"\n\n";
+		txtWorld+=mapList3.toString()+"\n\n";
+		txtWorld+=mapList4.toString()+"\n\n";
+		txtWorld+=mapList5.toString()+"\n\n";
+		txtWorld+=mapList6.toString()+"\n\n";
+		//mapLists.addAll(mapList2);
 		mapLists.addAll(mapList3);
 		mapLists.addAll(mapList4);
 		mapLists.addAll(mapList5);
-		mapLists.addAll(mapList6);*/
+		mapLists.addAll(mapList6);
 
-		System.out.println("mapList1\n"+mapList);/*
-		System.out.println("mapList2\n"+mapList2);
+		System.out.println("mapList1\n"+mapList);
+	//	System.out.println("mapList2\n"+mapList2);
 		System.out.println("mapList3\n"+mapList3);
 		System.out.println("mapList4\n"+mapList4);
 		System.out.println("mapList5\n"+mapList5);
-		System.out.println("mapList6\n"+mapList6);*/
-
-	//	JSONArray resturn1 = InterfaceConnUtils.doPost(mapList,"purchasein_import");//采购入库单
-		/*JSONArray resturn2 = InterfaceConnUtils.doPost(mapList,"materialout_import");//材料出库单
-		JSONArray resturn3 = InterfaceConnUtils.doPost(mapList,"consignment_import");//销售发货单
-		JSONArray resturn4 = InterfaceConnUtils.doPost(mapList,"saleout_import");//销售出库单
-		JSONArray resturn5 = InterfaceConnUtils.doPost(mapList,"purinvoice_import");//采购发票单
-		JSONArray resturn6 = InterfaceConnUtils.doPost(mapList,"saleinvoice_import");//销售发票单*/
-
-	//	System.out.println("调用接口后返回的信息resturn1\n"+resturn1);
-		/*System.out.println("resturn1\n"+resturn2);
-		System.out.println("resturn1\n"+resturn3);
-		System.out.println("resturn1\n"+resturn4);
-		System.out.println("resturn1\n"+resturn5);
-		System.out.println("resturn1\n"+resturn6);*/
-
-		return mapLists;
+		System.out.println("mapList6\n"+mapList6);
+
+		/*JSONArray resturn1 = InterfaceConnUtils.doPost(mapList,"purchasein_import");//采购入库单
+		//JSONArray resturn2 = InterfaceConnUtils.doPost(mapList,"materialout_import");//材料出库单
+		JSONArray resturn3 = InterfaceConnUtils.doPost(mapList3,"consignment_import");//销售发货单
+		JSONArray resturn4 = InterfaceConnUtils.doPost(mapList4,"saleout_import");//销售出库单
+		JSONArray resturn5 = InterfaceConnUtils.doPost(mapList5,"purinvoice_import");//采购发票单
+		JSONArray resturn6 = InterfaceConnUtils.doPost(mapList6,"saleinvoice_import");//销售发票单
+
+		System.out.println("调用接口后返回的信息resturn1\n"+resturn1);
+		//System.out.println("调用接口后返回的信息resturn2\n"+resturn2);
+		System.out.println("调用接口后返回的信息resturn3\n"+resturn3);
+		System.out.println("调用接口后返回的信息resturn4\n"+resturn4);
+		System.out.println("调用接口后返回的信息resturn5\n"+resturn5);
+		System.out.println("调用接口后返回的信息resturn6\n"+resturn6);*/
+
+		try{
+			FileWriter file =new FileWriter ("D:\\test\\test.txt",true);
+			//FileOutputStream fo = new FileOutputStream(file);
+			//向文件中写入内容
+		//	byte [] bytecontent = txtWorld.getBytes();	//将字符串转换文字节数组类型
+			file.write(txtWorld);	//以字节数组类型写入内容
+			//关闭文件输出流
+			file.close();
+			System.out.println("已创建test.txt文件,已写入内容");
+		}catch (Exception e){
+			e.printStackTrace();
+		}
+
+
+		return new HashMap<>();
+	}
+
+
+	public void getcFree(JSONObject itemMap,Map<String,Object> mapPOPodetails){
+		itemMap.put("cDefine22",setNull(mapPOPodetails.get("cDefine22")));
+		itemMap.put("cDefine23",setNull(mapPOPodetails.get("cDefine23")));
+		itemMap.put("cDefine24",setNull(mapPOPodetails.get("cDefine24")));
+		itemMap.put("cDefine25",setNull(mapPOPodetails.get("cDefine25")));
+		itemMap.put("cDefine26",setNull(mapPOPodetails.get("cDefine26")));
+		itemMap.put("cDefine27",setNull(mapPOPodetails.get("cDefine27")));
+		itemMap.put("cDefine28",setNull(mapPOPodetails.get("cDefine28")));
+		itemMap.put("cDefine29",setNull(mapPOPodetails.get("cDefine29")));
+		itemMap.put("cDefine30",setNull(mapPOPodetails.get("cDefine30")));
+		itemMap.put("cDefine31",setNull(mapPOPodetails.get("cDefine31")));
+		itemMap.put("cDefine32",setNull(mapPOPodetails.get("cDefine32")));
+		itemMap.put("cDefine33",setNull(mapPOPodetails.get("cDefine33")));
+		itemMap.put("cDefine34",setNull(mapPOPodetails.get("cDefine34")));
+		itemMap.put("cDefine35",setNull(mapPOPodetails.get("cDefine35")));
+		itemMap.put("cDefine36",setNull(mapPOPodetails.get("cDefine36")));
+		itemMap.put("cDefine37",setNull(mapPOPodetails.get("cDefine37")));
+		itemMap.put("cFree1",setNull(mapPOPodetails.get("cFree1")));
+		itemMap.put("cFree2",setNull(mapPOPodetails.get("cFree2")));
+		itemMap.put("cFree3",setNull(mapPOPodetails.get("cFree3")));
+		itemMap.put("cFree4",setNull(mapPOPodetails.get("cFree4")));
+		itemMap.put("cFree5",setNull(mapPOPodetails.get("cFree5")));
+		itemMap.put("cFree6",setNull(mapPOPodetails.get("cFree6")));
+		itemMap.put("cFree7",setNull(mapPOPodetails.get("cFree7")));
+		itemMap.put("cFree8",setNull(mapPOPodetails.get("cFree8")));
+		itemMap.put("cFree9",setNull(mapPOPodetails.get("cFree9")));
+		itemMap.put("cFree10",setNull(mapPOPodetails.get("cFree10")));
+	}
+
+	public Object setNull(Object o){
+		if(o==null){
+			return "";
+		}else{
+			return o;
+		}
+
 	}
 }