自动化立体仓库 - WMS系统
chen.llin
2025-12-24 60486eff49be63700e94ad78ec0eeae056b2b416
历史出入库单修改业务时间操作记录-月结相关
6个文件已添加
255 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/OrderTimeChangeLogController.java 77 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/entity/OrderTimeChangeLog.java 117 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/mapper/OrderTimeChangeLogMapper.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/OrderTimeChangeLogService.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/OrderTimeChangeLogServiceImpl.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/sql/man_order_time_change_log.sql 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/OrderTimeChangeLogController.java
New file
@@ -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);
            }
        }
    }
}
src/main/java/com/zy/asrs/entity/OrderTimeChangeLog.java
New file
@@ -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);
    }
}
src/main/java/com/zy/asrs/mapper/OrderTimeChangeLogMapper.java
New file
@@ -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> {
}
src/main/java/com/zy/asrs/service/OrderTimeChangeLogService.java
New file
@@ -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> {
}
src/main/java/com/zy/asrs/service/impl/OrderTimeChangeLogServiceImpl.java
New file
@@ -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 {
}
src/main/resources/sql/man_order_time_change_log.sql
New file
@@ -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';