From 60486eff49be63700e94ad78ec0eeae056b2b416 Mon Sep 17 00:00:00 2001
From: chen.llin <1442464845@qq.comm>
Date: 星期三, 24 十二月 2025 18:07:25 +0800
Subject: [PATCH] 历史出入库单修改业务时间操作记录-月结相关
---
src/main/java/com/zy/asrs/entity/OrderTimeChangeLog.java | 117 +++++++++++++++++++++++
src/main/java/com/zy/asrs/controller/OrderTimeChangeLogController.java | 77 +++++++++++++++
src/main/resources/sql/man_order_time_change_log.sql | 29 +++++
src/main/java/com/zy/asrs/mapper/OrderTimeChangeLogMapper.java | 12 ++
src/main/java/com/zy/asrs/service/impl/OrderTimeChangeLogServiceImpl.java | 12 ++
src/main/java/com/zy/asrs/service/OrderTimeChangeLogService.java | 8 +
6 files changed, 255 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/OrderTimeChangeLogController.java b/src/main/java/com/zy/asrs/controller/OrderTimeChangeLogController.java
new file mode 100644
index 0000000..e2994b1
--- /dev/null
+++ b/src/main/java/com/zy/asrs/controller/OrderTimeChangeLogController.java
@@ -0,0 +1,77 @@
+package com.zy.asrs.controller;
+
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.baomidou.mybatisplus.plugins.Page;
+import com.core.annotations.ManagerAuth;
+import com.core.common.Cools;
+import com.core.common.R;
+import com.zy.asrs.entity.OrderTimeChangeLog;
+import com.zy.asrs.service.OrderTimeChangeLogService;
+import com.zy.common.web.BaseController;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Map;
+
+@RestController
+@RequestMapping("orderTimeChangeLog")
+public class OrderTimeChangeLogController extends BaseController {
+
+ @Autowired
+ private OrderTimeChangeLogService orderTimeChangeLogService;
+
+ /**
+ * 鍒嗛〉鏌ヨ鍙樻洿璁板綍
+ */
+ @PostMapping(value = "/page/auth")
+ @ManagerAuth(memo = "鏌ヨ涓氬姟鏃堕棿鍙樻洿璁板綍")
+ public R page(@RequestParam(defaultValue = "1") Integer curr,
+ @RequestParam(defaultValue = "10") Integer limit,
+ @RequestParam(required = false) String orderByField,
+ @RequestParam(required = false) String orderByType,
+ @RequestParam Map<String, Object> param) {
+ EntityWrapper<OrderTimeChangeLog> wrapper = new EntityWrapper<>();
+ convert(param, wrapper);
+ if (!Cools.isEmpty(orderByField)) {
+ wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));
+ } else {
+ wrapper.orderBy("create_time", false);
+ }
+ return R.ok(orderTimeChangeLogService.selectPage(new Page<>(curr, limit), wrapper));
+ }
+
+ /**
+ * 鏍规嵁璁㈠崟ID鏌ヨ鍙樻洿璁板綍
+ */
+ @PostMapping(value = "/list/byOrderId/auth")
+ @ManagerAuth(memo = "鏍规嵁璁㈠崟ID鏌ヨ鍙樻洿璁板綍")
+ public R listByOrderId(@RequestParam Long orderId) {
+ EntityWrapper<OrderTimeChangeLog> wrapper = new EntityWrapper<>();
+ wrapper.eq("order_id", orderId);
+ wrapper.orderBy("create_time", false);
+ java.util.List<OrderTimeChangeLog> list = orderTimeChangeLogService.selectList(wrapper);
+ // 璁剧疆鍒涘缓浜哄悕绉�
+ if (list != null) {
+ for (OrderTimeChangeLog log : list) {
+ log.setCreateByName(log.getCreateByName());
+ }
+ }
+ return R.ok(list);
+ }
+
+ private <T> void convert(Map<String, Object> map, EntityWrapper<T> wrapper) {
+ for (Map.Entry<String, Object> entry : map.entrySet()) {
+ String key = entry.getKey();
+ String val = String.valueOf(entry.getValue());
+ if (Cools.isEmpty(val) || "null".equals(val)) {
+ continue;
+ }
+ if ("order_id".equals(key) || "orderId".equals(key)) {
+ wrapper.eq(key, val);
+ } else {
+ wrapper.like(key, val);
+ }
+ }
+ }
+}
+
diff --git a/src/main/java/com/zy/asrs/entity/OrderTimeChangeLog.java b/src/main/java/com/zy/asrs/entity/OrderTimeChangeLog.java
new file mode 100644
index 0000000..98bb8f5
--- /dev/null
+++ b/src/main/java/com/zy/asrs/entity/OrderTimeChangeLog.java
@@ -0,0 +1,117 @@
+package com.zy.asrs.entity;
+
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.annotations.TableName;
+import com.baomidou.mybatisplus.enums.IdType;
+import com.core.common.Cools;
+import com.core.common.SpringUtils;
+import com.zy.system.entity.User;
+import com.zy.system.service.UserService;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+@Data
+@TableName("man_order_time_change_log")
+public class OrderTimeChangeLog implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * ID
+ */
+ @ApiModelProperty(value = "ID")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Long id;
+
+ /**
+ * 璁㈠崟ID
+ */
+ @ApiModelProperty(value = "璁㈠崟ID")
+ @TableField("order_id")
+ private Long orderId;
+
+ /**
+ * 鍗曟嵁缂栧彿
+ */
+ @ApiModelProperty(value = "鍗曟嵁缂栧彿")
+ @TableField("order_no")
+ private String orderNo;
+
+ /**
+ * 璁㈠崟绫诲瀷 1:鍏ュ簱 2:鍑哄簱
+ */
+ @ApiModelProperty(value = "璁㈠崟绫诲瀷 1:鍏ュ簱 2:鍑哄簱")
+ @TableField("order_type")
+ private Integer orderType;
+
+ /**
+ * 鍘熶笟鍔℃椂闂�
+ */
+ @ApiModelProperty(value = "鍘熶笟鍔℃椂闂�")
+ @TableField("old_order_time")
+ private String oldOrderTime;
+
+ /**
+ * 鏂颁笟鍔℃椂闂�
+ */
+ @ApiModelProperty(value = "鏂颁笟鍔℃椂闂�")
+ @TableField("new_order_time")
+ private String newOrderTime;
+
+ /**
+ * 澶囨敞
+ */
+ @ApiModelProperty(value = "澶囨敞")
+ private String memo;
+
+ /**
+ * 鍒涘缓浜�
+ */
+ @ApiModelProperty(value = "鍒涘缓浜�")
+ @TableField("create_by")
+ private Long createBy;
+
+ /**
+ * 鍒涘缓鏃堕棿
+ */
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ @TableField("create_time")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date createTime;
+
+ /**
+ * 鍒涘缓浜哄悕绉�
+ */
+ @ApiModelProperty(value = "鍒涘缓浜哄悕绉�")
+ @TableField(exist = false)
+ private String createByName;
+
+ public String getCreateByName() {
+ if (createByName != null) {
+ return createByName;
+ }
+ UserService service = SpringUtils.getBean(UserService.class);
+ User user = service.selectById(this.createBy);
+ if (!Cools.isEmpty(user)) {
+ return user.getUsername();
+ }
+ if (this.createBy != null && this.createBy == 9527) {
+ return "super";
+ }
+ return null;
+ }
+
+ public String getCreateTime$() {
+ if (Cools.isEmpty(this.createTime)) {
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime);
+ }
+}
+
diff --git a/src/main/java/com/zy/asrs/mapper/OrderTimeChangeLogMapper.java b/src/main/java/com/zy/asrs/mapper/OrderTimeChangeLogMapper.java
new file mode 100644
index 0000000..19d0d20
--- /dev/null
+++ b/src/main/java/com/zy/asrs/mapper/OrderTimeChangeLogMapper.java
@@ -0,0 +1,12 @@
+package com.zy.asrs.mapper;
+
+import com.baomidou.mybatisplus.mapper.BaseMapper;
+import com.zy.asrs.entity.OrderTimeChangeLog;
+import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
+
+@Mapper
+@Repository
+public interface OrderTimeChangeLogMapper extends BaseMapper<OrderTimeChangeLog> {
+}
+
diff --git a/src/main/java/com/zy/asrs/service/OrderTimeChangeLogService.java b/src/main/java/com/zy/asrs/service/OrderTimeChangeLogService.java
new file mode 100644
index 0000000..ff614e4
--- /dev/null
+++ b/src/main/java/com/zy/asrs/service/OrderTimeChangeLogService.java
@@ -0,0 +1,8 @@
+package com.zy.asrs.service;
+
+import com.baomidou.mybatisplus.service.IService;
+import com.zy.asrs.entity.OrderTimeChangeLog;
+
+public interface OrderTimeChangeLogService extends IService<OrderTimeChangeLog> {
+}
+
diff --git a/src/main/java/com/zy/asrs/service/impl/OrderTimeChangeLogServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OrderTimeChangeLogServiceImpl.java
new file mode 100644
index 0000000..cf07f1d
--- /dev/null
+++ b/src/main/java/com/zy/asrs/service/impl/OrderTimeChangeLogServiceImpl.java
@@ -0,0 +1,12 @@
+package com.zy.asrs.service.impl;
+
+import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import com.zy.asrs.entity.OrderTimeChangeLog;
+import com.zy.asrs.mapper.OrderTimeChangeLogMapper;
+import com.zy.asrs.service.OrderTimeChangeLogService;
+import org.springframework.stereotype.Service;
+
+@Service
+public class OrderTimeChangeLogServiceImpl extends ServiceImpl<OrderTimeChangeLogMapper, OrderTimeChangeLog> implements OrderTimeChangeLogService {
+}
+
diff --git a/src/main/resources/sql/man_order_time_change_log.sql b/src/main/resources/sql/man_order_time_change_log.sql
new file mode 100644
index 0000000..52904f6
--- /dev/null
+++ b/src/main/resources/sql/man_order_time_change_log.sql
@@ -0,0 +1,29 @@
+-- 涓氬姟鏃堕棿鍙樻洿璁板綍琛�
+CREATE TABLE [man_order_time_change_log] (
+ [id] bigint NOT NULL IDENTITY(1,1),
+ [order_id] bigint NOT NULL,
+ [order_no] varchar(255) NOT NULL,
+ [order_type] int NOT NULL,
+ [old_order_time] varchar(255) NOT NULL,
+ [new_order_time] varchar(255) NOT NULL,
+ [memo] varchar(500) DEFAULT NULL,
+ [create_by] bigint DEFAULT NULL,
+ [create_time] datetime DEFAULT NULL,
+ PRIMARY KEY ([id])
+);
+
+CREATE INDEX [idx_order_id] ON [man_order_time_change_log] ([order_id]);
+CREATE INDEX [idx_order_no] ON [man_order_time_change_log] ([order_no]);
+CREATE INDEX [idx_create_time] ON [man_order_time_change_log] ([create_time]);
+
+EXEC sp_addextendedproperty @name = N'MS_Description', @value = N'涓氬姟鏃堕棿鍙樻洿璁板綍琛�', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'man_order_time_change_log';
+EXEC sp_addextendedproperty @name = N'MS_Description', @value = N'ID', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'man_order_time_change_log', @level2type = N'COLUMN', @level2name = N'id';
+EXEC sp_addextendedproperty @name = N'MS_Description', @value = N'璁㈠崟ID', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'man_order_time_change_log', @level2type = N'COLUMN', @level2name = N'order_id';
+EXEC sp_addextendedproperty @name = N'MS_Description', @value = N'鍗曟嵁缂栧彿', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'man_order_time_change_log', @level2type = N'COLUMN', @level2name = N'order_no';
+EXEC sp_addextendedproperty @name = N'MS_Description', @value = N'璁㈠崟绫诲瀷 1:鍏ュ簱 2:鍑哄簱', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'man_order_time_change_log', @level2type = N'COLUMN', @level2name = N'order_type';
+EXEC sp_addextendedproperty @name = N'MS_Description', @value = N'鍘熶笟鍔℃椂闂�', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'man_order_time_change_log', @level2type = N'COLUMN', @level2name = N'old_order_time';
+EXEC sp_addextendedproperty @name = N'MS_Description', @value = N'鏂颁笟鍔℃椂闂�', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'man_order_time_change_log', @level2type = N'COLUMN', @level2name = N'new_order_time';
+EXEC sp_addextendedproperty @name = N'MS_Description', @value = N'澶囨敞', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'man_order_time_change_log', @level2type = N'COLUMN', @level2name = N'memo';
+EXEC sp_addextendedproperty @name = N'MS_Description', @value = N'鍒涘缓浜�', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'man_order_time_change_log', @level2type = N'COLUMN', @level2name = N'create_by';
+EXEC sp_addextendedproperty @name = N'MS_Description', @value = N'鍒涘缓鏃堕棿', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'man_order_time_change_log', @level2type = N'COLUMN', @level2name = N'create_time';
+
--
Gitblit v1.9.1