|
@@ -5,6 +5,7 @@ import cn.hutool.core.date.DateUtil;
|
|
|
import cn.hutool.core.util.ObjUtil;
|
|
import cn.hutool.core.util.ObjUtil;
|
|
|
import lombok.RequiredArgsConstructor;
|
|
import lombok.RequiredArgsConstructor;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
|
+import org.dromara.backstage.api.domain.bo.RemoteCardBo;
|
|
|
import org.dromara.backstage.api.domain.vo.RemoteCardVo;
|
|
import org.dromara.backstage.api.domain.vo.RemoteCardVo;
|
|
|
import org.dromara.backstage.api.domain.vo.RemoteMealTypeVo;
|
|
import org.dromara.backstage.api.domain.vo.RemoteMealTypeVo;
|
|
|
import org.dromara.backstage.api.domain.vo.RemoteUserAccountVo;
|
|
import org.dromara.backstage.api.domain.vo.RemoteUserAccountVo;
|
|
@@ -13,6 +14,7 @@ import org.dromara.common.core.constant.DefaultConstants;
|
|
|
import org.dromara.common.core.domain.R;
|
|
import org.dromara.common.core.domain.R;
|
|
|
import org.dromara.common.core.domain.model.ErrorInfo;
|
|
import org.dromara.common.core.domain.model.ErrorInfo;
|
|
|
import org.dromara.common.core.enums.BalanceUpdateEnum;
|
|
import org.dromara.common.core.enums.BalanceUpdateEnum;
|
|
|
|
|
+import org.dromara.common.core.enums.ResultCodeEnum;
|
|
|
import org.dromara.common.core.exception.consume.ConsumeException;
|
|
import org.dromara.common.core.exception.consume.ConsumeException;
|
|
|
import org.dromara.common.core.utils.RecordIdUtils;
|
|
import org.dromara.common.core.utils.RecordIdUtils;
|
|
|
import org.dromara.server.common.domain.consume.bo.ConsumptionBo;
|
|
import org.dromara.server.common.domain.consume.bo.ConsumptionBo;
|
|
@@ -72,7 +74,20 @@ public class BaseBusiness {
|
|
|
originalBo.setDigitalSign(consumeBo.getDigitalSign());
|
|
originalBo.setDigitalSign(consumeBo.getDigitalSign());
|
|
|
originalBo.setUserId(accountVo.getUserId());
|
|
originalBo.setUserId(accountVo.getUserId());
|
|
|
originalBo.setDeptId(accountVo.getDeptId());
|
|
originalBo.setDeptId(accountVo.getDeptId());
|
|
|
- XfConsumeDetailOriginalVo vo = originalService.insertByBo(originalBo);
|
|
|
|
|
|
|
+ XfConsumeDetailOriginalVo vo = originalService.queryById(originalId);
|
|
|
|
|
+ if (ObjUtil.isNotEmpty(vo)) {
|
|
|
|
|
+ // 如果原始消费记录表中已有该笔消费,则检查是否入账
|
|
|
|
|
+ XfConsumeDetailVo detailVo = consumeDetailService.queryById(originalId);
|
|
|
|
|
+ if (ObjUtil.isNotEmpty(detailVo)) {
|
|
|
|
|
+ // 该笔消费记录已入账
|
|
|
|
|
+ return R.fail(new ErrorInfo(ResultCodeEnum.DATA_ALREADY_EXISTED.code(), "该笔交易已入账", "该笔消费记录已入账,不能重复入账"));
|
|
|
|
|
+ }
|
|
|
|
|
+ // 未入账,直接返回入账数据
|
|
|
|
|
+ BeanUtil.copyProperties(vo, originalVo);
|
|
|
|
|
+ return R.ok();
|
|
|
|
|
+ }
|
|
|
|
|
+ // 原始记录表不存在此消费记录,直接插入
|
|
|
|
|
+ vo = originalService.insertByBo(originalBo);
|
|
|
if (ObjUtil.isNotEmpty(vo)) {
|
|
if (ObjUtil.isNotEmpty(vo)) {
|
|
|
BeanUtil.copyProperties(vo, originalVo);
|
|
BeanUtil.copyProperties(vo, originalVo);
|
|
|
return R.ok();
|
|
return R.ok();
|
|
@@ -194,6 +209,26 @@ public class BaseBusiness {
|
|
|
return result.get();
|
|
return result.get();
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ public boolean updateCardData(ConsumptionBo bo, RemoteCardVo cardVo,RemoteMealTypeVo mealTypeVo) {
|
|
|
|
|
+ RemoteCardBo remoteCardBo = new RemoteCardBo();
|
|
|
|
|
+ // remoteCardBo.setCardNo();
|
|
|
|
|
+ // remoteCardBo.setCardType();
|
|
|
|
|
+ // remoteCardBo.setLifespan();
|
|
|
|
|
+ // remoteCardBo.setFactoryId();
|
|
|
|
|
+ // remoteCardBo.setMainCard();
|
|
|
|
|
+ // remoteCardBo.setStatus();
|
|
|
|
|
+ // remoteCardBo.setChangeTime();
|
|
|
|
|
+ remoteCardBo.setDayTotal(cardVo.getDayTotal().add(bo.getConsumeMoney()));
|
|
|
|
|
+ remoteCardBo.setDayCount(cardVo.getDayCount() + 1);
|
|
|
|
|
+ remoteCardBo.setMealTotal(cardVo.getMealTotal().add(bo.getConsumeMoney()));
|
|
|
|
|
+ remoteCardBo.setMealCount(cardVo.getMealCount() + 1);
|
|
|
|
|
+ remoteCardBo.setLastPay(bo.getConsumeDate());
|
|
|
|
|
+ remoteCardBo.setLastMeal(mealTypeVo.getMealId());
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ return true;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
* 创建一条消费明细记录
|
|
* 创建一条消费明细记录
|
|
|
*
|
|
*
|
|
@@ -245,4 +280,5 @@ public class BaseBusiness {
|
|
|
return consumeDetailService.createConsumeDetailRecord(consumeDetailBo);
|
|
return consumeDetailService.createConsumeDetailRecord(consumeDetailBo);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+
|
|
|
}
|
|
}
|