|
@@ -35,6 +35,7 @@ import com.kxs.store.biz.service.KxsWarehouseLimitService;
|
|
|
import com.kxs.system.api.feign.RemoteUserMsgService;
|
|
import com.kxs.system.api.feign.RemoteUserMsgService;
|
|
|
import com.kxs.system.api.model.KxsUserMsg;
|
|
import com.kxs.system.api.model.KxsUserMsg;
|
|
|
import com.kxs.system.api.util.MsgTemplateUtil;
|
|
import com.kxs.system.api.util.MsgTemplateUtil;
|
|
|
|
|
+import com.kxs.system.api.util.ParamResolver;
|
|
|
import com.kxs.user.api.feign.RemoteKxsUserService;
|
|
import com.kxs.user.api.feign.RemoteKxsUserService;
|
|
|
import com.kxs.user.api.model.KxsUser;
|
|
import com.kxs.user.api.model.KxsUser;
|
|
|
import io.seata.spring.annotation.GlobalTransactional;
|
|
import io.seata.spring.annotation.GlobalTransactional;
|
|
@@ -138,7 +139,7 @@ public class KxsMachineAdvanceServiceImpl extends ServiceImpl<KxsMachineAdvanceM
|
|
|
.selectOne(Wrappers.<KxsMachineAdvanceInfo>lambdaQuery()
|
|
.selectOne(Wrappers.<KxsMachineAdvanceInfo>lambdaQuery()
|
|
|
.eq(KxsMachineAdvanceInfo::getPosSn, advance.getPosSn()));
|
|
.eq(KxsMachineAdvanceInfo::getPosSn, advance.getPosSn()));
|
|
|
|
|
|
|
|
- machineAdvanceInfo.setIsReturn(1);
|
|
|
|
|
|
|
+ machineAdvanceInfo.setIsReturn(CommonConstants.SUCCESS);
|
|
|
machineAdvanceInfo.setReturnTime(LocalDateTime.now());
|
|
machineAdvanceInfo.setReturnTime(LocalDateTime.now());
|
|
|
kxsMachineAdvanceInfoMapper.updateById(machineAdvanceInfo);
|
|
kxsMachineAdvanceInfoMapper.updateById(machineAdvanceInfo);
|
|
|
|
|
|
|
@@ -146,12 +147,13 @@ public class KxsMachineAdvanceServiceImpl extends ServiceImpl<KxsMachineAdvanceM
|
|
|
KxsMachine machine = new KxsMachine();
|
|
KxsMachine machine = new KxsMachine();
|
|
|
machine.setId(machineAdvanceInfo.getMachineId());
|
|
machine.setId(machineAdvanceInfo.getMachineId());
|
|
|
machine.setStatus(MachineTypeEnum.STATUS_IS.getType());
|
|
machine.setStatus(MachineTypeEnum.STATUS_IS.getType());
|
|
|
|
|
+ machine.setPreUserId(0);
|
|
|
R<Boolean> result = remoteKxsProductService.updateByMachine(machine, SecurityConstants.FROM_IN);
|
|
R<Boolean> result = remoteKxsProductService.updateByMachine(machine, SecurityConstants.FROM_IN);
|
|
|
if(!result.getData()){
|
|
if(!result.getData()){
|
|
|
throw new GlobalCustomerException(ErrorTypeEnum.REMOTE_DATA_ERROR.getDescription());
|
|
throw new GlobalCustomerException(ErrorTypeEnum.REMOTE_DATA_ERROR.getDescription());
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- if(machineAdvanceInfo.getIsUseAmount() == 1){
|
|
|
|
|
|
|
+ if(Objects.equals(machineAdvanceInfo.getIsUseAmount(), CommonConstants.SUCCESS)){
|
|
|
|
|
|
|
|
//查询主订单预发机
|
|
//查询主订单预发机
|
|
|
KxsMachineAdvance kxsMachineAdvance = baseMapper.selectById(machineAdvanceInfo.getOrderId());
|
|
KxsMachineAdvance kxsMachineAdvance = baseMapper.selectById(machineAdvanceInfo.getOrderId());
|
|
@@ -225,7 +227,8 @@ public class KxsMachineAdvanceServiceImpl extends ServiceImpl<KxsMachineAdvanceM
|
|
|
//预发数量
|
|
//预发数量
|
|
|
Long advanceCount = baseMapper.selectUserByCount(toUser.getId());
|
|
Long advanceCount = baseMapper.selectUserByCount(toUser.getId());
|
|
|
//预发数量+本次申请数量不能超过10
|
|
//预发数量+本次申请数量不能超过10
|
|
|
- if (advanceCount + param.getSnList().size() >= 10) {
|
|
|
|
|
|
|
+ Integer preMaxNum = ParamResolver.getInteger("PRE_POS_MAX_NUM", 10);
|
|
|
|
|
+ if (advanceCount + param.getSnList().size() >= preMaxNum) {
|
|
|
return R.failed(StoreErrorTypeEnum.ADVANCE_MACHINE_NUMBER_ERROR.getDescription());
|
|
return R.failed(StoreErrorTypeEnum.ADVANCE_MACHINE_NUMBER_ERROR.getDescription());
|
|
|
}
|
|
}
|
|
|
//查询仓库
|
|
//查询仓库
|
|
@@ -320,7 +323,7 @@ public class KxsMachineAdvanceServiceImpl extends ServiceImpl<KxsMachineAdvanceM
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
//同意
|
|
//同意
|
|
|
- if (param.getConfirmType() == 1) {
|
|
|
|
|
|
|
+ if (Objects.equals(param.getConfirmType(), CommonConstants.SUCCESS)) {
|
|
|
//扣减用户预发额度
|
|
//扣减用户预发额度
|
|
|
int amount;
|
|
int amount;
|
|
|
if (Objects.equals(brand.getBrandType(), BrandTypeEnum.DIANQIAN.getType())) {
|
|
if (Objects.equals(brand.getBrandType(), BrandTypeEnum.DIANQIAN.getType())) {
|
|
@@ -343,9 +346,9 @@ public class KxsMachineAdvanceServiceImpl extends ServiceImpl<KxsMachineAdvanceM
|
|
|
for (KxsMachineAdvanceInfo info : machineAdvanceInfos) {
|
|
for (KxsMachineAdvanceInfo info : machineAdvanceInfos) {
|
|
|
//修改为占用预发额度标签
|
|
//修改为占用预发额度标签
|
|
|
if (userLimit.getValidAmount().compareTo(BigDecimal.valueOf(amount)) >= 0) {
|
|
if (userLimit.getValidAmount().compareTo(BigDecimal.valueOf(amount)) >= 0) {
|
|
|
- info.setIsUseAmount(1);
|
|
|
|
|
|
|
+ info.setIsUseAmount(CommonConstants.SUCCESS);
|
|
|
}
|
|
}
|
|
|
- info.setIsConfirm(1);
|
|
|
|
|
|
|
+ info.setIsConfirm(CommonConstants.SUCCESS);
|
|
|
kxsMachineAdvanceInfoMapper.updateById(info);
|
|
kxsMachineAdvanceInfoMapper.updateById(info);
|
|
|
}
|
|
}
|
|
|
//给预发对象发送通知
|
|
//给预发对象发送通知
|
|
@@ -365,6 +368,7 @@ public class KxsMachineAdvanceServiceImpl extends ServiceImpl<KxsMachineAdvanceM
|
|
|
KxsMachine machine = new KxsMachine();
|
|
KxsMachine machine = new KxsMachine();
|
|
|
machine.setId(info.getMachineId());
|
|
machine.setId(info.getMachineId());
|
|
|
machine.setStatus(MachineTypeEnum.STATUS_IS.getType());
|
|
machine.setStatus(MachineTypeEnum.STATUS_IS.getType());
|
|
|
|
|
+ machine.setPreUserId(0);
|
|
|
R<Boolean> result = remoteKxsProductService.updateByMachine(machine, SecurityConstants.FROM_IN);
|
|
R<Boolean> result = remoteKxsProductService.updateByMachine(machine, SecurityConstants.FROM_IN);
|
|
|
if(!result.getData()){
|
|
if(!result.getData()){
|
|
|
throw new GlobalCustomerException(ErrorTypeEnum.REMOTE_DATA_ERROR.getDescription());
|
|
throw new GlobalCustomerException(ErrorTypeEnum.REMOTE_DATA_ERROR.getDescription());
|