From c70b92da60c0d00625da5fc2369b475e69e0b88e Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期四, 22 八月 2024 11:36:41 +0800 Subject: [PATCH] 1、完善代码和application.yml配置文件,去掉不用的引入文件; 2、init-config.xml配置中增加属性 enable,相应解析类也增加了解析与判断; 3、凡是有Server的应用,加载资源方式改为用springboot的工具类加载; 4、通信协议相关的扫描注解功能实现改为采用reflections-0.10.2,以实现可以在jar包情况下能够扫描类(.class)注解。 --- pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateCtrl.java | 71 ++++++++++++++++++++++++++++++++--- 1 files changed, 65 insertions(+), 6 deletions(-) diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateCtrl.java index 502c1e9..29a0cd6 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateCtrl.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateCtrl.java @@ -10,6 +10,7 @@ import com.dy.pipIrrGlobal.pojoBa.BaClient; import com.dy.pipIrrGlobal.pojoSe.SeCardOperate; import com.dy.pipIrrGlobal.pojoSe.SeClientCard; +import com.dy.pipIrrGlobal.pojoSe.SeManagerCard; import com.dy.pipIrrGlobal.util.AmountToChinese; import com.dy.pipIrrGlobal.voSe.VoActiveCard; import com.dy.pipIrrGlobal.voSe.VoOperate; @@ -31,6 +32,7 @@ import jakarta.validation.Valid; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Value; import org.springframework.http.MediaType; import org.springframework.transaction.annotation.Transactional; import org.springframework.validation.BindingResult; @@ -55,6 +57,11 @@ private final CardOperateSv cardOperateSv; private final ClientCardSv clientCardSv; + @Value("${project.divisionCode}") + private String divisionCode; + + @Value("${project.projectNo}") + private Integer projectNo; /** * 寮�鍗� * @param po 寮�鍗′紶鍏ュ璞� @@ -176,7 +183,8 @@ } Map map = new HashMap(); - map.put("projectNo", String.format("%02x", Integer.parseInt(cardOperateSv.getProjectNo()))); +// map.put("projectNo", String.format("%02x", Integer.parseInt(cardOperateSv.getProjectNo()))); + map.put("projectNo", String.format("%02x", projectNo)); map.put("orderNumber", rec); map.put("cardNum", cardNum); return BaseResponseUtils.buildSuccess(map) ; @@ -229,7 +237,7 @@ // 濡傛灉浼犲叆浜嗛��杩橀噾棰濓紝闇�瑕佸垽鏂�佸崱锛堣鎸傚け鐨勬按鍗★級鎸傚け鏃舵槸鍚﹀凡缁忛��娆撅紝鏃犺閫�娆惧灏戦兘鎻愮ず鐢ㄦ埛鎸傚け鏃跺凡閫�娆� if(reissueAmount != null && reissueAmount > 0) { Double tradeAmount = cardOperateSv.getTradeAmountByCardNo(cardNum); - if(tradeAmount != null) { + if(tradeAmount != null && tradeAmount > 0) { return BaseResponseUtils.buildErrorMsg(SellResultCode.THE_FEE_CANNOT_BE_REFUNDED.getMessage()); } } @@ -389,7 +397,7 @@ } Map map_response = new HashMap(); - map_response.put("projectNo", String.format("%02x", Integer.parseInt(cardOperateSv.getProjectNo()))); + map_response.put("projectNo", String.format("%02x", projectNo)); map_response.put("orderNumber", rec); map_response.put("cardNum", cardNum); return BaseResponseUtils.buildSuccess(map_response) ; @@ -482,7 +490,7 @@ } Map map_response = new HashMap(); - map_response.put("projectNo", String.format("%02x", Integer.parseInt(cardOperateSv.getProjectNo()))); + map_response.put("projectNo", String.format("%02x", projectNo)); map_response.put("orderNumber", rec); map_response.put("cardNum", cardNum); return BaseResponseUtils.buildSuccess(map_response) ; @@ -570,7 +578,7 @@ } Map map_response = new HashMap(); - map_response.put("projectNo", String.format("%02x", Integer.parseInt(cardOperateSv.getProjectNo()))); + map_response.put("projectNo", String.format("%02x", projectNo)); map_response.put("orderNumber", rec); map_response.put("cardNum", cardNum); return BaseResponseUtils.buildSuccess(map_response) ; @@ -740,7 +748,7 @@ } Map map_response = new HashMap(); - map_response.put("projectNo", String.format("%02x", Integer.parseInt(cardOperateSv.getProjectNo()))); + map_response.put("projectNo", String.format("%02x", projectNo)); map_response.put("orderNumber", rec); map_response.put("cardNum", cardNum); return BaseResponseUtils.buildSuccess(map_response) ; @@ -748,6 +756,57 @@ } /** + * 鍒涘缓绠$悊鍗� + * @param po + * @param bindingResult + * @return + */ + @PostMapping(path = "create_manager_card", consumes = MediaType.APPLICATION_JSON_VALUE) + @Transactional(rollbackFor = Exception.class) + @SsoAop() + public BaseResponse<Boolean> createManagerCard(@RequestBody @Valid ManagerCard po, BindingResult bindingResult){ + if(bindingResult != null && bindingResult.hasErrors()){ + return BaseResponseUtils.buildErrorMsg(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); + } + + /** + * 鏍规嵁琛屾斂鍖哄垝涓诧紙divisionCode锛夊湪绠$悊鍗¤〃涓拡瀵瑰崱鐗囩紪鍙凤紙cardNum锛夎繘琛屾ā绯婃煡璇� + * 濡傛灉椤哄簭鍙峰凡缁忚揪鍒版渶澶у�硷紝鎻愮ず鐢ㄦ埛鑱旂郴绯荤粺绠$悊鍛� + * 濡傛灉椤哄簭鍙锋湭杈惧埌鏈�澶у�硷紝鍒欏姞1 + * cardNum涓烘柊鐨勫崱鍙� + */ + String cardNum = Optional.ofNullable(cardOperateSv.getManagerCardNumOfMax(divisionCode)).orElse(""); + if(cardNum != null && cardNum.trim().length() > 0) { + Integer number = Integer.parseInt(cardNum.substring(12)); + number = number + 1; + if(number > 65535) { + return BaseResponseUtils.buildErrorMsg(SellResultCode.CARD_NUMBER_OVERRUN.getMessage()); + } + cardNum = cardNum.substring(0, 12) + String.format("%05d", number); + } else { + cardNum = divisionCode + "00001"; + } + + SeManagerCard seManagerCard = new SeManagerCard(); + seManagerCard.setCardAddr(po.getCardAddr()); + seManagerCard.setCardNum(cardNum); + seManagerCard.setCardType(po.getCardType()); + seManagerCard.setCreateTime(new Date()); + seManagerCard.setRemarks(po.getRemarks()); + Long managerCardId = cardOperateSv.addManagerCard(seManagerCard); + if(managerCardId == 0) { + return BaseResponseUtils.buildErrorMsg(SellResultCode.CREATE_MANAGER_CARD_ERROR.getMessage()); + } + + return BaseResponseUtils.buildSuccess(cardNum); + + //Map map = new HashMap(); + //map.put("cardNum", cardNum); + //return BaseResponseUtils.buildSuccess(map) ; + } + + + /** * 鑾峰彇鍏呭�艰褰� * @param vo * @return -- Gitblit v1.8.0