rev:组盘页面修改

This commit is contained in:
zhangzq
2024-05-15 11:25:46 +08:00
parent 38e932d7d2
commit 36fb8ca2da
8 changed files with 356 additions and 167 deletions

View File

@@ -1,16 +0,0 @@
package org.nl.wms.md_manage.group_dick.service;
import org.nl.wms.md_manage.group_dick.service.dao.MdGroupMst;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 载具组盘主表 服务类
* </p>
*
* @author generator
* @since 2024-04-28
*/
public interface IMdGroupMstService extends IService<MdGroupMst> {
}

View File

@@ -1,66 +0,0 @@
package org.nl.wms.md_manage.group_dick.service.dao;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
* 载具组盘主表
* </p>
*
* @author generator
* @since 2024-04-28
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("md_group_mst")
public class MdGroupMst implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@TableId
private String id;
/**
* 主载具编码
*/
private String parent_vehicle_code;
/**
* 子载具数量
*/
private Integer child_qty;
/**
* 备注
*/
private String remark;
/**
* 修改人
*/
private String update_name;
/**
* 修改时间
*/
private String update_time;
/**
* 自定义字段
*/
private String form_data;
/**
* 状态
*/
private String status;
}

View File

@@ -1,20 +0,0 @@
package org.nl.wms.md_manage.group_dick.service.impl;
import org.nl.wms.md_manage.group_dick.service.dao.MdGroupMst;
import org.nl.wms.md_manage.group_dick.service.dao.mapper.MdGroupMstMapper;
import org.nl.wms.md_manage.group_dick.service.IMdGroupMstService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 载具组盘主表 服务实现类
* </p>
*
* @author generator
* @since 2024-04-28
*/
@Service
public class MdGroupMstServiceImpl extends ServiceImpl<MdGroupMstMapper, MdGroupMst> implements IMdGroupMstService {
}

View File

@@ -95,7 +95,7 @@ public class PmFormDataServiceImpl extends ServiceImpl<PmFormDataMapper, PmFormD
for (int i = 0; i < items_arr.size(); i++) {
JSONObject itemTarget = items_arr.getJSONObject(i);
itemTarget.put("id", IdUtil.getStringId());
itemTarget.put("code", CodeUtil.getNewCode(formMapping.getForm_type()));
// itemTarget.put("code", CodeUtil.getNewCode(formMapping.getForm_type()));
itemTarget.put("create_time", DateUtil.now());
itemTarget.put("create_name", SecurityUtils.getCurrentNickName());
itemTarget.put("parent_id", mst.getId());

View File

@@ -6,6 +6,7 @@ import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.ObjectUtil;
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.service.impl.ServiceImpl;
import lombok.RequiredArgsConstructor;
@@ -48,81 +49,86 @@ public class SysCodeRuleServiceImpl extends ServiceImpl<SysCodeRuleMapper, SysCo
@Override
public IPage<SysCodeRule> queryAll(CodeRuleQuery form, PageQuery pageable) {
IPage<SysCodeRule> page = this.page(pageable.build(SysCodeRule.class), form.build());
page.getRecords().forEach(sysCodeRule -> sysCodeRule.setDemo(codeDemo("0",sysCodeRule.getCode())));
page.getRecords().forEach(sysCodeRule -> {
if (StringUtils.isNotEmpty(sysCodeRule.getCode())){
sysCodeRule.setDemo(codeDemo("0",sysCodeRule.getCode()));
}
}
);
return page;
}
@Override
public String codeDemo(String flag, String code) {
List<SysCodeRuleDetail> ruleDtl = this.baseMapper.findBycode(code);
if (CollectionUtils.isEmpty(ruleDtl)){
return "";
}
if (CollectionUtils.isEmpty(ruleDtl)){
SysCodeRule codeRule = this.getOne(new QueryWrapper<SysCodeRule>().eq("code", code));
if (codeRule == null){
throw new BadRequestException("编码规则不存在"+code);
}
List<SysCodeRuleDetail> ruleDtl = this.baseMapper.findBycode(code);
String demo = "";
boolean isSame = true;
for(SysCodeRuleDetail detail : ruleDtl) {
String value = "";
String type = detail.getType();
//固定直接取值
if (type.equals(CodeRuleTypeEnum.FIXED.getType())) {
value = detail.getInit_value();
}
//日期判断数据库的值与当前值是否相同来决定顺序的值
if (type.equals(CodeRuleTypeEnum.DATE.getType())) {
String currentValue = detail.getCurrent_value();
Date date = DateUtil.date();
String format = detail.getFormat();
String nowDate = DateUtil.format(date, format);
if (!nowDate.equals(currentValue)) {
isSame = false;
if (!CollectionUtils.isEmpty(ruleDtl)){
boolean isSame = true;
for(SysCodeRuleDetail detail : ruleDtl) {
String value = "";
String type = detail.getType();
//固定直接取值
if (type.equals(CodeRuleTypeEnum.FIXED.getType())) {
value = detail.getInit_value();
}
if (flag.equals("1")) {
detail.setInit_value(nowDate);
detail.setCurrent_value(nowDate);
//日期判断数据库的值与当前值是否相同来决定顺序的值
if (type.equals(CodeRuleTypeEnum.DATE.getType())) {
String currentValue = detail.getCurrent_value();
Date date = DateUtil.date();
String format = detail.getFormat();
String nowDate = DateUtil.format(date, format);
if (!nowDate.equals(currentValue)) {
isSame = false;
}
if (flag.equals("1")) {
detail.setInit_value(nowDate);
detail.setCurrent_value(nowDate);
}
value = nowDate;
}
value = nowDate;
}
//顺序的值:如果日期一样就+步长,等于最大值就归为初始值;日期不一样就归为初始值
if (type.equals(CodeRuleTypeEnum.ORDER.getType())) {
String numValue = "";
int step = Integer.parseInt(detail.getStep());
Long maxValue = Long.valueOf(detail.getMax_value());
if (!isSame && (Long.parseLong(detail.getCurrent_value()) + step) > maxValue) {
numValue = detail.getInit_value();
} else {
numValue = Integer.parseInt(detail.getCurrent_value()) + step + "";
}
int size = numValue.length();
int length = detail.getLength();
String fillchar = detail.getFillchar();
for (int m = 0; m < (length - size); m++) {
value += fillchar;
}
value += numValue;
if (flag.equals("1")) {
if (!isSame) {
int initValue = Integer.parseInt(detail.getInit_value());
if (StrUtil.isEmpty((initValue + ""))) {
throw new BadRequestException("请完善编码数值的初始值!");
}
detail.setCurrent_value(String.valueOf(initValue));
//顺序的值:如果日期一样就+步长,等于最大值就归为初始值;日期不一样就归为初始值
if (type.equals(CodeRuleTypeEnum.ORDER.getType())) {
String numValue = "";
int step = Integer.parseInt(detail.getStep());
Long maxValue = Long.valueOf(detail.getMax_value());
if (!isSame && (Long.parseLong(detail.getCurrent_value()) + step) > maxValue) {
numValue = detail.getInit_value();
} else {
int numCurr = Integer.parseInt(detail.getCurrent_value());
if (numCurr >= maxValue) {
numCurr = Integer.parseInt(detail.getInit_value());
detail.setCurrent_value(String.valueOf(numCurr));
}else{
detail.setCurrent_value(String.valueOf(numCurr + step));
numValue = Integer.parseInt(detail.getCurrent_value()) + step + "";
}
int size = numValue.length();
int length = detail.getLength();
String fillchar = detail.getFillchar();
for (int m = 0; m < (length - size); m++) {
value += fillchar;
}
value += numValue;
if (flag.equals("1")) {
if (!isSame) {
int initValue = Integer.parseInt(detail.getInit_value());
if (StrUtil.isEmpty((initValue + ""))) {
throw new BadRequestException("请完善编码数值的初始值!");
}
detail.setCurrent_value(String.valueOf(initValue));
} else {
int numCurr = Integer.parseInt(detail.getCurrent_value());
if (numCurr >= maxValue) {
numCurr = Integer.parseInt(detail.getInit_value());
detail.setCurrent_value(String.valueOf(numCurr));
}else{
detail.setCurrent_value(String.valueOf(numCurr + step));
}
}
}
}
}
demo += value;
if (flag.equals("1")) {
codeRuleDetailMapper.updateById(detail);
demo += value;
if (flag.equals("1")) {
codeRuleDetailMapper.updateById(detail);
}
}
}
return demo;

View File

@@ -9,7 +9,7 @@ spring:
driverClassName: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:wms}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true&allowPublicKeyRetrieval=true&useSSL=false
username: ${DB_USER:root}
password: ${DB_PWD:password}
password: ${DB_PWD:123456}
# 初始连接数
initial-size: 5