From 8e39c9bbf8a8bb4707f2a766295b40497ae96706 Mon Sep 17 00:00:00 2001
From: XiaoRuby <3114200645@qq.com>
Date: 星期五, 01 九月 2023 13:46:54 +0800
Subject: [PATCH] MOM系统-9-01 生产订单 生产计划完成
---
system-run/src/test/java/com/yuanchu/mom/SystemRunApplicationTest.java | 18
inventory-server/src/main/java/com/yuanchu/mom/service/impl/OrdersServiceImpl.java | 2
production-server/src/main/java/com/yuanchu/mom/mapper/ManualTechnologyMapper.java | 4
production-server/src/main/java/com/yuanchu/mom/service/impl/ManualTechnologyServiceImpl.java | 108 +++++-
pom.xml | 8
production-server/src/main/resources/mapper/ManufactureOrderMapper.xml | 38 --
production-server/src/main/java/com/yuanchu/mom/pojo/ManufactureScheduling.java | 72 ++++
production-server/src/main/java/com/yuanchu/mom/mapper/ManufactureOrderMapper.java | 7
production-server/src/main/java/com/yuanchu/mom/pojo/dto/ManualTechnologyDto1.java | 48 --
production-server/src/main/java/com/yuanchu/mom/pojo/ManualTechnology.java | 32 -
production-server/src/main/java/com/yuanchu/mom/service/ManufactureSchedulingService.java | 25 +
production-server/src/main/java/com/yuanchu/mom/pojo/ManufactureOrderProcess.java | 71 ++++
production-server/src/main/java/com/yuanchu/mom/pojo/ManufactureOrder.java | 8
production-server/src/main/java/com/yuanchu/mom/pojo/dto/ManualTechnologyDto.java | 22
production-server/src/main/java/com/yuanchu/mom/service/ManualTechnologyService.java | 9
production-server/src/main/java/com/yuanchu/mom/mapper/ManufactureSchedulingMapper.java | 24 +
production-server/src/main/java/com/yuanchu/mom/service/impl/ManufactureSchedulingServiceImpl.java | 43 ++
production-server/src/main/resources/mapper/ManualTechnologyMapper.xml | 61 +--
/dev/null | 23 -
production-server/src/main/java/com/yuanchu/mom/controller/ProductionPlanController.java | 58 ++-
production-server/src/main/java/com/yuanchu/mom/service/impl/ManufactureOrderProcessServiceImpl.java | 30 +
production-server/src/main/java/com/yuanchu/mom/controller/ManufactureOrderController.java | 45 +
production-server/src/main/java/com/yuanchu/mom/service/impl/ManufactureOrderServiceImpl.java | 84 +++-
production-server/src/main/resources/mapper/ManufactureOrderProcessMapper.xml | 5
production-server/src/main/resources/mapper/ManufactureSchedulingMapper.xml | 39 ++
system-run/src/main/java/com/yuanchu/mom/CodeGenerator.java | 2
production-server/src/main/java/com/yuanchu/mom/mapper/ManufactureOrderProcessMapper.java | 17 +
production-server/src/main/java/com/yuanchu/mom/service/ManufactureOrderProcessService.java | 19 +
production-server/src/main/java/com/yuanchu/mom/service/ManufactureOrderService.java | 17
29 files changed, 649 insertions(+), 290 deletions(-)
diff --git a/inventory-server/src/main/java/com/yuanchu/mom/service/impl/OrdersServiceImpl.java b/inventory-server/src/main/java/com/yuanchu/mom/service/impl/OrdersServiceImpl.java
index dab1184..1b945e8 100644
--- a/inventory-server/src/main/java/com/yuanchu/mom/service/impl/OrdersServiceImpl.java
+++ b/inventory-server/src/main/java/com/yuanchu/mom/service/impl/OrdersServiceImpl.java
@@ -85,7 +85,7 @@
.techfather(technology.getFather())
.deviceGroup(technology.getDeviceGroup())
.manufactureOrderId(manufactureOrder.getId())
- .technologyId(technology.getId())
+ .productionQuota(technology.getProductionQuota())
.build();
//鏂板缂栧埗宸ュ簭琛�
manualTechnologyMapper.insert(manualTechnology);
diff --git a/pom.xml b/pom.xml
index 5522b16..d372146 100644
--- a/pom.xml
+++ b/pom.xml
@@ -38,7 +38,7 @@
<openfeign.version>3.1.3</openfeign.version>
<feign-okhttp.version>11.0</feign-okhttp.version>
<shiro.version>1.5.3</shiro.version>
- <freemwork.version>2.3.32</freemwork.version>
+ <hutool.version>5.8.16</hutool.version>
<!--鎻愪氦鍓�-->
<!-- 鎵撳寘鍚庡鍑虹殑璺緞 -->
<package.path>${project.build.directory}/BLOG</package.path>
@@ -88,6 +88,12 @@
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
+
+ <dependency>
+ <groupId>cn.hutool</groupId>
+ <artifactId>hutool-all</artifactId>
+ <version>${hutool.version}</version>
+ </dependency>
</dependencies>
<dependencyManagement>
diff --git a/production-server/src/main/java/com/yuanchu/mom/controller/ManufactureOrderController.java b/production-server/src/main/java/com/yuanchu/mom/controller/ManufactureOrderController.java
index dd36134..5fbc557 100644
--- a/production-server/src/main/java/com/yuanchu/mom/controller/ManufactureOrderController.java
+++ b/production-server/src/main/java/com/yuanchu/mom/controller/ManufactureOrderController.java
@@ -6,6 +6,8 @@
import com.yuanchu.mom.pojo.dto.ManualTechnologyDto;
import com.yuanchu.mom.service.DeviceService;
import com.yuanchu.mom.service.ManualTechnologyService;
+import com.yuanchu.mom.service.ManufactureSchedulingService;
+import com.yuanchu.mom.utils.MyUtil;
import com.yuanchu.mom.vo.Result;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
@@ -39,11 +41,15 @@
@Autowired
private ManufactureOrderService manufactureOrderService;
+ @Autowired
+ private ManufactureSchedulingService manufactureSchedulingService;
+
@Resource
ManualTechnologyService manualTechnologyService;
@Resource
DeviceService deviceService;
+
@ApiOperation(value = "鏌ヨ鐢熶骇璁㈠崟鍒楄〃")
@ApiImplicitParams(value = {
@@ -72,6 +78,15 @@
return Result.success(manualTechnologyService.seleDatil(manOrdId));
}
+ @ApiOperation(value = "鐐瑰嚮鏌ョ湅鎺掍骇")
+ @ApiImplicitParams(value = {
+ @ApiImplicitParam(name = "manOrdId", value = "鐢熶骇璁㈠崟id", dataTypeClass = Integer.class, required = true)
+ })
+ @GetMapping("/select_Scheduling")
+ public Result<?> selectScheduling(Integer manOrdId) {
+ return Result.success(manufactureSchedulingService.selectScheduling(manOrdId));
+ }
+
@ApiOperation(value = "鐐瑰嚮鎺掍骇-->浜岀骇鏍戦�夋嫨璁惧")
@ApiImplicitParams(value = {
@ApiImplicitParam(name = "deviceGroup", value = "璁惧缁�", dataTypeClass = String.class, required = true)
@@ -82,28 +97,28 @@
}
@ApiOperation(value = "鐐瑰嚮鎺掍骇-->纭畾鎸夐挳")
- @ApiImplicitParams(value = {
- @ApiImplicitParam(name = "date", value = "鎺掍骇寮�濮嬫棩鏈�", dataTypeClass = String.class, required = true),
- @ApiImplicitParam(name = "manOrdId", value = "鐢熶骇璁㈠崟Id", dataTypeClass = String.class, required = true),
- @ApiImplicitParam(name = "schedulingNumber", value = "鎺掍骇鏁伴噺", dataTypeClass = Integer.class, required = true),
- })
@PostMapping("/output")
- public Result<?> output(@RequestParam(value = "date") @NotBlank(message = "鎺掍骇寮�濮嬫棩鏈熶笉鑳戒负绌�") String date,
- @RequestParam(value = "manOrdId") @NotNull(message = "鐢熶骇璁㈠崟Id涓嶈兘涓虹┖") Integer manOrdId,
- @RequestParam(value = "schedulingNumber") @NotNull(message = "鎺掍骇鏁伴噺涓嶈兘涓虹┖") Integer schedulingNumber,
- @Validated @RequestBody List<ManualTechnologyDto> manualTechnologyDtoList
- ) throws ParseException {
- manualTechnologyService.output(date, manOrdId, schedulingNumber, manualTechnologyDtoList);
- return Result.success("鎺掍骇鎴愬姛锛�");
+ public Result<?> output(@Validated @RequestBody ManualTechnologyDto manualTechnologyDto) throws ParseException {
+ // 鍒ゆ柇杈撳叆鏁伴噺鏄惁瓒呭嚭
+ Integer isExceed = manufactureOrderService.checkScheduled(manualTechnologyDto.getManOrdId(), manualTechnologyDto.getSchedulingNumber());
+ if (isExceed >= 0){
+ manualTechnologyService.output(manualTechnologyDto);
+ return Result.success("鎺掍骇鎴愬姛锛�");
+ } else {
+ MyUtil.PrintLog(isExceed.toString());
+ int i = manualTechnologyDto.getSchedulingNumber() + isExceed;
+ return Result.fail("鎺掍骇閿欒锛屽綋鍓嶅墿浣欐帓浜т负锛�" + i);
+ }
}
@ApiOperation(value = "涓嬭揪")
@ApiImplicitParams(value = {
- @ApiImplicitParam(name = "manOrdId", value = "鐢熶骇璁㈠崟id", dataTypeClass = Integer.class, required = true)
+ @ApiImplicitParam(name = "manufactureOrderId", value = "璁㈠崟id", dataTypeClass = Integer.class, required = true),
+ @ApiImplicitParam(name = "schedulingId", value = "鎺掍骇Id", dataTypeClass = Integer.class, required = true)
})
@PostMapping("/down")
- public Result<?> down(Integer manOrdId) {
- manufactureOrderService.down(manOrdId);
+ public Result<?> down(Integer manufactureOrderId, Integer schedulingId) {
+ manufactureOrderService.down(manufactureOrderId, schedulingId);
return Result.success("涓嬭揪鎴愬姛!");
}
diff --git a/production-server/src/main/java/com/yuanchu/mom/controller/ProductionPlanController.java b/production-server/src/main/java/com/yuanchu/mom/controller/ProductionPlanController.java
index 2b0cf45..ea39bc1 100644
--- a/production-server/src/main/java/com/yuanchu/mom/controller/ProductionPlanController.java
+++ b/production-server/src/main/java/com/yuanchu/mom/controller/ProductionPlanController.java
@@ -1,7 +1,8 @@
package com.yuanchu.mom.controller;
+import com.yuanchu.mom.service.ManualTechnologyService;
import com.yuanchu.mom.service.ManufactureOrderService;
-import com.yuanchu.mom.service.ProductionPlanService;
+import com.yuanchu.mom.service.ManufactureSchedulingService;
import com.yuanchu.mom.vo.Result;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
@@ -12,31 +13,20 @@
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
-import javax.annotation.Resource;
-
@Api(tags = "鐢熶骇绠$悊-->鐢熶骇璁″垝")
@RestController
@RequestMapping("/productionPlan")
public class ProductionPlanController {
- @Resource
- ProductionPlanService productionPlanService;
+ @Autowired
+ private ManualTechnologyService manualTechnologyService;
@Autowired
private ManufactureOrderService manufactureOrderService;
- @ApiOperation(value = "鏌ヨ鐢熶骇璁″垝鍒楄〃")
- @ApiImplicitParams(value = {
- @ApiImplicitParam(name = "deviceId", value = "璁惧id", dataTypeClass = Integer.class, required = true),
- @ApiImplicitParam(name = "orderCode", value = "璁㈠崟鍙�", dataTypeClass = String.class),
- @ApiImplicitParam(name = "name", value = "浜у搧鍚嶇О", dataTypeClass = String.class),
- @ApiImplicitParam(name = "startTime", value = "璁″垝寮�濮嬫棩鏈�", dataTypeClass = String.class),
- @ApiImplicitParam(name = "endTime", value = "璁″垝缁撴潫鏃ユ湡", dataTypeClass = String.class)
- })
- @GetMapping("/selectAllPlan")
- public Result selectAllPlan(Integer deviceId, String orderCode, String name, String startTime, String endTime) {
- return Result.success(productionPlanService.selectAllPlan(deviceId,orderCode,name,startTime,endTime));
- }
+ @Autowired
+ private ManufactureSchedulingService manufactureSchedulingService;
+
@ApiOperation(value = "浜岀骇鏍�")
@GetMapping("/tow_tree")
@@ -46,10 +36,38 @@
@ApiOperation(value = "鏌ョ湅鎺掍骇璇︽儏")
@ApiImplicitParams(value = {
- @ApiImplicitParam(name = "manOrdId", value = "鐢熶骇璁㈠崟id", dataTypeClass = Integer.class, required = true)
+ @ApiImplicitParam(name = "schedulingId", value = "鎺掍骇id", dataTypeClass = Integer.class, required = true)
})
@GetMapping("/sePros")
- public Result sePros(Integer manOrdId) {
- return Result.success(manufactureOrderService.sePros(manOrdId));
+ public Result<?> sePros(Integer schedulingId) {
+ return Result.success(manufactureOrderService.sePros(schedulingId));
+ }
+
+
+ @ApiOperation(value = "鏍规嵁鐢熶骇璁㈠崟鏌ョ湅鐢熶骇璁″垝")
+ @ApiImplicitParams(value = {
+ @ApiImplicitParam(name = "manOrdId", value = "鐢熶骇璁㈠崟id", dataTypeClass = Integer.class, required = true),
+ @ApiImplicitParam(name = "productName", value = "浜у搧鍚嶇О", dataTypeClass = String.class),
+ @ApiImplicitParam(name = "startTime", value = "寮�濮嬫棩鏈�", dataTypeClass = String.class),
+ @ApiImplicitParam(name = "endTime", value = "缁撴潫鏃ユ湡", dataTypeClass = String.class)
+ })
+ @GetMapping("/produceTable")
+ public Result<?> selectProduceTable(Integer manOrdId, String productName, String startTime, String endTime) {
+ return Result.success(manufactureSchedulingService.selectProduceTable(manOrdId, productName, startTime, endTime));
+ }
+
+
+ @ApiOperation(value = "鏌ョ湅鎺掍骇璇︽儏-->澶辩劍淇敼鏃堕棿")
+ @ApiImplicitParams(value = {
+ @ApiImplicitParam(name = "technologyId", value = "宸ュ簭Id", dataTypeClass = Integer.class, required = true),
+ @ApiImplicitParam(name = "startTime", value = "寮�濮嬫椂闂�", dataTypeClass = String.class, required = true, dataType = "date"),
+ })
+ @GetMapping("/update_time")
+ public Result<?> updateTime(Integer technologyId, String startTime) {
+ Integer isUpdateSuccess = manualTechnologyService.updateTime(technologyId, startTime);
+ if (isUpdateSuccess >= 1) {
+ return Result.success("鏇存柊鎴愬姛锛�");
+ }
+ return Result.fail("鏇存柊澶辫触锛�");
}
}
diff --git a/production-server/src/main/java/com/yuanchu/mom/mapper/ManualTechnologyMapper.java b/production-server/src/main/java/com/yuanchu/mom/mapper/ManualTechnologyMapper.java
index 90ff5ea..5a063a4 100644
--- a/production-server/src/main/java/com/yuanchu/mom/mapper/ManualTechnologyMapper.java
+++ b/production-server/src/main/java/com/yuanchu/mom/mapper/ManualTechnologyMapper.java
@@ -17,8 +17,6 @@
//鎺掍骇-->鏌ョ湅
List<Map<String, Object>> seleDatil(Integer manOrdId);
- //鎵归噺鏇存柊
- void updateBatchManualTechnology(Integer schedulingNumber, List<ManualTechnology> manualTechnologies);
-
+ List<Map<String, Object>> selectListTowTree(Integer schedulingId);
}
diff --git a/production-server/src/main/java/com/yuanchu/mom/mapper/ManufactureOrderMapper.java b/production-server/src/main/java/com/yuanchu/mom/mapper/ManufactureOrderMapper.java
index e8f9c09..d87eaed 100644
--- a/production-server/src/main/java/com/yuanchu/mom/mapper/ManufactureOrderMapper.java
+++ b/production-server/src/main/java/com/yuanchu/mom/mapper/ManufactureOrderMapper.java
@@ -4,7 +4,6 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.mom.pojo.ManufactureOrder;
-import com.yuanchu.mom.pojo.dto.ManufactureOrderDto;
import java.util.List;
import java.util.Map;
@@ -20,14 +19,10 @@
//鏌ヨ鐢熶骇璁㈠崟鍒楄〃
IPage<Map<String, Object>> selectAllManord(Page<Object> page, String downTime, String delTime, String customerCode, Integer type);
-
- //鏌ョ湅鐢熶骇璁″垝
- List<Map<String, Object>> selectAllPlan(Integer deviceId, String orderCode, String name, String startTime, String endTime);
-
void deleteManufacture(List<String> manOrdId);
List<Map<String, Object>> towTree();
- void updateManufacture(Integer manufactureOrderId, Integer manufactureOrder);
+ void updateManufacture(Integer manufactureOrderId, Integer schedulingNumber);
}
diff --git a/production-server/src/main/java/com/yuanchu/mom/mapper/ManufactureOrderProcessMapper.java b/production-server/src/main/java/com/yuanchu/mom/mapper/ManufactureOrderProcessMapper.java
new file mode 100644
index 0000000..2ec6f20
--- /dev/null
+++ b/production-server/src/main/java/com/yuanchu/mom/mapper/ManufactureOrderProcessMapper.java
@@ -0,0 +1,17 @@
+package com.yuanchu.mom.mapper;
+
+import com.yuanchu.mom.mybatis_config.MyBaseMapper;
+import com.yuanchu.mom.pojo.ManufactureOrderProcess;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ * 鎺掍骇瀵瑰簲宸ュ簭 Mapper 鎺ュ彛
+ * </p>
+ *
+ * @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃
+ * @since 2023-08-31 02:46:48
+ */
+public interface ManufactureOrderProcessMapper extends MyBaseMapper<ManufactureOrderProcess> {
+
+}
diff --git a/production-server/src/main/java/com/yuanchu/mom/mapper/ManufactureSchedulingMapper.java b/production-server/src/main/java/com/yuanchu/mom/mapper/ManufactureSchedulingMapper.java
new file mode 100644
index 0000000..a8fd83c
--- /dev/null
+++ b/production-server/src/main/java/com/yuanchu/mom/mapper/ManufactureSchedulingMapper.java
@@ -0,0 +1,24 @@
+package com.yuanchu.mom.mapper;
+
+import com.yuanchu.mom.pojo.ManufactureScheduling;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 鎺掍骇琛� Mapper 鎺ュ彛
+ * </p>
+ *
+ * @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃
+ * @since 2023-08-31 11:54:28
+ */
+public interface ManufactureSchedulingMapper extends BaseMapper<ManufactureScheduling> {
+
+ List<Map<String, Object>> selectScheduling(Integer manOrdId);
+
+ List<Map<String, Object>> selectProduceTable(Integer manOrdId, String productName, String startTime, String endTime);
+
+ Map<String, Object> sePros(Integer schedulingId);
+}
diff --git a/production-server/src/main/java/com/yuanchu/mom/pojo/ManualTechnology.java b/production-server/src/main/java/com/yuanchu/mom/pojo/ManualTechnology.java
index 012bca4..3373482 100644
--- a/production-server/src/main/java/com/yuanchu/mom/pojo/ManualTechnology.java
+++ b/production-server/src/main/java/com/yuanchu/mom/pojo/ManualTechnology.java
@@ -47,13 +47,8 @@
**/
private String deviceGroup;
- /**
- * 鍏宠仈 璁惧id
- **/
- private Integer deviceId;
-
- @ApiModelProperty(value = "鍏宠仈 宸ヨ壓Id")
- private Integer technologyId;
+ @ApiModelProperty(value = "鐢熶骇瀹氶(涓�/澶�)")
+ private Integer productionQuota;
/**
* 鍏宠仈 鐢熶骇璁㈠崟id
@@ -61,6 +56,7 @@
private Integer manufactureOrderId;
@ApiModelProperty(value = "閫昏緫鍒犻櫎 姝e父>=1,鍒犻櫎<=0", hidden = true)
+ @TableLogic(value = "1", delval = "0")
private Integer state;
@TableField(fill = FieldFill.INSERT)
@@ -72,27 +68,5 @@
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date updateTime;
-
- /**
- * 寮�濮嬫棩鏈�(璁″垝)
- */
- @DateTimeFormat(pattern = "yyyy-MM-dd")
- @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
- private Date startTime;
-
- /**
- * 缁撴潫鏃ユ湡(璁″垝)
- */
- @DateTimeFormat(pattern = "yyyy-MM-dd")
- @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
- private Date endTime;
-
- /**
- * 鍛ㄦ湡
- **/
- private Integer period;
-
- @ApiModelProperty(value = "鎺掍骇鏁伴噺")
- private Integer schedulingNumber;
}
diff --git a/production-server/src/main/java/com/yuanchu/mom/pojo/ManufactureOrder.java b/production-server/src/main/java/com/yuanchu/mom/pojo/ManufactureOrder.java
index da81b15..47dc066 100644
--- a/production-server/src/main/java/com/yuanchu/mom/pojo/ManufactureOrder.java
+++ b/production-server/src/main/java/com/yuanchu/mom/pojo/ManufactureOrder.java
@@ -72,6 +72,8 @@
**/
private Integer number;
+ @ApiModelProperty(value = "宸叉帓浜ф暟閲�")
+ private Integer scheduledProduction;
/**
* 涓嬪崟鏃ユ湡
**/
@@ -87,16 +89,12 @@
private Date deltime;
/**
- * 鐘舵��0:寰呮帓浜�;1:宸叉帓浜�
- **/
- private Integer type;
-
- /**
* 璐ㄩ噺杩芥函鍙�
**/
private String qualityTraceability;
@ApiModelProperty(value = "閫昏緫鍒犻櫎 姝e父>=1,鍒犻櫎<=0", hidden = true)
+ @TableLogic(value = "1", delval = "0")
private Integer state;
@TableField(fill = FieldFill.INSERT)
diff --git a/production-server/src/main/java/com/yuanchu/mom/pojo/ManufactureOrderProcess.java b/production-server/src/main/java/com/yuanchu/mom/pojo/ManufactureOrderProcess.java
new file mode 100644
index 0000000..5a9d806
--- /dev/null
+++ b/production-server/src/main/java/com/yuanchu/mom/pojo/ManufactureOrderProcess.java
@@ -0,0 +1,71 @@
+package com.yuanchu.mom.pojo;
+
+import com.baomidou.mybatisplus.annotation.*;
+
+import java.io.Serializable;
+import java.time.LocalDate;
+import java.util.Date;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.Getter;
+import lombok.Setter;
+import lombok.experimental.Accessors;
+import org.springframework.format.annotation.DateTimeFormat;
+
+/**
+ * <p>
+ * 鎺掍骇瀵瑰簲宸ュ簭
+ * </p>
+ *
+ * @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃
+ * @since 2023-08-31 02:46:48
+ */
+@Data
+@Accessors(chain = true)
+@TableName("manufacture_order_process")
+@ApiModel(value = "ManufactureOrderProcess瀵硅薄", description = "鎺掍骇瀵瑰簲宸ュ簭")
+public class ManufactureOrderProcess implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("涓婚敭Id")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Integer id;
+
+ @ApiModelProperty("鍏宠仈 璁惧Id")
+ private Integer deviceId;
+
+ @ApiModelProperty("寮�濮嬫椂闂�")
+ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+ private Date startTime;
+
+ @ApiModelProperty("缁撴潫鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+ private Date endTime;
+
+ @ApiModelProperty("鍛ㄦ湡")
+ private Integer period;
+
+ @ApiModelProperty("鍏宠仈 缂栧埗宸ュ簭琛↖d")
+ private Integer manualTechnologyId;
+
+ @ApiModelProperty("鍏宠仈 鎺掍骇琛� Id")
+ private Integer manufactureSchedulingId;
+
+ @ApiModelProperty(value = "閫昏緫鍒犻櫎 姝e父>=1,鍒犻櫎<=0", hidden = true)
+ @TableLogic(value = "1", delval = "0")
+ private Integer state;
+
+ @TableField(fill = FieldFill.INSERT)
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+ private Date createTime;
+
+ @TableField(fill = FieldFill.INSERT_UPDATE)
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+ private Date updateTime;
+}
diff --git a/production-server/src/main/java/com/yuanchu/mom/pojo/ManufactureScheduling.java b/production-server/src/main/java/com/yuanchu/mom/pojo/ManufactureScheduling.java
new file mode 100644
index 0000000..273efb6
--- /dev/null
+++ b/production-server/src/main/java/com/yuanchu/mom/pojo/ManufactureScheduling.java
@@ -0,0 +1,72 @@
+package com.yuanchu.mom.pojo;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.time.LocalDate;
+import java.util.Date;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+import lombok.experimental.Accessors;
+import org.springframework.format.annotation.DateTimeFormat;
+
+/**
+ * <p>
+ * 鎺掍骇琛�
+ * </p>
+ *
+ * @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃
+ * @since 2023-08-31 11:54:28
+ */
+@Data
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value = "ManufactureScheduling瀵硅薄", description = "鎺掍骇琛�")
+public class ManufactureScheduling implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("涓婚敭Id")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Integer id;
+
+ @ApiModelProperty("寮�濮嬫椂闂�")
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+ private Date startTime;
+
+ @ApiModelProperty("缁撴潫鏃堕棿")
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+ private Date endTime;
+
+ @ApiModelProperty("涓嬭揪鐘舵��")
+ private Integer goState;
+
+ @ApiModelProperty("宸叉帓浜ф暟閲�")
+ private Integer scheduled;
+
+ @ApiModelProperty("鍏宠仈鐢熶骇璁㈠崟Id")
+ private Integer manufactureOrderId;
+
+ @TableField(fill = FieldFill.INSERT)
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+ private Date createTime;
+
+ @TableField(fill = FieldFill.INSERT_UPDATE)
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+ private Date updateTime;
+
+ @ApiModelProperty("閫昏緫鍒犻櫎")
+ @TableLogic(value = "1", delval = "0")
+ private Integer state;
+}
diff --git a/production-server/src/main/java/com/yuanchu/mom/pojo/dto/ManualTechnologyDto.java b/production-server/src/main/java/com/yuanchu/mom/pojo/dto/ManualTechnologyDto.java
index 55e7a94..56d28d7 100644
--- a/production-server/src/main/java/com/yuanchu/mom/pojo/dto/ManualTechnologyDto.java
+++ b/production-server/src/main/java/com/yuanchu/mom/pojo/dto/ManualTechnologyDto.java
@@ -3,21 +3,25 @@
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
+import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
+import java.util.List;
@Data
//鏇存柊鎺掍骇(閫夋嫨璁惧)
public class ManualTechnologyDto {
- //宸ュ簭id
- @NotNull(message = "宸ュ簭Id涓嶈兘涓虹┖")
- @ApiModelProperty(value = "宸ュ簭Id", example = "1", required = true)
- private Integer id;
+ @NotBlank(message = "鎺掍骇寮�濮嬫棩鏈熶笉鑳戒负绌�")
+ @ApiModelProperty(value = "鎺掍骇寮�濮嬫棩鏈�", example = "2023-08-31", required = true, dataType = "date")
+ private String date;
- @ApiModelProperty(value = "宸ヨ壓Id", example = "2", required = true)
- private Integer technologyId;
+ @NotNull(message = "鐢熶骇璁㈠崟Id涓嶈兘涓虹┖")
+ @ApiModelProperty(value = "鐢熶骇璁㈠崟Id", example = "3", required = true)
+ private Integer manOrdId;
- @NotNull(message = "璁惧id涓嶈兘涓虹┖")
- @ApiModelProperty(value = "璁惧Id", example = "1", required = true)
- private Integer deviceId;
+ @NotNull(message = "鎺掍骇鏁伴噺涓嶈兘涓虹┖")
+ @ApiModelProperty(value = "鎺掍骇鏁伴噺", example = "20", required = true)
+ private Integer schedulingNumber;
+
+ private List<ManualTechnologyDto1> orderProcess;
}
diff --git a/production-server/src/main/java/com/yuanchu/mom/pojo/dto/ManualTechnologyDto1.java b/production-server/src/main/java/com/yuanchu/mom/pojo/dto/ManualTechnologyDto1.java
index 776a451..45f0bcd 100644
--- a/production-server/src/main/java/com/yuanchu/mom/pojo/dto/ManualTechnologyDto1.java
+++ b/production-server/src/main/java/com/yuanchu/mom/pojo/dto/ManualTechnologyDto1.java
@@ -2,52 +2,22 @@
import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
+
+import javax.validation.constraints.NotNull;
import java.util.Date;
//鏌ョ湅鎺掍骇璇︽儏涓殑璁″垝缂栧埗
@Data
public class ManualTechnologyDto1 {
- /**
- * 宸ュ簭id
- **/
- private Integer mtechId;
+ @NotNull(message = "宸ュ簭Id涓嶈兘涓虹┖")
+ @ApiModelProperty(value = "宸ュ簭Id", example = "1", required = true)
+ private Integer manualTechnologyId;
- /**
- * 宸ュ簭鍚嶇О
- **/
- private String techname;
-
- /**
- * 宸ュ簭鐖剁被
- **/
- private String techfather;
-
-
- /**
- * 璁惧鍚�(鏈哄彴)
- **/
- private String deviceName;
-
-
- /**
- * 寮�濮嬫棩鏈�(璁″垝)
- */
- @DateTimeFormat(pattern = "yyyy-MM-dd")
- @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
- private Date startTime;
-
- /**
- * 缁撴潫鏃ユ湡(璁″垝)
- */
- @DateTimeFormat(pattern = "yyyy-MM-dd")
- @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
- private Date endTime;
-
- /**
- * 鍛ㄦ湡
- **/
- private Integer period;
+ @NotNull(message = "璁惧id涓嶈兘涓虹┖")
+ @ApiModelProperty(value = "璁惧Id", example = "1", required = true)
+ private Integer deviceId;
}
diff --git a/production-server/src/main/java/com/yuanchu/mom/pojo/dto/ManufactureOrderDto.java b/production-server/src/main/java/com/yuanchu/mom/pojo/dto/ManufactureOrderDto.java
deleted file mode 100644
index d58bcb6..0000000
--- a/production-server/src/main/java/com/yuanchu/mom/pojo/dto/ManufactureOrderDto.java
+++ /dev/null
@@ -1,67 +0,0 @@
-package com.yuanchu.mom.pojo.dto;
-
-
-import com.baomidou.mybatisplus.annotation.FieldFill;
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.fasterxml.jackson.annotation.JsonFormat;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-import org.springframework.format.annotation.DateTimeFormat;
-
-import java.util.Date;
-import java.util.List;
-
-@Data
-//鏌ョ湅鎺掍骇璇︽儏
-public class ManufactureOrderDto {
-
- /**
- * 璁㈠崟id
- **/
- private Integer id;
-
- /**
- * 璁㈠崟缂栧彿
- **/
- private String orderCode;
-
- /**
- * 鍚堝悓缂栧彿(瀹㈡埛璁㈠崟鍙�)
- **/
- private String customerCode;
-
- /**
- * 浜у搧鍚嶇О
- **/
- private String name;
-
- /**
- * 瑙勬牸鍨嬪彿
- **/
- private String specifications;
-
- /**
- * 鏁伴噺
- **/
- private Integer number;
-
- /**
- * 涓嬪崟鏃ユ湡
- **/
- @DateTimeFormat(pattern = "yyyy-MM-dd")
- @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
- private Date downtime;
-
- /**
- * 浜よ揣鏃ユ湡
- **/
- @DateTimeFormat(pattern = "yyyy-MM-dd")
- @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
- private Date deltime;
-
- /*璁″垝缂栧埗*/
- private List<ManualTechnologyDto1> message;
-
-}
diff --git a/production-server/src/main/java/com/yuanchu/mom/service/ManualTechnologyService.java b/production-server/src/main/java/com/yuanchu/mom/service/ManualTechnologyService.java
index 6356072..d4af76f 100644
--- a/production-server/src/main/java/com/yuanchu/mom/service/ManualTechnologyService.java
+++ b/production-server/src/main/java/com/yuanchu/mom/service/ManualTechnologyService.java
@@ -26,9 +26,14 @@
/**
* 鎺掍骇==>鏇存柊
- * @param manualTechnologyDtoList
*/
- void output(String date, Integer manufactureOrderId, Integer schedulingNumber, List<ManualTechnologyDto> manualTechnologyDtoList) throws ParseException;
+ void output(ManualTechnologyDto manualTechnologyDto) throws ParseException;
+ /**
+ * 鏌ョ湅鎺掍骇璇︽儏-->澶辩劍淇敼鏃堕棿
+ * @param startTime 寮�濮嬫椂闂�
+ * @return
+ */
+ Integer updateTime(Integer technologyId, String startTime);
}
diff --git a/production-server/src/main/java/com/yuanchu/mom/service/ManufactureOrderProcessService.java b/production-server/src/main/java/com/yuanchu/mom/service/ManufactureOrderProcessService.java
new file mode 100644
index 0000000..47fbb53
--- /dev/null
+++ b/production-server/src/main/java/com/yuanchu/mom/service/ManufactureOrderProcessService.java
@@ -0,0 +1,19 @@
+package com.yuanchu.mom.service;
+
+import com.yuanchu.mom.pojo.ManufactureOrderProcess;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 鎺掍骇瀵瑰簲宸ュ簭 鏈嶅姟绫�
+ * </p>
+ *
+ * @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃
+ * @since 2023-08-31 02:46:48
+ */
+public interface ManufactureOrderProcessService extends IService<ManufactureOrderProcess> {
+
+ void batchInsert(List<ManufactureOrderProcess> manufactureOrderProcessesDate);
+}
diff --git a/production-server/src/main/java/com/yuanchu/mom/service/ManufactureOrderService.java b/production-server/src/main/java/com/yuanchu/mom/service/ManufactureOrderService.java
index 1690edd..d8ccf01 100644
--- a/production-server/src/main/java/com/yuanchu/mom/service/ManufactureOrderService.java
+++ b/production-server/src/main/java/com/yuanchu/mom/service/ManufactureOrderService.java
@@ -4,7 +4,6 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yuanchu.mom.pojo.ManufactureOrder;
-import com.yuanchu.mom.pojo.dto.ManufactureOrderDto;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
@@ -31,16 +30,17 @@
/**
* 鏌ョ湅鎺掍骇璇︽儏
- * @param manOrdId
+ * @param schedulingId
* @return
*/
- ManufactureOrderDto sePros(Integer manOrdId);
+ Map<String, Object> sePros(Integer schedulingId);
/**
* 涓嬭揪
- * @param manOrdId
+ * @param manufactureOrderId 璁㈠崟Id
+ * @param schedulingId 鎺掍骇Id
*/
- void down(Integer manOrdId);
+ void down(Integer manufactureOrderId, Integer schedulingId);
/**
* 鎵归噺鍒犻櫎
@@ -54,5 +54,12 @@
* @return
*/
List<Map<String, Object>> towTree();
+
+ /**
+ * 鍒ゆ柇杈撳叆鏁伴噺鏄惁瓒呭嚭
+ * @param manOrdId 璁㈠崟Id
+ * @param schedulingNumber 鐢ㄦ埛杈撳叆鏁伴噺
+ */
+ Integer checkScheduled(Integer manOrdId, Integer schedulingNumber);
}
diff --git a/production-server/src/main/java/com/yuanchu/mom/service/ManufactureSchedulingService.java b/production-server/src/main/java/com/yuanchu/mom/service/ManufactureSchedulingService.java
new file mode 100644
index 0000000..2372551
--- /dev/null
+++ b/production-server/src/main/java/com/yuanchu/mom/service/ManufactureSchedulingService.java
@@ -0,0 +1,25 @@
+package com.yuanchu.mom.service;
+
+import com.yuanchu.mom.pojo.ManufactureOrder;
+import com.yuanchu.mom.pojo.ManufactureScheduling;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 鎺掍骇琛� 鏈嶅姟绫�
+ * </p>
+ *
+ * @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃
+ * @since 2023-08-31 11:54:28
+ */
+public interface ManufactureSchedulingService extends IService<ManufactureScheduling> {
+
+ List<Map<String, Object>> selectScheduling(Integer manOrdId);
+
+ List<Map<String, Object>> selectProduceTable(Integer manOrdId, String productName, String startTime, String endTime);
+
+ Map<String, Object> sePros(Integer schedulingId);
+}
diff --git a/production-server/src/main/java/com/yuanchu/mom/service/ProductionPlanService.java b/production-server/src/main/java/com/yuanchu/mom/service/ProductionPlanService.java
deleted file mode 100644
index d9ee940..0000000
--- a/production-server/src/main/java/com/yuanchu/mom/service/ProductionPlanService.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package com.yuanchu.mom.service;
-
-
-import java.util.List;
-import java.util.Map;
-
-public interface ProductionPlanService {
-
- /**
- * 鏌ヨ鐢熶骇璁″垝鍒楄〃
- * @param deviceId
- * @param orderCode
- * @param name
- * @param startTime
- * @param endTime
- * @return
- */
- List<Map<String,Object>> selectAllPlan(Integer deviceId, String orderCode, String name, String startTime, String endTime);
-
-
-
-}
diff --git a/production-server/src/main/java/com/yuanchu/mom/service/impl/ManualTechnologyServiceImpl.java b/production-server/src/main/java/com/yuanchu/mom/service/impl/ManualTechnologyServiceImpl.java
index 7b48b05..a3ce511 100644
--- a/production-server/src/main/java/com/yuanchu/mom/service/impl/ManualTechnologyServiceImpl.java
+++ b/production-server/src/main/java/com/yuanchu/mom/service/impl/ManualTechnologyServiceImpl.java
@@ -1,16 +1,21 @@
package com.yuanchu.mom.service.impl;
+import cn.hutool.core.date.DateTime;
+import cn.hutool.core.date.DateUnit;
+import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yuanchu.mom.mapper.DeviceMapper;
import com.yuanchu.mom.mapper.ManualTechnologyMapper;
import com.yuanchu.mom.mapper.ManufactureOrderMapper;
-import com.yuanchu.mom.pojo.ManualTechnology;
-import com.yuanchu.mom.pojo.ManufactureOrder;
-import com.yuanchu.mom.pojo.Technology;
+import com.yuanchu.mom.pojo.*;
import com.yuanchu.mom.pojo.dto.ManualTechnologyDto;
+import com.yuanchu.mom.pojo.dto.ManualTechnologyDto1;
import com.yuanchu.mom.service.ManualTechnologyService;
+import com.yuanchu.mom.service.ManufactureOrderProcessService;
+import com.yuanchu.mom.service.ManufactureSchedulingService;
import com.yuanchu.mom.service.TechnologyService;
import com.yuanchu.mom.utils.MyUtil;
import org.springframework.beans.BeanUtils;
@@ -22,6 +27,7 @@
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
+import java.time.LocalDate;
import java.util.*;
import java.util.stream.Collectors;
@@ -43,36 +49,92 @@
@Autowired
private TechnologyService technologyService;
+ @Autowired
+ private ManufactureSchedulingService manufactureSchedulingService;
+
+ @Autowired
+ private ManufactureOrderProcessService manufactureOrderProcessService;
+
//鎺掍骇-->鏌ョ湅
@Override
public List<Map<String, Object>> seleDatil(Integer manOrdId) {
-
return manualTechnologyMapper.seleDatil(manOrdId);
}
//鎺掍骇-->鏇存柊
@Override
@Transactional(rollbackFor = Exception.class)
- public void output(String date, Integer manufactureOrderId, Integer schedulingNumber, List<ManualTechnologyDto> manualTechnologyDtoList) throws ParseException {
- // 鏌ヨ宸ヨ壓锛岀敤浜庡尮閰嶆瘡涓鍗曠殑宸ュ簭鍛ㄦ湡
- LambdaQueryWrapper<Technology> wrapper = new LambdaQueryWrapper<>();
- wrapper.select(Technology::getId, Technology::getProductionQuota);
- List<Technology> technologies = technologyService.list(wrapper);
+ public void output(ManualTechnologyDto manualTechnologyDto) throws ParseException {
+ // 鏍规嵁鎺掍骇鏁伴噺璁$畻宸ヨ壓鍛ㄦ湡
+ List<ManufactureOrderProcess> manufactureOrderProcessesPeriod = matchingCycle(
+ manualTechnologyDto.getSchedulingNumber(),
+ manualTechnologyDto.getManOrdId(),
+ manualTechnologyDto.getOrderProcess());
+
+
+ // 鏍规嵁宸ュ簭鐢熶骇瀹氶鍖归厤鏃堕棿
+ List<ManufactureOrderProcess> manufactureOrderProcessesDate = datePeriodCalculate(
+ manualTechnologyDto.getDate(),
+ manufactureOrderProcessesPeriod);
+
+
+ // 娣诲姞涓�鏉℃帓浜ц褰曞埌manufacture_scheduling琛ㄦ牸锛岃繑鍥炰富閿甀d
+ Date endTime = manufactureOrderProcessesDate.get(manufactureOrderProcessesDate.size() - 1).getEndTime();
+ ManufactureScheduling manufactureScheduling = new ManufactureScheduling()
+ .setScheduled(manualTechnologyDto.getSchedulingNumber())
+ .setStartTime(DateUtil.parse(manualTechnologyDto.getDate()))
+ .setEndTime(endTime)
+ .setManufactureOrderId(manualTechnologyDto.getManOrdId())
+ .setGoState(0); // 0 琛ㄧず寰呬笅杈�
+ manufactureSchedulingService.save(manufactureScheduling);
+
+
+ // 灏嗘帓琛↖d鎻掑叆鍒癿anufactureOrderProcessesDate涓�, 寮�濮嬫壒閲忔彃鍏anufactureOrderProcesses琛ㄦ牸
+ manufactureOrderProcessesDate.forEach(i -> i.setManufactureSchedulingId(manufactureScheduling.getId()));
+ manufactureOrderProcessService.batchInsert(manufactureOrderProcessesDate);
+
+
+ // 鏇存柊璁㈠崟鐨勫凡鎺掍骇鏁伴噺
+ manufactureOrderMapper.updateManufacture(manualTechnologyDto.getManOrdId(), manualTechnologyDto.getSchedulingNumber());
+ }
+
+ @Override
+ public Integer updateTime(Integer technologyId, String startTime) {
+// // Hutool 宸ュ叿绫昏绠楅棿闅斿皬鏃�
+// DateTime startTime1 = DateUtil.parse(startTime);
+// DateTime endTime1 = DateUtil.parse(endTime);
+// long between = DateUtil.between(startTime1, endTime1, DateUnit.HOUR);
+// // 鏇存柊
+// LambdaUpdateWrapper<ManualTechnology> updateWrapper = Wrappers.<ManualTechnology>lambdaUpdate()
+// .eq(ManualTechnology::getId, technologyId);
+// return manualTechnologyMapper.update(new ManualTechnology(), updateWrapper);
+ return null;
+ }
+
+ // 鏍规嵁鎺掍骇鏁伴噺璁$畻宸ヨ壓鍛ㄦ湡
+ private List<ManufactureOrderProcess> matchingCycle(Integer schedulingNumber, Integer manOrdId, List<ManualTechnologyDto1> manualTechnologyDtoList){
+ // 鏌ヨ缂栧埗宸ヨ壓锛岀敤浜庡尮閰嶆瘡涓鍗曠殑宸ュ簭鍛ㄦ湡
+ LambdaQueryWrapper<ManualTechnology> queryWrapper = Wrappers.<ManualTechnology>lambdaQuery()
+ .eq(ManualTechnology::getManufactureOrderId, manOrdId);
+ List<ManualTechnology> technologies = manualTechnologyMapper.selectList(queryWrapper);
//鍖归厤姣忎釜璁㈠崟鐨勫伐搴忓懆鏈�
- List<ManualTechnology> manualTechnologies = manualTechnologyDtoList.stream().map(manualTechnologyDto -> {
- ManualTechnology manualTechnology = new ManualTechnology();
- BeanUtils.copyProperties(manualTechnologyDto, manualTechnology);
+ List<ManufactureOrderProcess> manufactureOrderProcessList = manualTechnologyDtoList.stream().map(manualTechnologyDto1 -> {
+ ManufactureOrderProcess manufactureOrderProcess = new ManufactureOrderProcess();
+ BeanUtils.copyProperties(manualTechnologyDto1, manufactureOrderProcess);
technologies.forEach(i -> {
- if (Objects.equals(manualTechnology.getTechnologyId(), i.getId())){
- manualTechnology.setPeriod((int) Math.ceil((double)schedulingNumber/i.getProductionQuota()));
+ if (Objects.equals(manufactureOrderProcess.getManualTechnologyId(), i.getId())){
+ manufactureOrderProcess.setPeriod((int) Math.ceil((double)schedulingNumber/i.getProductionQuota()));
}
});
- return manualTechnology;
+ return manufactureOrderProcess;
}).collect(Collectors.toList());
+ return manufactureOrderProcessList;
+ }
-
+ // 鏍规嵁宸ュ簭鐢熶骇瀹氶鍖归厤鏃堕棿
+ private List<ManufactureOrderProcess> datePeriodCalculate(String date, List<ManufactureOrderProcess> manualTechnologies) throws ParseException {
// 璁$畻宸ュ簭鐨勫紑濮嬫棩鏈熶互鍙婄粨鏉熸棩鏈�
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
Date parse = dateFormat.parse(date);
@@ -80,29 +142,21 @@
Calendar calendar = Calendar.getInstance();
calendar.setTime(parse);
//绗竴涓伐搴�
- ManualTechnology manualTechnology = manualTechnologies.get(0);
+ ManufactureOrderProcess manualTechnology = manualTechnologies.get(0);
calendar.add(Calendar.DATE, manualTechnology.getPeriod());
-
manualTechnology.setStartTime(parse).setEndTime(calendar.getTime());
//寰幆璧嬪�兼椂闂�
for (int i = 0; i < manualTechnologies.size()-1 ; i++) {
Calendar calendar1 = Calendar.getInstance();
calendar1.setTime(manualTechnologies.get(i).getEndTime());
- ManualTechnology technology = manualTechnologies.get(i + 1);
+ ManufactureOrderProcess technology = manualTechnologies.get(i + 1);
calendar1.add(Calendar.DATE,1);
technology.setStartTime(calendar1.getTime());
calendar1.add(Calendar.DATE,technology.getPeriod());
technology.setEndTime(calendar1.getTime());
}
-
-
- // 鏁版嵁澶勭悊瀹屾垚寮�濮嬫壒閲忔洿鏂癕ysql
- manualTechnologyMapper.updateBatchManualTechnology(schedulingNumber, manualTechnologies);
-
-
- // 宸ュ簭鏇存柊瀹屾瘯锛屾洿鏂拌鍗曠殑鐘舵�侊紝灏嗗叾鏇存柊涓哄凡鎺掍骇锛�1锛岃繕鏈夊緟涓嬭揪锛�0
- manufactureOrderMapper.updateManufacture(manufactureOrderId, schedulingNumber);
+ return manualTechnologies;
}
}
diff --git a/production-server/src/main/java/com/yuanchu/mom/service/impl/ManufactureOrderProcessServiceImpl.java b/production-server/src/main/java/com/yuanchu/mom/service/impl/ManufactureOrderProcessServiceImpl.java
new file mode 100644
index 0000000..cac0cbb
--- /dev/null
+++ b/production-server/src/main/java/com/yuanchu/mom/service/impl/ManufactureOrderProcessServiceImpl.java
@@ -0,0 +1,30 @@
+package com.yuanchu.mom.service.impl;
+
+import com.yuanchu.mom.pojo.ManufactureOrderProcess;
+import com.yuanchu.mom.mapper.ManufactureOrderProcessMapper;
+import com.yuanchu.mom.service.ManufactureOrderProcessService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+/**
+ * <p>
+ * 鎺掍骇瀵瑰簲宸ュ簭 鏈嶅姟瀹炵幇绫�
+ * </p>
+ *
+ * @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃
+ * @since 2023-08-31 02:46:48
+ */
+@Service
+public class ManufactureOrderProcessServiceImpl extends ServiceImpl<ManufactureOrderProcessMapper, ManufactureOrderProcess> implements ManufactureOrderProcessService {
+
+ @Resource
+ private ManufactureOrderProcessMapper manufactureOrderProcessMapper;
+
+ @Override
+ public void batchInsert(List<ManufactureOrderProcess> manufactureOrderProcessesDate) {
+ manufactureOrderProcessMapper.insertBatchSomeColumn(manufactureOrderProcessesDate);
+ }
+}
diff --git a/production-server/src/main/java/com/yuanchu/mom/service/impl/ManufactureOrderServiceImpl.java b/production-server/src/main/java/com/yuanchu/mom/service/impl/ManufactureOrderServiceImpl.java
index b5b0a77..d60aed4 100644
--- a/production-server/src/main/java/com/yuanchu/mom/service/impl/ManufactureOrderServiceImpl.java
+++ b/production-server/src/main/java/com/yuanchu/mom/service/impl/ManufactureOrderServiceImpl.java
@@ -1,26 +1,25 @@
package com.yuanchu.mom.service.impl;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.yuanchu.mom.mapper.DeviceMapper;
import com.yuanchu.mom.mapper.ManualTechnologyMapper;
import com.yuanchu.mom.mapper.ManufactureOrderMapper;
-import com.yuanchu.mom.pojo.ManualTechnology;
import com.yuanchu.mom.pojo.ManufactureOrder;
-import com.yuanchu.mom.pojo.dto.ManualTechnologyDto1;
-import com.yuanchu.mom.pojo.dto.ManufactureOrderDto;
+import com.yuanchu.mom.pojo.ManufactureScheduling;
import com.yuanchu.mom.service.ManufactureOrderService;
-import com.yuanchu.mom.utils.MyUtil;
+import com.yuanchu.mom.service.ManufactureSchedulingService;
import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
-import java.util.stream.Collectors;
/**
* 鐢熶骇璁㈠崟琛�(ManufactureOrder)琛ㄦ湇鍔″疄鐜扮被
@@ -37,8 +36,8 @@
@Resource
ManualTechnologyMapper manualTechnologyMapper;
- @Resource
- DeviceMapper deviceMapper;
+ @Autowired
+ private ManufactureSchedulingService manufactureSchedulingService;
//鏌ヨ鐢熶骇璁㈠崟鐨勫垪琛�
@Override
@@ -46,34 +45,50 @@
return manufactureOrderMapper.selectAllManord(page,downTime,delTime,customerCode,type);
}
-
//鏌ョ湅鎺掍骇璇︽儏
@Override
- public ManufactureOrderDto sePros(Integer manOrdId) {
- ManufactureOrderDto manufactureOrderDto = new ManufactureOrderDto();
+ public Map<String, Object> sePros(Integer schedulingId) {
//鍩烘湰淇℃伅
- ManufactureOrder manufactureOrder = manufactureOrderMapper.selectById(manOrdId);
- BeanUtils.copyProperties(manufactureOrder,manufactureOrderDto);
+ Map<String, Object> manufactureOrder = manufactureSchedulingService.sePros(schedulingId);
//璁″垝缂栧埗
- List<ManualTechnology> manualTechnologies = manualTechnologyMapper.selectList(Wrappers.<ManualTechnology>query().eq("manufacture_order_id", manOrdId));
- MyUtil.PrintLog(manualTechnologies.toString());
-
-// List<ManualTechnologyDto1> manualTechnologyDto1s = manualTechnologies.stream().map(manualTechnology -> {
-// ManualTechnologyDto1 manualTechnologyDto1 = new ManualTechnologyDto1();
-// BeanUtils.copyProperties(manualTechnology, manualTechnologyDto1);
-// manualTechnologyDto1.setMtechId(manualTechnology.getId());
-// manualTechnologyDto1.setDeviceName(deviceMapper.selectById(manualTechnology.getDeviceId()).getName());
-// return manualTechnologyDto1;
-// }).collect(Collectors.toList());
-// manufactureOrderDto.setMessage(manualTechnologyDto1s);
- return manufactureOrderDto;
+ List<Map<String, Object>> mapList = manualTechnologyMapper.selectListTowTree(schedulingId);
+ manufactureOrder.put("message",mapList);
+ return manufactureOrder;
}
//涓嬭揪
@Override
- public void down(Integer manOrdId) {
- ManufactureOrder manufactureOrder = new ManufactureOrder().setId(manOrdId).setGoState(1).setType(0);
- manufactureOrderMapper.updateById(manufactureOrder);
+ public void down(Integer manufactureOrderId, Integer schedulingId) {
+ // 鍏堟洿鏂版帓浜�
+ LambdaUpdateWrapper<ManufactureScheduling> updateWrapperScheduling = Wrappers.<ManufactureScheduling>lambdaUpdate()
+ .eq(ManufactureScheduling::getId, schedulingId)
+ .set(ManufactureScheduling::getGoState, 1);
+ manufactureSchedulingService.update(updateWrapperScheduling);
+
+
+ // 鐒跺悗鏇存柊璁㈠崟琛ㄧ殑鐘舵��
+ LambdaQueryWrapper<ManufactureScheduling> queryWrapper = Wrappers.<ManufactureScheduling>lambdaQuery()
+ .eq(ManufactureScheduling::getManufactureOrderId, manufactureOrderId)
+ .select(ManufactureScheduling::getGoState);
+ List<ManufactureScheduling> list = manufactureSchedulingService.list(queryWrapper);
+ boolean goStateAll = false;
+ for (int i = 0; i <= list.size() - 1; i++){
+ if (list.get(i).getGoState() == 0) {
+ goStateAll = true;
+ break;
+ }
+ }
+ LambdaUpdateWrapper<ManufactureOrder> updateWrapperOrder = new LambdaUpdateWrapper<>();
+ updateWrapperOrder.eq(ManufactureOrder::getId, manufactureOrderId);
+ // 濡傛灉鎺掍骇琛ㄤ腑鏈変竴涓槸寰呬笅杈撅紝閭d箞璁㈠崟琛ㄤ腑灏变负寰呬笅杈�
+ if (goStateAll){
+ // 寰呬笅杈�
+ updateWrapperOrder.set(ManufactureOrder::getGoState, 0);
+ } else {
+ // 宸蹭笅杈�
+ updateWrapperOrder.set(ManufactureOrder::getGoState, 1);
+ }
+ manufactureOrderMapper.update(new ManufactureOrder(), updateWrapperOrder);
}
@Override
@@ -85,5 +100,18 @@
public List<Map<String, Object>> towTree() {
return manufactureOrderMapper.towTree();
}
+
+ @Override
+ public Integer checkScheduled(Integer manOrdId, Integer schedulingNumber) {
+ LambdaQueryWrapper<ManufactureOrder> queryWrapper = Wrappers.<ManufactureOrder>lambdaQuery()
+ .eq(ManufactureOrder::getId, manOrdId)
+ .eq(ManufactureOrder::getState, 1)
+ .select(ManufactureOrder::getNumber, ManufactureOrder::getScheduledProduction);
+ ManufactureOrder manufactureOrder = manufactureOrderMapper.selectOne(queryWrapper);
+ if (ObjectUtils.isEmpty(manufactureOrder.getScheduledProduction())){
+ manufactureOrder.setScheduledProduction(0);
+ }
+ return manufactureOrder.getNumber() - (manufactureOrder.getScheduledProduction() + schedulingNumber);
+ }
}
diff --git a/production-server/src/main/java/com/yuanchu/mom/service/impl/ManufactureSchedulingServiceImpl.java b/production-server/src/main/java/com/yuanchu/mom/service/impl/ManufactureSchedulingServiceImpl.java
new file mode 100644
index 0000000..2165666
--- /dev/null
+++ b/production-server/src/main/java/com/yuanchu/mom/service/impl/ManufactureSchedulingServiceImpl.java
@@ -0,0 +1,43 @@
+package com.yuanchu.mom.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.yuanchu.mom.pojo.ManufactureScheduling;
+import com.yuanchu.mom.mapper.ManufactureSchedulingMapper;
+import com.yuanchu.mom.service.ManufactureSchedulingService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 鎺掍骇琛� 鏈嶅姟瀹炵幇绫�
+ * </p>
+ *
+ * @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃
+ * @since 2023-08-31 11:54:28
+ */
+@Service
+public class ManufactureSchedulingServiceImpl extends ServiceImpl<ManufactureSchedulingMapper, ManufactureScheduling> implements ManufactureSchedulingService {
+
+ @Resource
+ private ManufactureSchedulingMapper manufactureSchedulingMapper;
+
+ @Override
+ public List<Map<String, Object>> selectScheduling(Integer manOrdId) {
+ return manufactureSchedulingMapper.selectScheduling(manOrdId);
+ }
+
+ @Override
+ public List<Map<String, Object>> selectProduceTable(Integer manOrdId, String productName, String startTime, String endTime) {
+ return manufactureSchedulingMapper.selectProduceTable(manOrdId, productName, startTime, endTime);
+ }
+
+ @Override
+ public Map<String, Object> sePros(Integer schedulingId) {
+ return manufactureSchedulingMapper.sePros(schedulingId);
+ }
+}
diff --git a/production-server/src/main/java/com/yuanchu/mom/service/impl/ProductionPlanServiceImpl.java b/production-server/src/main/java/com/yuanchu/mom/service/impl/ProductionPlanServiceImpl.java
deleted file mode 100644
index 338bc74..0000000
--- a/production-server/src/main/java/com/yuanchu/mom/service/impl/ProductionPlanServiceImpl.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package com.yuanchu.mom.service.impl;
-
-import com.yuanchu.mom.mapper.ManualTechnologyMapper;
-import com.yuanchu.mom.mapper.ManufactureOrderMapper;
-import com.yuanchu.mom.service.ProductionPlanService;
-import org.springframework.stereotype.Service;
-
-import javax.annotation.Resource;
-import java.util.List;
-import java.util.Map;
-
-@Service
-public class ProductionPlanServiceImpl implements ProductionPlanService {
-
- @Resource
- ManufactureOrderMapper manufactureOrderMapper;
-
- //鏌ヨ鐢熶骇璁″垝鍒楄〃
- @Override
- public List<Map<String, Object>> selectAllPlan(Integer deviceId, String orderCode, String name, String startTime, String endTime) {
- return manufactureOrderMapper.selectAllPlan(deviceId,orderCode,name,startTime,endTime);
- }
-}
diff --git a/production-server/src/main/resources/mapper/ManualTechnologyMapper.xml b/production-server/src/main/resources/mapper/ManualTechnologyMapper.xml
index 4613a5a..34626e7 100644
--- a/production-server/src/main/resources/mapper/ManualTechnologyMapper.xml
+++ b/production-server/src/main/resources/mapper/ManualTechnologyMapper.xml
@@ -1,37 +1,6 @@
<?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.yuanchu.mom.mapper.ManualTechnologyMapper">
- <!--鎵归噺鏇存柊-->
- <update id="updateBatchManualTechnology">
- UPDATE mom_ocean.manual_technology
- <trim prefix="set" suffixOverrides=",">
- <trim prefix="device_id=case" suffix="end,">
- <foreach collection="manualTechnologies" item="manualTechnologie">
- WHEN id =#{manualTechnologie.id} THEN #{manualTechnologie.deviceId}
- </foreach>
- </trim>
- <trim prefix="start_time=case" suffix="end,">
- <foreach collection="manualTechnologies" item="manualTechnologie">
- WHEN id =#{manualTechnologie.id} THEN #{manualTechnologie.startTime}
- </foreach>
- </trim>
- <trim prefix="end_time=case" suffix="end,">
- <foreach collection="manualTechnologies" item="manualTechnologie">
- WHEN id =#{manualTechnologie.id} THEN #{manualTechnologie.endTime}
- </foreach>
- </trim>
- <trim prefix="scheduling_number=case" suffix="end,">
- <foreach collection="manualTechnologies" item="manualTechnologie">
- WHEN id =#{manualTechnologie.id} THEN #{schedulingNumber}
- </foreach>
- </trim>
- </trim>
- <where>
- <foreach collection="manualTechnologies" separator="or" item="manualTechnologie">
- id =#{manualTechnologie.id}
- </foreach>
- </where>
- </update>
<resultMap id="seleDatilMap" type="map">
<id property="lable" column="techfather"/>
@@ -42,7 +11,6 @@
<id property="lable" column="techname"/>
<result property="id" column="id"/>
<result property="deviceGroup" column="device_group"/>
- <result property="deviceName" column="name"/>
<result property="technologyId" column="manufacture_order_id"/>
</resultMap>
@@ -50,12 +18,31 @@
select manual_technology.id,
techfather,
techname,
- device_group,
- name,
- manufacture_order_id
+ device_group
from mom_ocean.manual_technology
- left join mom_ocean.device
- on device.id = device_id
where manufacture_order_id = #{manOrdId}
</select>
+
+ <resultMap id="selectListTowTreeFirstMap" type="map">
+ <id property="techfather" column="techfather"/>
+ <collection property="children" javaType="list" resultMap="selectListTowTreeSecondMap"/>
+ </resultMap>
+
+ <resultMap id="selectListTowTreeSecondMap" type="map">
+ <id property="id" column="id"/>
+ <result property="techname" column="techname"/>
+ <result property="deviceName" column="name"/>
+ <result property="startTime" column="start_time"/>
+ <result property="endTime" column="end_time"/>
+ <result property="period" column="period"/>
+ </resultMap>
+ <select id="selectListTowTree" resultMap="selectListTowTreeFirstMap">
+ SELECT p.`id`, t.`techfather`, t.`techname`, d.`name`, DATE_FORMAT(p.`start_time`, '%Y-%m-%d') start_time,
+ DATE_FORMAT(p.`end_time`, '%Y-%m-%d') end_time, p.`period`
+ FROM manufacture_order_process p
+ LEFT JOIN device d ON d.`id` = p.`device_id`
+ LEFT JOIN manual_technology t ON t.`id` = p.`manual_technology_id`
+ WHERE p.`state` = 1
+ AND p.`manufacture_scheduling_id` = #{schedulingId}
+ </select>
</mapper>
diff --git a/production-server/src/main/resources/mapper/ManufactureOrderMapper.xml b/production-server/src/main/resources/mapper/ManufactureOrderMapper.xml
index 945a533..3cbca96 100644
--- a/production-server/src/main/resources/mapper/ManufactureOrderMapper.xml
+++ b/production-server/src/main/resources/mapper/ManufactureOrderMapper.xml
@@ -12,10 +12,10 @@
specifications,
unit,
number,
- DATE_FORMAT(downTime, '%Y-%m-%d') '涓嬪崟鏃ユ湡',
- DATE_FORMAT(delTime, '%Y-%m-%d') '浜よ揣鏃ユ湡',
+ scheduled_production,
+ DATE_FORMAT(downTime, '%Y-%m-%d') downTime,
+ DATE_FORMAT(delTime, '%Y-%m-%d') delTime,
go_state,
- type
from mom_ocean.manufacture_order
where state=1
<if test="downTime!=null and downTime!=''">
@@ -30,36 +30,6 @@
<if test="type!=null">
and type=#{type}
</if>
- </select>
- <!--鏌ョ湅鐢熶骇璁″垝-->
- <select id="selectAllPlan" resultType="java.util.Map">
- select order_code,
- name,
- specifications,
- unit,
- number,
- proname,
- saleman,
- downman,
- techname,
- DATE_FORMAT(start_time, '%Y-%m-%d') '璁″垝寮�濮嬫棩鏈�',
- DATE_FORMAT(end_time, '%Y-%m-%d') '璁″垝缁撴潫鏃ユ湡'
- from mom_ocean.manual_technology mt
- left join mom_ocean.manufacture_order mo
- on mt.manufacture_order_id = mo.id
- where mo.state=1
- and go_state=1
- and device_id=#{deviceId}
- <if test="orderCode!=null and orderCode!=''">
- and order_code like concat('%',#{orderCode},'%')
- </if>
- <if test="startTime!=null and startTime!=''">
- and DATE_FORMAT(start_time, '%Y-%m-%d')=#{startTime}
- </if>
- <if test="endTime!=null and endTime!=''">
- and DATE_FORMAT(end_time, '%Y-%m-%d')=#{endTime}
- </if>
- order by start_time
</select>
<update id="deleteManufacture">
@@ -89,7 +59,7 @@
<update id="updateManufacture">
UPDATE manufacture_order m
- SET m.`type` = 1, m.`go_state` = 0, m.`scheduled_production` = m.`scheduled_production` + #{schedulingNumber}
+ SET m.`go_state` = 0, m.`scheduled_production` = IFNULL(m.`scheduled_production`, 0) + #{schedulingNumber}
where m.id = #{manufactureOrderId}
</update>
</mapper>
diff --git a/production-server/src/main/resources/mapper/ManufactureOrderProcessMapper.xml b/production-server/src/main/resources/mapper/ManufactureOrderProcessMapper.xml
new file mode 100644
index 0000000..6a3a0d1
--- /dev/null
+++ b/production-server/src/main/resources/mapper/ManufactureOrderProcessMapper.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.yuanchu.mom.mapper.ManufactureOrderProcessMapper">
+
+</mapper>
diff --git a/production-server/src/main/resources/mapper/ManufactureSchedulingMapper.xml b/production-server/src/main/resources/mapper/ManufactureSchedulingMapper.xml
new file mode 100644
index 0000000..0e292c0
--- /dev/null
+++ b/production-server/src/main/resources/mapper/ManufactureSchedulingMapper.xml
@@ -0,0 +1,39 @@
+<?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.yuanchu.mom.mapper.ManufactureSchedulingMapper">
+
+ <select id="selectScheduling" resultType="map">
+ SELECT m.`id`, DATE_FORMAT(m.`create_time`, '%Y-%m-%d') createTime,
+ DATE_FORMAT(m.`end_time`, '%Y-%m-%d') endTime, m.`scheduled`, m.`go_state`,
+ DATE_FORMAT(m.`start_time`, '%Y-%m-%d') startTime
+ FROM manufacture_scheduling m
+ WHERE m.`manufacture_order_id` = 3
+ AND m.`state` = 1
+ </select>
+
+ <select id="selectProduceTable" resultType="map">
+ SELECT m.`id`, o.`name`, o.`specifications`, o.`unit`, m.`scheduled`, o.`proname`, o.`saleman`,
+ o.`downman`, DATE_FORMAT(m.`start_time`, '%Y-%m-%d') startTime, DATE_FORMAT(m.`end_time`, '%Y-%m-%d') endTime
+ FROM manufacture_scheduling m, manufacture_order o
+ WHERE m.`manufacture_order_id` = #{manOrdId}
+ AND m.`manufacture_order_id` = o.`id`
+ AND m.`state` = 1
+ <if test="productName != null and productName != ''">
+ AND o.`name` LIKE CONCAT('%', #{productName}, '%')
+ </if>
+ <if test="startTime != null and startTime != ''">
+ AND m.`start_time` >= #{startTime}
+ </if>
+ <if test="endTime != null and endTime != ''">
+ AND m.`end_time` <![CDATA[ <= ]]> #{endTime}
+ </if>
+ </select>
+
+ <select id="sePros" resultType="map">
+ SELECT s.`scheduled`, o.`order_code`, o.`customer_code`, o.`name`, o.`specifications`, o.`unit`,
+ DATE_FORMAT(o.`downTime`, '%Y-%m-%d') downTime, DATE_FORMAT(o.`delTime`, '%Y-%m-%d') delTime
+ FROM manufacture_scheduling s, manufacture_order o
+ WHERE s.`manufacture_order_id` = o.`id`
+ AND s.`id` = #{schedulingId}
+ </select>
+</mapper>
diff --git a/system-run/src/main/java/com/yuanchu/mom/CodeGenerator.java b/system-run/src/main/java/com/yuanchu/mom/CodeGenerator.java
index 48f2da3..eff1884 100644
--- a/system-run/src/main/java/com/yuanchu/mom/CodeGenerator.java
+++ b/system-run/src/main/java/com/yuanchu/mom/CodeGenerator.java
@@ -19,7 +19,7 @@
public static String database_username = "user";
public static String database_password= "123456";
public static String author = "姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃";
- public static String model_name = "/inspect-server"; // 濡傛灉涓哄垎甯冨紡濉瓙妯″潡鍚嶇О锛屽鏋滀笉鏄垎甯冨紡涓虹┖鍗冲彲
+ public static String model_name = "/production-server"; // 濡傛灉涓哄垎甯冨紡濉瓙妯″潡鍚嶇О锛屽鏋滀笉鏄垎甯冨紡涓虹┖鍗冲彲
public static String setParent = "com.yuanchu.mom"; // 鍖呰矾寰�
public static void main(String[] args) {
String projectPath = System.getProperty("user.dir");
diff --git a/system-run/src/test/java/com/yuanchu/mom/SystemRunApplicationTest.java b/system-run/src/test/java/com/yuanchu/mom/SystemRunApplicationTest.java
index 19beec6..0e4b42b 100644
--- a/system-run/src/test/java/com/yuanchu/mom/SystemRunApplicationTest.java
+++ b/system-run/src/test/java/com/yuanchu/mom/SystemRunApplicationTest.java
@@ -1,20 +1,28 @@
package com.yuanchu.mom;
-import com.yuanchu.mom.mapper.ManufactureOrderMapper;
-import com.yuanchu.mom.utils.MyUtil;
+import com.yuanchu.mom.mapper.ManualTechnologyMapper;
+import com.yuanchu.mom.pojo.ManualTechnology;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import javax.annotation.Resource;
-import java.util.ArrayList;
-import java.util.List;
+
@SpringBootTest
class SystemRunApplicationTest {
@Resource
- private ManufactureOrderMapper manufactureOrderMapper;
+ private ManualTechnologyMapper manualTechnologyMapper;
@Test
void contextLoads() {
+ ManualTechnology manualTechnology = new ManualTechnology()
+ .setTechname("tets")
+ .setTechfather("test")
+ .setDeviceGroup("grop")
+ .setDeviceId(1)
+ .setTechnologyId(2)
+ .setManufactureOrderId(1)
+ .setSchedulingNumber(12);
+ manualTechnologyMapper.insert(manualTechnology);
}
}
--
Gitblit v1.9.3