Browse Source

单证问题,计划统计单

zengtx 2 years ago
parent
commit
0c36d4359e

+ 4 - 4
jeecg-boot-module-system/src/main/java/org/jeecg/modules/cost/mapper/xml/SyCostAllocationFabricMapper.xml

@@ -156,7 +156,7 @@
 		join UFDATA_101_2021.dbo.Inventory omi on omi.cInvCode=od.cInvCode
 		WHERE om.iVerifyStateNew = 2 and (om.cCloser is null or om.cCloser='asuser')
 		and omi.cInvCcode like '19%' and om.cCode like CONCAT(#{code},'%')
-		) and (i.cInvCcode like '03%' or i.cInvCcode like '04%') and i.cInvCCode != '0399' and i.cInvCCode != '0499'
+		) and (i.cInvCcode like '03%' or i.cInvCcode like '04%' or i.cInvCcode like '02%') and (i.cInvCCode != '0399' or i.cInvName like '%带%') and (i.cInvCCode != '0499' or i.cInvName like '%带%') and (i.cInvCCode != '0299' or i.cInvName like '%带%')
 		GROUP BY i.cInvName,rs.cBatch,rs.cFree1
 		)tab1
 		right join
@@ -170,7 +170,7 @@
 		join UFDATA_101_2021.dbo.Inventory omi on omi.cInvCode=od.cInvCode
 		WHERE om.iVerifyStateNew = 2 and (om.cCloser is null or om.cCloser='asuser')
 		and omi.cInvCcode like '19%' and om.cCode like CONCAT(#{code},'%')
-		) and (i.cInvCcode like '03%' or i.cInvCcode like '04%') and i.cInvCCode != '0399' and i.cInvCCode != '0499'
+		) and (i.cInvCcode like '03%' or i.cInvCcode like '04%' or i.cInvCcode like '02%') and (i.cInvCCode != '0399' or i.cInvName like '%带%') and (i.cInvCCode != '0499' or i.cInvName like '%带%') and (i.cInvCCode != '0299' or i.cInvName like '%带%')
 		GROUP BY i.cInvName,rs.cBatch,rs.cFree1
 		)tab2 on tab2.cInvName=tab1.cInvName and tab2.cBatch=tab1.cBatch and tab1.cfree1=tab2.cfree1
 		where tab2.jian-isnull(tab1.purchaseQuantity,0) > 0 and tab2.cinvName = #{goodName}
@@ -192,7 +192,7 @@
 		join UFDATA_103_2021.dbo.Inventory omi on omi.cInvCode=od.cInvCode
 		WHERE om.iVerifyStateNew = 2 and (om.cCloser is null or om.cCloser='asuser')
 		and omi.cInvCcode like '19%' and om.cCode like CONCAT(#{code},'%')
-		) and (i.cInvCcode like '03%' or i.cInvCcode like '04%') and i.cInvCCode != '0399' and i.cInvCCode != '0499'
+		) and (i.cInvCcode like '03%' or i.cInvCcode like '04%' or i.cInvCcode like '02%') and (i.cInvCCode != '0399' or i.cInvName like '%带%') and (i.cInvCCode != '0499' or i.cInvName like '%带%') and (i.cInvCCode != '0299' or i.cInvName like '%带%')
 		GROUP BY i.cInvName,rs.cBatch,rs.cFree1
 		)tab1
 		right join
@@ -206,7 +206,7 @@
 		join UFDATA_103_2021.dbo.Inventory omi on omi.cInvCode=od.cInvCode
 		WHERE om.iVerifyStateNew = 2 and (om.cCloser is null or om.cCloser='asuser')
 		and omi.cInvCcode like '19%' and om.cCode like CONCAT(#{code},'%')
-		) and (i.cInvCcode like '03%' or i.cInvCcode like '04%') and i.cInvCCode != '0399' and i.cInvCCode != '0499'
+		) and (i.cInvCcode like '03%' or i.cInvCcode like '04%' or i.cInvCcode like '02%') and (i.cInvCCode != '0399' or i.cInvName like '%带%') and (i.cInvCCode != '0499' or i.cInvName like '%带%') and (i.cInvCCode != '0299' or i.cInvName like '%带%')
 		GROUP BY i.cInvName,rs.cBatch,rs.cFree1
 		)tab2 on tab2.cInvName=tab1.cInvName and tab2.cBatch=tab1.cBatch and tab1.cfree1=tab2.cfree1
 		where tab2.jian-isnull(tab1.purchaseQuantity,0) > 0 and tab2.cinvName = #{goodName}

+ 106 - 6
jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/costLossReview/controller/SyCostLossReviewController.java

@@ -1,14 +1,22 @@
 package org.jeecg.modules.documents.costLossReview.controller;
 
+import com.alibaba.excel.EasyExcel;
+import com.alibaba.excel.ExcelWriter;
+import com.alibaba.excel.write.metadata.WriteSheet;
+import com.alibaba.excel.write.metadata.fill.FillConfig;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
+import org.apache.shiro.SecurityUtils;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.aspect.annotation.AutoLog;
 import org.jeecg.common.system.base.controller.JeecgController;
+import org.jeecg.common.system.vo.LoginUser;
+import org.jeecg.modules.cost.vo.SyCostAllocationPage;
 import org.jeecg.modules.documents.costLossReview.entity.CostAllocationReview;
 import org.jeecg.modules.documents.costLossReview.entity.FabricLossReview;
 import org.jeecg.modules.documents.costLossReview.entity.SyApprovalHistory;
@@ -25,10 +33,17 @@ import org.jeecg.modules.report.service.ISyFabricLossReportService;
 import org.jeecg.modules.syPlanStatistics.entity.SyPlanStatistics;
 import org.jeecg.modules.syPlanStatistics.service.ISyPlanStatisticsService;
 import org.jeecg.modules.system.util.oConvertUtils;
+import org.jeecgframework.poi.excel.def.NormalExcelConstants;
+import org.jeecgframework.poi.excel.entity.ExportParams;
+import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
+import org.springframework.web.servlet.ModelAndView;
 
+import javax.servlet.ServletOutputStream;
 import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.*;
 import java.sql.Wrapper;
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -53,7 +68,7 @@ public class SyCostLossReviewController extends JeecgController<SyOrderData, ISy
     private FabricLossMapper fabricLossMapper;
 
    /**
-    * 分页列表查询
+    * 计划统计单分页列表查询
     *
     * @param syCostLossReview
     * @param pageNo
@@ -61,15 +76,15 @@ public class SyCostLossReviewController extends JeecgController<SyOrderData, ISy
     * @param req
     * @return
     */
-   @AutoLog(value = "成本损失列表-分页列表查询")
-   @ApiOperation(value="成本损失列表-分页列表查询", notes="成本损失列表-分页列表查询")
+   @AutoLog(value = "计划统计单-分页列表查询")
+   @ApiOperation(value="计划统计单-分页列表查询", notes="计划统计单-分页列表查询")
    @GetMapping(value = "/list")
-   public Result<?> queryPageList(SyCostLossReview syCostLossReview,
+   public Result<IPage<SyCostLossReview>> queryPageList(SyCostLossReview syCostLossReview,
                                   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                   @RequestParam(name="pageSize", defaultValue="50") Integer pageSize,
                                   HttpServletRequest req) {
        Page page = new Page(pageNo, pageSize,false);
-
+       Result<IPage<SyCostLossReview>> result = new Result<IPage<SyCostLossReview>>();
        IPage<SyCostLossReview> nullList = new Page<>();
        List<String> sumList = new ArrayList<>();
        if(syCostLossReview.getPlanNo()=="" || syCostLossReview.getPlanNo()==null){
@@ -166,6 +181,16 @@ public class SyCostLossReviewController extends JeecgController<SyOrderData, ISy
                sy.setFfinalApproveDate(f.getFfinalApproveDate());
                sy.setFrejectDate(f.getFrejectDate());
                sy.setFstatus(f.getFstatus());
+//               //赋值成本审批数据
+//               sy.setCsubmitDate(f.getCsubmitDate());
+//               sy.setCfirstApproveDate(f.getCfirstApproveDate());
+//               sy.setCfinalApproveDate(f.getCfinalApproveDate());
+//               sy.setCrejectDate(f.getCrejectDate());
+//               sy.setCstatus(f.getCstatus());
+//               //计划单数据
+//               sy.setPlanMan(f.getPlanMan());
+//               sy.setRemarks(f.getRemarks());
+//               sy.setId(f.getId());
            }
 
            //赋值成本审批数据
@@ -188,7 +213,11 @@ public class SyCostLossReviewController extends JeecgController<SyOrderData, ISy
            }
 
        }
-       return Result.OK(pageList);
+       result.setResult(pageList);
+       result.setSuccess(true);
+       result.setMessage("查询成功!");
+       return result;
+
    }
 
     @AutoLog(value = "成本损失列表-分页面损列表查询")
@@ -390,4 +419,75 @@ public class SyCostLossReviewController extends JeecgController<SyOrderData, ISy
 
     }
 
+
+    /**
+     * 成本分配列表导出excel
+     *
+     * @param req
+     */
+    @RequestMapping(value = "/exportXls")
+    public void exportXls(CostAllocationReview sy,
+                          @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+                          @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+                          HttpServletRequest req, HttpServletResponse response) throws IOException {
+        Page<CostAllocationReview> page = new Page<CostAllocationReview>(pageNo, -1);
+        IPage<CostAllocationReview> pageList = syCostLossReviewService.queryCostAllocation(sy,page);
+        //获取模板输入流
+        InputStream inStream = new FileInputStream("D:\\单证模板\\成本分配列表.xlsx");
+        //通过poi创建表对象
+        XSSFWorkbook workbook = new XSSFWorkbook(inStream);
+        //遍历复制sheet
+        ByteArrayOutputStream bos = new ByteArrayOutputStream();
+        //写到流
+        workbook.write(bos);
+        ServletOutputStream outputStream = response.getOutputStream();
+        ByteArrayInputStream is = new ByteArrayInputStream(bos.toByteArray());
+        ExcelWriter excelWriter = EasyExcel.write(outputStream).withTemplate(is).build();
+        //填充配置, 这里的意义是给模板中的集合数据添加新行, 保证导出不会错乱
+        FillConfig fillConfig = FillConfig.builder().forceNewRow(Boolean.TRUE).build();
+
+        WriteSheet writeSheet1 = EasyExcel.writerSheet("成本分配").build();
+        excelWriter.fill(pageList.getRecords(), fillConfig, writeSheet1);
+
+        //关流
+        excelWriter.finish();
+        inStream.close();
+
+    }
+
+
+    /**
+     * 计划统计单列表导出excel
+     *
+     * @param req
+     */
+    @RequestMapping(value = "/planExportXls")
+    public void planExportXls(SyCostLossReview sy,
+                          @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+                          @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+                          HttpServletRequest req, HttpServletResponse response) throws IOException {
+        //Page<CostAllocationReview> page = new Page<CostAllocationReview>(pageNo, -1);
+        Result<IPage<SyCostLossReview>> pageList = this.queryPageList(sy,1,-1,req);
+        //获取模板输入流
+        InputStream inStream = new FileInputStream("D:\\单证模板\\计划单统计列表.xlsx");
+        //通过poi创建表对象
+        XSSFWorkbook workbook = new XSSFWorkbook(inStream);
+        //遍历复制sheet
+        ByteArrayOutputStream bos = new ByteArrayOutputStream();
+        //写到流
+        workbook.write(bos);
+        ServletOutputStream outputStream = response.getOutputStream();
+        ByteArrayInputStream is = new ByteArrayInputStream(bos.toByteArray());
+        ExcelWriter excelWriter = EasyExcel.write(outputStream).withTemplate(is).build();
+        //填充配置, 这里的意义是给模板中的集合数据添加新行, 保证导出不会错乱
+        FillConfig fillConfig = FillConfig.builder().forceNewRow(Boolean.TRUE).build();
+
+        WriteSheet writeSheet1 = EasyExcel.writerSheet("数据").build();
+        excelWriter.fill(pageList.getResult().getRecords(), fillConfig, writeSheet1);
+
+        //关流
+        excelWriter.finish();
+        inStream.close();
+
+    }
 }

+ 13 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/costLossReview/entity/CostAllocationReview.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
+import org.jeecgframework.poi.excel.annotation.Excel;
 import org.springframework.format.annotation.DateTimeFormat;
 import java.util.Date;
 
@@ -17,6 +18,7 @@ import java.util.Date;
 public class CostAllocationReview {
 
     @ApiModelProperty(value = "计划单号")
+    @Excel(name = "计划单号", width = 15)
     private String planNum;
     //保存日期
     private String createTime;
@@ -28,34 +30,44 @@ public class CostAllocationReview {
     private String status;
     /**款号*/
     @ApiModelProperty(value = "款号")
+    @Excel(name = "产品款号", width = 15)
     private String poStyleNum;
     /**业务员*/
+    @Excel(name = "外销员", width = 15)
     @ApiModelProperty(value = "业务员")
     private String exportSales;
     /**成衣合同号*/
     @ApiModelProperty(value = "成衣合同号")
+    @Excel(name = "成衣合同号", width = 15)
     private String garmentContractno;
     /**部门*/
     @ApiModelProperty(value = "部门")
+    @Excel(name = "部门", width = 15)
     private String department;
     /**客户简称*/
     @ApiModelProperty(value = "客户简称")
+    @Excel(name = "客户简称", width = 15)
     private String customerShortame;
     /**加工单位*/
     @ApiModelProperty(value = "加工单位")
+    @Excel(name = "加工单位", width = 15)
     private String processUnit;
     /**出运日期*/
     @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern="yyyy-MM-dd")
     @ApiModelProperty(value = "出运日期")
+    @Excel(name = "出运日期", width = 15)
     private String outdata;
     /**计划数量*/
     @ApiModelProperty(value = "计划数量")
+    @Excel(name = "计划数量", width = 15)
     private java.math.BigDecimal planQuantity;
     /**成衣件数-实际出货数量*/
     @ApiModelProperty(value = "成衣件数-实际出货数量")
+    @Excel(name = "实际出货数量", width = 15)
     private java.math.BigDecimal actualShipquantity;
     @ApiModelProperty(value = "短出数:计划数量和实际出货数量的差额")
+    @Excel(name = "短出数", width = 15)
     private java.math.BigDecimal shortseveral;
     /**短出货值*/
     @ApiModelProperty(value = "短出货值")
@@ -64,6 +76,7 @@ public class CostAllocationReview {
     @ApiModelProperty(value = "短出面料成本:单件成本*短出数量")
     private java.math.BigDecimal fabricshortcost;
     @ApiModelProperty(value = "制单人")
+    @Excel(name = "制单人", width = 15)
     private String preparedBy;
 
 

+ 1 - 1
jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/costLossReview/entity/SyCostLossReview.java

@@ -33,7 +33,7 @@ public class SyCostLossReview {
 	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern="yyyy-MM-dd")
     @ApiModelProperty(value = "订单日期")
-	private Date dverifyDate;
+	private String dverifyDate;
 	/**部门*/
 	@Excel(name = "销售部门", width = 15)
     @ApiModelProperty(value = "销售部门")

+ 22 - 114
jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/costLossReview/mapper/xml/SyCostLossReviewMapper.xml

@@ -4,52 +4,8 @@
     <select id="querylist" resultType="org.jeecg.modules.documents.costLossReview.entity.SyCostLossReview">
 
 
-        select planNo,min(dverifyDate) as dverifyDate,min(department) as department,min(salesman) as salesman,min(maker) as maker from (
-
-        select  case when PATINDEX('%备%', t.planNo) !=0 then left(t.planNo,6) else t.planNo end as planNo,t.salesman,t.maker,t.department,t.dverifyDate from (
-
-        select LEFT(cCode,CHARINDEX('-',cCode)-1) as planNo,dverifydate as dverifyDate,de.cDepName as department,
-        pe.cPersonName as salesman,cMaker as maker from UFDATA_103_2021.dbo.OM_MOMain s
-        JOIN UFDATA_103_2021.dbo.Department de ON s.cDepCode = de.cDepCode
-        JOIN UFDATA_103_2021.dbo.Person  pe ON s.cPersonCode = pe.cPersonCode
-        where cCode like 'sy%' and CHARINDEX('-',cCode)>0
-
-        union all
-        select LEFT(cPOID,CHARINDEX('-',cPOID)-1) as planNo,cAuditDate as dverifyDate,de.cDepName as department,
-        pe.cPersonName as salesman,cMaker as maker from UFDATA_103_2021.dbo.PO_Pomain s
-        JOIN UFDATA_103_2021.dbo.Department de ON s.cDepCode = de.cDepCode
-        JOIN UFDATA_103_2021.dbo.Person  pe ON s.cPersonCode = pe.cPersonCode
-        where cPOID like 'sy%' and CHARINDEX('-',cPOID)>0
-
-        union all
-
-        select LEFT(cCode,CHARINDEX('-',cCode)-1) as planNo,dverifydate as dverifyDate,de.cDepName as department,
-        pe.cPersonName as salesman,cMaker as maker from UFDATA_101_2021.dbo.OM_MOMain s
-        JOIN UFDATA_101_2021.dbo.Department de ON s.cDepCode = de.cDepCode
-        JOIN UFDATA_101_2021.dbo.Person  pe ON s.cPersonCode = pe.cPersonCode
-        where cCode like 'sy%' and CHARINDEX('-',cCode)>0
-
-        union all
-        select LEFT(cPOID,CHARINDEX('-',cPOID)-1) as planNo,cAuditDate as dverifyDate,de.cDepName as department,
-        pe.cPersonName as salesman,cMaker as maker from UFDATA_101_2021.dbo.PO_Pomain s
-        JOIN UFDATA_101_2021.dbo.Department de ON s.cDepCode = de.cDepCode
-        JOIN UFDATA_101_2021.dbo.Person  pe ON s.cPersonCode = pe.cPersonCode
-        where cPOID like 'sy%' and CHARINDEX('-',cPOID)>0
-
-        union all
-        select LEFT(cPOID,CHARINDEX('-',cPOID)-1) as planNo,cAuditDate as dverifyDate,de.cDepName as department,
-        pe.cPersonName as salesman,cMaker as maker from UFDATA_102_2021.dbo.PO_Pomain s
-        JOIN UFDATA_102_2021.dbo.Department de ON s.cDepCode = de.cDepCode
-        JOIN UFDATA_102_2021.dbo.Person  pe ON s.cPersonCode = pe.cPersonCode
-        where cPOID like 'sy%' and CHARINDEX('-',cPOID)>0
-
-        ) t
-        where PATINDEX('%[吖-咗]%', planNo)=0 and PATINDEX('%.%', planNo)=0 and PATINDEX('%/%', planNo)=0
-
-        ) as views
-        group by views.planNo HAVING planNo in(
-
-        select  case when PATINDEX('%备%', t.planNo) !=0 then left(t.planNo,6) else t.planNo end as planNo from (
+        select  t1.planNo,CONVERT(VARCHAR(20),t1.dverifyDate,23) as dverifyDate,t1.department,t1.salesman,t1.maker from (
+        select  case when PATINDEX('%备%', t.planNo) !=0 then left(t.planNo,6) else t.planNo end as planNo, min(t.dverifyDate) as dverifyDate,max(department) as department,max(salesman) as salesman,max(maker) as maker from (
 
         select LEFT(cCode,CHARINDEX('-',cCode)-1) as planNo,dverifydate as dverifyDate,de.cDepName as department,
         pe.cPersonName as salesman,cMaker as maker from UFDATA_103_2021.dbo.OM_MOMain s
@@ -91,9 +47,6 @@
         <if test="e.planNo !=null and e.planNo !=''">
             and t.planNo = #{e.planNo}
         </if>
-        <if test="e.dverifyDateB !=null and e.dverifyDateB !='' and e.dverifyDateE !=null and e.dverifyDateE !=''">
-            and t.dverifyDate between #{e.dverifyDateB} and #{e.dverifyDateE}
-        </if>
         <if test="e.department !=null and e.department !=''">
             and t.department = #{e.department}
         </if>
@@ -112,74 +65,33 @@
                 #{item}
             </foreach>
         </if>
-        GROUP BY t.planNo, t.dverifyDate
-        ) AND min(dverifyDate) between #{e.dverifyDateB} and #{e.dverifyDateE} ORDER BY min(dverifyDate)
-
+        GROUP BY t.planNo
+        ) t1
+        <if test="e.dverifyDateB !=null and e.dverifyDateB !='' and e.dverifyDateE !=null and e.dverifyDateE !=''">
+            where t1.dverifyDate between #{e.dverifyDateB} and #{e.dverifyDateE}
+        </if>
+        ORDER BY t1.dverifyDate
 
     </select>
     <!--order by dverifyDate desc offset #{pageNO} rows fetch next #{pageSize} rows only-->
 
     <select id="querylistCount" resultType="java.lang.Integer">
 
-        select count(1) from(
-        select planNo from (
-        select case when PATINDEX('%备%', t.planNo) !=0 then left(t.planNo,6) else t.planNo end as
-        planNo,t.salesman,t.maker,t.department,t.dverifyDate from (
+        select count(1) from (
+        select  t1.planNo,t1.dverifyDate,t1.department,t1.salesman,t1.maker from (
+        select  case when PATINDEX('%备%', t.planNo) !=0 then left(t.planNo,6) else t.planNo end as planNo, min(t.dverifyDate) as dverifyDate,max(department) as department,max(salesman) as salesman,max(maker) as maker from (
 
         select LEFT(cCode,CHARINDEX('-',cCode)-1) as planNo,dverifydate as dverifyDate,de.cDepName as department,
         pe.cPersonName as salesman,cMaker as maker from UFDATA_103_2021.dbo.OM_MOMain s
         JOIN UFDATA_103_2021.dbo.Department de ON s.cDepCode = de.cDepCode
-        JOIN UFDATA_103_2021.dbo.Person pe ON s.cPersonCode = pe.cPersonCode
-        where cCode like 'sy%' and CHARINDEX('-',cCode)>0
-
-        union all
-        select LEFT(cPOID,CHARINDEX('-',cPOID)-1) as planNo,cAuditDate as dverifyDate,de.cDepName as department,
-        pe.cPersonName as salesman,cMaker as maker from UFDATA_103_2021.dbo.PO_Pomain s
-        JOIN UFDATA_103_2021.dbo.Department de ON s.cDepCode = de.cDepCode
-        JOIN UFDATA_103_2021.dbo.Person pe ON s.cPersonCode = pe.cPersonCode
-        where cPOID like 'sy%' and CHARINDEX('-',cPOID)>0
-
-        union all
-
-        select LEFT(cCode,CHARINDEX('-',cCode)-1) as planNo,dverifydate as dverifyDate,de.cDepName as department,
-        pe.cPersonName as salesman,cMaker as maker from UFDATA_101_2021.dbo.OM_MOMain s
-        JOIN UFDATA_101_2021.dbo.Department de ON s.cDepCode = de.cDepCode
-        JOIN UFDATA_101_2021.dbo.Person pe ON s.cPersonCode = pe.cPersonCode
-        where cCode like 'sy%' and CHARINDEX('-',cCode)>0
-
-        union all
-        select LEFT(cPOID,CHARINDEX('-',cPOID)-1) as planNo,cAuditDate as dverifyDate,de.cDepName as department,
-        pe.cPersonName as salesman,cMaker as maker from UFDATA_101_2021.dbo.PO_Pomain s
-        JOIN UFDATA_101_2021.dbo.Department de ON s.cDepCode = de.cDepCode
-        JOIN UFDATA_101_2021.dbo.Person pe ON s.cPersonCode = pe.cPersonCode
-        where cPOID like 'sy%' and CHARINDEX('-',cPOID)>0
-
-        union all
-        select LEFT(cPOID,CHARINDEX('-',cPOID)-1) as planNo,cAuditDate as dverifyDate,de.cDepName as department,
-        pe.cPersonName as salesman,cMaker as maker from UFDATA_102_2021.dbo.PO_Pomain s
-        JOIN UFDATA_102_2021.dbo.Department de ON s.cDepCode = de.cDepCode
-        JOIN UFDATA_102_2021.dbo.Person pe ON s.cPersonCode = pe.cPersonCode
-        where cPOID like 'sy%' and CHARINDEX('-',cPOID)>0
-
-        ) t
-        where PATINDEX('%[吖-咗]%', planNo)=0 and PATINDEX('%.%', planNo)=0 and PATINDEX('%/%', planNo)=0
-
-        ) as views
-        group by views.planNo HAVING planNo in(
-
-        select case when PATINDEX('%备%', t.planNo) !=0 then left(t.planNo,6) else t.planNo end as planNo from (
-
-        select LEFT(cCode,CHARINDEX('-',cCode)-1) as planNo,dverifydate as dverifyDate,de.cDepName as department,
-        pe.cPersonName as salesman,cMaker as maker from UFDATA_103_2021.dbo.OM_MOMain s
-        JOIN UFDATA_103_2021.dbo.Department de ON s.cDepCode = de.cDepCode
-        JOIN UFDATA_103_2021.dbo.Person pe ON s.cPersonCode = pe.cPersonCode
+        JOIN UFDATA_103_2021.dbo.Person  pe ON s.cPersonCode = pe.cPersonCode
         where cCode like 'sy%' and CHARINDEX('-',cCode)>0
 
         union all
         select LEFT(cPOID,CHARINDEX('-',cPOID)-1) as planNo,cAuditDate as dverifyDate,de.cDepName as department,
         pe.cPersonName as salesman,cMaker as maker from UFDATA_103_2021.dbo.PO_Pomain s
         JOIN UFDATA_103_2021.dbo.Department de ON s.cDepCode = de.cDepCode
-        JOIN UFDATA_103_2021.dbo.Person pe ON s.cPersonCode = pe.cPersonCode
+        JOIN UFDATA_103_2021.dbo.Person  pe ON s.cPersonCode = pe.cPersonCode
         where cPOID like 'sy%' and CHARINDEX('-',cPOID)>0
 
         union all
@@ -187,21 +99,21 @@
         select LEFT(cCode,CHARINDEX('-',cCode)-1) as planNo,dverifydate as dverifyDate,de.cDepName as department,
         pe.cPersonName as salesman,cMaker as maker from UFDATA_101_2021.dbo.OM_MOMain s
         JOIN UFDATA_101_2021.dbo.Department de ON s.cDepCode = de.cDepCode
-        JOIN UFDATA_101_2021.dbo.Person pe ON s.cPersonCode = pe.cPersonCode
+        JOIN UFDATA_101_2021.dbo.Person  pe ON s.cPersonCode = pe.cPersonCode
         where cCode like 'sy%' and CHARINDEX('-',cCode)>0
 
         union all
         select LEFT(cPOID,CHARINDEX('-',cPOID)-1) as planNo,cAuditDate as dverifyDate,de.cDepName as department,
         pe.cPersonName as salesman,cMaker as maker from UFDATA_101_2021.dbo.PO_Pomain s
         JOIN UFDATA_101_2021.dbo.Department de ON s.cDepCode = de.cDepCode
-        JOIN UFDATA_101_2021.dbo.Person pe ON s.cPersonCode = pe.cPersonCode
+        JOIN UFDATA_101_2021.dbo.Person  pe ON s.cPersonCode = pe.cPersonCode
         where cPOID like 'sy%' and CHARINDEX('-',cPOID)>0
 
         union all
         select LEFT(cPOID,CHARINDEX('-',cPOID)-1) as planNo,cAuditDate as dverifyDate,de.cDepName as department,
         pe.cPersonName as salesman,cMaker as maker from UFDATA_102_2021.dbo.PO_Pomain s
         JOIN UFDATA_102_2021.dbo.Department de ON s.cDepCode = de.cDepCode
-        JOIN UFDATA_102_2021.dbo.Person pe ON s.cPersonCode = pe.cPersonCode
+        JOIN UFDATA_102_2021.dbo.Person  pe ON s.cPersonCode = pe.cPersonCode
         where cPOID like 'sy%' and CHARINDEX('-',cPOID)>0
 
         ) t
@@ -209,9 +121,6 @@
         <if test="e.planNo !=null and e.planNo !=''">
             and t.planNo = #{e.planNo}
         </if>
-        <if test="e.dverifyDateB !=null and e.dverifyDateB !='' and e.dverifyDateE !=null and e.dverifyDateE !=''">
-            and t.dverifyDate between #{e.dverifyDateB} and #{e.dverifyDateE}
-        </if>
         <if test="e.department !=null and e.department !=''">
             and t.department  = #{e.department}
         </if>
@@ -230,9 +139,9 @@
                 #{item}
             </foreach>
         </if>
-        GROUP BY t.planNo, t.dverifyDate
-        ) AND min(dverifyDate) between #{e.dverifyDateB} and #{e.dverifyDateE}
-        ) as dd
+        GROUP BY t.planNo
+        ) t1 where t1.dverifyDate between #{e.dverifyDateB} and #{e.dverifyDateE}
+        ) t2
 
 
     </select>
@@ -414,10 +323,9 @@
 
     <select id="querySyFabricLossByCode" resultType="org.jeecg.modules.documents.costLossReview.entity.SyCostLossReview">
         select
-        submit_date as fsubmitDate,reject_date as frejectDate,first_approve_date as ffirstApproveDate,
-        final_approve_date as ffinalApproveDate,status as fstatus
-        from sy_fabric_loss_report
-        where plan_code=#{planCode}
+        *
+        from loss_cost_paln_view
+        where planCode=#{planCode} group by planCode
     </select>
 
     <select id="queryCostAllocationByCode" resultType="org.jeecg.modules.documents.costLossReview.entity.SyCostLossReview">

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

@@ -108,7 +108,7 @@ hod,salesman,sales_Department as salesDepartment,spur_or_sub_order as spurOrSubO
 
          select itemNumber,sum(boxNumber) as boxNumber,smallPo,sum(total) as total,sum(totalGrossWeight) as totalGrossWeight,
          sum(totalNetWeight) as totalNetWeight,sum(totalVolume) as totalVolume,containerCode,containerNumber,
-         unitPrice,sum(totalPrice) as totalPrice,hod,salesman,salesDepartment,spurOrSubOrder,supplier,englishName,pcs,ctns,kgs,cbm,
+         unitPrice,sum(totalPrice) as totalPrice,hod,salesman,salesDepartment,GROUP_CONCAT(DISTINCT spurOrSubOrder) as spurOrSubOrder,supplier,englishName,pcs,ctns,kgs,cbm,
          t.clientAbbreviation,t.hod,case when t.isTc = '0' then '否' else '是' end as isTc,sum(packs) as packs
           from(
  select a.item_number as itemNumber,a.small_po as smallPo,round(sum(a.total),2) as total,round(a.box_number,0) as boxNumber,

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

@@ -152,7 +152,7 @@ where a.sy_shipping_order_item_id =#{id}
 select t.preDate,t.supplier,t.id, t.hsCode,sum(t.boxNumber) as boxNumber, t.declarationName,t.englishProductName,sum(t.number) as number,round(t.unitPrice,2) as unitPrice,
 round(sum(t.totalPrice),2) as totalPrice,round(sum(t.grossWeight),2) as grossWeight,round(sum(t.netWeight),2) as netWeight,t.pcs,t.pacs,
 round(sum(t.volume),3) as volume,t.curr,t.dree,t.place,t.certificate,t.styleNumber,t.smailPo,t.orderNumber,t.ctns,t.kgs,t.cbm,pkOrg,t.factoryUnitPrice,
-t.outerBoxLength,t.outerBoxWidth,t.outerBoxHeight,t.hod,t.unIt,t.emp,t.purchaseOutsourcingOrderNo,t.packId,t.salesman,t.earliestDeliveryDate,t.declarationUnit,
+t.outerBoxLength,t.outerBoxWidth,t.outerBoxHeight,t.hod,t.unIt,t.emp,GROUP_CONCAT(DISTINCT t.purchaseOutsourcingOrderNo) as purchaseOutsourcingOrderNo,t.packId,t.salesman,t.earliestDeliveryDate,t.declarationUnit,
 t.clientAbbreviation,t.pcGw,t.priceGw from (
 select DATE_FORMAT(a.pre_shipment_date,'%y-%m-%d') as preDate,a.garment_factory as garmentFactory,a.supplier,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,a.gross_weight as grossWeight,a.net_weight as netWeight,a.master_metering as pcs,a.volume as volume,a.elements_Id as elementsId,

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

@@ -2,6 +2,7 @@ package org.jeecg.modules.documents.syShippingOrder.service.impl;
 
 import com.baomidou.dynamic.datasource.annotation.DS;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.apache.shiro.SecurityUtils;
 import org.jeecg.common.exception.JeecgBootException;
@@ -479,6 +480,13 @@ public class SyShippingOrderServiceImpl extends ServiceImpl<SyShippingOrderMappe
             for(SyShippingOrder li:entityList){
                 li.setTheDocumentsState("1");
                 updateById(li);
+
+                UpdateWrapper updateWrapper=new UpdateWrapper();
+                updateWrapper.set("push_State","3");
+                updateWrapper.ne("push_State","4");//不等于4
+                updateWrapper.ne("push_State","1");//不等于4
+                updateWrapper.in("shipping_order_number", li.getShippingOrderNumber());
+                syShippingOrderItemService.update(updateWrapper);
             }
             i = 1;
         }else if(entityList.size()!=0 && type.equals("2")){