Commit 68f40772 by zhu.zewen

修复单号生成

parent 9bac55bd
...@@ -314,7 +314,7 @@ public abstract class BaseService { ...@@ -314,7 +314,7 @@ public abstract class BaseService {
* @param expression * @param expression
* @return * @return
*/ */
protected Object calculateSpel(Object target, String expression) { public static Object calculateSpel(Object target, String expression) {
if (ObjectUtil.isEmpty(target) || ObjectUtil.isEmpty(expression)) { if (ObjectUtil.isEmpty(target) || ObjectUtil.isEmpty(expression)) {
return null; return null;
} }
......
...@@ -3,7 +3,6 @@ package com.jmai.physic.controller; ...@@ -3,7 +3,6 @@ package com.jmai.physic.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jmai.physic.dto.*; import com.jmai.physic.dto.*;
import com.jmai.physic.entity.PhysicRecord;
import com.jmai.physic.entity.PhysicStorageAmpoule; import com.jmai.physic.entity.PhysicStorageAmpoule;
import com.jmai.physic.service.PhysicStorageAmpouleService; import com.jmai.physic.service.PhysicStorageAmpouleService;
import com.jmai.physic.vo.PhysicStorageAmpouleVO; import com.jmai.physic.vo.PhysicStorageAmpouleVO;
......
...@@ -18,7 +18,7 @@ public class PhysicDestroyCheck extends BaseVersionEntity { ...@@ -18,7 +18,7 @@ public class PhysicDestroyCheck extends BaseVersionEntity {
private String applyTitle; private String applyTitle;
private String applyReason; private String applyReason;
private Integer destroyNum; private Integer destroyNum;
@ApiModelProperty(value = "状态 0-5审批中 6-已销毁 ") @ApiModelProperty(value = "销毁状态:0-5审批中, 6-已销毁 ")
private Integer status; private Integer status;
private String xhUser; private String xhUser;
private String jdUser; private String jdUser;
......
...@@ -37,10 +37,10 @@ public class PhysicStorageAmpoule extends BaseVersionEntity { ...@@ -37,10 +37,10 @@ public class PhysicStorageAmpoule extends BaseVersionEntity {
@ApiModelProperty(value = "发出") @ApiModelProperty(value = "发出")
private Integer expendNum; private Integer expendNum;
@ApiModelProperty(value = "1-接收 2-移至销毁") @ApiModelProperty(value = "类型:1-接收,2-移至销毁")
private Integer type; private Integer type;
@ApiModelProperty(value = "1-待销毁 2-已销毁") @ApiModelProperty(value = "销毁状态:0-待销毁 1-已销毁")
private Integer destroyStatus; private Integer destroyStatus;
private String orderNo; private String orderNo;
...@@ -59,6 +59,7 @@ public class PhysicStorageAmpoule extends BaseVersionEntity { ...@@ -59,6 +59,7 @@ public class PhysicStorageAmpoule extends BaseVersionEntity {
private String thUser; private String thUser;
@ApiModelProperty(value = "状态:0-待处理、1-退出人处理、2-接收人处理")
private Integer status; private Integer status;
private String remark; private String remark;
......
...@@ -48,9 +48,10 @@ public class PhysicAmpouleServiceImpl extends AbstractService implements PhysicA ...@@ -48,9 +48,10 @@ public class PhysicAmpouleServiceImpl extends AbstractService implements PhysicA
@Override @Override
public void create(PhysicAmpouleCreateReq req) { public void create(PhysicAmpouleCreateReq req) {
for (PhysicAmpouleCreateReq.Physic physic : req.getPhysicList()) { for (PhysicAmpouleCreateReq.Physic physic : req.getPhysicList()) {
String orderNo = sysManager.newOrderNo(PhysicAmpoule.class);
PhysicAmpoule ampoule = new PhysicAmpoule(); PhysicAmpoule ampoule = new PhysicAmpoule();
BeanUtil.copyProperties(req,ampoule); BeanUtil.copyProperties(req,ampoule);
ampoule.setOrderNo(orderNo);
ampoule.setPhysicName(physic.getPhysicName()); ampoule.setPhysicName(physic.getPhysicName());
ampoule.setBatchNo(physic.getBatchNo()); ampoule.setBatchNo(physic.getBatchNo());
ampoule.setPhysicNum(physic.getPhysicNum()); ampoule.setPhysicNum(physic.getPhysicNum());
......
...@@ -4,7 +4,6 @@ import cn.hutool.core.bean.BeanUtil; ...@@ -4,7 +4,6 @@ import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import cn.hutool.json.JSONUtil; import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jmai.api.exception.ServiceException; import com.jmai.api.exception.ServiceException;
import com.jmai.physic.cloudsign.CloudsignService; import com.jmai.physic.cloudsign.CloudsignService;
...@@ -70,9 +69,10 @@ public class PhysicDestroyCheckServiceImpl extends BaseServiceImpl<PhysicDestroy ...@@ -70,9 +69,10 @@ public class PhysicDestroyCheckServiceImpl extends BaseServiceImpl<PhysicDestroy
@Transactional @Transactional
@Override @Override
public void create(PhysicDestroyCheckCreateReq req) { public void create(PhysicDestroyCheckCreateReq req) {
String orderNo = sysManager.newOrderNo(PhysicDestroyCheck.class);
PhysicDestroyCheck check = new PhysicDestroyCheck(); PhysicDestroyCheck check = new PhysicDestroyCheck();
BeanUtil.copyProperties(req,check); BeanUtil.copyProperties(req,check);
check.setOrderNo(sysManager.newCheck("123")); check.setOrderNo(orderNo);
this.save(check); this.save(check);
if(CollectionUtils.isNotEmpty(req.getCheckDetailList())) { if(CollectionUtils.isNotEmpty(req.getCheckDetailList())) {
for (PhysicDestroyCheckDetail physicDestroyCheckDetail : req.getCheckDetailList()) { for (PhysicDestroyCheckDetail physicDestroyCheckDetail : req.getCheckDetailList()) {
......
...@@ -42,8 +42,11 @@ public class PhysicDestroyServiceImpl extends AbstractService implements PhysicD ...@@ -42,8 +42,11 @@ public class PhysicDestroyServiceImpl extends AbstractService implements PhysicD
public void create(PhysicDestroyCreateReq req) { public void create(PhysicDestroyCreateReq req) {
Long userId = SpringContextUtils.getUserId(); Long userId = SpringContextUtils.getUserId();
SysUser sysUser = sysUserMapper.selectById(userId); SysUser sysUser = sysUserMapper.selectById(userId);
String orderNo = sysManager.newOrderNo(PhysicDestroy.class);
PhysicDestroy destroy =new PhysicDestroy(); PhysicDestroy destroy =new PhysicDestroy();
BeanUtil.copyProperties(req,destroy); BeanUtil.copyProperties(req,destroy);
destroy.setOrderNo(orderNo);
destroy.setDeptId(sysUser.getDeptId()); destroy.setDeptId(sysUser.getDeptId());
destroy.setStatus(0); destroy.setStatus(0);
physicDestroyMapper.insert(destroy); physicDestroyMapper.insert(destroy);
......
...@@ -17,6 +17,7 @@ import com.jmai.sys.AbstractService; ...@@ -17,6 +17,7 @@ import com.jmai.sys.AbstractService;
import com.jmai.sys.consts.enums.RoleTypeEum; import com.jmai.sys.consts.enums.RoleTypeEum;
import com.jmai.sys.ctx.SpringContextUtils; import com.jmai.sys.ctx.SpringContextUtils;
import com.jmai.sys.entity.SysUser; import com.jmai.sys.entity.SysUser;
import com.jmai.sys.manager.SysManager;
import com.jmai.sys.mapper.SysUserMapper; import com.jmai.sys.mapper.SysUserMapper;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
...@@ -38,7 +39,8 @@ public class PhysicStorageAmpouleServiceImpl extends AbstractService implements ...@@ -38,7 +39,8 @@ public class PhysicStorageAmpouleServiceImpl extends AbstractService implements
@Resource @Resource
private PhysicBillService physicBillService; private PhysicBillService physicBillService;
@Resource
protected SysManager sysManager;
@Transactional @Transactional
@Override @Override
...@@ -48,8 +50,12 @@ public class PhysicStorageAmpouleServiceImpl extends AbstractService implements ...@@ -48,8 +50,12 @@ public class PhysicStorageAmpouleServiceImpl extends AbstractService implements
if(req.getType()==1) { if(req.getType()==1) {
for (PhysicStorageAmpouleCreateReq.Physic physic : req.getPhysicList()) { for (PhysicStorageAmpouleCreateReq.Physic physic : req.getPhysicList()) {
String orderNo = sysManager.newOrderNo(PhysicStorageAmpoule.class);
PhysicStorageAmpoule ampoule = new PhysicStorageAmpoule(); PhysicStorageAmpoule ampoule = new PhysicStorageAmpoule();
BeanUtil.copyProperties(req, ampoule); BeanUtil.copyProperties(req, ampoule);
ampoule.setOrderNo(orderNo);
ampoule.setPhysicName(physic.getPhysicName()); ampoule.setPhysicName(physic.getPhysicName());
ampoule.setBatchNo(physic.getBatchNo()); ampoule.setBatchNo(physic.getBatchNo());
ampoule.setAcceptDeptId(sysUser.getDeptId()); ampoule.setAcceptDeptId(sysUser.getDeptId());
......
...@@ -21,6 +21,7 @@ import com.jmai.sys.dto.PageReq; ...@@ -21,6 +21,7 @@ import com.jmai.sys.dto.PageReq;
import com.jmai.sys.dto.page.Field; import com.jmai.sys.dto.page.Field;
import com.jmai.sys.event.BaseEvent; import com.jmai.sys.event.BaseEvent;
import com.jmai.sys.exception.ErrorCode; import com.jmai.sys.exception.ErrorCode;
import com.jmai.sys.manager.SysManager;
import com.jmai.sys.util.LockManager; import com.jmai.sys.util.LockManager;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.fileupload.disk.DiskFileItem; import org.apache.commons.fileupload.disk.DiskFileItem;
...@@ -69,6 +70,8 @@ public abstract class AbstractService extends BaseService { ...@@ -69,6 +70,8 @@ public abstract class AbstractService extends BaseService {
protected InfynovaProperties infynovaProperties; protected InfynovaProperties infynovaProperties;
@Resource @Resource
protected TempTokenManager tempTokenManager; protected TempTokenManager tempTokenManager;
@Resource
protected SysManager sysManager;
protected final LockManager lockManager = new LockManager(); protected final LockManager lockManager = new LockManager();
......
...@@ -3,8 +3,8 @@ package com.jmai.sys.manager; ...@@ -3,8 +3,8 @@ package com.jmai.sys.manager;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.annotation.TableName;
import com.jmai.api.exception.ServiceException; import com.jmai.api.exception.ServiceException;
import com.jmai.sys.AbstractService;
import com.jmai.sys.consts.enums.SysFileTypeEnum; import com.jmai.sys.consts.enums.SysFileTypeEnum;
import com.jmai.sys.dto.*; import com.jmai.sys.dto.*;
import com.jmai.sys.exception.ErrorCode; import com.jmai.sys.exception.ErrorCode;
...@@ -31,13 +31,17 @@ import java.util.stream.Collectors; ...@@ -31,13 +31,17 @@ import java.util.stream.Collectors;
import java.util.stream.IntStream; import java.util.stream.IntStream;
import static cn.hutool.core.date.DatePattern.NORM_DATE_PATTERN; import static cn.hutool.core.date.DatePattern.NORM_DATE_PATTERN;
import static com.jmai.api.base.BaseService.calculateSpel;
import static com.jmai.api.base.BaseService.toJSONString;
import static com.jmai.sys.AbstractService.nextId;
import static com.jmai.sys.AbstractService.nextShotId;
import static com.jmai.sys.consts.ConfigTypes.IVS_CODE_GENERATOR; import static com.jmai.sys.consts.ConfigTypes.IVS_CODE_GENERATOR;
import static com.jmai.sys.consts.ConfigTypes.IvsCodeGenerator.*; import static com.jmai.sys.consts.ConfigTypes.IvsCodeGenerator.*;
@Slf4j @Slf4j
@Component @Component
public class SysManager extends AbstractService { public class SysManager {
@Resource @Resource
private ConfigService configService; private ConfigService configService;
@Resource @Resource
...@@ -49,57 +53,13 @@ public class SysManager extends AbstractService { ...@@ -49,57 +53,13 @@ public class SysManager extends AbstractService {
* 编码生成 * 编码生成
* TODO:分布式部署如何保证编码唯一性? * TODO:分布式部署如何保证编码唯一性?
******************************************************************/ ******************************************************************/
public String newNailboxTemplateNo(String uno) { public String newOrderNo(Class<?> type) {
return generate(NAILBOX_TEMPLATE_NO, uno); TableName tableName = type.getAnnotation(TableName.class);
assert ObjectUtil.isNotEmpty(tableName) && ObjectUtil.isNotEmpty(tableName.value()) :
"未配置表名:" + type.getName();
return generate(tableName.value(), "01");
} }
public String newOrderNo(String uno) {
return generate(ORDER_NO, uno);
}
public String newVerifyOrderNo(String uno) {
return generate(VERIFY_ORDER_NO, uno);
}
public String newRecheckOrderNo(String uno) {
return generate(RECHECK_ORDER_NO, uno);
}
public String newCheck(String uno) {
return generate(CHECK_CODE, uno);
}
public String newVerifyTaskNo(String uno) {
return generate(VERIFY_TASK_NO, uno);
}
public String newSerialNo(String uno) {
return generate(SERIAL_NO, uno);
}
public List<String> newSerialNoBatch(String uno, int count) {
return generateBatch(SERIAL_NO, uno, count);
}
/**
* 基于target生成计费码和RFID码(物料信息——产品信息+生产信息)
*/
public String newItemCode(String uno) {
return generate(ITEM_CODE, uno);
}
public String newRfidCode(String uno) {
return generate(RFID_CODE, uno);
}
public String newItemCode(String uno, Object target) {
return generate(ITEM_CODE, uno, target);
}
public String newRfidCode(String uno, Object target) {
return generate(RFID_CODE, uno, target);
}
private String generate(String generatorType, String uno) { private String generate(String generatorType, String uno) {
return generate(generatorType, uno, null); return generate(generatorType, uno, null);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment