From 94aafe0f543196f9ea6c637b46a2d195125498c3 Mon Sep 17 00:00:00 2001
From: Administrator <zhubaomin>
Date: 星期一, 08 七月 2024 09:33:51 +0800
Subject: [PATCH] 2024-07-08 朱宝民 小程序远程开阀提供强制开阀功能
---
pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateSv.java | 105 ++++++++++++++++++++++++++++++++++++++++++----------
1 files changed, 85 insertions(+), 20 deletions(-)
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateSv.java
index 49ddfe9..540a0e3 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateSv.java
@@ -6,6 +6,7 @@
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
import com.dy.common.webUtil.QueryResultVo;
+import com.dy.pipIrrGlobal.daoBa.BaSettingsMapper;
import com.dy.pipIrrGlobal.daoSe.SeCardOperateMapper;
import com.dy.pipIrrGlobal.daoSe.SeClientCardMapper;
import com.dy.pipIrrGlobal.daoSe.SeClientMapper;
@@ -52,6 +53,9 @@
@Autowired
private SeGeneralMapper seGeneralMapper;
+ @Autowired
+ private BaSettingsMapper baSettingsMapper;
+
/**
* 娣诲姞寮�鍗¤褰�
@@ -68,8 +72,12 @@
* @param clientNum 鍐滄埛缂栧彿
* @return 5绾ц鏀垮尯鍒掍唬鐮�
*/
- public Long getAreaCodeByNum(String clientNum) {
- return seClientMapper.getAreaCodeByNum(clientNum);
+ public String getAreaCodeByNum(String clientNum) {
+ Long areaCode = seClientMapper.getAreaCodeByNum(clientNum);
+ if (areaCode == null) {
+ return "";
+ }
+ return String.valueOf(areaCode);
}
/**
@@ -131,7 +139,7 @@
*/
Long cardId = 0L;
Long clientId = 0L;
- String cardNum = po.getCardNum();
+ Long cardNum = po.getCardNum();
Float money = po.getMoney();
Float amount = po.getAmount();
Float gift = po.getGift();
@@ -142,11 +150,17 @@
Long operator = po.getOperator();
Date rechargeTime = new Date();
+ // 濡傛灉浼犲叆鐨勬槸10浣嶇殑姘村崱缂栧彿锛屽崌涓�17浣嶆按鍗$紪鍙�
+ String cardNumS = String.valueOf(cardNum).trim();
+ if(cardNumS.length() == 10) {
+ cardNumS = "100000" + cardNumS.substring(0,6) + "0" + cardNumS.substring(6);
+ }
+ cardNum = Long.valueOf(cardNumS);
// 楠岃瘉姘村崱鐘舵�佹槸鍚︽敮鎸佸綋鍓嶆搷浣�
- String stateName = Optional.ofNullable(clientCardSv.getCardStateByCardNum(Long.parseLong(cardNum))).orElse("");
+ String stateName = Optional.ofNullable(clientCardSv.getCardStateByCardNum(cardNum)).orElse("");
if(stateName.length() == 0 || !stateName.equals("姝e父")) {
- return BaseResponseUtils.buildFail(stateName + ", " + SellResultCode.THE_CARD_NOT_SUPPORT_THIS_OPERATION.getMessage());
+ return BaseResponseUtils.buildErrorMsg(stateName + ", " + SellResultCode.THE_CARD_NOT_SUPPORT_THIS_OPERATION.getMessage());
}
/**
@@ -154,7 +168,7 @@
*/
Map map = Optional.ofNullable(clientCardSv.getCardIdAndClientNum(cardNum)).orElse(new HashMap());
if(map == null || map.size() <= 0) {
- return BaseResponseUtils.buildFail(SellResultCode.CARD_NUMBER_MISTAKE.getMessage());
+ return BaseResponseUtils.buildErrorMsg(SellResultCode.CARD_NUMBER_MISTAKE.getMessage());
}
cardId = Long.parseLong(map.get("cardId").toString());
clientId = Long.parseLong(map.get("clientId").toString());
@@ -171,7 +185,7 @@
seClientCard.setLastoper(LastOperateENUM.RECHARGE.getCode ());
Integer rec_updateClientCard = Optional.ofNullable(clientCardSv.UpdateClientCard(seClientCard)).orElse(0);
if(rec_updateClientCard == 0) {
- return BaseResponseUtils.buildFail(SellResultCode.RECHARGE_FAIL_WRITE_CLIENT_CARD_ERROR.getMessage());
+ return BaseResponseUtils.buildErrorMsg(SellResultCode.RECHARGE_FAIL_WRITE_CLIENT_CARD_ERROR.getMessage());
}
/**
@@ -193,12 +207,23 @@
seCardOperateMapper.insert(seCardOperate);
Long rec = Optional.ofNullable(seCardOperate.getId()).orElse(0L);
if(rec == 0) {
- return BaseResponseUtils.buildFail(SellResultCode.REPLACE_FAIL_WRITE_RECHARGE_ERROR.getMessage());
+ return BaseResponseUtils.buildErrorMsg(SellResultCode.REPLACE_FAIL_WRITE_RECHARGE_ERROR.getMessage());
}
- return BaseResponseUtils.buildSuccess(true) ;
- }
+ //return BaseResponseUtils.buildSuccess(true) ;
+ cardNumS = String.valueOf(cardNum).trim();
+ if(cardNumS.substring(0,2).equals("10")) {
+ cardNumS = cardNumS.substring(6,12) + cardNumS.substring(13);
+ }
+ cardNum = Long.parseLong(cardNumS);
+
+ Map map_response = new HashMap();
+ map_response.put("projectNo", String.format("%02x", Integer.parseInt(getProjectNo())));
+ map_response.put("orderNumber", rec);
+ map_response.put("cardNum", cardNum);
+ return BaseResponseUtils.buildSuccess(map_response) ;
+ }
/**
* 鏍规嵁鎸囧畾鏉′欢鑾峰彇鍏呭�艰褰�
@@ -207,16 +232,16 @@
*/
public QueryResultVo<List<VoRecharge>> getRecharges(QoRecharge queryVo) {
//瀹屽杽鏌ヨ鍏呭�艰褰曠殑璧锋鏃堕棿
- String rechargeTimeStart = queryVo.rechargeTimeStart;
- String rechargeTimeStop = queryVo.rechargeTimeStop;
- if(rechargeTimeStart != null) {
- rechargeTimeStart = rechargeTimeStart + " 00:00:00";
- queryVo.setRechargeTimeStart(rechargeTimeStart);
- }
- if(rechargeTimeStop != null) {
- rechargeTimeStop = rechargeTimeStop + " 23:59:59";
- queryVo.setRechargeTimeStop(rechargeTimeStop);
- }
+ //String rechargeTimeStart = queryVo.rechargeTimeStart;
+ //String rechargeTimeStop = queryVo.rechargeTimeStop;
+ //if(rechargeTimeStart != null) {
+ // rechargeTimeStart = rechargeTimeStart + " 00:00:00";
+ // queryVo.setRechargeTimeStart(rechargeTimeStart);
+ //}
+ //if(rechargeTimeStop != null) {
+ // rechargeTimeStop = rechargeTimeStop + " 23:59:59";
+ // queryVo.setRechargeTimeStop(rechargeTimeStop);
+ //}
Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo);
@@ -416,4 +441,44 @@
return map_result;
}
+
+ /**
+ * 鍒ゆ柇鎸囧畾姘村崱鏄惁涓烘寕澶辩姸鎬佷笖鏃犺ˉ鍗¤褰�
+ * @param cardNum 姘村崱缂栧彿
+ * @return 鏄惁宸叉寕澶辨湭琛ュ崱
+ */
+ public Boolean isLostAndUnreplaced(Long cardNum) {
+ Integer lostCount = seClientCardMapper.getLostCount(cardNum);
+ Integer replacedCount = seClientCardMapper.getReplacedCount(cardNum);
+ if(lostCount > 0 && replacedCount == 0) {
+ return true;
+ }
+ return false;
+ }
+
+ /**
+ * 淇敼鍐滄埛姘村崱
+ * @param po
+ * @return
+ */
+ public Integer updateClientCard(SeClientCard po) {
+ return seClientCardMapper.updateByPrimaryKeySelective(po);
+ }
+
+ /**
+ * 鑾峰彇椤圭洰缂栧彿
+ * @return
+ */
+ public String getProjectNo() {
+ return baSettingsMapper.getItemValue("projectNo");
+ }
+
+ /**
+ * 鏍规嵁姘村崱缂栧彿鑾峰彇鍏舵寕澶辨椂閫�娆鹃噾棰濓紙琛ュ崱鏃跺垽鏂娇鐢級
+ * @param cardNum
+ * @return
+ */
+ public Double getTradeAmountByCardNo(Long cardNum) {
+ return seCardOperateMapper.getTradeAmountByCardNo(cardNum);
+ }
}
--
Gitblit v1.8.0