qiangxuan il y a 1 mois
Parent
commit
2d1945eafa
15 fichiers modifiés avec 796 ajouts et 3 suppressions
  1. 10 0
      zgzt-sys-java/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/DateUtils.java
  2. 36 3
      zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/billetActual/service/impl/BilletHotsendChangeShiftServiceImpl.java
  3. 258 0
      zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/shiftConfiguration/controller/ShiftConfigurationController.java
  4. 163 0
      zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/shiftConfiguration/controller/ShiftConfigurationLogController.java
  5. 115 0
      zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/shiftConfiguration/entity/ShiftConfiguration.java
  6. 99 0
      zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/shiftConfiguration/entity/ShiftConfigurationLog.java
  7. 14 0
      zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/shiftConfiguration/mapper/ShiftConfigurationLogMapper.java
  8. 14 0
      zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/shiftConfiguration/mapper/ShiftConfigurationMapper.java
  9. 5 0
      zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/shiftConfiguration/mapper/xml/ShiftConfigurationLogMapper.xml
  10. 5 0
      zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/shiftConfiguration/mapper/xml/ShiftConfigurationMapper.xml
  11. 14 0
      zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/shiftConfiguration/service/IShiftConfigurationLogService.java
  12. 14 0
      zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/shiftConfiguration/service/IShiftConfigurationService.java
  13. 19 0
      zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/shiftConfiguration/service/impl/ShiftConfigurationLogServiceImpl.java
  14. 18 0
      zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/shiftConfiguration/service/impl/ShiftConfigurationServiceImpl.java
  15. 12 0
      zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/storageBill/entity/StorageBill.java

+ 10 - 0
zgzt-sys-java/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/DateUtils.java

@@ -842,4 +842,14 @@ public class DateUtils extends PropertyEditorSupport {
         return endCalendar.getTime();
     }
 
+    public static Date getDateWithOnlyYearMonthDay(Date date) {
+        Calendar calendar = Calendar.getInstance();
+        calendar.setTime(date);
+        // 设置时间为当天的0时0分0秒
+        calendar.set(Calendar.HOUR_OF_DAY, 0);
+        calendar.set(Calendar.MINUTE, 0);
+        calendar.set(Calendar.SECOND, 0);
+        calendar.set(Calendar.MILLISECOND, 0);
+        return calendar.getTime();
+    }
 }

+ 36 - 3
zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/billetActual/service/impl/BilletHotsendChangeShiftServiceImpl.java

@@ -1,8 +1,10 @@
 package org.jeecg.modules.billetActual.service.impl;
 
+import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.IdWorker;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
 import org.jeecg.common.util.DateUtils;
@@ -14,6 +16,8 @@ import org.jeecg.modules.billetActual.service.IBilletHotsendChangeShiftService;
 import org.jeecg.modules.billetActual.util.ScheduleUtils;
 import org.jeecg.modules.billetActual.util.ShiftInfo;
 import org.jeecg.modules.operateLog.service.IOperateLogService;
+import org.jeecg.modules.shiftConfiguration.entity.ShiftConfiguration;
+import org.jeecg.modules.shiftConfiguration.service.IShiftConfigurationService;
 import org.jeecg.modules.storageBill.entity.ShiftEnum;
 import org.jeecg.modules.storageBill.entity.ShiftGroupEnum;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -39,6 +43,8 @@ public class BilletHotsendChangeShiftServiceImpl extends ServiceImpl<BilletHotse
     @Autowired
     public RedisTemplate redisTemplate;
 
+    @Autowired
+    private IShiftConfigurationService shiftConfigurationService;
     /**
      * 自动化交班
      * @author: jeecg-boot
@@ -114,15 +120,14 @@ public class BilletHotsendChangeShiftServiceImpl extends ServiceImpl<BilletHotse
 //                return;
 //            }
 //        }
-
         BilletHotsendChangeShift billetHotsendChangeShiftVo = new BilletHotsendChangeShift();
         billetHotsendChangeShiftVo.setShiftGroup(finalNextShiftGroupVal);
         billetHotsendChangeShiftVo.setShift(finalNextShiftVal);
-        JSONObject jsonObject = autoChangeShiftHandle(billetHotsendChangeShiftVo);
+        JSONObject jsonObject = autoChangeShiftHandle(billetHotsendChangeShiftVo, sixShiftGroup, sixShift);
         log.info("C端自动化交班结果:{}{}", jsonObject, DateUtils.date2Str(new Date(), DateUtils.datetimeFormat.get()));
     }
 
-    private JSONObject autoChangeShiftHandle(BilletHotsendChangeShift billetHotsendChangeShiftVo) {
+    private JSONObject autoChangeShiftHandle(BilletHotsendChangeShift billetHotsendChangeShiftVo, String currentShiftGroup, String currentShift) {
         JSONObject result = new JSONObject();
         // 缓存交班索引ID
         String nextshiftIdKey = String.format("class:nextshift:Id:%s", "5");
@@ -192,6 +197,34 @@ public class BilletHotsendChangeShiftServiceImpl extends ServiceImpl<BilletHotse
                 billetHotsendChangeShift1.setCounts(0);
                 billetHotsendChangeShift1.setBlankOutputs(0d);
                 baseMapper.insert(billetHotsendChangeShift1);
+
+                /**
+                 * 5号机根据 铸机号、当班班组、当班班别 查询储运配置信息,倒序取最新的一条,把查询到的牌号、定尺、目的地、新/旧站台
+                 * 带到下一个班组中,生成一个新的储运配置信息,并保存到数据库中
+                 */
+                LambdaQueryWrapper<ShiftConfiguration> queryWrapper = new LambdaQueryWrapper<ShiftConfiguration>();
+                queryWrapper.eq(ShiftConfiguration::getCcmNo, "5")
+                        .eq(ShiftConfiguration::getShiftGroup, currentShiftGroup)
+                        .eq(ShiftConfiguration::getShift, currentShift)
+                        .orderByDesc(ShiftConfiguration::getCreateTime)
+                        .last("limit 1");
+                ShiftConfiguration shiftConfiguration = shiftConfigurationService.getOne(queryWrapper);
+                if (shiftConfiguration != null){
+                    // 生出储运配置信息
+                    ShiftConfiguration newShiftConfiguration = new ShiftConfiguration();
+                    newShiftConfiguration.setId(String.valueOf(IdWorker.getId()));
+                    newShiftConfiguration.setCcmNo(ccmNo);
+                    newShiftConfiguration.setShiftGroup(billetHotsendChangeShiftVo.getShiftGroup());
+                    newShiftConfiguration.setShift(billetHotsendChangeShiftVo.getShift());
+                    newShiftConfiguration.setSteelGrade(shiftConfiguration.getSteelGrade());
+                    newShiftConfiguration.setSpec(shiftConfiguration.getSpec());
+                    newShiftConfiguration.setDestination(shiftConfiguration.getDestination());
+                    newShiftConfiguration.setNewOldPlatform(shiftConfiguration.getNewOldPlatform());
+                    newShiftConfiguration.setCreateTime(new Date());
+                    newShiftConfiguration.setDate(DateUtils.getDateWithOnlyYearMonthDay(new Date()));
+                    shiftConfigurationService.save(newShiftConfiguration);
+                    log.info("{}{}", "5号生成储运配置:", JSON.toJSON(newShiftConfiguration));
+                }
                 result.put("success", "自动化交班操作成功!");
             } catch (Exception e) {
                 log.error("自动化交班操作出现异常", e);

+ 258 - 0
zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/shiftConfiguration/controller/ShiftConfigurationController.java

@@ -0,0 +1,258 @@
+package org.jeecg.modules.shiftConfiguration.controller;
+
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.shiro.SecurityUtils;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.common.system.base.controller.JeecgController;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.common.system.vo.LoginUser;
+import org.jeecg.common.util.oConvertUtils;
+import org.jeecg.modules.shiftConfiguration.entity.ShiftConfiguration;
+import org.jeecg.modules.shiftConfiguration.entity.ShiftConfigurationLog;
+import org.jeecg.modules.shiftConfiguration.service.IShiftConfigurationLogService;
+import org.jeecg.modules.shiftConfiguration.service.IShiftConfigurationService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.servlet.ModelAndView;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import java.time.LocalDate;
+import java.time.LocalTime;
+import java.time.LocalDateTime;
+import java.time.ZoneId;
+import java.util.Arrays;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * @Description: 班次配置
+ * @Author: jeecg-boot
+ * @Date: 2025-04-17
+ * @Version: V1.0
+ */
+@Api(tags = "班次配置")
+@RestController
+@RequestMapping("/shiftConfiguration/shiftConfiguration")
+@Slf4j
+public class ShiftConfigurationController extends JeecgController<ShiftConfiguration, IShiftConfigurationService> {
+    @Autowired
+    private IShiftConfigurationService shiftConfigurationService;
+    @Autowired
+    private IShiftConfigurationLogService shiftConfigurationLogService;
+    @Autowired
+    public RedisTemplate redisTemplate;
+
+    /**
+     * 分页列表查询
+     *
+     * @param shiftConfiguration
+     * @param pageNo
+     * @param pageSize
+     * @param req
+     * @return
+     */
+    //@AutoLog(value = "班次配置-分页列表查询")
+    @ApiOperation(value = "班次配置-分页列表查询", notes = "班次配置-分页列表查询")
+    @GetMapping(value = "/list")
+    public Result<IPage<ShiftConfiguration>> queryPageList(ShiftConfiguration shiftConfiguration,
+                                                           @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
+                                                           @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
+                                                           HttpServletRequest req) {
+        QueryWrapper<ShiftConfiguration> queryWrapper = QueryGenerator.initQueryWrapper(shiftConfiguration, req.getParameterMap());
+        Page<ShiftConfiguration> page = new Page<ShiftConfiguration>(pageNo, pageSize);
+        IPage<ShiftConfiguration> pageList = shiftConfigurationService.page(page, queryWrapper);
+        return Result.OK(pageList);
+    }
+
+    /**
+     * 添加
+     *
+     * @param shiftConfiguration
+     * @return
+     */
+    @AutoLog(value = "班次配置-添加")
+    @ApiOperation(value = "班次配置-添加", notes = "班次配置-添加")
+    @RequiresPermissions("shiftConfiguration:shift_configuration:add")
+    @PostMapping(value = "/add")
+    public Result<String> add(@RequestBody ShiftConfiguration shiftConfiguration) {
+
+        // 参数校验
+        if (shiftConfiguration.getDate() == null ||
+                StrUtil.isBlank(shiftConfiguration.getShift()) ||
+                StrUtil.isBlank(shiftConfiguration.getShiftGroup())) {
+            return Result.error("班次日期、班别、班组不能为空!");
+        }
+
+        Date shiftDate = shiftConfiguration.getDate();
+        String shift = shiftConfiguration.getShift();
+        String shiftGroup = shiftConfiguration.getShiftGroup();
+
+        // 日期只保留年月日
+        LocalDate localDate = shiftDate.toInstant()
+                .atZone(ZoneId.systemDefault())
+                .toLocalDate();
+
+        // 构造当天 00:00:00 和 23:59:59 范围
+        LocalDateTime startOfDay = localDate.atStartOfDay();
+        LocalDateTime endOfDay = localDate.atTime(LocalTime.MAX);
+
+        Date start = Date.from(startOfDay.atZone(ZoneId.systemDefault()).toInstant());
+        Date end = Date.from(endOfDay.atZone(ZoneId.systemDefault()).toInstant());
+
+        // 查询同一天相同班组和班别是否存在
+        LambdaQueryWrapper<ShiftConfiguration> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.between(ShiftConfiguration::getDate, start, end)
+                .eq(ShiftConfiguration::getShift, shift)
+                .eq(ShiftConfiguration::getShiftGroup, shiftGroup);
+
+        boolean exists = shiftConfigurationService.count(queryWrapper) > 0;
+        if (exists) {
+            return Result.error("该班别和班组在当天已存在,不能重复添加!");
+        }
+
+        shiftConfigurationService.save(shiftConfiguration);
+        return Result.OK("添加成功!");
+    }
+
+    /**
+     * 编辑
+     *
+     * @param shiftConfiguration
+     * @return
+     */
+    @AutoLog(value = "班次配置-编辑")
+    @ApiOperation(value = "班次配置-编辑", notes = "班次配置-编辑")
+    @RequiresPermissions("shiftConfiguration:shift_configuration:edit")
+    @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST})
+    public Result<String> edit(@RequestBody ShiftConfiguration shiftConfiguration) {
+        // 获取当前用户
+        LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+        String username = sysUser.getUsername();
+
+        // 查询原数据用于对比
+        ShiftConfiguration oldConfig = shiftConfigurationService.getById(shiftConfiguration.getId());
+
+        shiftConfigurationService.updateById(shiftConfiguration);
+
+        // 构造变更内容
+        String content = String.format("编辑储运配置[id=%s],原值:%s,新值:%s",
+                shiftConfiguration.getId(),
+                oldConfig.toString(),
+                shiftConfiguration.toString());
+
+        // 保存操作日志
+        ShiftConfigurationLog log = new ShiftConfigurationLog();
+        log.setOperationUser(username);
+        log.setOperationTime(new Date());
+        log.setOperationType("编辑");
+        log.setOperationContent(content);
+        log.setBizId(shiftConfiguration.getId());
+        shiftConfigurationLogService.save(log);
+        return Result.OK("编辑成功!");
+    }
+
+    /**
+     * 通过id删除
+     *
+     * @param id
+     * @return
+     */
+    @AutoLog(value = "班次配置-通过id删除")
+    @ApiOperation(value = "班次配置-通过id删除", notes = "班次配置-通过id删除")
+    @RequiresPermissions("shiftConfiguration:shift_configuration:delete")
+    @DeleteMapping(value = "/delete")
+    public Result<String> delete(@RequestParam(name = "id", required = true) String id) {
+        shiftConfigurationService.removeById(id);
+        return Result.OK("删除成功!");
+    }
+
+    /**
+     * 批量删除
+     *
+     * @param ids
+     * @return
+     */
+    @AutoLog(value = "班次配置-批量删除")
+    @ApiOperation(value = "班次配置-批量删除", notes = "班次配置-批量删除")
+    @RequiresPermissions("shiftConfiguration:shift_configuration:deleteBatch")
+    @DeleteMapping(value = "/deleteBatch")
+    public Result<String> deleteBatch(@RequestParam(name = "ids", required = true) String ids) {
+        this.shiftConfigurationService.removeByIds(Arrays.asList(ids.split(",")));
+        return Result.OK("批量删除成功!");
+    }
+
+    /**
+     * 通过id查询
+     *
+     * @param id
+     * @return
+     */
+    //@AutoLog(value = "班次配置-通过id查询")
+    @ApiOperation(value = "班次配置-通过id查询", notes = "班次配置-通过id查询")
+    @GetMapping(value = "/queryById")
+    public Result<ShiftConfiguration> queryById(@RequestParam(name = "id", required = true) String id) {
+        ShiftConfiguration shiftConfiguration = shiftConfigurationService.getById(id);
+        if (shiftConfiguration == null) {
+            return Result.error("未找到对应数据");
+        }
+        return Result.OK(shiftConfiguration);
+    }
+
+    /**
+     * 导出excel
+     *
+     * @param request
+     * @param shiftConfiguration
+     */
+    @RequiresPermissions("shiftConfiguration:shift_configuration:exportXls")
+    @RequestMapping(value = "/exportXls")
+    public ModelAndView exportXls(HttpServletRequest request, ShiftConfiguration shiftConfiguration) {
+        return super.exportXls(request, shiftConfiguration, ShiftConfiguration.class, "班次配置");
+    }
+
+    /**
+     * 通过excel导入数据
+     *
+     * @param request
+     * @param response
+     * @return
+     */
+    @RequiresPermissions("shiftConfiguration:shift_configuration:importExcel")
+    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+        return super.importExcel(request, response, ShiftConfiguration.class);
+    }
+
+    @GetMapping("/getShiftInfo")
+    @ApiOperation(value = "获取当前班组班别", notes = "获取当前班组班别")
+    public Result<Map<String, String>> getShiftInfo() {
+        String shiftGroup = getShiftInfoFromRedis("5", "class:shift:group:%s");
+        String shift = getShiftInfoFromRedis("5", "class:shift:%s");
+
+        Map<String, String> result = new HashMap<>();
+        result.put("shiftGroup", shiftGroup);
+        result.put("shift", shift);
+
+        return Result.OK(result);
+    }
+
+    private String getShiftInfoFromRedis(String castingNo, String keyPattern) {
+        String key = String.format(keyPattern, castingNo);
+        return oConvertUtils.getString(redisTemplate.opsForValue().get(key));
+    }
+
+
+}

+ 163 - 0
zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/shiftConfiguration/controller/ShiftConfigurationLogController.java

@@ -0,0 +1,163 @@
+package org.jeecg.modules.shiftConfiguration.controller;
+
+import java.util.Arrays;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.system.base.controller.JeecgController;
+import org.jeecg.common.system.query.QueryGenerator;
+import lombok.extern.slf4j.Slf4j;
+
+import org.jeecg.modules.shiftConfiguration.entity.ShiftConfigurationLog;
+import org.jeecg.modules.shiftConfiguration.service.IShiftConfigurationLogService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.servlet.ModelAndView;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.jeecg.common.aspect.annotation.AutoLog;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+
+ /**
+ * @Description: 班次配置日志
+ * @Author: jeecg-boot
+ * @Date:   2025-04-17
+ * @Version: V1.0
+ */
+@Api(tags="班次配置日志")
+@RestController
+@RequestMapping("/shiftConfiguration/shiftConfigurationLog")
+@Slf4j
+public class ShiftConfigurationLogController extends JeecgController<ShiftConfigurationLog, IShiftConfigurationLogService> {
+	@Autowired
+	private IShiftConfigurationLogService shiftConfigurationLogService;
+	
+	/**
+	 * 分页列表查询
+	 *
+	 * @param shiftConfigurationLog
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	//@AutoLog(value = "班次配置日志-分页列表查询")
+	@ApiOperation(value="班次配置日志-分页列表查询", notes="班次配置日志-分页列表查询")
+	@GetMapping(value = "/list")
+	public Result<IPage<ShiftConfigurationLog>> queryPageList(ShiftConfigurationLog shiftConfigurationLog,
+															  @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+															  @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+															  HttpServletRequest req) {
+		QueryWrapper<ShiftConfigurationLog> queryWrapper = QueryGenerator.initQueryWrapper(shiftConfigurationLog, req.getParameterMap());
+		Page<ShiftConfigurationLog> page = new Page<ShiftConfigurationLog>(pageNo, pageSize);
+		IPage<ShiftConfigurationLog> pageList = shiftConfigurationLogService.page(page, queryWrapper);
+		return Result.OK(pageList);
+	}
+	
+	/**
+	 *   添加
+	 *
+	 * @param shiftConfigurationLog
+	 * @return
+	 */
+	@AutoLog(value = "班次配置日志-添加")
+	@ApiOperation(value="班次配置日志-添加", notes="班次配置日志-添加")
+	@RequiresPermissions("shiftConfiguration:shift_configuration_log:add")
+	@PostMapping(value = "/add")
+	public Result<String> add(@RequestBody ShiftConfigurationLog shiftConfigurationLog) {
+		shiftConfigurationLogService.save(shiftConfigurationLog);
+		return Result.OK("添加成功!");
+	}
+	
+	/**
+	 *  编辑
+	 *
+	 * @param shiftConfigurationLog
+	 * @return
+	 */
+	@AutoLog(value = "班次配置日志-编辑")
+	@ApiOperation(value="班次配置日志-编辑", notes="班次配置日志-编辑")
+	@RequiresPermissions("shiftConfiguration:shift_configuration_log:edit")
+	@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
+	public Result<String> edit(@RequestBody ShiftConfigurationLog shiftConfigurationLog) {
+		shiftConfigurationLogService.updateById(shiftConfigurationLog);
+		return Result.OK("编辑成功!");
+	}
+	
+	/**
+	 *   通过id删除
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "班次配置日志-通过id删除")
+	@ApiOperation(value="班次配置日志-通过id删除", notes="班次配置日志-通过id删除")
+	@RequiresPermissions("shiftConfiguration:shift_configuration_log:delete")
+	@DeleteMapping(value = "/delete")
+	public Result<String> delete(@RequestParam(name="id",required=true) String id) {
+		shiftConfigurationLogService.removeById(id);
+		return Result.OK("删除成功!");
+	}
+	
+	/**
+	 *  批量删除
+	 *
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "班次配置日志-批量删除")
+	@ApiOperation(value="班次配置日志-批量删除", notes="班次配置日志-批量删除")
+	@RequiresPermissions("shiftConfiguration:shift_configuration_log:deleteBatch")
+	@DeleteMapping(value = "/deleteBatch")
+	public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		this.shiftConfigurationLogService.removeByIds(Arrays.asList(ids.split(",")));
+		return Result.OK("批量删除成功!");
+	}
+	
+	/**
+	 * 通过id查询
+	 *
+	 * @param id
+	 * @return
+	 */
+	//@AutoLog(value = "班次配置日志-通过id查询")
+	@ApiOperation(value="班次配置日志-通过id查询", notes="班次配置日志-通过id查询")
+	@GetMapping(value = "/queryById")
+	public Result<ShiftConfigurationLog> queryById(@RequestParam(name="id",required=true) String id) {
+		ShiftConfigurationLog shiftConfigurationLog = shiftConfigurationLogService.getById(id);
+		if(shiftConfigurationLog==null) {
+			return Result.error("未找到对应数据");
+		}
+		return Result.OK(shiftConfigurationLog);
+	}
+
+    /**
+    * 导出excel
+    *
+    * @param request
+    * @param shiftConfigurationLog
+    */
+    @RequiresPermissions("shiftConfiguration:shift_configuration_log:exportXls")
+    @RequestMapping(value = "/exportXls")
+    public ModelAndView exportXls(HttpServletRequest request, ShiftConfigurationLog shiftConfigurationLog) {
+        return super.exportXls(request, shiftConfigurationLog, ShiftConfigurationLog.class, "班次配置日志");
+    }
+
+    /**
+      * 通过excel导入数据
+    *
+    * @param request
+    * @param response
+    * @return
+    */
+    @RequiresPermissions("shiftConfiguration:shift_configuration_log:importExcel")
+    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+        return super.importExcel(request, response, ShiftConfigurationLog.class);
+    }
+
+}

+ 115 - 0
zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/shiftConfiguration/entity/ShiftConfiguration.java

@@ -0,0 +1,115 @@
+package org.jeecg.modules.shiftConfiguration.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * @Description: 班次配置
+ * @Author: jeecg-boot
+ * @Date: 2025-04-17
+ * @Version: V1.0
+ */
+@Data
+@TableName("shift_configuration")
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value = "shift_configuration对象", description = "班次配置")
+public class ShiftConfiguration implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "主键")
+    private String id;
+    /**
+     * 创建人
+     */
+    @ApiModelProperty(value = "创建人")
+    private String createBy;
+    /**
+     * 创建日期
+     */
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "创建日期")
+    private Date createTime;
+    /**
+     * 更新人
+     */
+    @ApiModelProperty(value = "更新人")
+    private String updateBy;
+    /**
+     * 更新日期
+     */
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "更新日期")
+    private Date updateTime;
+    /**
+     * 所属部门
+     */
+    @ApiModelProperty(value = "所属部门")
+    private String sysOrgCode;
+    /**
+     * 日期
+     */
+    @Excel(name = "日期", width = 15, format = "yyyy-MM-dd")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    @ApiModelProperty(value = "日期")
+    private Date date;
+    /**
+     * 铸机号
+     */
+    @Excel(name = "铸机号", width = 15)
+    @ApiModelProperty(value = "铸机号")
+    private String ccmNo;
+    /**
+     * 班别
+     */
+    @Excel(name = "班别", width = 15)
+    @ApiModelProperty(value = "班别")
+    private String shift;
+    /**
+     * 班组
+     */
+    @Excel(name = "班组", width = 15)
+    @ApiModelProperty(value = "班组")
+    private String shiftGroup;
+    /**
+     * 牌号
+     */
+    @Excel(name = "牌号", width = 15)
+    @ApiModelProperty(value = "牌号")
+    private String steelGrade;
+    /**
+     * 定尺规格
+     */
+    @Excel(name = "定尺规格", width = 15)
+    @ApiModelProperty(value = "定尺规格")
+    private String spec;
+    /**
+     * 目的地
+     */
+    @Excel(name = "目的地", width = 15)
+    @ApiModelProperty(value = "目的地")
+    private String destination;
+
+    @Excel(name = "新站台or旧站台", width = 15)
+    @ApiModelProperty(value = "新站台or旧站台(0 新站台 1 旧站台)")
+    private Integer newOldPlatform;
+}

+ 99 - 0
zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/shiftConfiguration/entity/ShiftConfigurationLog.java

@@ -0,0 +1,99 @@
+package org.jeecg.modules.shiftConfiguration.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * @Description: 班次配置日志
+ * @Author: jeecg-boot
+ * @Date: 2025-04-17
+ * @Version: V1.0
+ */
+@Data
+@TableName("shift_configuration_log")
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value = "shift_configuration_log对象", description = "班次配置日志")
+public class ShiftConfigurationLog implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "主键")
+    private String id;
+    /**
+     * 创建人
+     */
+    @ApiModelProperty(value = "创建人")
+    private String createBy;
+    /**
+     * 创建日期
+     */
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "创建日期")
+    private Date createTime;
+    /**
+     * 更新人
+     */
+    @ApiModelProperty(value = "更新人")
+    private String updateBy;
+    /**
+     * 更新日期
+     */
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "更新日期")
+    private Date updateTime;
+    /**
+     * 所属部门
+     */
+    @ApiModelProperty(value = "所属部门")
+    private String sysOrgCode;
+    /**
+     * 操作人
+     */
+    @Excel(name = "操作人", width = 15)
+    @ApiModelProperty(value = "操作人")
+    private String operationUser;
+    /**
+     * 操作时间
+     */
+    @Excel(name = "操作时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "操作时间")
+    private Date operationTime;
+    /**
+     * 操作类型
+     */
+    @Excel(name = "操作类型", width = 15)
+    @ApiModelProperty(value = "操作类型")
+    private String operationType;
+    /**
+     * 操作内容描述
+     */
+    @Excel(name = "操作内容描述", width = 15)
+    @ApiModelProperty(value = "操作内容描述")
+    private String operationContent;
+    /**
+     * 业务记录主键
+     */
+    @Excel(name = "业务记录主键", width = 15)
+    @ApiModelProperty(value = "业务记录主键")
+    private String bizId;
+}

+ 14 - 0
zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/shiftConfiguration/mapper/ShiftConfigurationLogMapper.java

@@ -0,0 +1,14 @@
+package org.jeecg.modules.shiftConfiguration.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.jeecg.modules.shiftConfiguration.entity.ShiftConfigurationLog;
+
+/**
+ * @Description: 班次配置日志
+ * @Author: jeecg-boot
+ * @Date:   2025-04-17
+ * @Version: V1.0
+ */
+public interface ShiftConfigurationLogMapper extends BaseMapper<ShiftConfigurationLog> {
+
+}

+ 14 - 0
zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/shiftConfiguration/mapper/ShiftConfigurationMapper.java

@@ -0,0 +1,14 @@
+package org.jeecg.modules.shiftConfiguration.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.jeecg.modules.shiftConfiguration.entity.ShiftConfiguration;
+
+/**
+ * @Description: 班次配置
+ * @Author: jeecg-boot
+ * @Date:   2025-04-17
+ * @Version: V1.0
+ */
+public interface ShiftConfigurationMapper extends BaseMapper<ShiftConfiguration> {
+
+}

+ 5 - 0
zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/shiftConfiguration/mapper/xml/ShiftConfigurationLogMapper.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="org.jeecg.modules.shiftConfiguration.mapper.ShiftConfigurationLogMapper">
+
+</mapper>

+ 5 - 0
zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/shiftConfiguration/mapper/xml/ShiftConfigurationMapper.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="org.jeecg.modules.shiftConfiguration.mapper.ShiftConfigurationMapper">
+
+</mapper>

+ 14 - 0
zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/shiftConfiguration/service/IShiftConfigurationLogService.java

@@ -0,0 +1,14 @@
+package org.jeecg.modules.shiftConfiguration.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.jeecg.modules.shiftConfiguration.entity.ShiftConfigurationLog;
+
+/**
+ * @Description: 班次配置日志
+ * @Author: jeecg-boot
+ * @Date:   2025-04-17
+ * @Version: V1.0
+ */
+public interface IShiftConfigurationLogService extends IService<ShiftConfigurationLog> {
+
+}

+ 14 - 0
zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/shiftConfiguration/service/IShiftConfigurationService.java

@@ -0,0 +1,14 @@
+package org.jeecg.modules.shiftConfiguration.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.jeecg.modules.shiftConfiguration.entity.ShiftConfiguration;
+
+/**
+ * @Description: 班次配置
+ * @Author: jeecg-boot
+ * @Date:   2025-04-17
+ * @Version: V1.0
+ */
+public interface IShiftConfigurationService extends IService<ShiftConfiguration> {
+
+}

+ 19 - 0
zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/shiftConfiguration/service/impl/ShiftConfigurationLogServiceImpl.java

@@ -0,0 +1,19 @@
+package org.jeecg.modules.shiftConfiguration.service.impl;
+
+import org.jeecg.modules.shiftConfiguration.entity.ShiftConfigurationLog;
+import org.jeecg.modules.shiftConfiguration.mapper.ShiftConfigurationLogMapper;
+import org.jeecg.modules.shiftConfiguration.service.IShiftConfigurationLogService;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+/**
+ * @Description: 班次配置日志
+ * @Author: jeecg-boot
+ * @Date:   2025-04-17
+ * @Version: V1.0
+ */
+@Service
+public class ShiftConfigurationLogServiceImpl extends ServiceImpl<ShiftConfigurationLogMapper, ShiftConfigurationLog> implements IShiftConfigurationLogService {
+
+}

+ 18 - 0
zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/shiftConfiguration/service/impl/ShiftConfigurationServiceImpl.java

@@ -0,0 +1,18 @@
+package org.jeecg.modules.shiftConfiguration.service.impl;
+import org.jeecg.modules.shiftConfiguration.entity.ShiftConfiguration;
+import org.jeecg.modules.shiftConfiguration.mapper.ShiftConfigurationMapper;
+import org.jeecg.modules.shiftConfiguration.service.IShiftConfigurationService;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+/**
+ * @Description: 班次配置
+ * @Author: jeecg-boot
+ * @Date:   2025-04-17
+ * @Version: V1.0
+ */
+@Service
+public class ShiftConfigurationServiceImpl extends ServiceImpl<ShiftConfigurationMapper, ShiftConfiguration> implements IShiftConfigurationService {
+
+}

+ 12 - 0
zgzt-sys-java/jeecg-module-conn/src/main/java/org/jeecg/modules/storageBill/entity/StorageBill.java

@@ -172,4 +172,16 @@ public class StorageBill implements Serializable {
     @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
     @ApiModelProperty(value = "炼钢到达时间")
     private Date steelReachTime;
+
+    /**
+     * 牌号
+     */
+    @Excel(name = "牌号", width = 15)
+    @ApiModelProperty(value = "牌号")
+    private String brandNum;
+
+    @Excel(name = "新站台or旧站台", width = 15)
+    @ApiModelProperty(value = "新站台or旧站台(0 新站台 1 旧站台)")
+    private Integer newOldPlatform;
+
 }