From 9911179b723c99db6580007ae4b3a1596c58baa9 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期三, 06 三月 2024 10:26:52 +0800
Subject: [PATCH] 工单完善

---
 ycl-pojo/src/main/java/com/ycl/platform/domain/form/WorkOrderCheckResultForm.java                 |   25 +
 ycl-pojo/src/main/java/com/ycl/platform/domain/vo/WorkOrderYwConditionRecordVO.java               |   41 ++
 ycl-pojo/src/main/java/com/ycl/platform/domain/vo/WorkOrderAuditingRecordVO.java                  |   44 +++
 ycl-pojo/src/main/java/com/ycl/platform/domain/entity/WorkOrderYwConditionRecord.java             |   38 ++
 ycl-server/src/main/java/com/ycl/platform/controller/WorkOrderController.java                     |   28 +
 ycl-pojo/src/main/java/com/ycl/platform/domain/vo/WorkOrderVO.java                                |    6 
 ycl-pojo/src/main/java/com/ycl/platform/domain/entity/WorkOrderAuditingRecord.java                |   42 +++
 ycl-pojo/src/main/java/com/ycl/platform/domain/query/WorkOrderAuditingRecordQuery.java            |   23 +
 ycl-pojo/src/main/java/com/ycl/platform/domain/query/WorkOrderQuery.java                          |    8 
 ycl-server/src/main/java/com/ycl/platform/service/WorkOrderService.java                           |   30 ++
 ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderYwConditionRecordServiceImpl.java |  105 +++++++
 ycl-pojo/src/main/java/com/ycl/platform/domain/entity/WorkOrder.java                              |   12 
 ycl-server/src/main/java/com/ycl/platform/service/WorkOrderAuditingRecordService.java             |   51 +++
 ycl-server/src/main/java/com/ycl/platform/mapper/WorkOrderAuditingRecordMapper.java               |   16 +
 ycl-server/src/main/java/com/ycl/platform/mapper/WorkOrderYwConditionRecordMapper.java            |   16 +
 ycl-pojo/src/main/java/com/ycl/platform/domain/query/WorkOrderYwConditionRecordQuery.java         |   23 +
 ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderAuditingRecordServiceImpl.java    |  110 +++++++
 ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java                  |   73 ++++
 ycl-pojo/src/main/java/com/ycl/platform/domain/form/WorkOrderYWConditionForm.java                 |   25 +
 ycl-pojo/src/main/java/com/ycl/platform/domain/form/WorkOrderAuditingForm.java                    |   27 +
 ycl-pojo/src/main/java/com/ycl/platform/domain/form/WorkOrderYWResultForm.java                    |   25 +
 ycl-server/src/main/java/com/ycl/platform/service/WorkOrderYwConditionRecordService.java          |   50 +++
 22 files changed, 804 insertions(+), 14 deletions(-)

diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/WorkOrder.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/WorkOrder.java
index b2f51d8..0fd9dd9 100644
--- a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/WorkOrder.java
+++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/WorkOrder.java
@@ -29,6 +29,14 @@
     @TableField("work_order_no")
     private String workOrderNo;
 
+    /** 鏁呴殰绫诲瀷 */
+    @TableField("error_type")
+    private String errorType;
+
+    @ApiModelProperty("宸ュ崟鏉ユ簮")
+    @TableField("source")
+    private String source;
+
     @ApiModelProperty("杩愮淮鍗曚綅")
     @TableField("unit_id")
     private Integer unitId;
@@ -37,6 +45,10 @@
     @TableField("yw_people_id")
     private Integer ywPeopleId;
 
+    @ApiModelProperty("鐘舵��")
+    @TableField("status")
+    private String status;
+
     @ApiModelProperty("杩愮淮澶勭悊鏃堕棿")
     @TableField("yw_handle_time")
     private LocalDateTime ywHandleTime;
diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/WorkOrderAuditingRecord.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/WorkOrderAuditingRecord.java
new file mode 100644
index 0000000..ad21639
--- /dev/null
+++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/WorkOrderAuditingRecord.java
@@ -0,0 +1,42 @@
+package com.ycl.platform.domain.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ycl.platform.base.AbsEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+/**
+ * 宸ュ崟瀹℃牳璁板綍
+ *
+ * @author xp
+ * @since 2024-03-06
+ */
+@Data
+@Accessors(chain = true)
+@TableName("t_work_order_auditing_record")
+@ApiModel(value = "WorkOrderAuditingRecord瀵硅薄", description = "宸ュ崟瀹℃牳璁板綍")
+public class WorkOrderAuditingRecord extends AbsEntity {
+
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty("宸ュ崟ID")
+    @TableField("work_order_id")
+    private Integer workOrderId;
+
+    @ApiModelProperty("瀹℃牳浜�")
+    @TableField("auditing_user")
+    private Integer auditingUser;
+
+    @ApiModelProperty("瀹℃牳缁撴灉")
+    @TableField("result")
+    private String result;
+
+    @ApiModelProperty("瀹℃牳澶囨敞")
+    @TableField("remark")
+    private String remark;
+
+
+}
diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/WorkOrderYwConditionRecord.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/WorkOrderYwConditionRecord.java
new file mode 100644
index 0000000..583e845
--- /dev/null
+++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/WorkOrderYwConditionRecord.java
@@ -0,0 +1,38 @@
+package com.ycl.platform.domain.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ycl.platform.base.AbsEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+/**
+ * 宸ュ崟杩愮淮鎯呭喌璁板綍
+ *
+ * @author xp
+ * @since 2024-03-06
+ */
+@Data
+@Accessors(chain = true)
+@TableName("t_work_order_yw_condition_record")
+@ApiModel(value = "WorkOrderYwConditionRecord瀵硅薄", description = "宸ュ崟杩愮淮鎯呭喌璁板綍")
+public class WorkOrderYwConditionRecord extends AbsEntity {
+
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty("宸ュ崟ID")
+    @TableField("work_order_id")
+    private Integer workOrderId;
+
+    @ApiModelProperty("鎻愪氦浜�")
+    @TableField("commit_user")
+    private Integer commitUser;
+
+    @ApiModelProperty("杩愮淮鎯呭喌")
+    @TableField("yw_condition")
+    private String ywCondition;
+
+
+}
diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/form/WorkOrderAuditingForm.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/form/WorkOrderAuditingForm.java
new file mode 100644
index 0000000..b7fc6e6
--- /dev/null
+++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/form/WorkOrderAuditingForm.java
@@ -0,0 +1,27 @@
+package com.ycl.platform.domain.form;
+
+import com.ycl.platform.base.AbsForm;
+import jakarta.validation.constraints.NotBlank;
+import lombok.Data;
+
+/**
+ * 宸ュ崟瀹℃牳琛ㄥ崟
+ *
+ * @author锛歺p
+ * @date锛�2024/3/6 8:59
+ */
+@Data
+public class WorkOrderAuditingForm extends AbsForm {
+
+    /**
+     * 瀹℃牳缁撴灉
+     */
+    @NotBlank(message = "瀹℃牳缁撴灉涓嶈兘涓虹┖")
+    private String auditingResult;
+
+    /**
+     * 瀹℃牳璇存槑
+     */
+    private String auditingRemark;
+
+}
diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/form/WorkOrderCheckResultForm.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/form/WorkOrderCheckResultForm.java
new file mode 100644
index 0000000..71766ef
--- /dev/null
+++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/form/WorkOrderCheckResultForm.java
@@ -0,0 +1,25 @@
+package com.ycl.platform.domain.form;
+
+import lombok.Data;
+
+/**
+ * 妫�娴嬬粨鏋滆〃鍗�
+ *
+ * @author锛歺p
+ * @date锛�2024/3/6 8:59
+ */
+@Data
+public class WorkOrderCheckResultForm {
+
+    /**
+     * 宸ュ崟ID
+     */
+    private Integer id;
+
+
+    /**
+     * 妫�娴嬬粨鏋�
+     */
+    private String ywCheckResult;
+
+}
diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/form/WorkOrderYWConditionForm.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/form/WorkOrderYWConditionForm.java
new file mode 100644
index 0000000..7f834a8
--- /dev/null
+++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/form/WorkOrderYWConditionForm.java
@@ -0,0 +1,25 @@
+package com.ycl.platform.domain.form;
+
+import lombok.Data;
+
+/**
+ * 杩愮淮鎯呭喌琛ㄥ崟
+ *
+ * @author锛歺p
+ * @date锛�2024/3/6 8:59
+ */
+@Data
+public class WorkOrderYWConditionForm {
+
+    /**
+     * 宸ュ崟ID
+     */
+    private Integer id;
+
+
+    /**
+     * 杩愮淮鎯呭喌
+     */
+    private String ywCondition;
+
+}
diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/form/WorkOrderYWResultForm.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/form/WorkOrderYWResultForm.java
new file mode 100644
index 0000000..b5deebc
--- /dev/null
+++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/form/WorkOrderYWResultForm.java
@@ -0,0 +1,25 @@
+package com.ycl.platform.domain.form;
+
+import lombok.Data;
+
+/**
+ * 杩愮淮缁撴灉琛ㄥ崟
+ *
+ * @author锛歺p
+ * @date锛�2024/3/6 8:59
+ */
+@Data
+public class WorkOrderYWResultForm {
+
+    /**
+     * 宸ュ崟ID
+     */
+    private Integer id;
+
+
+    /**
+     * 杩愮淮缁撴灉
+     */
+    private String ywResult;
+
+}
diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/query/WorkOrderAuditingRecordQuery.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/query/WorkOrderAuditingRecordQuery.java
new file mode 100644
index 0000000..1c660ec
--- /dev/null
+++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/query/WorkOrderAuditingRecordQuery.java
@@ -0,0 +1,23 @@
+package com.ycl.platform.domain.query;
+
+import com.ycl.platform.base.AbsQuery;
+import java.util.List;
+import org.springframework.lang.NonNull;
+import jakarta.validation.constraints.NotBlank;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+/**
+ * 宸ュ崟瀹℃牳璁板綍鏌ヨ
+ *
+ * @author xp
+ * @since 2024-03-06
+ */
+@Data
+@Accessors(chain = true)
+@ApiModel(value = "WorkOrderAuditingRecord鏌ヨ", description = "宸ュ崟瀹℃牳璁板綍鏌ヨ")
+public class WorkOrderAuditingRecordQuery extends AbsQuery {
+}
+
diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/query/WorkOrderQuery.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/query/WorkOrderQuery.java
index 40c51f6..e01442a 100644
--- a/ycl-pojo/src/main/java/com/ycl/platform/domain/query/WorkOrderQuery.java
+++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/query/WorkOrderQuery.java
@@ -1,8 +1,10 @@
 package com.ycl.platform.domain.query;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.ycl.platform.base.AbsQuery;
 
 import java.time.LocalDateTime;
+import java.util.Date;
 import java.util.List;
 import org.springframework.lang.NonNull;
 import jakarta.validation.constraints.NotBlank;
@@ -30,12 +32,14 @@
     /**
      * 杩愮淮澶勭悊鏃堕棿
      */
-    private LocalDateTime start;
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date start;
 
     /**
      * 杩愮淮澶勭悊鏃堕棿
      */
-    private LocalDateTime end;
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date end;
 
 }
 
diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/query/WorkOrderYwConditionRecordQuery.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/query/WorkOrderYwConditionRecordQuery.java
new file mode 100644
index 0000000..7b867c5
--- /dev/null
+++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/query/WorkOrderYwConditionRecordQuery.java
@@ -0,0 +1,23 @@
+package com.ycl.platform.domain.query;
+
+import com.ycl.platform.base.AbsQuery;
+import java.util.List;
+import org.springframework.lang.NonNull;
+import jakarta.validation.constraints.NotBlank;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+/**
+ * 宸ュ崟杩愮淮鎯呭喌璁板綍鏌ヨ
+ *
+ * @author xp
+ * @since 2024-03-06
+ */
+@Data
+@Accessors(chain = true)
+@ApiModel(value = "WorkOrderYwConditionRecord鏌ヨ", description = "宸ュ崟杩愮淮鎯呭喌璁板綍鏌ヨ")
+public class WorkOrderYwConditionRecordQuery extends AbsQuery {
+}
+
diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/WorkOrderAuditingRecordVO.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/WorkOrderAuditingRecordVO.java
new file mode 100644
index 0000000..1c912c0
--- /dev/null
+++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/WorkOrderAuditingRecordVO.java
@@ -0,0 +1,44 @@
+package com.ycl.platform.domain.vo;
+
+import com.ycl.platform.base.AbsVo;
+import com.ycl.platform.domain.entity.WorkOrderAuditingRecord;
+import java.util.List;
+import java.time.LocalDateTime;
+import org.springframework.lang.NonNull;
+import org.springframework.beans.BeanUtils;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+/**
+ * 宸ュ崟瀹℃牳璁板綍灞曠ず
+ *
+ * @author xp
+ * @since 2024-03-06
+ */
+@Data
+@Accessors(chain = true)
+public class WorkOrderAuditingRecordVO extends AbsVo {
+
+    /** 宸ュ崟ID */
+    private Integer workOrderId;
+
+    /** 瀹℃牳浜� */
+    private Integer auditingUser;
+
+    /** 瀹℃牳缁撴灉 */
+    private String result;
+
+    /** 瀹℃牳澶囨敞 */
+    private String remark;
+
+    public static WorkOrderAuditingRecordVO getVoByEntity(@NonNull WorkOrderAuditingRecord entity, WorkOrderAuditingRecordVO vo) {
+        if(vo == null) {
+            vo = new WorkOrderAuditingRecordVO();
+        }
+        BeanUtils.copyProperties(entity, vo);
+        return vo;
+    }
+
+}
diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/WorkOrderVO.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/WorkOrderVO.java
index 83fc829..07ca702 100644
--- a/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/WorkOrderVO.java
+++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/WorkOrderVO.java
@@ -30,6 +30,12 @@
     private Integer unitId;
     private String unitName;
 
+    /** 宸ュ崟鏉ユ簮 */
+    private String source;
+
+    /** 鏁呴殰绫诲瀷 */
+    private String errorType;
+
     /** 杩愮淮浜哄憳 */
     private Integer ywPeopleId;
     private String ywPeopleName;
diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/WorkOrderYwConditionRecordVO.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/WorkOrderYwConditionRecordVO.java
new file mode 100644
index 0000000..ac11354
--- /dev/null
+++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/WorkOrderYwConditionRecordVO.java
@@ -0,0 +1,41 @@
+package com.ycl.platform.domain.vo;
+
+import com.ycl.platform.base.AbsVo;
+import com.ycl.platform.domain.entity.WorkOrderYwConditionRecord;
+import java.util.List;
+import java.time.LocalDateTime;
+import org.springframework.lang.NonNull;
+import org.springframework.beans.BeanUtils;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+/**
+ * 宸ュ崟杩愮淮鎯呭喌璁板綍灞曠ず
+ *
+ * @author xp
+ * @since 2024-03-06
+ */
+@Data
+@Accessors(chain = true)
+public class WorkOrderYwConditionRecordVO extends AbsVo {
+
+    /** 宸ュ崟ID */
+    private Integer workOrderId;
+
+    /** 鎻愪氦浜� */
+    private Integer commitUser;
+
+    /** 杩愮淮鎯呭喌 */
+    private String ywCondition;
+
+    public static WorkOrderYwConditionRecordVO getVoByEntity(@NonNull WorkOrderYwConditionRecord entity, WorkOrderYwConditionRecordVO vo) {
+        if(vo == null) {
+            vo = new WorkOrderYwConditionRecordVO();
+        }
+        BeanUtils.copyProperties(entity, vo);
+        return vo;
+    }
+
+}
diff --git a/ycl-server/src/main/java/com/ycl/platform/controller/WorkOrderController.java b/ycl-server/src/main/java/com/ycl/platform/controller/WorkOrderController.java
index 01abe9f..55eca29 100644
--- a/ycl-server/src/main/java/com/ycl/platform/controller/WorkOrderController.java
+++ b/ycl-server/src/main/java/com/ycl/platform/controller/WorkOrderController.java
@@ -1,5 +1,6 @@
 package com.ycl.platform.controller;
 
+import com.ycl.platform.domain.form.*;
 import com.ycl.system.domain.group.Update;
 import com.ycl.system.domain.group.Add;
 import org.springframework.validation.annotation.Validated;
@@ -11,7 +12,6 @@
 import io.swagger.annotations.ApiOperation;
 import com.ycl.platform.service.WorkOrderService;
 import com.ycl.system.Result;
-import com.ycl.platform.domain.form.WorkOrderForm;
 import com.ycl.platform.domain.query.WorkOrderQuery;
 import lombok.RequiredArgsConstructor;
 import org.springframework.web.bind.annotation.*;
@@ -43,6 +43,30 @@
         return workOrderService.update(form);
     }
 
+    @PutMapping("/auditing")
+    @ApiOperation(value = "瀹℃牳", notes = "宸ュ崟瀹℃牳")
+    public Result auditing(@RequestBody @Validated(Update.class) WorkOrderAuditingForm form) {
+        return workOrderService.auditing(form);
+    }
+
+    @PutMapping("/yw-condition")
+    @ApiOperation(value = "杩愮淮鎯呭喌", notes = "杩愮淮鎯呭喌")
+    public Result ywCondition(@RequestBody @Validated(Update.class) WorkOrderYWConditionForm form) {
+        return workOrderService.ywCondition(form);
+    }
+
+    @PutMapping("/yw-result")
+    @ApiOperation(value = "杩愮淮缁撴灉", notes = "杩愮淮缁撴灉")
+    public Result ywCondition(@RequestBody @Validated(Update.class) WorkOrderYWResultForm form) {
+        return workOrderService.ywResult(form);
+    }
+
+    @PutMapping("/check-result")
+    @ApiOperation(value = "妫�娴嬬粨鏋�", notes = "妫�娴嬬粨鏋�")
+    public Result ywCondition(@RequestBody @Validated(Update.class) WorkOrderCheckResultForm form) {
+        return workOrderService.checkResult(form);
+    }
+
     @DeleteMapping("/{id}")
     @ApiOperation(value = "ID鍒犻櫎", notes = "ID鍒犻櫎")
     public Result removeById(@PathVariable("id") String id) {
@@ -57,7 +81,7 @@
 
     @PostMapping("/page")
     @ApiOperation(value = "鍒嗛〉", notes = "鍒嗛〉")
-    public Result page(WorkOrderQuery query) {
+    public Result page(@RequestBody WorkOrderQuery query) {
         return workOrderService.page(query);
     }
 
diff --git a/ycl-server/src/main/java/com/ycl/platform/mapper/WorkOrderAuditingRecordMapper.java b/ycl-server/src/main/java/com/ycl/platform/mapper/WorkOrderAuditingRecordMapper.java
new file mode 100644
index 0000000..ae6c9bc
--- /dev/null
+++ b/ycl-server/src/main/java/com/ycl/platform/mapper/WorkOrderAuditingRecordMapper.java
@@ -0,0 +1,16 @@
+package com.ycl.platform.mapper;
+
+import com.ycl.platform.domain.entity.WorkOrderAuditingRecord;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 宸ュ崟瀹℃牳璁板綍 Mapper 鎺ュ彛
+ *
+ * @author xp
+ * @since 2024-03-06
+ */
+@Mapper
+public interface WorkOrderAuditingRecordMapper extends BaseMapper<WorkOrderAuditingRecord> {
+
+}
diff --git a/ycl-server/src/main/java/com/ycl/platform/mapper/WorkOrderYwConditionRecordMapper.java b/ycl-server/src/main/java/com/ycl/platform/mapper/WorkOrderYwConditionRecordMapper.java
new file mode 100644
index 0000000..887fff5
--- /dev/null
+++ b/ycl-server/src/main/java/com/ycl/platform/mapper/WorkOrderYwConditionRecordMapper.java
@@ -0,0 +1,16 @@
+package com.ycl.platform.mapper;
+
+import com.ycl.platform.domain.entity.WorkOrderYwConditionRecord;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 宸ュ崟杩愮淮鎯呭喌璁板綍 Mapper 鎺ュ彛
+ *
+ * @author xp
+ * @since 2024-03-06
+ */
+@Mapper
+public interface WorkOrderYwConditionRecordMapper extends BaseMapper<WorkOrderYwConditionRecord> {
+
+}
diff --git a/ycl-server/src/main/java/com/ycl/platform/service/WorkOrderAuditingRecordService.java b/ycl-server/src/main/java/com/ycl/platform/service/WorkOrderAuditingRecordService.java
new file mode 100644
index 0000000..7363ecd
--- /dev/null
+++ b/ycl-server/src/main/java/com/ycl/platform/service/WorkOrderAuditingRecordService.java
@@ -0,0 +1,51 @@
+package com.ycl.platform.service;
+
+import com.ycl.platform.domain.entity.WorkOrderAuditingRecord;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ycl.system.Result;
+import com.ycl.platform.domain.query.WorkOrderAuditingRecordQuery;
+import java.util.List;
+
+/**
+ * 宸ュ崟瀹℃牳璁板綍 鏈嶅姟绫�
+ *
+ * @author xp
+ * @since 2024-03-06
+ */
+public interface WorkOrderAuditingRecordService extends IService<WorkOrderAuditingRecord> {
+
+
+    /**
+     * 鎵归噺鍒犻櫎
+     * @param ids
+     * @return
+     */
+    Result remove(List<String> ids);
+
+    /**
+     * id鍒犻櫎
+     * @param id
+     * @return
+     */
+    Result removeById(String id);
+
+    /**
+     * 鍒嗛〉鏌ヨ
+     * @param query
+     * @return
+     */
+    Result page(WorkOrderAuditingRecordQuery query);
+
+    /**
+     * 鏍规嵁id鏌ユ壘
+     * @param id
+     * @return
+     */
+    Result detail(String id);
+
+    /**
+     * 鍒楄〃
+     * @return
+     */
+    Result all();
+}
diff --git a/ycl-server/src/main/java/com/ycl/platform/service/WorkOrderService.java b/ycl-server/src/main/java/com/ycl/platform/service/WorkOrderService.java
index 363b852..def92e3 100644
--- a/ycl-server/src/main/java/com/ycl/platform/service/WorkOrderService.java
+++ b/ycl-server/src/main/java/com/ycl/platform/service/WorkOrderService.java
@@ -2,8 +2,8 @@
 
 import com.ycl.platform.domain.entity.WorkOrder;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.ycl.platform.domain.form.*;
 import com.ycl.system.Result;
-import com.ycl.platform.domain.form.WorkOrderForm;
 import com.ycl.platform.domain.query.WorkOrderQuery;
 import java.util.List;
 
@@ -62,4 +62,32 @@
      * @return
      */
     Result all();
+
+    /**
+     * 宸ュ崟瀹℃牳
+     * @param form
+     * @return
+     */
+    Result auditing(WorkOrderAuditingForm form);
+
+    /**
+     * 杩愮淮鎯呭喌
+     * @param form
+     * @return
+     */
+    Result ywCondition(WorkOrderYWConditionForm form);
+
+    /**
+     * 杩愮淮缁撴灉
+     * @param form
+     * @return
+     */
+    Result ywResult(WorkOrderYWResultForm form);
+
+    /**
+     * 妫�娴嬬粨鏋�
+     * @param form
+     * @return
+     */
+    Result checkResult(WorkOrderCheckResultForm form);
 }
diff --git a/ycl-server/src/main/java/com/ycl/platform/service/WorkOrderYwConditionRecordService.java b/ycl-server/src/main/java/com/ycl/platform/service/WorkOrderYwConditionRecordService.java
new file mode 100644
index 0000000..00d49b7
--- /dev/null
+++ b/ycl-server/src/main/java/com/ycl/platform/service/WorkOrderYwConditionRecordService.java
@@ -0,0 +1,50 @@
+package com.ycl.platform.service;
+
+import com.ycl.platform.domain.entity.WorkOrderYwConditionRecord;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ycl.system.Result;
+import com.ycl.platform.domain.query.WorkOrderYwConditionRecordQuery;
+import java.util.List;
+
+/**
+ * 宸ュ崟杩愮淮鎯呭喌璁板綍 鏈嶅姟绫�
+ *
+ * @author xp
+ * @since 2024-03-06
+ */
+public interface WorkOrderYwConditionRecordService extends IService<WorkOrderYwConditionRecord> {
+
+    /**
+     * 鎵归噺鍒犻櫎
+     * @param ids
+     * @return
+     */
+    Result remove(List<String> ids);
+
+    /**
+     * id鍒犻櫎
+     * @param id
+     * @return
+     */
+    Result removeById(String id);
+
+    /**
+     * 鍒嗛〉鏌ヨ
+     * @param query
+     * @return
+     */
+    Result page(WorkOrderYwConditionRecordQuery query);
+
+    /**
+     * 鏍规嵁id鏌ユ壘
+     * @param id
+     * @return
+     */
+    Result detail(String id);
+
+    /**
+     * 鍒楄〃
+     * @return
+     */
+    Result all();
+}
diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderAuditingRecordServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderAuditingRecordServiceImpl.java
new file mode 100644
index 0000000..051675c
--- /dev/null
+++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderAuditingRecordServiceImpl.java
@@ -0,0 +1,110 @@
+package com.ycl.platform.service.impl;
+
+import com.ycl.platform.domain.entity.WorkOrderAuditingRecord;
+import com.ycl.platform.mapper.WorkOrderAuditingRecordMapper;
+import com.ycl.platform.service.WorkOrderAuditingRecordService;
+import com.ycl.system.Result;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ycl.platform.domain.vo.WorkOrderAuditingRecordVO;
+import com.ycl.platform.domain.query.WorkOrderAuditingRecordQuery;
+import java.util.List;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.ycl.system.page.PageUtil;
+import org.springframework.stereotype.Service;
+import org.springframework.util.Assert;
+import java.util.ArrayList;
+import java.util.stream.Collectors;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
+import lombok.RequiredArgsConstructor;
+
+/**
+ * 宸ュ崟瀹℃牳璁板綍 鏈嶅姟瀹炵幇绫�
+ *
+ * @author xp
+ * @since 2024-03-06
+ */
+@Service
+@RequiredArgsConstructor
+public class WorkOrderAuditingRecordServiceImpl extends ServiceImpl<WorkOrderAuditingRecordMapper, WorkOrderAuditingRecord> implements WorkOrderAuditingRecordService {
+
+    private final WorkOrderAuditingRecordMapper workOrderAuditingRecordMapper;
+
+
+
+
+    /**
+     * 鎵归噺鍒犻櫎
+     * @param ids
+     * @return
+     */
+    @Override
+    public Result remove(List<String> ids) {
+        if(baseMapper.deleteBatchIds(ids) > 0) {
+            return Result.ok("鍒犻櫎鎴愬姛");
+        }
+        return Result.error("鍒犻櫎澶辫触");
+    }
+
+    /**
+     * id鍒犻櫎
+     * @param id
+     * @return
+     */
+    @Override
+    public Result removeById(String id) {
+        if(baseMapper.deleteById(id) > 0) {
+            return Result.ok("鍒犻櫎鎴愬姛");
+        }
+        return Result.error("鍒犻櫎澶辫触");
+    }
+
+    /**
+     * 鍒嗛〉鏌ヨ
+     * @param query
+     * @return
+     */
+    @Override
+    public Result page(WorkOrderAuditingRecordQuery query) {
+
+        IPage<WorkOrderAuditingRecord> page = new LambdaQueryChainWrapper<>(baseMapper)
+                .orderByDesc(WorkOrderAuditingRecord::getCreateTime)
+                .page(PageUtil.getPage(query, WorkOrderAuditingRecord.class));
+
+        List<WorkOrderAuditingRecordVO> vos = page.getRecords().stream()
+                .map(
+                        entity -> WorkOrderAuditingRecordVO.getVoByEntity(entity, null)
+                )
+                .collect(Collectors.toList());
+        return Result.ok().data(vos).total(page.getTotal());
+    }
+
+    /**
+     * 鏍规嵁id鏌ユ壘
+     * @param id
+     * @return
+     */
+    @Override
+    public Result detail(String id) {
+
+        WorkOrderAuditingRecord entity = baseMapper.selectById(id);
+        Assert.notNull(entity, "璁板綍涓嶅瓨鍦�");
+        WorkOrderAuditingRecordVO vo = WorkOrderAuditingRecordVO.getVoByEntity(entity, null);
+        return Result.ok().data(vo);
+    }
+
+    /**
+     * 鍒楄〃
+     * @return
+     */
+    @Override
+    public Result all() {
+        List<WorkOrderAuditingRecord> entities = baseMapper.selectList(null);
+        List<WorkOrderAuditingRecordVO> vos = entities.stream()
+                .map(
+                        entity -> WorkOrderAuditingRecordVO.getVoByEntity(entity, null)
+                )
+                .collect(Collectors.toList());
+        return Result.ok().data(vos);
+    }
+}
diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java
index 26b738e..607e09a 100644
--- a/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java
+++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java
@@ -1,21 +1,19 @@
 package com.ycl.platform.service.impl;
 
-import com.ycl.platform.domain.entity.WorkOrder;
-import com.ycl.platform.domain.entity.YwPeople;
-import com.ycl.platform.domain.entity.YwUnit;
-import com.ycl.platform.mapper.WorkOrderMapper;
-import com.ycl.platform.mapper.YwPeopleMapper;
-import com.ycl.platform.mapper.YwUnitMapper;
+import com.ycl.exception.ServiceException;
+import com.ycl.platform.domain.entity.*;
+import com.ycl.platform.domain.form.*;
+import com.ycl.platform.mapper.*;
 import com.ycl.platform.service.WorkOrderService;
 import com.ycl.system.Result;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.ycl.platform.domain.form.WorkOrderForm;
 import com.ycl.platform.domain.vo.WorkOrderVO;
 import com.ycl.platform.domain.query.WorkOrderQuery;
 import java.util.List;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.ycl.system.page.PageUtil;
+import com.ycl.utils.DateUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.security.core.context.SecurityContextHolder;
 import org.springframework.beans.BeanUtils;
@@ -42,6 +40,8 @@
     private final WorkOrderMapper workOrderMapper;
     private final YwUnitMapper ywUnitMapper;
     private final YwPeopleMapper ywPeopleMapper;
+    private final WorkOrderAuditingRecordMapper workOrderAuditingRecordMapper;
+    private final WorkOrderYwConditionRecordMapper workOrderYwConditionRecordMapper;
 
 
     /**
@@ -77,6 +77,59 @@
         return Result.error("淇敼澶辫触");
     }
 
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public Result auditing(WorkOrderAuditingForm form) {
+        WorkOrder workOrder = baseMapper.selectById(form.getId());
+        if (Objects.isNull(workOrder)) {
+            throw new ServiceException("宸ュ崟涓嶅瓨鍦�");
+        }
+        // 宸ュ崟鐘舵��
+        if ("pass".equals(form.getAuditingResult())) {
+            workOrder.setStatus("finish");
+        } else {
+            workOrder.setStatus("auditing");
+        }
+        baseMapper.updateById(workOrder);
+        // 娣诲姞涓�鏉″鏍歌褰�
+        WorkOrderAuditingRecord workOrderAuditingRecord = new WorkOrderAuditingRecord();
+        workOrderAuditingRecord.setWorkOrderId(workOrder.getId());
+        workOrderAuditingRecord.setAuditingUser(1);
+        workOrderAuditingRecord.setResult(form.getAuditingResult());
+        workOrderAuditingRecord.setRemark(form.getAuditingRemark());
+        workOrderAuditingRecordMapper.insert(workOrderAuditingRecord);
+        return Result.ok("鎿嶄綔鎴愬姛");
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public Result ywCondition(WorkOrderYWConditionForm form) {
+        WorkOrder workOrder = baseMapper.selectById(form.getId());
+        if (Objects.isNull(workOrder)) {
+            throw new ServiceException("宸ュ崟涓嶅瓨鍦�");
+        }
+        // 宸ュ崟鐘舵��
+        workOrder.setStatus("commit-condition");
+        baseMapper.updateById(workOrder);
+        // 娣诲姞涓�鏉¤繍缁存儏鍐佃褰�
+        WorkOrderYwConditionRecord workOrderYwConditionRecord = new WorkOrderYwConditionRecord();
+        workOrderYwConditionRecord.setWorkOrderId(workOrder.getId());
+        workOrderYwConditionRecord.setCommitUser(1);
+        workOrderYwConditionRecord.setYwCondition(form.getYwCondition());
+        workOrderYwConditionRecordMapper.insert(workOrderYwConditionRecord);
+        return Result.ok("鎿嶄綔鎴愬姛");
+    }
+
+    @Override
+    public Result ywResult(WorkOrderYWResultForm form) {
+        return null;
+    }
+
+    @Override
+    public Result checkResult(WorkOrderCheckResultForm form) {
+        return null;
+    }
+
     /**
      * 鎵归噺鍒犻櫎
      * @param ids
@@ -110,10 +163,12 @@
      */
     @Override
     public Result page(WorkOrderQuery query) {
-
         IPage<WorkOrder> page = new LambdaQueryChainWrapper<>(baseMapper)
                 .eq(StringUtils.hasText(query.getWorkOrderNo()), WorkOrder::getWorkOrderNo, query.getWorkOrderNo())
-                .between(Objects.nonNull(query.getStart()) && Objects.nonNull(query.getEnd()),WorkOrder::getYwHandleTime, query.getStart(), query.getEnd())
+                .between(Objects.nonNull(query.getStart()) && Objects.nonNull(query.getEnd()),
+                        WorkOrder::getYwHandleTime,
+                        DateUtils.getDayStart(query.getStart()),
+                        DateUtils.getDayEnd(query.getEnd()))
                 .orderByDesc(WorkOrder::getCreateTime)
                 .page(PageUtil.getPage(query, WorkOrder.class));
 
diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderYwConditionRecordServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderYwConditionRecordServiceImpl.java
new file mode 100644
index 0000000..4e64a13
--- /dev/null
+++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderYwConditionRecordServiceImpl.java
@@ -0,0 +1,105 @@
+package com.ycl.platform.service.impl;
+
+import com.ycl.platform.domain.entity.WorkOrderYwConditionRecord;
+import com.ycl.platform.mapper.WorkOrderYwConditionRecordMapper;
+import com.ycl.platform.service.WorkOrderYwConditionRecordService;
+import com.ycl.system.Result;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ycl.platform.domain.vo.WorkOrderYwConditionRecordVO;
+import com.ycl.platform.domain.query.WorkOrderYwConditionRecordQuery;
+import java.util.List;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.ycl.system.page.PageUtil;
+import org.springframework.stereotype.Service;
+import org.springframework.util.Assert;
+import java.util.stream.Collectors;
+import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
+import lombok.RequiredArgsConstructor;
+
+/**
+ * 宸ュ崟杩愮淮鎯呭喌璁板綍 鏈嶅姟瀹炵幇绫�
+ *
+ * @author xp
+ * @since 2024-03-06
+ */
+@Service
+@RequiredArgsConstructor
+public class WorkOrderYwConditionRecordServiceImpl extends ServiceImpl<WorkOrderYwConditionRecordMapper, WorkOrderYwConditionRecord> implements WorkOrderYwConditionRecordService {
+
+    private final WorkOrderYwConditionRecordMapper workOrderYwConditionRecordMapper;
+
+    /**
+     * 鎵归噺鍒犻櫎
+     * @param ids
+     * @return
+     */
+    @Override
+    public Result remove(List<String> ids) {
+        if(baseMapper.deleteBatchIds(ids) > 0) {
+            return Result.ok("鍒犻櫎鎴愬姛");
+        }
+        return Result.error("鍒犻櫎澶辫触");
+    }
+
+    /**
+     * id鍒犻櫎
+     * @param id
+     * @return
+     */
+    @Override
+    public Result removeById(String id) {
+        if(baseMapper.deleteById(id) > 0) {
+            return Result.ok("鍒犻櫎鎴愬姛");
+        }
+        return Result.error("鍒犻櫎澶辫触");
+    }
+
+    /**
+     * 鍒嗛〉鏌ヨ
+     * @param query
+     * @return
+     */
+    @Override
+    public Result page(WorkOrderYwConditionRecordQuery query) {
+
+        IPage<WorkOrderYwConditionRecord> page = new LambdaQueryChainWrapper<>(baseMapper)
+                .orderByDesc(WorkOrderYwConditionRecord::getCreateTime)
+                .page(PageUtil.getPage(query, WorkOrderYwConditionRecord.class));
+
+        List<WorkOrderYwConditionRecordVO> vos = page.getRecords().stream()
+                .map(
+                        entity -> WorkOrderYwConditionRecordVO.getVoByEntity(entity, null)
+                )
+                .collect(Collectors.toList());
+        return Result.ok().data(vos).total(page.getTotal());
+    }
+
+    /**
+     * 鏍规嵁id鏌ユ壘
+     * @param id
+     * @return
+     */
+    @Override
+    public Result detail(String id) {
+
+        WorkOrderYwConditionRecord entity = baseMapper.selectById(id);
+        Assert.notNull(entity, "璁板綍涓嶅瓨鍦�");
+        WorkOrderYwConditionRecordVO vo = WorkOrderYwConditionRecordVO.getVoByEntity(entity, null);
+        return Result.ok().data(vo);
+    }
+
+    /**
+     * 鍒楄〃
+     * @return
+     */
+    @Override
+    public Result all() {
+        List<WorkOrderYwConditionRecord> entities = baseMapper.selectList(null);
+        List<WorkOrderYwConditionRecordVO> vos = entities.stream()
+                .map(
+                        entity -> WorkOrderYwConditionRecordVO.getVoByEntity(entity, null)
+                )
+                .collect(Collectors.toList());
+        return Result.ok().data(vos);
+    }
+}

--
Gitblit v1.8.0