|  | @@ -1,6 +1,5 @@
 | 
	
		
			
				|  |  |  package com.ruoyi.reportManagement.service.impl;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |  import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 | 
	
		
			
				|  |  |  import com.github.pagehelper.PageHelper;
 | 
	
		
			
				|  |  |  import com.ruoyi.basicData.domain.TCustomerContact;
 | 
	
	
		
			
				|  | @@ -23,6 +22,8 @@ import com.ruoyi.reportManagement.dto.TWarehousebill;
 | 
	
		
			
				|  |  |  import com.ruoyi.reportManagement.excel.Whgenleg;
 | 
	
		
			
				|  |  |  import com.ruoyi.reportManagement.mapper.TWhgenlegMapper;
 | 
	
		
			
				|  |  |  import com.ruoyi.reportManagement.service.ITWhgenlegService;
 | 
	
		
			
				|  |  | +import com.ruoyi.system.domain.SysConfig;
 | 
	
		
			
				|  |  | +import com.ruoyi.system.mapper.SysConfigMapper;
 | 
	
		
			
				|  |  |  import com.ruoyi.warehouseBusiness.domain.TWarehouseBills;
 | 
	
		
			
				|  |  |  import com.ruoyi.warehouseBusiness.domain.enums.WarehouseTypeEnum;
 | 
	
		
			
				|  |  |  import com.ruoyi.warehouseBusiness.mapper.TWarehouseBillsMapper;
 | 
	
	
		
			
				|  | @@ -45,6 +46,7 @@ import java.util.stream.Collectors;
 | 
	
		
			
				|  |  |   */
 | 
	
		
			
				|  |  |  @Service
 | 
	
		
			
				|  |  |  public class TWhgenlegServiceImpl implements ITWhgenlegService {
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |      @Autowired
 | 
	
		
			
				|  |  |      private TWhgenlegMapper tWhgenlegMapper;
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -60,11 +62,29 @@ public class TWhgenlegServiceImpl implements ITWhgenlegService {
 | 
	
		
			
				|  |  |      @Autowired
 | 
	
		
			
				|  |  |      private TWarehousebillsitemsMapper tWarehousebillsitemsMapper;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +    @Autowired
 | 
	
		
			
				|  |  | +    private SysConfigMapper sysConfigMapper;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  |      public AjaxResult superviseExport(TWhgenleg tWhgenleg) {
 | 
	
		
			
				|  |  | -        List<Map<String,Object>> list = tWhgenlegMapper.selectWhgenlegList(tWhgenleg);
 | 
	
		
			
				|  |  | +        SysConfig fileGerater = sysConfigMapper.checkConfigKeyUnique("FILE_GERATER");
 | 
	
		
			
				|  |  | +        if (StringUtils.isNull(fileGerater)) {
 | 
	
		
			
				|  |  | +            return AjaxResult.error("系统参数异常,未找到“FILE_GERATER”参数");
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        SysConfig tradeCode = sysConfigMapper.checkConfigKeyUnique("TRADE_CODE");
 | 
	
		
			
				|  |  | +        if (StringUtils.isNull(tradeCode)) {
 | 
	
		
			
				|  |  | +            return AjaxResult.error("系统参数异常,未找到“TRADE_CODE”参数");
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        SysConfig tradeName = sysConfigMapper.checkConfigKeyUnique("TRADE_NAME");
 | 
	
		
			
				|  |  | +        if (StringUtils.isNull(tradeName)) {
 | 
	
		
			
				|  |  | +            return AjaxResult.error("系统参数异常,未找到“TRADE_NAME”参数");
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        List<Map<String, Object>> list = tWhgenlegMapper.selectWhgenlegList(tWhgenleg);
 | 
	
		
			
				|  |  |          Date nowDate = new Date();
 | 
	
		
			
				|  |  | -        String fileName = "DAOHE_STOCKAPPLY_" + new SimpleDateFormat("yyyyMMdd").format(nowDate) + ".FLJGRX";
 | 
	
		
			
				|  |  | +        String fileName = "STOCKAPPLY_" + new SimpleDateFormat("yyyyMMdd").format(nowDate) + ".FLJGRX";
 | 
	
		
			
				|  |  |          // 应用号
 | 
	
		
			
				|  |  |          String APP_CODE = "SAS";
 | 
	
		
			
				|  |  |          // 环节号
 | 
	
	
		
			
				|  | @@ -76,7 +96,7 @@ public class TWhgenlegServiceImpl implements ITWhgenlegService {
 | 
	
		
			
				|  |  |          // 生成时间
 | 
	
		
			
				|  |  |          String FILE_DATE_TIME = new SimpleDateFormat("yyyy-MM-dd").format(nowDate);
 | 
	
		
			
				|  |  |          // 生成人
 | 
	
		
			
				|  |  | -        String FILE_GERATER = "青岛道合供应链";
 | 
	
		
			
				|  |  | +        String FILE_GERATER = fileGerater.getConfigValue();
 | 
	
		
			
				|  |  |          // 顺序
 | 
	
		
			
				|  |  |          String FILE_ORDER = "1";
 | 
	
		
			
				|  |  |          // 文件名
 | 
	
	
		
			
				|  | @@ -86,9 +106,9 @@ public class TWhgenlegServiceImpl implements ITWhgenlegService {
 | 
	
		
			
				|  |  |          // 类型
 | 
	
		
			
				|  |  |          String XML_TYPE = "W3C";
 | 
	
		
			
				|  |  |          // 经营单位代码
 | 
	
		
			
				|  |  | -        String TRADE_CODE = "3702661504";
 | 
	
		
			
				|  |  | +        String TRADE_CODE = tradeCode.getConfigValue();
 | 
	
		
			
				|  |  |          // 经营单位名称
 | 
	
		
			
				|  |  | -        String TRADE_NAME = "青岛道合供应链";
 | 
	
		
			
				|  |  | +        String TRADE_NAME = tradeName.getConfigValue();
 | 
	
		
			
				|  |  |          // 报送日期
 | 
	
		
			
				|  |  |          String APPLY_DATE = new SimpleDateFormat("yyyyMMdd").format(nowDate);
 | 
	
		
			
				|  |  |          File temp = null;
 | 
	
	
		
			
				|  | @@ -97,85 +117,88 @@ public class TWhgenlegServiceImpl implements ITWhgenlegService {
 | 
	
		
			
				|  |  |              BufferedWriter bw = new BufferedWriter(new FileWriter(temp)); // 给临时文件写入内容
 | 
	
		
			
				|  |  |              // 写入头部
 | 
	
		
			
				|  |  |              bw.write(
 | 
	
		
			
				|  |  | -                    "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n" +
 | 
	
		
			
				|  |  | -                            "<XMLObject>\n" +
 | 
	
		
			
				|  |  | -                            "  <APP_CODE>"+ APP_CODE +"</APP_CODE>\n" +
 | 
	
		
			
				|  |  | -                            "  <APP_STEP_ID>"+ APP_STEP_ID +"</APP_STEP_ID>\n" +
 | 
	
		
			
				|  |  | -                            "  <CLASS_NAME>"+ CLASS_NAME +"</CLASS_NAME>\n" +
 | 
	
		
			
				|  |  | -                            "  <CLASS_VER>"+ CLASS_VER +"</CLASS_VER>\n" +
 | 
	
		
			
				|  |  | -                            "  <FILE_DATE_TIME>"+ FILE_DATE_TIME +"</FILE_DATE_TIME>\n" +
 | 
	
		
			
				|  |  | -                            "  <FILE_GERATER>"+ FILE_GERATER +"</FILE_GERATER>\n" +
 | 
	
		
			
				|  |  | -                            "  <FILE_ORDER>"+ FILE_ORDER +"</FILE_ORDER>\n" +
 | 
	
		
			
				|  |  | -                            "  <FILE_ORIGINAL_NAME>"+ FILE_ORIGINAL_NAME +"</FILE_ORIGINAL_NAME>\n" +
 | 
	
		
			
				|  |  | -                            "  <FILE_SIZE>"+ FILE_SIZE +"</FILE_SIZE>\n" +
 | 
	
		
			
				|  |  | -                            "  <XML_TYPE>"+ XML_TYPE +"</XML_TYPE>\n" +
 | 
	
		
			
				|  |  | -                            "  <SDEPORT_DATA>\n" +
 | 
	
		
			
				|  |  | -                            "    <StockRecordMessage>"
 | 
	
		
			
				|  |  | -            );bw.newLine();
 | 
	
		
			
				|  |  | -            for (Map<String,Object> map : list) {
 | 
	
		
			
				|  |  | +                    "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n"
 | 
	
		
			
				|  |  | +                            + "<XMLObject>\n"
 | 
	
		
			
				|  |  | +                            + "  <APP_CODE>" + APP_CODE + "</APP_CODE>\n"
 | 
	
		
			
				|  |  | +                            + "  <APP_STEP_ID>" + APP_STEP_ID + "</APP_STEP_ID>\n"
 | 
	
		
			
				|  |  | +                            + "  <CLASS_NAME>" + CLASS_NAME + "</CLASS_NAME>\n"
 | 
	
		
			
				|  |  | +                            + "  <CLASS_VER>" + CLASS_VER + "</CLASS_VER>\n"
 | 
	
		
			
				|  |  | +                            + "  <FILE_DATE_TIME>" + FILE_DATE_TIME + "</FILE_DATE_TIME>\n"
 | 
	
		
			
				|  |  | +                            + "  <FILE_GERATER>" + FILE_GERATER + "</FILE_GERATER>\n"
 | 
	
		
			
				|  |  | +                            + "  <FILE_ORDER>" + FILE_ORDER + "</FILE_ORDER>\n"
 | 
	
		
			
				|  |  | +                            + "  <FILE_ORIGINAL_NAME>" + FILE_ORIGINAL_NAME + "</FILE_ORIGINAL_NAME>\n"
 | 
	
		
			
				|  |  | +                            + "  <FILE_SIZE>" + FILE_SIZE + "</FILE_SIZE>\n"
 | 
	
		
			
				|  |  | +                            + "  <XML_TYPE>" + XML_TYPE + "</XML_TYPE>\n"
 | 
	
		
			
				|  |  | +                            + "  <SDEPORT_DATA>\n"
 | 
	
		
			
				|  |  | +                            + "    <StockRecordMessage>"
 | 
	
		
			
				|  |  | +            );
 | 
	
		
			
				|  |  | +            bw.newLine();
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            for (Map<String, Object> map : list) {
 | 
	
		
			
				|  |  |                  String goodsfSpecs;
 | 
	
		
			
				|  |  |                  if (StringUtils.isNull(map.get("goodsfSpecs"))) {
 | 
	
		
			
				|  |  | -                    goodsfSpecs = "        <GoodsModelDesc></GoodsModelDesc>\n" ;
 | 
	
		
			
				|  |  | +                    goodsfSpecs = "        <GoodsModelDesc></GoodsModelDesc>\n";
 | 
	
		
			
				|  |  |                  } else {
 | 
	
		
			
				|  |  | -                    goodsfSpecs = "        <GoodsModelDesc>"+ map.get("goodsfSpecs") +"</GoodsModelDesc>\n" ;
 | 
	
		
			
				|  |  | +                    goodsfSpecs = "        <GoodsModelDesc>" + map.get("goodsfSpecs") + "</GoodsModelDesc>\n";
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |                  if ("保税".equals(map.get("fGoodsType"))) {
 | 
	
		
			
				|  |  |                      String strEmsSeqNo;
 | 
	
		
			
				|  |  |                      if (StringUtils.isNull(map.get("fEmsSeqNo"))) {
 | 
	
		
			
				|  |  | -                        strEmsSeqNo = "        <EmsSeqNo></EmsSeqNo>\n" ;
 | 
	
		
			
				|  |  | +                        strEmsSeqNo = "        <EmsSeqNo></EmsSeqNo>\n";
 | 
	
		
			
				|  |  |                      } else {
 | 
	
		
			
				|  |  | -                        strEmsSeqNo = "        <EmsSeqNo>"+ map.get("fEmsSeqNo") +"</EmsSeqNo>\n" ;
 | 
	
		
			
				|  |  | +                        strEmsSeqNo = "        <EmsSeqNo>" + map.get("fEmsSeqNo") + "</EmsSeqNo>\n";
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  | -                    String str = "      <StockInfo>\n" +
 | 
	
		
			
				|  |  | -                            "        <EmsNo>"+ map.get("fEmsNo") +"</EmsNo>\n" +
 | 
	
		
			
				|  |  | -                            strEmsSeqNo +
 | 
	
		
			
				|  |  | -                            "        <WmsMtsNo>"+ map.get("fEmsNo") + "-" + map.get("fId") + "-" + map.get("fWarehouseNo") +"</WmsMtsNo>\n" +
 | 
	
		
			
				|  |  | -                            "        <GoodsMtsNo>"+ map.get("fMblno") +"</GoodsMtsNo>\n" +
 | 
	
		
			
				|  |  | -                            "        <CodeTs>"+ map.get("fCodeTs") +"</CodeTs>\n" +
 | 
	
		
			
				|  |  | -                            "        <GoodsName>"+ map.get("fGoodsids") +"</GoodsName>\n" +
 | 
	
		
			
				|  |  | -                            goodsfSpecs +
 | 
	
		
			
				|  |  | -                            "        <WmsDclUnit>"+ map.get("fWmsDclUnit") +"</WmsDclUnit>\n" +
 | 
	
		
			
				|  |  | -                            "        <WmsDclQty>"+ map.get("fNetweightD") +"</WmsDclQty>\n" +
 | 
	
		
			
				|  |  | -                            "        <WmsLawUnit>"+ map.get("fWmsLawUnit") +"</WmsLawUnit>\n" +
 | 
	
		
			
				|  |  | -                            "        <WmsLawQty>"+ map.get("fNetweightD") +"</WmsLawQty>\n" +
 | 
	
		
			
				|  |  | -                            "        <PlaceIds>"+ map.get("fWLID") +"</PlaceIds>\n" +
 | 
	
		
			
				|  |  | -                            "        <LocationIds>"+ map.get("fWarehouseNo") +"</LocationIds>\n" +
 | 
	
		
			
				|  |  | -                            "        <StockStatus>"+ 1 +"</StockStatus>\n" +
 | 
	
		
			
				|  |  | -                            "        <GoodsType>"+ 1 +"</GoodsType>\n" +
 | 
	
		
			
				|  |  | -                            "      </StockInfo>";
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                    String str = "      <StockInfo>\n"
 | 
	
		
			
				|  |  | +                            + "        <EmsNo>" + map.get("fEmsNo") + "</EmsNo>\n" + strEmsSeqNo
 | 
	
		
			
				|  |  | +                            + "        <WmsMtsNo>" + map.get("fEmsNo") + "-" + map.get("fId") + "-" + map.get("fWarehouseNo") + "</WmsMtsNo>\n"
 | 
	
		
			
				|  |  | +                            + "        <GoodsMtsNo>" + map.get("fMblno") + "</GoodsMtsNo>\n"
 | 
	
		
			
				|  |  | +                            + "        <CodeTs>" + map.get("fCodeTs") + "</CodeTs>\n"
 | 
	
		
			
				|  |  | +                            + "        <GoodsName>" + map.get("fGoodsids") + "</GoodsName>\n" + goodsfSpecs
 | 
	
		
			
				|  |  | +                            + "        <WmsDclUnit>" + map.get("fWmsDclUnit") + "</WmsDclUnit>\n"
 | 
	
		
			
				|  |  | +                            + "        <WmsDclQty>" + map.get("fNetweightblc") + "</WmsDclQty>\n"
 | 
	
		
			
				|  |  | +                            + "        <WmsLawUnit>" + map.get("fWmsLawUnit") + "</WmsLawUnit>\n"
 | 
	
		
			
				|  |  | +                            + "        <WmsLawQty>" + map.get("fNetweightblc") + "</WmsLawQty>\n"
 | 
	
		
			
				|  |  | +                            + "        <PlaceIds>" + map.get("fWLID") + "</PlaceIds>\n"
 | 
	
		
			
				|  |  | +                            + "        <LocationIds>" + map.get("fWarehouseNo") + "</LocationIds>\n"
 | 
	
		
			
				|  |  | +                            + "        <StockStatus>" + 1 + "</StockStatus>\n"
 | 
	
		
			
				|  |  | +                            + "        <GoodsType>" + 1 + "</GoodsType>\n"
 | 
	
		
			
				|  |  | +                            + "      </StockInfo>";
 | 
	
		
			
				|  |  |                      bw.write(str);
 | 
	
		
			
				|  |  |                      bw.newLine();
 | 
	
		
			
				|  |  |                  } else {
 | 
	
		
			
				|  |  | -                    bw.write("      <StockInfo>\n" +
 | 
	
		
			
				|  |  | -                            "        <EmsNo></EmsNo>\n" +
 | 
	
		
			
				|  |  | -                            "        <EmsSeqNo></EmsSeqNo>\n" +
 | 
	
		
			
				|  |  | -                            "        <WmsMtsNo>"+ map.get("fEmsNo") + "-" + map.get("fId") + "-" + map.get("fWarehouseNo") +"</WmsMtsNo>\n" +
 | 
	
		
			
				|  |  | -                            "        <GoodsMtsNo>"+ map.get("fMblno") +"</GoodsMtsNo>\n" +
 | 
	
		
			
				|  |  | -                            "        <CodeTs>"+ map.get("fCodeTs") +"</CodeTs>\n" +
 | 
	
		
			
				|  |  | -                            "        <GoodsName>"+ map.get("fGoodsids") +"</GoodsName>\n" +
 | 
	
		
			
				|  |  | -                            goodsfSpecs +
 | 
	
		
			
				|  |  | -                            "        <WmsDclUnit>"+ map.get("fWmsDclUnit") +"</WmsDclUnit>\n" +
 | 
	
		
			
				|  |  | -                            "        <WmsDclQty>"+ map.get("fNetweightD") +"</WmsDclQty>\n" +
 | 
	
		
			
				|  |  | -                            "        <WmsLawUnit>"+ map.get("fWmsLawUnit") +"</WmsLawUnit>\n" +
 | 
	
		
			
				|  |  | -                            "        <WmsLawQty>"+ map.get("fNetweightD") +"</WmsLawQty>\n" +
 | 
	
		
			
				|  |  | -                            "        <PlaceIds>"+ map.get("fWLID") +"</PlaceIds>\n" +
 | 
	
		
			
				|  |  | -                            "        <LocationIds>"+ map.get("fWarehouseNo") +"</LocationIds>\n" +
 | 
	
		
			
				|  |  | -                            "        <StockStatus>"+ 1 +"</StockStatus>\n" +
 | 
	
		
			
				|  |  | -                            "        <GoodsType>"+ 0 +"</GoodsType>\n" +
 | 
	
		
			
				|  |  | -                            "      </StockInfo>");
 | 
	
		
			
				|  |  | +                    bw.write("      <StockInfo>\n"
 | 
	
		
			
				|  |  | +                            + "        <EmsNo></EmsNo>\n"
 | 
	
		
			
				|  |  | +                            + "        <EmsSeqNo></EmsSeqNo>\n"
 | 
	
		
			
				|  |  | +                            + "        <WmsMtsNo>" + map.get("fEmsNo") + "-" + map.get("fId") + "-" + map.get("fWarehouseNo") + "</WmsMtsNo>\n"
 | 
	
		
			
				|  |  | +                            + "        <GoodsMtsNo>" + map.get("fMblno") + "</GoodsMtsNo>\n"
 | 
	
		
			
				|  |  | +                            + "        <CodeTs>" + map.get("fCodeTs") + "</CodeTs>\n"
 | 
	
		
			
				|  |  | +                            + "        <GoodsName>" + map.get("fGoodsids") + "</GoodsName>\n" + goodsfSpecs
 | 
	
		
			
				|  |  | +                            + "        <WmsDclUnit>" + map.get("fWmsDclUnit") + "</WmsDclUnit>\n"
 | 
	
		
			
				|  |  | +                            + "        <WmsDclQty>" + map.get("fNetweightblc") + "</WmsDclQty>\n"
 | 
	
		
			
				|  |  | +                            + "        <WmsLawUnit>" + map.get("fWmsLawUnit") + "</WmsLawUnit>\n"
 | 
	
		
			
				|  |  | +                            + "        <WmsLawQty>" + map.get("fNetweightblc") + "</WmsLawQty>\n"
 | 
	
		
			
				|  |  | +                            + "        <PlaceIds>" + map.get("fWLID") + "</PlaceIds>\n"
 | 
	
		
			
				|  |  | +                            + "        <LocationIds>" + map.get("fWarehouseNo") + "</LocationIds>\n"
 | 
	
		
			
				|  |  | +                            + "        <StockStatus>" + 1 + "</StockStatus>\n"
 | 
	
		
			
				|  |  | +                            + "        <GoodsType>" + 0 + "</GoodsType>\n"
 | 
	
		
			
				|  |  | +                            + "      </StockInfo>");
 | 
	
		
			
				|  |  |                      bw.newLine();
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |              bw.write(
 | 
	
		
			
				|  |  | -                    "       <TradeCode>"+ TRADE_CODE +"</TradeCode>\n" +
 | 
	
		
			
				|  |  | -                            "       <TradeName>"+ TRADE_NAME +"</TradeName>\n" +
 | 
	
		
			
				|  |  | -                            "       <ApplyDate>"+ APPLY_DATE +"</ApplyDate>"
 | 
	
		
			
				|  |  | -            );bw.newLine();
 | 
	
		
			
				|  |  | +                    "       <TradeCode>" + TRADE_CODE + "</TradeCode>\n"
 | 
	
		
			
				|  |  | +                            + "       <TradeName>" + TRADE_NAME + "</TradeName>\n"
 | 
	
		
			
				|  |  | +                            + "       <ApplyDate>" + APPLY_DATE + "</ApplyDate>"
 | 
	
		
			
				|  |  | +            );
 | 
	
		
			
				|  |  | +            bw.newLine();
 | 
	
		
			
				|  |  |              bw.write(
 | 
	
		
			
				|  |  | -                    "   </StockRecordMessage>\n" +
 | 
	
		
			
				|  |  | -                            "  </SDEPORT_DATA>\n" +
 | 
	
		
			
				|  |  | -                            "</XMLObject>"
 | 
	
		
			
				|  |  | -            );bw.newLine();
 | 
	
		
			
				|  |  | +                    "   </StockRecordMessage>\n"
 | 
	
		
			
				|  |  | +                            + "  </SDEPORT_DATA>\n"
 | 
	
		
			
				|  |  | +                            + "</XMLObject>"
 | 
	
		
			
				|  |  | +            );
 | 
	
		
			
				|  |  | +            bw.newLine();
 | 
	
		
			
				|  |  |              bw.close(); // 写入完毕
 | 
	
		
			
				|  |  |              BufferedReader reader = new BufferedReader(new FileReader(temp));// 读取临时文件数据
 | 
	
		
			
				|  |  |              FileWriter fw = new FileWriter(getAbsoluteFile(fileName)); // 创建要写入的文件
 | 
	
	
		
			
				|  | @@ -183,9 +206,10 @@ public class TWhgenlegServiceImpl implements ITWhgenlegService {
 | 
	
		
			
				|  |  |              String lineText;
 | 
	
		
			
				|  |  |              while ((lineText = reader.readLine()) != null) { // 按行读取零食文件数据
 | 
	
		
			
				|  |  |                  // 替换其中参数
 | 
	
		
			
				|  |  | -                String newContent = lineText.replace("<FILE_SIZE>-1</FILE_SIZE>","<FILE_SIZE>"+ temp.length() +"</FILE_SIZE>");
 | 
	
		
			
				|  |  | +                String newContent = lineText.replace("<FILE_SIZE>-1</FILE_SIZE>", "<FILE_SIZE>" + temp.length() + "</FILE_SIZE>");
 | 
	
		
			
				|  |  |                  // 写入指定文件并自动换行
 | 
	
		
			
				|  |  | -                bfw.write(newContent);bfw.newLine();
 | 
	
		
			
				|  |  | +                bfw.write(newContent);
 | 
	
		
			
				|  |  | +                bfw.newLine();
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |              // 刷新缓冲区
 | 
	
		
			
				|  |  |              bfw.flush();
 | 
	
	
		
			
				|  | @@ -203,6 +227,121 @@ public class TWhgenlegServiceImpl implements ITWhgenlegService {
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +    @Override
 | 
	
		
			
				|  |  | +    public AjaxResult warehouseSupervise() {
 | 
	
		
			
				|  |  | +        SysConfig fileGerater = sysConfigMapper.checkConfigKeyUnique("FILE_GERATER");
 | 
	
		
			
				|  |  | +        if (StringUtils.isNull(fileGerater)) {
 | 
	
		
			
				|  |  | +            return AjaxResult.error("系统参数异常,未找到“FILE_GERATER”参数");
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        SysConfig tradeCode = sysConfigMapper.checkConfigKeyUnique("TRADE_CODE");
 | 
	
		
			
				|  |  | +        if (StringUtils.isNull(tradeCode)) {
 | 
	
		
			
				|  |  | +            return AjaxResult.error("系统参数异常,未找到“TRADE_CODE”参数");
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        SysConfig tradeName = sysConfigMapper.checkConfigKeyUnique("TRADE_NAME");
 | 
	
		
			
				|  |  | +        if (StringUtils.isNull(tradeName)) {
 | 
	
		
			
				|  |  | +            return AjaxResult.error("系统参数异常,未找到“TRADE_NAME”参数");
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        Date date = new Date();
 | 
	
		
			
				|  |  | +        String fileName = "WmsArea-" + DateUtils.parseDateToStr("yyyyMMdd", date) + ".FLJGRX";
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        File temp = null;
 | 
	
		
			
				|  |  | +        try {
 | 
	
		
			
				|  |  | +            temp = File.createTempFile("save", "null");
 | 
	
		
			
				|  |  | +            BufferedWriter bw = new BufferedWriter(new FileWriter(temp));
 | 
	
		
			
				|  |  | +            // 写入头部
 | 
	
		
			
				|  |  | +            bw.write("<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n"
 | 
	
		
			
				|  |  | +                            + "<XMLObject>\n"
 | 
	
		
			
				|  |  | +                            + "    <APP_CODE>SAS</APP_CODE>\n"
 | 
	
		
			
				|  |  | +                            + "    <APP_STEP_ID>BASE_APPLY_ADD</APP_STEP_ID>\n"
 | 
	
		
			
				|  |  | +                            + "    <CLASS_NAME>XMLOject</CLASS_NAME>\n"
 | 
	
		
			
				|  |  | +                            + "    <CLASS_VER>1.0</CLASS_VER>\n"
 | 
	
		
			
				|  |  | +                            + "    <FILE_DATE_TIME>" + DateUtils.parseDateToStr("yyyy-MM-dd", date) + "</FILE_DATE_TIME>\n"
 | 
	
		
			
				|  |  | +                            + "    <FILE_GERATER>" + fileGerater.getConfigValue() + "</FILE_GERATER>\n"
 | 
	
		
			
				|  |  | +                            + "    <FILE_ORDER>1</FILE_ORDER>\n"
 | 
	
		
			
				|  |  | +                            + "    <FILE_ORIGINAL_NAME>" + fileName + "</FILE_ORIGINAL_NAME>\n"
 | 
	
		
			
				|  |  | +                            + "    <FILE_SIZE>-1</FILE_SIZE>\n"
 | 
	
		
			
				|  |  | +                            + "    <SDEPORT_DATA>\n"
 | 
	
		
			
				|  |  | +                            + "        <CopBaseRecordMessage>\n"
 | 
	
		
			
				|  |  | +                            + "            <CopBaseInfo>\n"
 | 
	
		
			
				|  |  | +                            + "                <TradeCode>" + tradeCode.getConfigValue() + "</TradeCode>\n"
 | 
	
		
			
				|  |  | +                            + "                <TradeName>" + tradeName.getConfigValue() + "</TradeName>\n"
 | 
	
		
			
				|  |  | +                            + "                <OrgCode>87830774R</OrgCode>\n"
 | 
	
		
			
				|  |  | +                            + "                <CopAddress></CopAddress>\n"
 | 
	
		
			
				|  |  | +                            + "                <Manager></Manager>\n"
 | 
	
		
			
				|  |  | +                            + "                <ContactTel></ContactTel>\n"
 | 
	
		
			
				|  |  | +                            + "                <CopSccd></CopSccd>\n"
 | 
	
		
			
				|  |  | +                            + "                <CustomManager>4258</CustomManager>\n"
 | 
	
		
			
				|  |  | +                            + "                <NetworkBeginDate></NetworkBeginDate>\n"
 | 
	
		
			
				|  |  | +                            + "                <NetworkEndTime></NetworkEndTime>\n"
 | 
	
		
			
				|  |  | +                            + "                <ExeStatus></ExeStatus>\n"
 | 
	
		
			
				|  |  | +                            + "            </CopBaseInfo>\n"
 | 
	
		
			
				|  |  | +            );
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            List<Map<String, Object>> warehouseList = tWhgenlegMapper.warehouseSupervise(100);
 | 
	
		
			
				|  |  | +            for (Map<String, Object> warehouse : warehouseList) {
 | 
	
		
			
				|  |  | +                bw.write("            <StorageInfo>\n"
 | 
	
		
			
				|  |  | +                        + "                <HouseId>" + warehouse.get("fNo") + "</HouseId>\n"
 | 
	
		
			
				|  |  | +                        + "                <HouseName>" + warehouse.get("fName") + "</HouseName>\n"
 | 
	
		
			
				|  |  | +                        + "                <HouseAddress>" + warehouse.get("fAddr") + "</HouseAddress>\n"
 | 
	
		
			
				|  |  | +                        + "                <HouseOwer>" + warehouse.get("fContacts") + "</HouseOwer>\n"
 | 
	
		
			
				|  |  | +                );
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                List<Map<String, Object>> areaList = tWhgenlegMapper.warehouseSupervise((Integer) warehouse.get("fId"));
 | 
	
		
			
				|  |  | +                for (Map<String, Object> area : areaList) {
 | 
	
		
			
				|  |  | +                    bw.write("                <LocationInfo>\n"
 | 
	
		
			
				|  |  | +                            + "                    <LocationId>" + area.get("fNo") + "</LocationId>\n"
 | 
	
		
			
				|  |  | +                            + "                    <LocationName>" + area.get("fName") + "</LocationName>\n"
 | 
	
		
			
				|  |  | +                            + "                    <PlaceId>" + area.get("fNo") + "</PlaceId>\n"
 | 
	
		
			
				|  |  | +                            + "                    <PlaceName>" + area.get("fName") + "</PlaceName>\n"
 | 
	
		
			
				|  |  | +                            + "                </LocationInfo>\n"
 | 
	
		
			
				|  |  | +                    );
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                bw.write("                <HouseArea></HouseArea>\n"
 | 
	
		
			
				|  |  | +                        + "            </StorageInfo>\n");
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            bw.write("        </CopBaseRecordMessage>\n"
 | 
	
		
			
				|  |  | +                    + "    </SDEPORT_DATA>\n"
 | 
	
		
			
				|  |  | +                    + "    <XML_TYPE>W3C</XML_TYPE>\n"
 | 
	
		
			
				|  |  | +                    + "</XMLObject>\n"
 | 
	
		
			
				|  |  | +            );
 | 
	
		
			
				|  |  | +            bw.close();
 | 
	
		
			
				|  |  | +            // 读取临时文件数据
 | 
	
		
			
				|  |  | +            BufferedReader reader = new BufferedReader(new FileReader(temp));
 | 
	
		
			
				|  |  | +            // 创建要写入的文件
 | 
	
		
			
				|  |  | +            FileWriter fw = new FileWriter(getAbsoluteFile(fileName));
 | 
	
		
			
				|  |  | +            // 创建新的写入流
 | 
	
		
			
				|  |  | +            BufferedWriter bfw = new BufferedWriter(fw);
 | 
	
		
			
				|  |  | +            String lineText;
 | 
	
		
			
				|  |  | +            while ((lineText = reader.readLine()) != null) {
 | 
	
		
			
				|  |  | +                // 替换其中参数
 | 
	
		
			
				|  |  | +                String newContent = lineText.replace("<FILE_SIZE>-1</FILE_SIZE>", "<FILE_SIZE>" + temp.length() + "</FILE_SIZE>");
 | 
	
		
			
				|  |  | +                // 写入指定文件并自动换行
 | 
	
		
			
				|  |  | +                bfw.write(newContent);
 | 
	
		
			
				|  |  | +                bfw.newLine();
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            // 刷新缓冲区
 | 
	
		
			
				|  |  | +            bfw.flush();
 | 
	
		
			
				|  |  | +            // 关闭读取流
 | 
	
		
			
				|  |  | +            reader.close();
 | 
	
		
			
				|  |  | +            // 关闭写入流
 | 
	
		
			
				|  |  | +            bfw.close();
 | 
	
		
			
				|  |  | +            // 关闭需要写入的文件流
 | 
	
		
			
				|  |  | +            fw.close();
 | 
	
		
			
				|  |  | +            return AjaxResult.success(fileName);
 | 
	
		
			
				|  |  | +        } catch (Exception e) {
 | 
	
		
			
				|  |  | +            e.printStackTrace();
 | 
	
		
			
				|  |  | +            return AjaxResult.error("导出分类监管数据失败");
 | 
	
		
			
				|  |  | +        } finally {
 | 
	
		
			
				|  |  | +            if (temp != null) {
 | 
	
		
			
				|  |  | +                temp.deleteOnExit();
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |      // 文件大小
 | 
	
		
			
				|  |  |      public static long getFileSize(String filename) {
 | 
	
		
			
				|  |  |          File file = new File(filename);
 | 
	
	
		
			
				|  | @@ -348,20 +487,6 @@ public class TWhgenlegServiceImpl implements ITWhgenlegService {
 | 
	
		
			
				|  |  |          return tWhgenlegMapper.selectInventoryMapList(tWhgenleg);
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -    @Override
 | 
	
		
			
				|  |  | -    public List<Map<String, Object>> selectWhgenlegList(TWhgenleg tWhgenleg) {
 | 
	
		
			
				|  |  | -        if (StringUtils.isNotNull(tWhgenleg.getfWarehouseLocationid())) {
 | 
	
		
			
				|  |  | -            // 获取仓库信息
 | 
	
		
			
				|  |  | -            TWarehouse tWarehouse = tWarehouseMapper.selectTWarehouseById(tWhgenleg.getfWarehouseLocationid());
 | 
	
		
			
				|  |  | -            if (tWarehouse.getfLocation() == 1) {
 | 
	
		
			
				|  |  | -                tWhgenleg.setfLocation(1L);
 | 
	
		
			
				|  |  | -            } else {
 | 
	
		
			
				|  |  | -                tWhgenleg.setfLocation(0L);
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | -        return tWhgenlegMapper.selectWhgenlegList(tWhgenleg);
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |      /**
 | 
	
		
			
				|  |  |       * 新增库存总账
 | 
	
		
			
				|  |  |       *
 |