From 8e330754825e837be6b6d71939c5ae9574b70109 Mon Sep 17 00:00:00 2001 From: wuzeyu <1223318623@qq.com> Date: 星期六, 27 一月 2024 08:58:39 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateSv.java | 7 + pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/result/SellResultCode.java | 3 pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientCardMapper.xml | 84 +++++++++++++++- pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateCtrl.java | 36 +++++++ pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSe/VoCards.java | 45 +++++++++ pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/clientCard/ClientCardCtrl.java | 33 ++++++ pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeClientCardMapper.java | 15 +++ pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/clientCard/ClientCardSv.java | 33 ++++++ pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/clientCard/qo/QoCards.java | 31 ++++++ 9 files changed, 278 insertions(+), 9 deletions(-) diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeClientCardMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeClientCardMapper.java index 946c184..b329fa7 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeClientCardMapper.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeClientCardMapper.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.dy.pipIrrGlobal.pojoSe.SeClientCard; import com.dy.pipIrrGlobal.voSe.VoCardInfo; +import com.dy.pipIrrGlobal.voSe.VoCards; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -92,4 +93,18 @@ * @return */ String getCardStateByCardNum(@Param("cardNum") Long cardNum); + + /** + * 鏍规嵁鎸囧畾鏉′欢鑾峰彇姘村崱鍒楄〃璁板綍鏁帮紝搴旂敤绋嬪簭浣跨敤 + * @param params + * @return + */ + Long getCardsCount(Map<?, ?> params); + + /** + * 鏍规嵁鎸囧畾鏉′欢鑾峰彇姘村崱鍒楄〃锛屽簲鐢ㄧ▼搴忎娇鐢� + * @param params + * @return + */ + List<VoCards> getCards(Map<?, ?> params); } \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSe/VoCards.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSe/VoCards.java new file mode 100644 index 0000000..2ec42d9 --- /dev/null +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSe/VoCards.java @@ -0,0 +1,45 @@ +package com.dy.pipIrrGlobal.voSe; + +import com.dy.common.po.BaseEntity; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +/** + * @author ZhuBaoMin + * @date 2024-01-26 18:52 + * @LastEditTime 2024-01-26 18:52 + * @Description 搴旂敤绋嬪簭涓娇鐢紝鏌ヨ鏉′欢涓猴細鍐滄埛缂栧彿銆佸啘鎴峰鍚嶃�佹按鍗$紪鍙� + */ + +@Data +@Schema(title = "鍐滄埛鍗¤鍥惧璞�") +public class VoCards implements BaseEntity { + private static final long serialVersionUID = 202401261853001L; + + @Schema(title = "鍐滄埛缂栧彿") + private String clientNum; + + @Schema(title = "鍐滄埛濮撳悕") + private String clientName; + + @Schema(title = "姘村崱缂栧彿") + private String cardNum; + + @Schema(title = "鐢佃瘽鍙风爜") + private Float phone; + + @Schema(title = "韬唤璇佸彿鐮�") + private Float idCard; + + @Schema(title = "姘村崱鐘舵��") + private Float cardState; + + @Schema(title = "姘村崱鐘舵�佸悕绉�") + private String stateName; + + @Schema(title = "姘村崱绫诲瀷") + private String cardType; + + @Schema(title = "浣欓") + private String money; +} diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientCardMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientCardMapper.xml index b84d83e..cc35013 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientCardMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientCardMapper.xml @@ -305,18 +305,84 @@ <!--鏍规嵁姘村崱缂栧彿鑾峰彇鍗$墖鐘舵�侊細1-寮�鍗★紝2-琛ュ崱锛�3-鍏呭�硷紝4-鎸傚け锛�5-娉ㄩ攢锛�6-瑙i攣锛�7-鍐叉锛�8-娑堣垂--> <select id="getCardStateByCardNum" resultType="java.lang.String"> +<!-- SELECT--> +<!-- (CASE--> +<!-- WHEN lastOper = 1 THEN "寮�鍗�"--> +<!-- WHEN lastOper = 2 THEN "琛ュ崱"--> +<!-- WHEN lastOper = 3 THEN "鍏呭��"--> +<!-- WHEN lastOper = 4 THEN "鎸傚け"--> +<!-- WHEN lastOper = 5 THEN "娉ㄩ攢"--> +<!-- WHEN lastOper = 6 THEN "瑙i攣"--> +<!-- WHEN lastOper = 7 THEN "鍐叉"--> +<!-- WHEN lastOper = 8 THEN "娑堣垂"--> +<!-- END) AS stateName--> +<!-- FROM se_client_card--> +<!-- WHERE cardNum = ${cardNum}--> SELECT - (CASE - WHEN lastOper = 1 THEN "寮�鍗�" - WHEN lastOper = 2 THEN "琛ュ崱" - WHEN lastOper = 3 THEN "鍏呭��" - WHEN lastOper = 4 THEN "鎸傚け" - WHEN lastOper = 5 THEN "娉ㄩ攢" - WHEN lastOper = 6 THEN "瑙i攣" - WHEN lastOper = 7 THEN "鍐叉" - WHEN lastOper = 8 THEN "娑堣垂" + (CASE + WHEN state = 1 THEN '姝e父' + WHEN state = 2 THEN '宸叉敞閿�' + WHEN state = 3 THEN '宸叉寕澶�' END) AS stateName FROM se_client_card WHERE cardNum = ${cardNum} </select> + + <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇姘村崱鍒楄〃璁板綍鏁帮紝搴旂敤绋嬪簭浣跨敤--> + <select id="getCardsCount" parameterType="java.util.Map" resultType="java.lang.Long"> + SELECT + COUNT(*) AS recordCount + FROM se_client_card card + INNER JOIN se_client cli ON card.clientId = cli.id + <where> + <if test = "clientNum != null and clientNum !=''"> + AND cli.clientNum like CONCAT('%',#{clientNum},'%') + </if> + + <if test = "clientName != null and clientName !=''"> + AND cli.name like CONCAT('%',#{clientName},'%') + </if> + + <if test = "cardNum != null and cardNum !=''"> + AND card.cardNum like CONCAT('%',#{cardNum},'%') + </if> + </where> + </select> + + <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇姘村崱鍒楄〃锛屽簲鐢ㄧ▼搴忎娇鐢�--> + <select id="getCards" resultType="com.dy.pipIrrGlobal.voSe.VoCards"> + SELECT + cli.clientNum, + cli.name AS clientName, + card.cardNum, + cli.phone, + cli.idCard, + card.state AS cardState, + (CASE + WHEN card.state = 1 THEN '姝e父' + WHEN card.state = 2 THEN '宸叉敞閿�' + WHEN card.state = 3 THEN '宸叉寕澶�' + End) AS stateName, + '鍐滄埛鍗�' AS cardType, + card.money + FROM se_client_card card + INNER JOIN se_client cli ON card.clientId = cli.id + <where> + <if test = "clientNum != null and clientNum !=''"> + AND cli.clientNum like CONCAT('%',#{clientNum},'%') + </if> + + <if test = "clientName != null and clientName !=''"> + AND cli.name like CONCAT('%',#{clientName},'%') + </if> + + <if test = "cardNum != null and cardNum !=''"> + AND card.cardNum like CONCAT('%',#{cardNum},'%') + </if> + </where> + ORDER BY card.id + <if test="pageCurr != null and pageSize != null"> + LIMIT ${pageCurr}, ${pageSize} + </if> + </select> </mapper> \ No newline at end of file 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 d1be98a..13c1a20 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 @@ -222,6 +222,12 @@ String remarks = po.getRemarks(); Long operator = po.getOperator(); + // 楠岃瘉姘村崱鐘舵�佹槸鍚︽敮鎸佸綋鍓嶆搷浣� + String stateName = Optional.ofNullable(clientCardSv.getCardStateByCardNum(Long.parseLong(cardNum))).orElse(""); + if(stateName.length() == 0 || !stateName.equals("姝e父")) { + return BaseResponseUtils.buildFail(stateName + ", " + SellResultCode.THE_CARD_NOT_SUPPORT_THIS_OPERATION.getMessage()); + } + /** * 渚濇嵁姘村崱缂栧彿鑾峰彇姘村崱琛ㄤ富閿強鍐滄埛缂栧彿 */ @@ -340,6 +346,12 @@ Long operator = po.getOperator(); Date cancelTime = new Date(); + // 楠岃瘉姘村崱鐘舵�佹槸鍚︽敮鎸佸綋鍓嶆搷浣� + String stateName = Optional.ofNullable(clientCardSv.getCardStateByCardNum(Long.parseLong(cardNum))).orElse(""); + if(stateName.length() == 0 || !stateName.equals("姝e父")) { + return BaseResponseUtils.buildFail(stateName + ", " + SellResultCode.THE_CARD_NOT_SUPPORT_THIS_OPERATION.getMessage()); + } + /** * 渚濇嵁姘村崱缂栧彿鑾峰彇姘村崱琛ㄤ富閿強鍐滄埛缂栧彿 */ @@ -430,6 +442,12 @@ Long operator = po.getOperator(); Date lossTime = new Date(); + // 楠岃瘉姘村崱鐘舵�佹槸鍚︽敮鎸佸綋鍓嶆搷浣� + String stateName = Optional.ofNullable(clientCardSv.getCardStateByCardNum(Long.parseLong(cardNum))).orElse(""); + if(stateName.length() == 0 || !stateName.equals("姝e父")) { + return BaseResponseUtils.buildFail(stateName + ", " + SellResultCode.THE_CARD_NOT_SUPPORT_THIS_OPERATION.getMessage()); + } + /** * 渚濇嵁姘村崱缂栧彿鑾峰彇姘村崱琛ㄤ富閿強鍐滄埛缂栧彿 */ @@ -518,6 +536,12 @@ Long operator = po.getOperator(); Date reversalTime = new Date(); + // 楠岃瘉姘村崱鐘舵�佹槸鍚︽敮鎸佸綋鍓嶆搷浣� + String stateName = Optional.ofNullable(clientCardSv.getCardStateByCardNum(Long.parseLong(cardNum))).orElse(""); + if(stateName.length() == 0 || !stateName.equals("姝e父")) { + return BaseResponseUtils.buildFail(stateName + ", " + SellResultCode.THE_CARD_NOT_SUPPORT_THIS_OPERATION.getMessage()); + } + /** * 渚濇嵁姘村崱缂栧彿鑾峰彇姘村崱琛ㄤ富閿強鍐滄埛缂栧彿 */ @@ -605,6 +629,12 @@ Long operator = po.getOperator(); Date refundTime = new Date(); + // 楠岃瘉姘村崱鐘舵�佹槸鍚︽敮鎸佸綋鍓嶆搷浣� + String stateName = Optional.ofNullable(clientCardSv.getCardStateByCardNum(Long.parseLong(cardNum))).orElse(""); + if(stateName.length() == 0 || !stateName.equals("姝e父")) { + return BaseResponseUtils.buildFail(stateName + ", " + SellResultCode.THE_CARD_NOT_SUPPORT_THIS_OPERATION.getMessage()); + } + /** * 渚濇嵁姘村崱缂栧彿鑾峰彇姘村崱琛ㄤ富閿強鍐滄埛缂栧彿 */ @@ -691,6 +721,12 @@ Long operator = po.getOperator(); Date unlockTime = new Date(); + // 楠岃瘉姘村崱鐘舵�佹槸鍚︽敮鎸佸綋鍓嶆搷浣� + String stateName = Optional.ofNullable(clientCardSv.getCardStateByCardNum(Long.parseLong(cardNum))).orElse(""); + if(stateName.length() == 0 || !stateName.equals("宸叉寕澶�")) { + return BaseResponseUtils.buildFail(stateName + ", " + SellResultCode.THE_CARD_NOT_SUPPORT_THIS_OPERATION.getMessage()); + } + /** * 渚濇嵁姘村崱缂栧彿鑾峰彇姘村崱琛ㄤ富閿強鍐滄埛缂栧彿 */ 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 b6b2a94..cd1518f 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 @@ -138,6 +138,13 @@ Long operator = po.getOperator(); Date rechargeTime = new Date(); + + // 楠岃瘉姘村崱鐘舵�佹槸鍚︽敮鎸佸綋鍓嶆搷浣� + String stateName = Optional.ofNullable(clientCardSv.getCardStateByCardNum(Long.parseLong(cardNum))).orElse(""); + if(stateName.length() == 0 || !stateName.equals("姝e父")) { + return BaseResponseUtils.buildFail(stateName + ", " + SellResultCode.THE_CARD_NOT_SUPPORT_THIS_OPERATION.getMessage()); + } + /** * 渚濇嵁姘村崱缂栧彿鑾峰彇姘村崱琛ㄤ富閿強鍐滄埛缂栧彿 */ diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/clientCard/ClientCardCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/clientCard/ClientCardCtrl.java index d0abec4..01b56eb 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/clientCard/ClientCardCtrl.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/clientCard/ClientCardCtrl.java @@ -7,6 +7,9 @@ import com.dy.common.webUtil.ResultCodeMsg; import com.dy.pipIrrGlobal.pojoBa.BaClient; import com.dy.pipIrrGlobal.voSe.VoCardInfo; +import com.dy.pipIrrGlobal.voSe.VoCards; +import com.dy.pipIrrSell.clientCard.qo.QoCards; +import com.dy.pipIrrSell.result.SellResultCode; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.media.Content; import io.swagger.v3.oas.annotations.media.Schema; @@ -113,4 +116,34 @@ return BaseResponseUtils.buildException(e.getMessage()) ; } } + + /** + * 鏍规嵁鎸囧畾鏉′欢鑾峰彇姘村崱鍒楄〃锛屽簲鐢ㄧ▼搴忎娇鐢� + * @param vo + * @return + */ + @Operation(summary = "鑾峰緱涓�椤垫按鍗¤褰�", description = "杩斿洖涓�椤垫按鍗℃暟鎹�") + @ApiResponses(value = { + @ApiResponse( + responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE, + description = "杩斿洖涓�椤靛啘鎴锋暟鎹紙BaseResponse.content:QueryResultVo[{}]锛�", + content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE, + schema = @Schema(implementation = BaClient.class))} + ) + }) + @GetMapping(path = "getcards") + @SsoAop() + public BaseResponse<QueryResultVo<List<VoCards>>> getcards(QoCards vo){ + try { + QueryResultVo<List<VoCards>> res = clientCardSv.getCards(vo); + if(res.itemTotal != null && res.itemTotal > 0) { + return BaseResponseUtils.buildSuccess(res); + }else { + return BaseResponseUtils.buildFail(SellResultCode.THE_CARD_NOT_EXIST.getMessage()); + } + } catch (Exception e) { + log.error("鏌ヨ鍐滄埛寮傚父", e); + return BaseResponseUtils.buildException(e.getMessage()) ; + } + } } diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/clientCard/ClientCardSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/clientCard/ClientCardSv.java index 8517231..7cc032e 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/clientCard/ClientCardSv.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/clientCard/ClientCardSv.java @@ -1,9 +1,13 @@ package com.dy.pipIrrSell.clientCard; +import com.dy.common.webUtil.QueryResultVo; import com.dy.pipIrrGlobal.daoSe.SeClientCardMapper; import com.dy.pipIrrGlobal.pojoSe.SeClientCard; import com.dy.pipIrrGlobal.voSe.VoCardInfo; +import com.dy.pipIrrGlobal.voSe.VoCards; +import com.dy.pipIrrSell.clientCard.qo.QoCards; import lombok.extern.slf4j.Slf4j; +import org.apache.dubbo.common.utils.PojoUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -107,4 +111,33 @@ String stateName = Optional.ofNullable(seClientCardMapper.getCardStateByCardNum(cardNum)).orElse(""); return stateName; } + + /** + * 鏍规嵁鎸囧畾鏉′欢鑾峰彇姘村崱鍒楄〃锛屽簲鐢ㄧ▼搴忎娇鐢� + * @param queryVo + * @return + */ + public QueryResultVo<List<VoCards>> getCards(QoCards queryVo){ + Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo) ; + Long itemTotal = seClientCardMapper.getCardsCount(params); + + QueryResultVo<List<VoCards>> rsVo = new QueryResultVo<>() ; + Integer pageCurr = 0; + Integer pageSize = 10000; + rsVo.pageCurr = 1; + rsVo.pageSize = 10000; + if(queryVo.pageSize != null && queryVo.pageCurr != null) { + rsVo.pageSize = queryVo.pageSize ; + rsVo.pageCurr = queryVo.pageCurr; + pageSize = queryVo.pageSize ; + pageCurr = (Integer.parseInt(params.get("pageCurr").toString()) - 1) * Integer.parseInt(params.get("pageSize").toString()); + } + params.put("pageCurr", pageCurr); + params.put("pageSize", pageSize); + + rsVo.calculateAndSet(itemTotal, params); + rsVo.obj = seClientCardMapper.getCards(params); + + return rsVo ; + } } diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/clientCard/qo/QoCards.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/clientCard/qo/QoCards.java new file mode 100644 index 0000000..9a577f5 --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/clientCard/qo/QoCards.java @@ -0,0 +1,31 @@ +package com.dy.pipIrrSell.clientCard.qo; + +import com.dy.common.webUtil.QueryConditionVo; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; + +/** + * @author ZhuBaoMin + * @date 2024-01-26 19:11 + * @LastEditTime 2024-01-26 19:11 + * @Description + */ + +@Data +@EqualsAndHashCode(callSuper = false) +@ToString(callSuper = true) +@NoArgsConstructor +@AllArgsConstructor +@Builder +@Schema(name = "姘村崱璁板綍鏌ヨ鏉′欢") +public class QoCards extends QueryConditionVo { + + @Schema(description = "鍐滄埛缂栧彿") + public Long clientNum; + + @Schema(description = "鍐滄埛濮撳悕") + private String clientName; + + @Schema(description = "姘村崱缂栧彿") + public Long cardNum; +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/result/SellResultCode.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/result/SellResultCode.java index f07303a..8d92e08 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/result/SellResultCode.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/result/SellResultCode.java @@ -27,6 +27,9 @@ No_ActiveCards(10009, "娌℃湁绗﹀悎鏉′欢鐨勫紑鍗℃暟鎹�"), No_ReissueCards(10010, "娌℃湁绗﹀悎鏉′欢鐨勮ˉ鍗℃暟鎹�"), + THE_CARD_NOT_EXIST(10011, "娌℃湁绗﹀悎鏉′欢鐨勬按鍗�"), + THE_CARD_NOT_SUPPORT_THIS_OPERATION(10012, "姘村崱鐘舵�佷笉鏀寔褰撳墠鎿嶄綔"), + /** * 鍏呭�� */ -- Gitblit v1.8.0