浏览代码

杰生重构

home 2 年之前
父节点
当前提交
62fdc3d8a2
共有 32 个文件被更改,包括 839 次插入89 次删除
  1. 5 0
      bladex/blade-service-api/blade-user-api/src/main/java/org/springblade/system/user/entity/User.java
  2. 10 1
      bladex/blade-service-api/blade-user-api/src/main/java/org/springblade/system/user/feign/IUserSearchClient.java
  3. 5 0
      bladex/blade-service/blade-user/src/main/java/org/springblade/system/user/feign/UserSearchClient.java
  4. 8 0
      bladex/blade-service/blade-user/src/main/java/org/springblade/system/user/service/IUserSearchService.java
  5. 56 39
      bladex/blade-service/blade-user/src/main/java/org/springblade/system/user/service/impl/UserSearchServiceImpl.java
  6. 1 1
      hx-common/code-generator/src/main/java/com/fjhx/modular/StorageRestructure.java
  7. 20 0
      hx-service-api/storage-restructure-api/src/main/java/com/fjhx/constants/DetpIdConstant.java
  8. 5 0
      hx-service-api/storage-restructure-api/src/main/java/com/fjhx/entity/v3/V3Plan.java
  9. 135 0
      hx-service-api/storage-restructure-api/src/main/java/com/fjhx/entity/v3/V3PlanStatistics.java
  10. 91 0
      hx-service-api/storage-restructure-api/src/main/java/com/fjhx/params/v3/MaterialMath.java
  11. 55 0
      hx-service-api/storage-restructure-api/src/main/java/com/fjhx/params/v3/PlanDataMap.java
  12. 17 0
      hx-service-api/storage-restructure-api/src/main/java/com/fjhx/params/v3/V3PlanStatisticsEx.java
  13. 17 0
      hx-service-api/storage-restructure-api/src/main/java/com/fjhx/params/v3/V3PlanStatisticsVo.java
  14. 9 13
      hx-service/storage-restructure/src/main/java/com/fjhx/controller/task/ScheduleTaskController.java
  15. 38 0
      hx-service/storage-restructure/src/main/java/com/fjhx/controller/v3/V3PlanStatisticsController.java
  16. 28 2
      hx-service/storage-restructure/src/main/java/com/fjhx/mapper/v3/V3PlanMapper.java
  17. 50 0
      hx-service/storage-restructure/src/main/java/com/fjhx/mapper/v3/V3PlanMapper.xml
  18. 16 0
      hx-service/storage-restructure/src/main/java/com/fjhx/mapper/v3/V3PlanStatisticsMapper.java
  19. 5 0
      hx-service/storage-restructure/src/main/java/com/fjhx/mapper/v3/V3PlanStatisticsMapper.xml
  20. 2 2
      hx-service/storage-restructure/src/main/java/com/fjhx/service/common/impl/CommonFileServiceImpl.java
  21. 22 0
      hx-service/storage-restructure/src/main/java/com/fjhx/service/v3/V3PlanStatisticsService.java
  22. 176 11
      hx-service/storage-restructure/src/main/java/com/fjhx/service/v3/impl/V3PlanServiceImpl.java
  23. 39 0
      hx-service/storage-restructure/src/main/java/com/fjhx/service/v3/impl/V3PlanStatisticsServiceImpl.java
  24. 1 1
      hx-service/storage-restructure/src/main/java/com/fjhx/service/water/WaterBackService.java
  25. 9 8
      hx-service/storage-restructure/src/main/java/com/fjhx/service/water/impl/WaterBackServiceImpl.java
  26. 1 0
      hx-service/storage-restructure/src/main/java/com/fjhx/utils/GetV3DateUtil.java
  27. 1 1
      hx-service/storage/src/main/java/com/fjhx/stock/mapper/StockBackPlanMapper.xml
  28. 1 1
      hx-service/storage/src/main/java/com/fjhx/stock/service/impl/StockBackPlanServiceImpl.java
  29. 1 1
      hx-service/storage/src/main/java/com/fjhx/supplier/mapper/SupplierMapper.java
  30. 1 1
      hx-service/storage/src/main/java/com/fjhx/supplier/mapper/SupplierMapper.xml
  31. 8 3
      hx-service/storage/src/main/java/com/fjhx/supplier/service/impl/SupplierServiceImpl.java
  32. 6 4
      hx-service/storage/src/main/java/com/fjhx/task/controller/ScheduleTaskController.java

+ 5 - 0
bladex/blade-service-api/blade-user-api/src/main/java/org/springblade/system/user/entity/User.java

@@ -97,4 +97,9 @@ public class User extends TenantEntity {
      */
     private String appletOpenId;
 
+    /**
+     * 工号
+     */
+    private String jobNo;
+
 }

+ 10 - 1
bladex/blade-service-api/blade-user-api/src/main/java/org/springblade/system/user/feign/IUserSearchClient.java

@@ -46,6 +46,7 @@ public interface IUserSearchClient {
 
     String MAP_BY_USER = API_PREFIX + "/user/map-by-role";
     String GET_NAME_BY_USER_ID = API_PREFIX + "/user/get-user-name-and-post-by-user-id";
+    String GET_USER_ID_BY_JOB_NO = API_PREFIX + "/user/get-user-id-by-job-no";
 
     /**
      * 根据用户ID查询用户列表
@@ -93,7 +94,7 @@ public interface IUserSearchClient {
     R<Map<Long, String>> mapByUser(@RequestParam("userIdList") Collection<Long> userIdList);
 
     /**
-     * 通过用户id获取用户名称以及岗位名称
+     * 通过用户id获取用户名称、岗位名称、部门名称
      *
      * @param userIdList 用户id
      * @return MAP<用户id, 用户 、 岗位 、 部门名称>
@@ -101,5 +102,13 @@ public interface IUserSearchClient {
     @GetMapping(GET_NAME_BY_USER_ID)
     R<Map<Long, Map<String, Object>>> getNameByUserId(@RequestParam("userIdList") List<Long> userIdList);
 
+    /**
+     * 通过用户工号获取用户id
+     *
+     * @param jobNoList 用户工号
+     * @return MAP<用户工号, 用户id>
+     */
+    @GetMapping(GET_USER_ID_BY_JOB_NO)
+    R<Map<String, Long>> getUserIdByJobNo(@RequestParam("jobNoList") List<String> jobNoList);
 
 }

+ 5 - 0
bladex/blade-service/blade-user/src/main/java/org/springblade/system/user/feign/UserSearchClient.java

@@ -77,4 +77,9 @@ public class UserSearchClient implements IUserSearchClient {
 		return R.data(service.getUserNameAndPostByUserId(userIdList));
 	}
 
+	@Override
+	public R<Map<String, Long>> getUserIdByJobNo(List<String> jobNoList) {
+		return R.data(service.getUserIdByJobNo(jobNoList));
+	}
+
 }

+ 8 - 0
bladex/blade-service/blade-user/src/main/java/org/springblade/system/user/service/IUserSearchService.java

@@ -79,4 +79,12 @@ public interface IUserSearchService extends BaseService<User> {
 	 */
 	Map<Long, Map<String, Object>> getUserNameAndPostByUserId(List<Long> userIdList);
 
+	/**
+	 * 通过用户工号获取用户id
+	 *
+	 * @param jobNoList 用户工号
+	 * @return MAP<用户工号, 用户id>
+	 */
+	Map<String, Long> getUserIdByJobNo(List<String> jobNoList);
+
 }

+ 56 - 39
bladex/blade-service/blade-user/src/main/java/org/springblade/system/user/service/impl/UserSearchServiceImpl.java

@@ -22,6 +22,8 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import lombok.AllArgsConstructor;
 import org.springblade.core.mp.base.BaseEntity;
 import org.springblade.core.mp.base.BaseServiceImpl;
+import org.springblade.core.secure.utils.AuthUtil;
+import org.springblade.core.tenant.mp.TenantEntity;
 import org.springblade.system.user.entity.User;
 import org.springblade.system.user.mapper.UserMapper;
 import org.springblade.system.user.service.IUserSearchService;
@@ -42,51 +44,66 @@ import java.util.stream.Collectors;
 @AllArgsConstructor
 public class UserSearchServiceImpl extends BaseServiceImpl<UserMapper, User> implements IUserSearchService {
 
-	@Override
-	public List<User> listByUser(List<Long> userId) {
-		return this.list(Wrappers.<User>lambdaQuery().in(User::getId, userId));
-	}
+    @Override
+    public List<User> listByUser(List<Long> userId) {
+        return this.list(Wrappers.<User>lambdaQuery().in(User::getId, userId));
+    }
 
-	@Override
-	public List<User> listByDept(List<Long> deptId) {
-		LambdaQueryWrapper<User> queryWrapper = Wrappers.lambdaQuery();
-		deptId.forEach(id -> queryWrapper.like(User::getDeptId, id).or());
-		return this.list(queryWrapper);
-	}
+    @Override
+    public List<User> listByDept(List<Long> deptId) {
+        LambdaQueryWrapper<User> queryWrapper = Wrappers.lambdaQuery();
+        deptId.forEach(id -> queryWrapper.like(User::getDeptId, id).or());
+        return this.list(queryWrapper);
+    }
 
-	@Override
-	public List<User> listByPost(List<Long> postId) {
-		LambdaQueryWrapper<User> queryWrapper = Wrappers.lambdaQuery();
-		postId.forEach(id -> queryWrapper.like(User::getPostId, id).or());
-		return this.list(queryWrapper);
-	}
+    @Override
+    public List<User> listByPost(List<Long> postId) {
+        LambdaQueryWrapper<User> queryWrapper = Wrappers.lambdaQuery();
+        postId.forEach(id -> queryWrapper.like(User::getPostId, id).or());
+        return this.list(queryWrapper);
+    }
 
-	@Override
-	public List<User> listByRole(List<Long> roleId) {
-		LambdaQueryWrapper<User> queryWrapper = Wrappers.lambdaQuery();
-		roleId.forEach(id -> queryWrapper.like(User::getRoleId, id).or());
-		return this.list(queryWrapper);
-	}
+    @Override
+    public List<User> listByRole(List<Long> roleId) {
+        LambdaQueryWrapper<User> queryWrapper = Wrappers.lambdaQuery();
+        roleId.forEach(id -> queryWrapper.like(User::getRoleId, id).or());
+        return this.list(queryWrapper);
+    }
 
-	@Override
-	public Map<Long, String> mapByUser(Collection<Long> idList) {
-		if (idList == null || idList.size() == 0) {
-			return new HashMap<>();
-		}
+    @Override
+    public Map<Long, String> mapByUser(Collection<Long> idList) {
+        if (idList == null || idList.size() == 0) {
+            return new HashMap<>();
+        }
 
-		List<User> list = lambdaQuery().select(BaseEntity::getId, User::getName).in(User::getId, idList).list();
-		return list.stream().collect(Collectors.toMap(User::getId, User::getName));
-	}
+        List<User> list = lambdaQuery().select(BaseEntity::getId, User::getName).in(User::getId, idList).list();
+        return list.stream().collect(Collectors.toMap(User::getId, User::getName));
+    }
 
-	@Override
-	public Map<Long, Map<String, Object>> getUserNameAndPostByUserId(List<Long> userIdList) {
-		List<Map<String, Object>> list = baseMapper.getUserNameAndPostByUserId(
-				Wrappers.query().in("bu.id", userIdList).groupBy("bu.id"));
+    @Override
+    public Map<Long, Map<String, Object>> getUserNameAndPostByUserId(List<Long> userIdList) {
+        List<Map<String, Object>> list = baseMapper.getUserNameAndPostByUserId(
+                Wrappers.query().in("bu.id", userIdList).groupBy("bu.id"));
 
-		return list.stream().collect(Collectors.toMap(
-				item -> (Long) item.get("userId"),
-				item -> item
-		));
-	}
+        return list.stream().collect(Collectors.toMap(
+                item -> (Long) item.get("userId"),
+                item -> item
+        ));
+    }
+
+    @Override
+    public Map<String, Long> getUserIdByJobNo(List<String> jobNoList) {
+        List<User> list = list(Wrappers.<User>lambdaQuery()
+                .select(BaseEntity::getId, User::getJobNo)
+                .in(User::getJobNo, jobNoList)
+                .eq(TenantEntity::getTenantId, AuthUtil.getTenantId())
+        );
+
+        return list.stream().collect(Collectors.toMap(
+                User::getJobNo,
+                BaseEntity::getId,
+                (v1, v2) -> v2
+        ));
+    }
 
 }

+ 1 - 1
hx-common/code-generator/src/main/java/com/fjhx/modular/StorageRestructure.java

@@ -12,7 +12,7 @@ public class StorageRestructure {
         CodeGenerator.MODULAR_NAME = "storage-restructure";
 
         // 需要生成的表名称,多表用,隔开
-        CodeGenerator.INCLUDE = "water_transfer_details";
+        CodeGenerator.INCLUDE = "v3_plan_statistics";
 
         // mysql连接
         CodeGenerator.MYSQL_URL = "36.134.91.96:17330";

+ 20 - 0
hx-service-api/storage-restructure-api/src/main/java/com/fjhx/constants/DetpIdConstant.java

@@ -0,0 +1,20 @@
+package com.fjhx.constants;
+
+public interface DetpIdConstant {
+
+    /**
+     * 直喷
+     */
+    Long JET_PRINT = 1552549406245404674L;
+
+    /**
+     * 热转
+     */
+    Long TRANSFER = 1552549107359301633L;
+
+    /**
+     * 打纸
+     */
+    Long TYPING = 1552549638060392449L;
+
+}

+ 5 - 0
hx-service-api/storage-restructure-api/src/main/java/com/fjhx/entity/v3/V3Plan.java

@@ -48,6 +48,11 @@ public class V3Plan implements Serializable {
     private Long jobNo;
 
     /**
+     * 用户id
+     */
+    private Long userId;
+
+    /**
      * 创建时间
      */
     private Date createTime;

+ 135 - 0
hx-service-api/storage-restructure-api/src/main/java/com/fjhx/entity/v3/V3PlanStatistics.java

@@ -0,0 +1,135 @@
+package com.fjhx.entity.v3;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * <p>
+ *
+ * </p>
+ *
+ * @author ${author}
+ * @since 2022-10-31
+ */
+@Data
+public class V3PlanStatistics implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键id
+     */
+    @TableId(value = "id", type = IdType.ASSIGN_ID)
+    private Long id;
+
+    /**
+     * 用户id
+     */
+    private Long userId;
+
+    /**
+     * 排班物料
+     */
+    private String planMaterial;
+
+    /**
+     * 排班日期
+     */
+    private Date planDate;
+
+    /**
+     * 领料面积
+     */
+    private BigDecimal planArea;
+
+    /**
+     * 领料金额
+     */
+    private BigDecimal pickingMoney;
+
+    /**
+     * 领料数量
+     */
+    private Integer pickingNum;
+
+    /**
+     * 领料米数
+     */
+    private BigDecimal pickingMeters;
+
+    /**
+     * 领料面积
+     */
+    private BigDecimal pickingArea;
+
+    /**
+     * 退料金额
+     */
+    private BigDecimal backMoney;
+
+    /**
+     * 退料数量
+     */
+    private Integer backNum;
+
+    /**
+     * 退料米数
+     */
+    private BigDecimal backMeters;
+
+    /**
+     * 退料面积
+     */
+    private BigDecimal backArea;
+
+    /**
+     * 转入金额
+     */
+    private BigDecimal transferInMoney;
+
+    /**
+     * 转入数量
+     */
+    private Integer transferInNum;
+
+    /**
+     * 转入米数
+     */
+    private BigDecimal transferInMeters;
+
+    /**
+     * 转入面积
+     */
+    private BigDecimal transferInArea;
+
+    /**
+     * 转出金额
+     */
+    private BigDecimal transferOutMoney;
+
+    /**
+     * 转出数量
+     */
+    private Integer transferOutNum;
+
+    /**
+     * 转出米数
+     */
+    private BigDecimal transferOutMeters;
+
+    /**
+     * 转出面积
+     */
+    private BigDecimal transferOutArea;
+
+    /**
+     * 创建时间
+     */
+    private Date createTime;
+
+}

+ 91 - 0
hx-service-api/storage-restructure-api/src/main/java/com/fjhx/params/v3/MaterialMath.java

@@ -0,0 +1,91 @@
+package com.fjhx.params.v3;
+
+import cn.hutool.core.date.DateUtil;
+import cn.hutool.core.util.ObjectUtil;
+import com.fjhx.utils.BigDecimalUtil;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+@Setter
+public class MaterialMath {
+
+    /**
+     * 创建时间
+     */
+    private Date createTime;
+
+    /**
+     * 用户id
+     */
+    @Getter
+    private Long userId;
+
+    /**
+     * 物料名称
+     */
+    private String materialName;
+
+    /**
+     * 数量
+     */
+    private BigDecimal quantity;
+
+    /**
+     * 单价
+     */
+    private BigDecimal price;
+
+    /**
+     * 门幅
+     */
+    private BigDecimal width;
+
+    public Date getCreateTime(int h, int m) {
+        // 时
+        int dateH = Integer.parseInt(DateUtil.format(createTime, "H"));
+        // 分
+        int dateM = Integer.parseInt(DateUtil.format(createTime, "m"));
+        // 小于h时m分算前一日
+        if (dateH < h || (dateH == h && dateM <= m)) {
+            return DateUtil.beginOfDay(DateUtil.offsetDay(createTime, -1));
+        }
+
+        return DateUtil.beginOfDay(createTime);
+    }
+
+    public String getMaterialName() {
+        return materialName.split("-")[0];
+    }
+
+    public BigDecimal getQuantity() {
+        return ObjectUtil.defaultIfNull(quantity, BigDecimal.ZERO);
+    }
+
+    public BigDecimal getPrice() {
+        return ObjectUtil.defaultIfNull(price, BigDecimal.ZERO);
+    }
+
+    public BigDecimal getWidth() {
+        return ObjectUtil.defaultIfNull(width, BigDecimal.ZERO);
+    }
+
+    /**
+     * 金额
+     *
+     * @return
+     */
+    public BigDecimal getMoney() {
+        return BigDecimalUtil.multiply(getPrice(), getQuantity(), 2);
+    }
+
+    /**
+     * 面积
+     */
+    public BigDecimal getArea() {
+        return BigDecimalUtil.init(getQuantity()).multiply(getWidth()).divide(100, 2).getValue();
+    }
+
+}

+ 55 - 0
hx-service-api/storage-restructure-api/src/main/java/com/fjhx/params/v3/PlanDataMap.java

@@ -0,0 +1,55 @@
+package com.fjhx.params.v3;
+
+import com.fjhx.entity.v3.V3PlanStatistics;
+
+import java.math.BigDecimal;
+import java.util.Date;
+import java.util.HashMap;
+
+public class PlanDataMap extends HashMap<String, V3PlanStatistics> {
+
+    public V3PlanStatistics get(Long userId, String planMaterial, Date planTime, Date createTime) {
+        String key = userId + planMaterial + planTime;
+
+        V3PlanStatistics v3PlanStatistics = get(key);
+        if (v3PlanStatistics == null) {
+            v3PlanStatistics = createV3PlanStatistics(userId, planMaterial, planTime, createTime);
+            put(key, v3PlanStatistics);
+        }
+
+        return v3PlanStatistics;
+    }
+
+    private V3PlanStatistics createV3PlanStatistics(Long userId, String planMaterial, Date planDate, Date createTime) {
+        V3PlanStatistics stockBackPlanDetails = new V3PlanStatistics();
+        stockBackPlanDetails.setPlanMaterial(planMaterial);
+        stockBackPlanDetails.setPlanDate(planDate);
+        stockBackPlanDetails.setUserId(userId);
+        stockBackPlanDetails.setPlanArea(BigDecimal.ZERO);
+
+        stockBackPlanDetails.setPickingMoney(BigDecimal.ZERO);
+        stockBackPlanDetails.setPickingNum(0);
+        stockBackPlanDetails.setPickingMeters(BigDecimal.ZERO);
+        stockBackPlanDetails.setPickingArea(BigDecimal.ZERO);
+
+        stockBackPlanDetails.setBackMoney(BigDecimal.ZERO);
+        stockBackPlanDetails.setBackNum(0);
+        stockBackPlanDetails.setBackMeters(BigDecimal.ZERO);
+        stockBackPlanDetails.setBackArea(BigDecimal.ZERO);
+
+        stockBackPlanDetails.setTransferOutMoney(BigDecimal.ZERO);
+        stockBackPlanDetails.setTransferOutMeters(BigDecimal.ZERO);
+        stockBackPlanDetails.setTransferOutArea(BigDecimal.ZERO);
+        stockBackPlanDetails.setTransferOutNum(0);
+
+        stockBackPlanDetails.setTransferInMoney(BigDecimal.ZERO);
+        stockBackPlanDetails.setTransferInMeters(BigDecimal.ZERO);
+        stockBackPlanDetails.setTransferInArea(BigDecimal.ZERO);
+        stockBackPlanDetails.setTransferInNum(0);
+
+        stockBackPlanDetails.setCreateTime(createTime);
+
+        return stockBackPlanDetails;
+    }
+
+}

+ 17 - 0
hx-service-api/storage-restructure-api/src/main/java/com/fjhx/params/v3/V3PlanStatisticsEx.java

@@ -0,0 +1,17 @@
+package com.fjhx.params.v3;
+
+import com.fjhx.entity.v3.V3PlanStatistics;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 
+ *
+ * @author ${author}
+ * @since 2022-10-31
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class V3PlanStatisticsEx extends V3PlanStatistics {
+
+}

+ 17 - 0
hx-service-api/storage-restructure-api/src/main/java/com/fjhx/params/v3/V3PlanStatisticsVo.java

@@ -0,0 +1,17 @@
+package com.fjhx.params.v3;
+
+import com.fjhx.entity.v3.V3PlanStatistics;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 
+ *
+ * @author ${author}
+ * @since 2022-10-31
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class V3PlanStatisticsVo extends V3PlanStatistics {
+
+}

+ 9 - 13
hx-service/storage-restructure/src/main/java/com/fjhx/controller/task/ScheduleTaskController.java

@@ -1,29 +1,25 @@
 package com.fjhx.controller.task;
 
-import com.fjhx.service.v3.V3PlanService;
-import org.springblade.core.launch.BladeApplication;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.scheduling.annotation.EnableScheduling;
-import org.springframework.scheduling.annotation.Scheduled;
 
 @Configuration
 @EnableScheduling
 public class ScheduleTaskController {
 
-    @Autowired
-    private V3PlanService v3PlanService;
+//    @Autowired
+//    private V3PlanService v3PlanService;
 
     /**
      * 获取排班面积
      */
 //    @Scheduled(cron = "0 0/5 * * * ?")
-    @Scheduled(cron = "0 10 10 * * ?")
-    private void statisticsOfFabricUtilizationRate() {
-//        if (BladeApplication.isLocalDev()) {
-//            return;
-//        }
-        v3PlanService.statisticsOfFabricUtilizationRate(26);
-    }
+//    @PostConstruct
+//    private void statisticsOfFabricUtilizationRate() {
+////        if (BladeApplication.isLocalDev()) {
+////            return;
+////        }
+//        v3PlanService.statisticsOfFabricUtilizationRate(30);
+//    }
 
 }

+ 38 - 0
hx-service/storage-restructure/src/main/java/com/fjhx/controller/v3/V3PlanStatisticsController.java

@@ -0,0 +1,38 @@
+package com.fjhx.controller.v3;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.springblade.core.tool.api.R;
+import com.fjhx.entity.v3.V3PlanStatistics;
+import com.fjhx.params.v3.V3PlanStatisticsVo;
+import com.fjhx.service.v3.V3PlanStatisticsService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.Map;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author ${author}
+ * @since 2022-10-31
+ */
+@RestController
+@RequestMapping("/v3PlanStatistics")
+public class V3PlanStatisticsController {
+
+    @Autowired
+    private V3PlanStatisticsService v3PlanStatisticsService;
+
+    @PostMapping("/page")
+    public R page(@RequestBody Map<String, String> condition){
+        Page<V3PlanStatistics> result = v3PlanStatisticsService.getPage(condition);
+        return R.success(result);
+    }
+
+}
+

+ 28 - 2
hx-service/storage-restructure/src/main/java/com/fjhx/mapper/v3/V3PlanMapper.java

@@ -1,11 +1,17 @@
 package com.fjhx.mapper.v3;
 
-import com.fjhx.entity.v3.V3Plan;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.toolkit.Constants;
+import com.fjhx.entity.v3.V3Plan;
+import com.fjhx.params.v3.MaterialMath;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 /**
  * <p>
- *  Mapper 接口
+ * Mapper 接口
  * </p>
  *
  * @author ${author}
@@ -13,4 +19,24 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  */
 public interface V3PlanMapper extends BaseMapper<V3Plan> {
 
+    /**
+     * 出库
+     */
+    List<MaterialMath> issue(@Param("ew") QueryWrapper<Object> wrapper);
+
+    /**
+     * 回仓
+     */
+    List<MaterialMath> back(@Param("ew") QueryWrapper<Object> wrapper);
+
+    /**
+     * 转入
+     */
+    List<MaterialMath> in(@Param(Constants.WRAPPER) QueryWrapper<Object> wrapper);
+
+    /**
+     * 转出
+     */
+    List<MaterialMath> out(@Param(Constants.WRAPPER) QueryWrapper<Object> likeRight);
+
 }

+ 50 - 0
hx-service/storage-restructure/src/main/java/com/fjhx/mapper/v3/V3PlanMapper.xml

@@ -2,4 +2,54 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.fjhx.mapper.v3.V3PlanMapper">
 
+
+    <select id="issue" resultType="com.fjhx.params.v3.MaterialMath">
+        select wd.quantity,
+               wd.create_time,
+               wd.oper_user_id userId,
+               m.Name          materialName,
+               m.price,
+               m.width
+        from water_detail wd
+                 left join material m on wd.material_id = m.id
+            ${ew.customSqlSegment}
+    </select>
+
+    <select id="back" resultType="com.fjhx.params.v3.MaterialMath">
+        select wbd.quantity,
+               wbd.create_time,
+               wbd.create_user userId,
+               m.Name          materialName,
+               m.price,
+               m.width
+        from water_back_details wbd
+                 left join material m on wbd.material_id = m.id
+            ${ew.customSqlSegment}
+    </select>
+
+    <select id="in" resultType="com.fjhx.params.v3.MaterialMath">
+        select wtd.quantity,
+               wtd.create_time,
+               wtd.receive_id userId,
+               m.Name         materialName,
+               m.price,
+               m.width
+        from water_transfer_details wtd
+                 left join material m on wtd.material_id = m.id
+            ${ew.customSqlSegment}
+    </select>
+
+    <select id="out" resultType="com.fjhx.params.v3.MaterialMath">
+        select wtd.quantity,
+               wtd.create_time,
+               wtd.create_user userId,
+               m.Name          materialName,
+               m.price,
+               m.width
+        from water_transfer_details wtd
+                 left join material m on wtd.material_id = m.id
+            ${ew.customSqlSegment}
+    </select>
+
+
 </mapper>

+ 16 - 0
hx-service/storage-restructure/src/main/java/com/fjhx/mapper/v3/V3PlanStatisticsMapper.java

@@ -0,0 +1,16 @@
+package com.fjhx.mapper.v3;
+
+import com.fjhx.entity.v3.V3PlanStatistics;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author ${author}
+ * @since 2022-10-31
+ */
+public interface V3PlanStatisticsMapper extends BaseMapper<V3PlanStatistics> {
+
+}

+ 5 - 0
hx-service/storage-restructure/src/main/java/com/fjhx/mapper/v3/V3PlanStatisticsMapper.xml

@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.fjhx.mapper.v3.V3PlanStatisticsMapper">
+
+</mapper>

+ 2 - 2
hx-service/storage-restructure/src/main/java/com/fjhx/service/common/impl/CommonFileServiceImpl.java

@@ -49,13 +49,13 @@ public class CommonFileServiceImpl extends ServiceImpl<CommonFileMapper, CommonF
         fileInfo.setFileSuffix(suffix);
         fileInfo.setContentType(file.getContentType());
         fileInfo.setFileSize(file.getSize());
-        fileInfo.setFilePath(filePath);
+        fileInfo.setFilePath(OssUtil.getFilePath(filePath));
         save(fileInfo);
 
         Map<String, String> map = new HashMap<>();
 
         map.put("fileName", fileName);
-        map.put("filePath", filePath);
+        map.put("filePath", OssUtil.getFilePath(filePath));
         map.put("id", fileInfo.getId().toString());
 
         return map;

+ 22 - 0
hx-service/storage-restructure/src/main/java/com/fjhx/service/v3/V3PlanStatisticsService.java

@@ -0,0 +1,22 @@
+package com.fjhx.service.v3;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.entity.v3.V3PlanStatistics;
+import com.fjhx.params.v3.V3PlanStatisticsVo;
+import com.fjhx.base.StorageBaseService;
+
+import java.util.Map;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author ${author}
+ * @since 2022-10-31
+ */
+public interface V3PlanStatisticsService extends StorageBaseService<V3PlanStatistics> {
+
+    Page<V3PlanStatistics> getPage(Map<String, String> condition);
+
+}

+ 176 - 11
hx-service/storage-restructure/src/main/java/com/fjhx/service/v3/impl/V3PlanServiceImpl.java

@@ -1,21 +1,30 @@
 package com.fjhx.service.v3.impl;
 
-import cn.hutool.core.date.DateTime;
 import cn.hutool.core.date.DateUtil;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.fjhx.constants.DetpIdConstant;
+import com.fjhx.constants.StatusConstant;
 import com.fjhx.entity.v3.V3Plan;
+import com.fjhx.entity.v3.V3PlanStatistics;
 import com.fjhx.mapper.v3.V3PlanMapper;
+import com.fjhx.params.v3.MaterialMath;
+import com.fjhx.params.v3.PlanDataMap;
 import com.fjhx.service.v3.V3PlanService;
+import com.fjhx.service.v3.V3PlanStatisticsService;
+import com.fjhx.service.water.WaterBackService;
+import com.fjhx.utils.Assert;
 import com.fjhx.utils.GetV3DateUtil;
+import org.springblade.system.user.feign.IUserSearchClient;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import javax.annotation.Resource;
 import java.math.BigDecimal;
 import java.util.*;
-import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -28,19 +37,38 @@ import java.util.stream.Collectors;
 @Service
 public class V3PlanServiceImpl extends ServiceImpl<V3PlanMapper, V3Plan> implements V3PlanService {
 
+    @Resource
+    private IUserSearchClient userSearchClient;
+
+    @Autowired
+    private V3PlanStatisticsService v3PlanStatisticsService;
+
+    @Autowired
+    private WaterBackService waterBackService;
+
     @Transactional(rollbackFor = Exception.class)
     @Override
     public void statisticsOfFabricUtilizationRate(int offset) {
 
         Date date = new Date();
 
-        DateTime beginDate = DateUtil.beginOfDay(DateUtil.offsetDay(date, -offset));
-        DateTime endDate = DateUtil.endOfDay(date);
+        Date beginDate = DateUtil.beginOfDay(DateUtil.offsetDay(date, -offset));
+        Date endDate = DateUtil.endOfDay(date);
+
+        // 更新排班数据
+        List<V3Plan> v3Plans = renewPlanData(date, beginDate, endDate);
+
+        // 统计面料使用率
+        statisticsOfFabricUtilizationRate(v3Plans, date, beginDate, endDate);
+
+    }
 
+    private List<V3Plan> renewPlanData(Date date, Date beginDate, Date endDate) {
         JSONArray planData = GetV3DateUtil.getPlanData(beginDate, endDate);
         remove(Wrappers.<V3Plan>lambdaQuery().between(V3Plan::getPlanDate, beginDate, endDate));
 
-        Map<String, V3Plan> V3PlanMap = new HashMap<>();
+        Map<String, V3Plan> V3PlanMap = new LinkedHashMap<>();
+        HashSet<String> jobNoSet = new HashSet<>();
 
         for (Object planDatum : planData) {
             JSONObject item = (JSONObject) planDatum;
@@ -57,30 +85,36 @@ public class V3PlanServiceImpl extends ServiceImpl<V3PlanMapper, V3Plan> impleme
             Date planDate = item.getDate("planDate");
 
             // 喷印人员工号添加排班记录
-            addOrEditV3PlanMap(V3PlanMap, distributor, planTotalSquare, planDate, material, date);
+            addOrEditV3PlanMap(V3PlanMap, distributor, planTotalSquare, planDate, material, date, jobNoSet);
 
             // 打纸人员工号添加排班记录
-            addOrEditV3PlanMap(V3PlanMap, paperMan, planTotalSquare, planDate, "热转印纸", date);
+            addOrEditV3PlanMap(V3PlanMap, paperMan, planTotalSquare, planDate, "热转印纸", date, jobNoSet);
 
         }
 
-        List<V3Plan> v3PlanList = V3PlanMap.values().stream()
-                .sorted(Comparator.comparing(V3Plan::getPlanDate, Comparator.reverseOrder()))
-                .collect(Collectors.toList());
+        List<V3Plan> v3PlanList = new ArrayList<>(V3PlanMap.values());
+        Map<String, Long> userIdMap = Assert.result(userSearchClient.getUserIdByJobNo(new ArrayList<>(jobNoSet)));
+
+        // 赋值用户排班
+        v3PlanList.forEach(item -> item.setUserId(userIdMap.get(item.getJobNo().toString())));
 
         // 更新排班
         saveBatch(v3PlanList);
 
+        return v3PlanList;
     }
 
     /**
      * 更新排班数据
      */
-    private void addOrEditV3PlanMap(Map<String, V3Plan> flagMap, Long jobNo, BigDecimal planTotalSquare, Date planDate, String material, Date date) {
+    private void addOrEditV3PlanMap(Map<String, V3Plan> flagMap, Long jobNo, BigDecimal planTotalSquare,
+                                    Date planDate, String material, Date date, HashSet<String> jobNoSet) {
         if (Objects.equals(jobNo, 0L)) {
             return;
         }
 
+        jobNoSet.add(jobNo.toString());
+
         String key = jobNo + material + planDate;
         V3Plan v3Plan = flagMap.get(key);
 
@@ -98,4 +132,135 @@ public class V3PlanServiceImpl extends ServiceImpl<V3PlanMapper, V3Plan> impleme
         }
     }
 
+    /**
+     * 统计面料使用率
+     */
+    private void statisticsOfFabricUtilizationRate(List<V3Plan> v3PlanList, Date date, Date beginDate, Date endDate) {
+        v3PlanStatisticsService.remove(Wrappers.<V3PlanStatistics>lambdaQuery()
+                .between(V3PlanStatistics::getPlanDate, beginDate, endDate));
+
+        List<Long> userId = waterBackService.getUserIdByAppointDept(DetpIdConstant.JET_PRINT, DetpIdConstant.TYPING);
+        List<Long> transferUserId = waterBackService.getUserIdByAppointDept(DetpIdConstant.TRANSFER);
+
+        // 用户id,物料名称,排班时间封装成key,对象为value
+        PlanDataMap planDataMap = new PlanDataMap();
+        for (V3Plan v3Plan : v3PlanList) {
+            V3PlanStatistics v3PlanStatistics = planDataMap.get(v3Plan.getUserId(),
+                    v3Plan.getPlanMaterial(), v3Plan.getPlanDate(), date);
+            v3PlanStatistics.setPlanArea(v3Plan.getArea());
+        }
+
+        // 出库
+        issue(planDataMap, beginDate, userId, date, 7, 30);
+        // 转印部门出库
+        issue(planDataMap, beginDate, transferUserId, date, 8, 0);
+        // 回仓
+        back(planDataMap, beginDate, userId, date, 10, 0);
+        // 转印部门回仓
+        back(planDataMap, beginDate, transferUserId, date, 10, 0);
+        // 转入
+        in(planDataMap, beginDate, transferUserId, date, 0, 0);
+        // 转出
+        out(planDataMap, beginDate, transferUserId, date, 10, 0);
+
+    }
+
+    /**
+     * 出库
+     */
+    private void issue(PlanDataMap planDataMap, Date beginDate, List<Long> userId, Date date, int h, int m) {
+
+        List<MaterialMath> list = baseMapper.issue(Wrappers.query()
+                .ge("wd.create_time", DateUtil.format(beginDate, String.format("yyyy-MM-dd %s:%s:00", h, m)))
+                .in("wd.oper_user_id", userId)
+                .in("wd.type", 20, 23)
+                .likeRight("m.code", "01."));
+
+        for (MaterialMath materialMath : list) {
+            V3PlanStatistics v3PlanStatistics = planDataMap.get(materialMath.getUserId(),
+                    materialMath.getMaterialName(), materialMath.getCreateTime(h, m), date);
+            // 金额
+            v3PlanStatistics.setPickingMoney(v3PlanStatistics.getPickingMoney().add(materialMath.getMoney()));
+            // 数量
+            v3PlanStatistics.setPickingNum(v3PlanStatistics.getPickingNum() + 1);
+            // 米
+            v3PlanStatistics.setPickingMeters(v3PlanStatistics.getPickingMeters().add(materialMath.getQuantity()));
+            // 面积
+            v3PlanStatistics.setPickingArea(v3PlanStatistics.getPickingArea().add(materialMath.getArea()));
+        }
+    }
+
+    /**
+     * 回仓
+     */
+    private void back(PlanDataMap planDataMap, Date beginDate, List<Long> userId, Date date, int h, int m) {
+
+        List<MaterialMath> list = baseMapper.back(Wrappers.query()
+                .ge("wbd.create_time", DateUtil.format(beginDate, String.format("yyyy-MM-dd %s:%s:00", h, m)))
+                .in("wbd.create_user", userId)
+                .in("wbd.del_flag", StatusConstant.NOT_DELETED)
+                .likeRight("m.code", "01."));
+
+        for (MaterialMath materialMath : list) {
+            V3PlanStatistics v3PlanStatistics = planDataMap.get(materialMath.getUserId(),
+                    materialMath.getMaterialName(), materialMath.getCreateTime(h, m), date);
+            // 金额
+            v3PlanStatistics.setBackMoney(v3PlanStatistics.getBackMoney().add(materialMath.getMoney()));
+            // 数量
+            v3PlanStatistics.setBackNum(v3PlanStatistics.getBackNum() + 1);
+            // 米
+            v3PlanStatistics.setBackMeters(v3PlanStatistics.getBackMeters().add(materialMath.getQuantity()));
+            // 面积
+            v3PlanStatistics.setBackArea(v3PlanStatistics.getBackArea().add(materialMath.getArea()));
+        }
+    }
+
+    /**
+     * 转入
+     */
+    private void in(PlanDataMap planDataMap, Date beginDate, List<Long> userId, Date date, int h, int m) {
+
+        List<MaterialMath> list = baseMapper.in(Wrappers.query()
+                .ge("wtd.create_time", DateUtil.format(beginDate, String.format("yyyy-MM-dd %s:%s:00", h, m)))
+                .in("wtd.receive_id", userId)
+                .likeRight("m.code", "01."));
+
+        for (MaterialMath materialMath : list) {
+            V3PlanStatistics v3PlanStatistics = planDataMap.get(materialMath.getUserId(),
+                    materialMath.getMaterialName(), materialMath.getCreateTime(h, m), date);
+            // 金额
+            v3PlanStatistics.setTransferInMoney(v3PlanStatistics.getTransferInMoney().add(materialMath.getMoney()));
+            // 数量
+            v3PlanStatistics.setTransferInNum(v3PlanStatistics.getTransferInNum() + 1);
+            // 米
+            v3PlanStatistics.setTransferInMeters(v3PlanStatistics.getTransferInMeters().add(materialMath.getQuantity()));
+            // 面积
+            v3PlanStatistics.setTransferInArea(v3PlanStatistics.getTransferInArea().add(materialMath.getArea()));
+        }
+    }
+
+    /**
+     * 转入
+     */
+    private void out(PlanDataMap planDataMap, Date beginDate, List<Long> userId, Date date, int h, int m) {
+
+        List<MaterialMath> list = baseMapper.out(Wrappers.query()
+                .ge("wtd.create_time", DateUtil.format(beginDate, String.format("yyyy-MM-dd %s:%s:00", h, m)))
+                .in("wtd.create_user", userId)
+                .likeRight("m.code", "01."));
+
+        for (MaterialMath materialMath : list) {
+            V3PlanStatistics v3PlanStatistics = planDataMap.get(materialMath.getUserId(),
+                    materialMath.getMaterialName(), materialMath.getCreateTime(h, m), date);
+            // 金额
+            v3PlanStatistics.setTransferOutMoney(v3PlanStatistics.getTransferOutMoney().add(materialMath.getMoney()));
+            // 数量
+            v3PlanStatistics.setTransferOutNum(v3PlanStatistics.getTransferOutNum() + 1);
+            // 米
+            v3PlanStatistics.setTransferOutMeters(v3PlanStatistics.getTransferOutMeters().add(materialMath.getQuantity()));
+            // 面积
+            v3PlanStatistics.setTransferOutArea(v3PlanStatistics.getTransferOutArea().add(materialMath.getArea()));
+        }
+    }
+
 }

+ 39 - 0
hx-service/storage-restructure/src/main/java/com/fjhx/service/v3/impl/V3PlanStatisticsServiceImpl.java

@@ -0,0 +1,39 @@
+package com.fjhx.service.v3.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.utils.WrapperUtil;
+import com.fjhx.entity.v3.V3PlanStatistics;
+import com.fjhx.params.v3.V3PlanStatisticsVo;
+import com.fjhx.mapper.v3.V3PlanStatisticsMapper;
+import com.fjhx.service.v3.V3PlanStatisticsService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+import java.util.Map;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author ${author}
+ * @since 2022-10-31
+ */
+@Service
+public class V3PlanStatisticsServiceImpl extends ServiceImpl<V3PlanStatisticsMapper, V3PlanStatistics> implements V3PlanStatisticsService {
+
+    @Override
+    public Page<V3PlanStatistics> getPage(Map<String, String> condition) {
+
+        QueryWrapper<V3PlanStatistics> wrapper = Wrappers.query();
+
+        WrapperUtil.init(condition, wrapper)
+                .createTimeDesc();
+
+        Page<V3PlanStatistics> page = page(condition, wrapper);
+        return page;
+    }
+
+}

+ 1 - 1
hx-service/storage-restructure/src/main/java/com/fjhx/service/water/WaterBackService.java

@@ -53,7 +53,7 @@ public interface WaterBackService extends StorageBaseService<WaterBack> {
     /**
      * 获取直喷打纸热转部门用户
      */
-    List<Long> getUserIdByAppointDept();
+    List<Long> getUserIdByAppointDept(Long... deptId);
 
     /**
      * 退仓看板统计

+ 9 - 8
hx-service/storage-restructure/src/main/java/com/fjhx/service/water/impl/WaterBackServiceImpl.java

@@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.fjhx.base.Condition;
 import com.fjhx.base.StorageBaseEntity;
+import com.fjhx.constants.DetpIdConstant;
 import com.fjhx.constants.StatusConstant;
 import com.fjhx.entity.material.Material;
 import com.fjhx.entity.water.WaterBack;
@@ -173,7 +174,7 @@ public class WaterBackServiceImpl extends ServiceImpl<WaterBackMapper, WaterBack
     @Override
     public Map<String, Object> getUserByAppointDept() {
 
-        List<Long> list = Arrays.asList(1552549406245404674L, 1552549638060392449L, 1552549107359301633L);
+        List<Long> list = Arrays.asList(DetpIdConstant.JET_PRINT, DetpIdConstant.TRANSFER, DetpIdConstant.TYPING);
         R<List<User>> userListByDeptIdListR = userClient.getUserListByDeptIdList(list);
         List<User> userList = Assert.result(userListByDeptIdListR);
 
@@ -181,14 +182,14 @@ public class WaterBackServiceImpl extends ServiceImpl<WaterBackMapper, WaterBack
                 item -> 1,
                 item -> {
                     Map<String, Object> map = new HashMap<>();
-                    if (item.getDeptId().contains("1552549406245404674")) {
-                        map.put("deptId", 1552549406245404674L);
+                    if (item.getDeptId().contains(DetpIdConstant.JET_PRINT.toString())) {
+                        map.put("deptId", DetpIdConstant.JET_PRINT);
                         map.put("deptName", "直喷");
-                    } else if (item.getDeptId().contains("1552549638060392449")) {
-                        map.put("deptId", 1552549638060392449L);
+                    } else if (item.getDeptId().contains(DetpIdConstant.TYPING.toString())) {
+                        map.put("deptId", DetpIdConstant.TYPING);
                         map.put("deptName", "打纸");
                     } else {
-                        map.put("deptId", 1552549107359301633L);
+                        map.put("deptId", DetpIdConstant.TRANSFER.toString());
                         map.put("deptName", "热转");
                     }
 
@@ -208,8 +209,8 @@ public class WaterBackServiceImpl extends ServiceImpl<WaterBackMapper, WaterBack
     }
 
     @Override
-    public List<Long> getUserIdByAppointDept() {
-        List<Long> list = Arrays.asList(1552549406245404674L, 1552549638060392449L, 1552549107359301633L);
+    public List<Long> getUserIdByAppointDept(Long... deptId) {
+        List<Long> list = Arrays.asList(deptId);
         R<List<User>> userListByDeptIdListR = userClient.getUserListByDeptIdList(list);
         List<User> userList = Assert.result(userListByDeptIdListR);
 

+ 1 - 0
hx-service/storage-restructure/src/main/java/com/fjhx/utils/GetV3DateUtil.java

@@ -1,5 +1,6 @@
 package com.fjhx.utils;
 
+import cn.hutool.core.convert.Convert;
 import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.util.ObjectUtil;
 import com.alibaba.fastjson.JSONArray;

+ 1 - 1
hx-service/storage/src/main/java/com/fjhx/stock/mapper/StockBackPlanMapper.xml

@@ -84,7 +84,7 @@
 
     <select id="getReturnWarehouse" resultType="java.util.Map">
         select sbd.material_meters changeNum,
-               sb.checker_time     createTime,
+               sb.operation_time   createTime,
                m.Name              materialName,
                m.Price             price,
                m.Width             width,

+ 1 - 1
hx-service/storage/src/main/java/com/fjhx/stock/service/impl/StockBackPlanServiceImpl.java

@@ -361,7 +361,7 @@ public class StockBackPlanServiceImpl extends ServiceImpl<StockBackPlanMapper, S
      */
     private void returnWarehouse(Date beginDate, Map<String, StockBackPlanDetails> stockBackPlanMap) {
         List<Map<String, Object>> backList = baseMapper.getReturnWarehouse(Wrappers.query()
-                .ge("sb.checker_time", DateUtil.format(beginDate, "yyyy-MM-dd 10:00:00"))
+                .ge("sb.operation_time", DateUtil.format(beginDate, "yyyy-MM-dd 10:00:00"))
                 .eq("uu.IsDelete", 0)
                 .in("uu.DepartmentID", "A007", "A012")
                 .isNotNull("uu.JobNo")

+ 1 - 1
hx-service/storage/src/main/java/com/fjhx/supplier/mapper/SupplierMapper.java

@@ -161,7 +161,7 @@ public interface SupplierMapper extends BaseMapper<Supplier> {
      * @return
      */
     @TenantIgnore
-    List<Supplier> selectList(Map<String, Object> condition);
+    List<Supplier> selectLists(Map<String, Object> condition);
 
     @TenantIgnore
     List<Map<String, Object>> getSafetyWarnDayList();

+ 1 - 1
hx-service/storage/src/main/java/com/fjhx/supplier/mapper/SupplierMapper.xml

@@ -309,7 +309,7 @@
         ORDER BY a.CreatedTime ASC
     </select>
 
-    <select id="selectList" resultType="com.fjhx.entity.supplier.Supplier">
+    <select id="selectLists" resultType="com.fjhx.entity.supplier.Supplier">
         SELECT
         *
         FROM

+ 8 - 3
hx-service/storage/src/main/java/com/fjhx/supplier/service/impl/SupplierServiceImpl.java

@@ -1,5 +1,6 @@
 package com.fjhx.supplier.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.fjhx.attachment.service.StockAttachmentService;
@@ -128,8 +129,12 @@ public class SupplierServiceImpl extends ServiceImpl<SupplierMapper, Supplier> i
     public String add(Supplier supplier) {
         supplier.setCreatedTime(new Date());
         //生成code
-        if (StringUtil.isEmpty(supplier.getCode())) {
-            Supplier sCode = getOne(Wrappers.<Supplier>query().lambda().orderByDesc(Supplier::getCode).last("limit 1"));
+        if (ObjectUtil.isEmpty(supplier.getCode())) {
+
+            LambdaQueryWrapper<Supplier> wrapper = Wrappers.<Supplier>lambdaQuery()
+                    .orderByDesc(Supplier::getCode).last("limit 1");
+            Supplier sCode = baseMapper.selectOne(wrapper);
+
             if (ObjectUtil.isEmpty(sCode)) {
                 supplier.setCode("C001");
             } else {
@@ -322,7 +327,7 @@ public class SupplierServiceImpl extends ServiceImpl<SupplierMapper, Supplier> i
      */
     @Override
     public List<Supplier> selectList(Map<String, Object> condition) {
-        return baseMapper.selectList(condition);
+        return baseMapper.selectLists(condition);
     }
 
     @Override

+ 6 - 4
hx-service/storage/src/main/java/com/fjhx/task/controller/ScheduleTaskController.java

@@ -8,6 +8,8 @@ import org.springframework.context.annotation.Configuration;
 import org.springframework.scheduling.annotation.EnableScheduling;
 import org.springframework.scheduling.annotation.Scheduled;
 
+import javax.annotation.PostConstruct;
+
 @Configuration
 @EnableScheduling
 public class ScheduleTaskController {
@@ -44,24 +46,24 @@ public class ScheduleTaskController {
      * 获取排班面积
      */
     @Scheduled(cron = "0 0/5 * * * ?")
-//    @Scheduled(cron = "0 32 17 * * ?")
+//    @PostConstruct
     private void getScheduleTask() {
         if (BladeApplication.isLocalDev()) {
             return;
         }
-        stockBackPlanService.getScheduleTask(2);
+        stockBackPlanService.getScheduleTask(4);
     }
 
     /**
      * 统计排班数据
      */
     @Scheduled(cron = "30 0/5 * * * ?")
-//    @Scheduled(cron = "0 35 17 * * ?")
+//    @PostConstruct
     private void statisticsScheduleDateTask() {
         if (BladeApplication.isLocalDev()) {
             return;
         }
-        stockBackPlanService.statisticsScheduleDateTask(2);
+        stockBackPlanService.statisticsScheduleDateTask(4);
     }
 
 }