卡片管理

This commit is contained in:
sxu 2025-04-23 18:22:31 +08:00
parent c97abd5024
commit 7e9c899e91
3 changed files with 47 additions and 6 deletions

View File

@ -2,6 +2,8 @@ package com.bonus.canteen.core.account.controller;
import java.util.List; import java.util.List;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import com.bonus.canteen.core.account.constants.CardRecordTypeEnum;
import com.bonus.common.log.enums.OperaType; import com.bonus.common.log.enums.OperaType;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
@ -82,6 +84,7 @@ public class AccCardController extends BaseController {
@PostMapping @PostMapping
public AjaxResult add(@RequestBody AccCard accCard) { public AjaxResult add(@RequestBody AccCard accCard) {
try { try {
accCard.setOperationType(CardRecordTypeEnum.APPLY.getKey());
return toAjax(accCardService.insertAccCard(accCard)); return toAjax(accCardService.insertAccCard(accCard));
} catch (Exception e) { } catch (Exception e) {
return error("系统错误, " + e.getMessage()); return error("系统错误, " + e.getMessage());
@ -104,6 +107,34 @@ public class AccCardController extends BaseController {
} }
} }
@ApiOperation(value = "换卡")
//@PreventRepeatSubmit
//@RequiresPermissions("account:card:edit")
@SysLog(title = "人员卡片资料", businessType = OperaType.UPDATE, logType = 1,module = "仓储管理->换卡")
@PostMapping("/change")
public AjaxResult change(@RequestBody AccCard accCard) {
try {
accCard.setOperationType(CardRecordTypeEnum.CHANGE.getKey());
return toAjax(accCardService.updateAccCard(accCard));
} catch (Exception e) {
return error("系统错误, " + e.getMessage());
}
}
@ApiOperation(value = "退卡")
//@PreventRepeatSubmit
//@RequiresPermissions("account:card:edit")
@SysLog(title = "人员卡片资料", businessType = OperaType.UPDATE, logType = 1,module = "仓储管理->退卡")
@PostMapping("/refund")
public AjaxResult refund(@RequestBody AccCard accCard) {
try {
accCard.setOperationType(CardRecordTypeEnum.REFUND.getKey());
return toAjax(accCardService.updateAccCard(accCard));
} catch (Exception e) {
return error("系统错误, " + e.getMessage());
}
}
/** /**
* 删除人员卡片资料 * 删除人员卡片资料
*/ */

View File

@ -114,5 +114,7 @@ public class AccCard extends BaseEntity {
@ApiModelProperty(value = "发卡来源") @ApiModelProperty(value = "发卡来源")
private String cardSourceType; private String cardSourceType;
@ApiModelProperty(value = "1-发卡, 2-退卡, 3-换卡")
private Integer operationType;
} }

View File

@ -75,27 +75,27 @@ public class AccCardServiceImpl implements IAccCardService {
accCard.setCardStatus(CardStatusEnum.NORMAL.getKey()); accCard.setCardStatus(CardStatusEnum.NORMAL.getKey());
accCard.setCardType(CardTypeEnum.IC_CARD.getKey()); accCard.setCardType(CardTypeEnum.IC_CARD.getKey());
int count = accCardMapper.insertAccCard(accCard); int count = accCardMapper.insertAccCard(accCard);
saveAccCardChangeRecord(accCard, CardRecordTypeEnum.APPLY.getKey()); saveAccCardChangeRecord(accCard);
return count; return count;
} catch (Exception e) { } catch (Exception e) {
throw new ServiceException("错误信息描述, " + e.getMessage()); throw new ServiceException("错误信息描述, " + e.getMessage());
} }
} }
private void saveAccCardChangeRecord(AccCard accCard, Integer cardRecordType) { private void saveAccCardChangeRecord(AccCard accCard) {
AccCardHis accCardHis = new AccCardHis(); AccCardHis accCardHis = new AccCardHis();
accCardHis.setUserId(accCardHis.getUserId()); accCardHis.setUserId(accCardHis.getUserId());
accCardHis.setAccId(accCardHis.getAccId()); accCardHis.setAccId(accCardHis.getAccId());
accCardHis.setCardNum(String.valueOf(accCard.getCardNum())); accCardHis.setCardNum(String.valueOf(accCard.getCardNum()));
accCardHis.setSerialNum(accCard.getSerialNum()); accCardHis.setSerialNum(accCard.getSerialNum());
accCardHis.setCardType(CardTypeEnum.IC_CARD.getKey()); accCardHis.setCardType(CardTypeEnum.IC_CARD.getKey());
accCardHis.setRecordType(cardRecordType); accCardHis.setRecordType(accCard.getOperationType());
accCardHis.setCardFaceNum(accCard.getCardFaceNum()); accCardHis.setCardFaceNum(accCard.getCardFaceNum());
accCardHis.setRemark(accCard.getRemark()); accCardHis.setRemark(accCard.getRemark());
if (CardRecordTypeEnum.APPLY.getKey().equals(cardRecordType)) { if (CardRecordTypeEnum.APPLY.getKey().equals(accCard.getOperationType())) {
accCardHis.setDeposit(accCard.getDeposit()); accCardHis.setDeposit(accCard.getDeposit());
accCardHis.setProductCost(accCard.getProductCost()); accCardHis.setProductCost(accCard.getProductCost());
} else if (CardRecordTypeEnum.CHANGE.getKey().equals(cardRecordType)) { } else if (CardRecordTypeEnum.CHANGE.getKey().equals(accCard.getOperationType())) {
accCardHis.setProductCost(accCard.getProductCost()); accCardHis.setProductCost(accCard.getProductCost());
} }
accCardHisMapper.insertAccCardHis(accCardHis); accCardHisMapper.insertAccCardHis(accCardHis);
@ -119,7 +119,15 @@ public class AccCardServiceImpl implements IAccCardService {
public int updateAccCard(AccCard accCard) { public int updateAccCard(AccCard accCard) {
accCard.setUpdateTime(DateUtils.getNowDate()); accCard.setUpdateTime(DateUtils.getNowDate());
try { try {
return accCardMapper.updateAccCard(accCard); int count = accCardMapper.updateAccCard(accCard);
if (CardRecordTypeEnum.CHANGE.getKey().equals(accCard.getOperationType())) {
accCard.setCardStatus(CardStatusEnum.NORMAL.getKey());
saveAccCardChangeRecord(accCard);
} else if (CardRecordTypeEnum.REFUND.getKey().equals(accCard.getOperationType())) {
accCard.setCardStatus(CardStatusEnum.REFUND.getKey());
saveAccCardChangeRecord(accCard);
}
return count;
} catch (Exception e) { } catch (Exception e) {
throw new ServiceException("错误信息描述, " + e.getMessage()); throw new ServiceException("错误信息描述, " + e.getMessage());
} }