Jelajahi Sumber

供应商产能报表

huxy 3 tahun lalu
induk
melakukan
213a7d5419

+ 19 - 12
jeecg-boot-module-system/src/main/java/org/jeecg/modules/scas/controller/SupplierCapacityController.java

@@ -30,6 +30,7 @@ import javax.servlet.http.HttpServletRequest;
 import java.io.FileNotFoundException;
 import java.io.FileOutputStream;
 import java.io.IOException;
+import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
@@ -58,10 +59,14 @@ public class SupplierCapacityController extends JeecgController<SupplierCapacity
       return Result.ok(SupplierCapacityService.selectList(supplierCapacityDto));
    }*/
 
-   @AutoLog(value = "供应链产能报表查询-通过条件查询")
-   @ApiOperation(value="供应链产能报表查询-通过条件查询", notes="供应链产能报表查询-通过条件查询")
+   @AutoLog(value = "供应链产能报表查询-通过条件查询")
+   @ApiOperation(value="供应链产能报表查询-通过条件查询", notes="供应链产能报表查询-通过条件查询")
    @RequestMapping(value = "/list",method = RequestMethod.GET)
    public Result<IPage<SupplierCapacity>> list(SupplierCapacityDto supplierCapacityDto, HttpServletRequest req){
+      //System.out.println("开始月份"+supplierCapacityDto.getStartDate().getMonth());
+      //System.out.println("结束月份"+supplierCapacityDto.getEndDate().getMonth());
+      //System.out.println("开始年份"+new SimpleDateFormat("yyyy").format(supplierCapacityDto.getStartDate()));
+      //System.out.println("结束年份"+new SimpleDateFormat("yyyy").format(supplierCapacityDto.getEndDate()));
       Result<IPage<SupplierCapacity>> result = new Result<IPage<SupplierCapacity>>();
       QueryWrapper<SupplierCapacityDto> queryWrapper = new QueryWrapper<>();//初始化
       if(supplierCapacityDto.getCsrccode()!=null&& !supplierCapacityDto.getCsrccode().trim().equals("") &&StringUtils.isNotBlank(supplierCapacityDto.getCsrccode())){//订单号
@@ -71,19 +76,21 @@ public class SupplierCapacityController extends JeecgController<SupplierCapacity
          queryWrapper.eq("p.cVenName",supplierCapacityDto.getVenName());
       }
       if(supplierCapacityDto.getPlanLotNumber()!=null&& !supplierCapacityDto.getPlanLotNumber().trim().equals("") &&StringUtils.isNotBlank(supplierCapacityDto.getPlanLotNumber())){//计划单号
-         queryWrapper.eq("p.planLotNumber",supplierCapacityDto.getPlanLotNumber());
+         queryWrapper.eq("p.cPlanLotNumber",supplierCapacityDto.getPlanLotNumber());
       }
-      if(supplierCapacityDto.getStartDate()!=null&&StringUtils.isNotBlank(supplierCapacityDto.getStartDate().toString())){//起始月份
-         queryWrapper.ge("month(p.dArriveDate)",supplierCapacityDto.getStartDate().toString());
+     if(supplierCapacityDto.getStartDate()!=null&&StringUtils.isNotBlank(supplierCapacityDto.getStartDate().toString())){//起始月份
+         queryWrapper.ge("month(p.dArriveDate)",supplierCapacityDto.getStartDate().getMonth()+1);
+        queryWrapper.ge("year(p.dArriveDate)",new SimpleDateFormat("yyyy").format(supplierCapacityDto.getStartDate()));
       }
       if(supplierCapacityDto.getEndDate()!=null&&StringUtils.isNotBlank(supplierCapacityDto.getEndDate().toString())){//结束月份
-         queryWrapper.le("month(p.dArriveDate)",supplierCapacityDto.getEndDate().toString());
+         queryWrapper.le("month(p.dArriveDate)",supplierCapacityDto.getEndDate().getMonth()+1);
+         queryWrapper.le("year(p.dArriveDate)",new SimpleDateFormat("yyyy").format(supplierCapacityDto.getEndDate()));
       }
-      /*if(supplierCapacityDto.getStartDate()!=null&&StringUtils.isNotBlank(supplierCapacityDto.getStartDate().toString())){//起始日期
-         queryWrapper.ge("p.dArriveDate",supplierCapacityDto.getStartDate().toString());
+     /* if(supplierCapacityDto.getStartDate()!=null&&StringUtils.isNotBlank(supplierCapacityDto.getStartDate().toString())){//起始日期
+         queryWrapper.ge("p.dArriveDate",supplierCapacityDto.getStartDate());
       }
       if(supplierCapacityDto.getEndDate()!=null&&StringUtils.isNotBlank(supplierCapacityDto.getEndDate().toString())){//结束日期
-         queryWrapper.le("p.dArriveDate",supplierCapacityDto.getEndDate().toString());
+         queryWrapper.le("p.dArriveDate",supplierCapacityDto.getEndDate());
       }*/
       if(supplierCapacityDto.getPlanLotNumber()!=null&& !supplierCapacityDto.getPlanLotNumber().trim().equals("") && StringUtils.isNotBlank(supplierCapacityDto.getOrderType())){//订单类型
          queryWrapper.eq("p.iOrderType",supplierCapacityDto.getOrderType());
@@ -108,20 +115,20 @@ public class SupplierCapacityController extends JeecgController<SupplierCapacity
    @ApiOperation(value="供应链产能报表-通过部门、供应商、月份excel导出", notes="供应链产能报表-通过部门、供应商、月份excel导出")
    @RequestMapping(value = "/excel1",method = RequestMethod.GET)
    public ModelAndView  excel1() {
-      return super.export("供应商产能报表测试", SupplierCapacityVo1.class,SupplierCapacityService.excel1());
+      return super.export("合并导出", SupplierCapacityVo1.class,SupplierCapacityService.excel1());
    }
 
    @AutoLog(value = "供应链产能报表-通过部门、月份excel导出")
    @ApiOperation(value="供应链产能报表-通过部门、月份excel导出", notes="供应链产能报表-通过部门、月份excel导出")
    @RequestMapping(value = "/excel2",method = RequestMethod.GET)
    public ModelAndView  excel2() {
-      return super.export("供应商产能报表测试", SupplierCapacityVo2.class,SupplierCapacityService.excel2());
+      return super.export("月份部门合计导出", SupplierCapacityVo2.class,SupplierCapacityService.excel2());
    }
 
    @AutoLog(value = "供应链产能报表-通过供应商、月份excel导出")
    @ApiOperation(value="供应链产能报表-通过供应商、月份excel导出", notes="供应链产能报表-通过供应商、月份excel导出")
    @RequestMapping(value = "/excel3",method = RequestMethod.GET)
    public ModelAndView  excel3() {
-      return super.export("供应商产能报表测试", SupplierCapacityVo3.class,SupplierCapacityService.excel3());
+      return super.export("月份供应商合计导出", SupplierCapacityVo3.class,SupplierCapacityService.excel3());
    }
 }

+ 7 - 7
jeecg-boot-module-system/src/main/java/org/jeecg/modules/scas/dto/SupplierCapacityDto.java

@@ -24,19 +24,19 @@ public class SupplierCapacityDto {
     @ApiModelProperty(value = "订单类型(委外订单、采购订单)")
     private String orderType;//订单类型
 
-   /* @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
-    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
     private Date startDate;//开始日期*/
 
-    /*@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
-    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
-    private Date endDate;//结束日期*/
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    private Date endDate;//结束日期
 
-    @ApiModelProperty(value = "开始月份")
+    /*@ApiModelProperty(value = "开始月份")
     private Integer startDate;//开始月份
 
     @ApiModelProperty(value = "结束月份")
-    private Integer endDate;//结束月份
+    private Integer endDate;//结束月份*/
 
     @ApiModelProperty(value = "当前页面")
     private Integer pageNo=1;//当前页面

+ 13 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/scas/entity/SupplierCapacity.java

@@ -11,30 +11,43 @@ import java.util.Date;
 @Data
 @ApiModel(description="供应链产能报表")
 public class SupplierCapacity {
+
     @ApiModelProperty(value = "订单号")
     private String csrccode;//订单号
+
     @ApiModelProperty(value = "计划单号")
     private String cPlanLotNumber;//计划单号
+
     @ApiModelProperty(value = "部门")
     private String cDepCode;//部门
+
     @ApiModelProperty(value = "业务员")
     private String cPersonCode;//业务员
+
     @ApiModelProperty(value = "供应商")
     private String cVenCode;//供应商
+
     @ApiModelProperty(value = "供应商类型")
     private String cVenCodeType;//供应商类型
+
     @ApiModelProperty(value = "订单类型")
     private String iOrderType;//订单类型
+
     @ApiModelProperty(value = "数量")
     private BigDecimal iQuantity;//数量
+
     @ApiModelProperty(value = "累计入库数量")
     private BigDecimal iReceivedQTY;//累计入库数量
+
     @ApiModelProperty(value = "单位")
     private String unit;//单位(委外或者采购)
+
     @ApiModelProperty(value = "计划到货月份")
     private Integer arriveMonth;//计划到货月份
+
     @ApiModelProperty(value = "计划到货日期")
     private Date dArriveDate;//计划到货日期
+
     @ApiModelProperty(value = "系数")
     private BigDecimal coefficient;//系数
 }

+ 7 - 7
jeecg-boot-module-system/src/main/java/org/jeecg/modules/scas/mapper/xml/SupplierCapacityMapper.xml

@@ -7,7 +7,8 @@
         (select ROW_NUMBER() OVER(ORDER BY cVenCode) index1,* from
         (select	--ROW_NUMBER() OVER(ORDER BY PO_Pomain.poid) index1,
         PO_Pomain.cPOID csrccode,
-        PlanLotNumber cPlanLotNumber,
+        --PlanLotNumber cPlanLotNumber,
+        left(PO_Pomain.cPOID,ISNULL(NULLIF(CHARINDEX('-',PO_Pomain.cPOID)-1,-1),len(PO_Pomain.cpoid))) cPlanLotNumber,
         cDepname cDepCode,
         cPersonName cPersonCode,
         cVenName cVenCode,
@@ -30,7 +31,8 @@
         union all
         select	--ROW_NUMBER() OVER(ORDER BY OM_MOMain.moid) index1,
         OM_MOMain.cCode csrccode,
-        cPlanLotNumber,
+        --cPlanLotNumber,
+        left(OM_MOMain.cCode,ISNULL(NULLIF(CHARINDEX('-',OM_MOMain.cCode)-1,-1),len(OM_MOMain.cCode))) cPlanLotNumber,
         cDepname cDepCode,
         cPersonName cPersonCode,
         cVenName cVenCode,
@@ -82,7 +84,7 @@
     select * from(
     select
             PO_Pomain.cPOID csrccode,
-            PlanLotNumber cPlanLotNumber,
+            left(PO_Pomain.cPOID,ISNULL(NULLIF(CHARINDEX('-',PO_Pomain.cPOID)-1,-1),len(PO_Pomain.cpoid))) cPlanLotNumber,
             cDepname cDepCode,
             cPersonName cPersonCode,
             cVenName cVenCode,
@@ -105,7 +107,7 @@
     union ALL
     select	--ROW_NUMBER() OVER(ORDER BY OM_MOMain.moid) index1,
             OM_MOMain.cCode csrccode,
-            cPlanLotNumber,
+            left(OM_MOMain.cCode,ISNULL(NULLIF(CHARINDEX('-',OM_MOMain.cCode)-1,-1),len(OM_MOMain.cCode))) cPlanLotNumber,
             cDepname cDepCode,
             cPersonName cPersonCode,
             cVenName cVenCode,
@@ -154,7 +156,7 @@
 				left join Inventory on PO_Podetails.cInvCode=Inventory.cInvCode
 				--order by cDepCode,cVenCode,arriveMonth
 					union all
-            select	cDepname cDepCode,
+                select	cDepname cDepCode,
 				cVenName cVenCode,
 				month(dArriveDate) arriveMonth,
 				iQuantity,
@@ -253,8 +255,6 @@
             left join Inventory on OM_MODetails.cInvCode=Inventory.cInvCode
     )p group by p.cVenCode,p.arriveMonth
          order by p.cVenCode,p.arriveMonth
-
-
     </select>
 
 </mapper>