From e6a9e6f750115579c8cc90d7e6d5bf1eebe79b90 Mon Sep 17 00:00:00 2001 From: zhubaomin <zhubaomin> Date: 星期二, 05 十一月 2024 15:26:24 +0800 Subject: [PATCH] 获取农户数据去掉重复记录,微信支付的传参、返回值、接口、数据库表金额都以元为单位 --- pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/workOrder/WorkOrderSv.java | 16 +++ pipIrr-platform/pipIrr-global/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports | 1 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeVcRechargeMapper.java | 2 pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/client/ClientSv.java | 2 pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVcRechargeMapper.xml | 14 +- pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSe/VoOrders.java | 2 pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/workOrder/ConsumerListener_push.java | 37 +++++++ pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/workOrder/WorkOrderCtrl.java | 60 ++++++++++++ pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeClientMapper.java | 2 pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/wechatpay/dto/DtoOrder.java | 2 pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/virtualCard/dto/DtoVirtualCard.java | 2 pipIrr-platform/pipIrr-global/pom.xml | 8 + pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/virtualCard/VirtualCardSv.java | 6 pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientMapper.xml | 32 +++++ pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/dto/RefundRequest.java | 2 pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVirtualCardMapper.xml | 3 pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/util/PayHelper.java | 4 pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/util/PayHelper.java | 5 pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/PaymentCtrl.java | 9 + pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoSe/SeVcRecharge.java | 2 pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/wechatpay/PaymentCtrl.java | 6 pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/dto/DtoVirtualCard.java | 2 pipIrr-platform/pipIrr-global/src/main/resources/application-global.yml | 24 ++++ pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/VirtualCardSv.java | 6 pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/dto/DtoOrder.java | 4 pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/workOrder/ConsumerListener.java | 29 +++++ 26 files changed, 240 insertions(+), 42 deletions(-) diff --git a/pipIrr-platform/pipIrr-global/pom.xml b/pipIrr-platform/pipIrr-global/pom.xml index d18263c..d197ee8 100644 --- a/pipIrr-platform/pipIrr-global/pom.xml +++ b/pipIrr-platform/pipIrr-global/pom.xml @@ -165,6 +165,14 @@ <artifactId>kaptcha</artifactId> <version>2.3.2</version> </dependency> + + <!--RocketMQ--> + <dependency> + <groupId>org.apache.rocketmq</groupId> + <artifactId>rocketmq-spring-boot-starter</artifactId> + <version>2.2.3</version> + </dependency> + </dependencies> <build> diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeClientMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeClientMapper.java index a40d8d6..67e5da8 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeClientMapper.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeClientMapper.java @@ -72,7 +72,7 @@ * @param params * @return */ - Long getRecordCount(Map<?, ?> params); + List<VoClient> getRecordCount(Map<?, ?> params); /** * 鏍规嵁鎸囧畾鏉′欢鑾峰彇鍐滄埛鏁版嵁 diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeVcRechargeMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeVcRechargeMapper.java index 4c96274..3f55816 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeVcRechargeMapper.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeVcRechargeMapper.java @@ -48,5 +48,5 @@ * @param orderNumber * @return */ - Integer getRechargeAmountByOrderNumber(@Param("orderNumber") String orderNumber); + Double getRechargeAmountByOrderNumber(@Param("orderNumber") String orderNumber); } \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoSe/SeVcRecharge.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoSe/SeVcRecharge.java index f692126..7e0aff7 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoSe/SeVcRecharge.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoSe/SeVcRecharge.java @@ -82,7 +82,7 @@ */ @Schema(description = "鍏呭�奸噾棰�", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @NotNull(message = "鍏呭�奸噾棰濅笉鑳戒负绌�") - private Integer rechargeAmount; + private Double rechargeAmount; /** * 涓嬪崟鏃堕棿 diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSe/VoOrders.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSe/VoOrders.java index 9a3ea4e..482775e 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSe/VoOrders.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSe/VoOrders.java @@ -33,7 +33,7 @@ @Schema(description = "鍏呭�奸噾棰�", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @NotNull(message = "鍏呭�奸噾棰濅笉鑳戒负绌�") @Positive(message = "鍏呭�奸噾棰濆繀椤讳负澶т簬0鐨勬暣鏁�") - private Integer rechargeAmount; + private Double rechargeAmount; /** * 鍏呭�煎畬鎴愭椂闂� diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/pipIrr-platform/pipIrr-global/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports new file mode 100644 index 0000000..c61a5eb --- /dev/null +++ b/pipIrr-platform/pipIrr-global/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -0,0 +1 @@ +org.apache.rocketmq.spring.autoconfigure.RocketMQAutoConfiguration \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/application-global.yml b/pipIrr-platform/pipIrr-global/src/main/resources/application-global.yml index 7564bf5..891eeb3 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/application-global.yml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/application-global.yml @@ -381,4 +381,26 @@ #铏氭嫙鍗¢厤缃弬鏁� vc: #铏氭嫙鍗℃渶浣庝綑棰濇姤璀﹀�� - alarmValue: 10 \ No newline at end of file + alarmValue: 10 + +rocketmq: + consumer: + group: consumer_group + # 涓�娆℃媺鍙栨秷鎭渶澶у�硷紝娉ㄦ剰鏄媺鍙栨秷鎭殑鏈�澶у�艰�岄潪娑堣垂鏈�澶у�� + pull-batch-size: 10 + name-server: 127.0.0.1:9876 + producer: + # 鍙戦�佸悓涓�绫绘秷鎭殑璁剧疆涓哄悓涓�涓猤roup锛屼繚璇佸敮涓� + group: producer_group + # 鍙戦�佹秷鎭秴鏃舵椂闂达紝榛樿3000 + sendMessageTimeout: 10000 + # 鍙戦�佹秷鎭け璐ラ噸璇曟鏁帮紝榛樿2 + retryTimesWhenSendFailed: 2 + # 寮傛娑堟伅閲嶈瘯娆℃暟锛岄粯璁�2 + retryTimesWhenSendAsyncFailed: 2 + # 娑堟伅鏈�澶ч暱搴︼紝榛樿1024 * 1024 * 4(榛樿4M) + maxMessageSize: 4096 + # 鍘嬬缉娑堟伅闃堝�硷紝榛樿4k(1024 * 4) + compressMessageBodyThreshold: 4096 + # 鏄惁鍦ㄥ唴閮ㄥ彂閫佸け璐ユ椂閲嶈瘯鍙︿竴涓猙roker锛岄粯璁alse + retryNextServer: false diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientMapper.xml index 0172422..91c9588 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientMapper.xml @@ -302,9 +302,33 @@ </select> <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇鍐滄埛璁板綍鏁�--> - <select id="getRecordCount" parameterType="java.util.Map" resultType="java.lang.Long"> - SELECT - COUNT(*) AS recordCount +<!-- <select id="getRecordCount" parameterType="java.util.Map" resultType="java.lang.Long">--> + <select id="getRecordCount" resultType="com.dy.pipIrrGlobal.voSe.VoClient"> +<!-- SELECT--> +<!-- COUNT(*) AS recordCount--> + SELECT DISTINCT + cli.countyId, + dis_con.name AS countryName, + cli.townId, + dis_town.name AS townName, + cli.villageId, + dis_village.name AS villageName, + cli.blockId, + blo.name AS blockName, + cli.divideId, + divi.name AS divideName, + cli.typeId, + wat.typeName AS waterTypeName, + cli.id AS clientId, + cli.name, + cli.clientNum, + cli.phone, + cli.idCard, + cli.area, + (SELECT COUNT(*) FROM se_client_card WHERE clientId = cli.id)+(SELECT COUNT(*) FROM se_virtual_card WHERE client_id = cli.id) AS cardCount, + cli.address, + cli.remarks, + cli.operateDt FROM se_client cli LEFT JOIN ba_district dis_con ON cli.countyId = dis_con.id LEFT JOIN ba_district dis_town ON cli.townId = dis_town.id @@ -351,7 +375,7 @@ <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇鍐滄埛鏁版嵁--> <select id="getClients" resultType="com.dy.pipIrrGlobal.voSe.VoClient"> - SELECT + SELECT DISTINCT cli.countyId, dis_con.name AS countryName, cli.townId, diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVcRechargeMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVcRechargeMapper.xml index de16e7a..c7f9188 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVcRechargeMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVcRechargeMapper.xml @@ -10,7 +10,7 @@ <result column="money" jdbcType="FLOAT" property="money" /> <result column="after_recharge" jdbcType="FLOAT" property="afterRecharge" /> <result column="order_number" jdbcType="VARCHAR" property="orderNumber" /> - <result column="recharge_amount" jdbcType="INTEGER" property="rechargeAmount" /> + <result column="recharge_amount" jdbcType="FLOAT" property="rechargeAmount" /> <result column="order_time" jdbcType="TIMESTAMP" property="orderTime" /> <result column="recharge_time" jdbcType="TIMESTAMP" property="rechargeTime" /> <result column="order_state" jdbcType="TINYINT" property="orderState" /> @@ -40,7 +40,7 @@ order_state) values (#{id,jdbcType=BIGINT}, #{vcId,jdbcType=BIGINT}, #{clientId,jdbcType=BIGINT}, #{money,jdbcType=FLOAT}, #{afterRecharge,jdbcType=FLOAT}, #{orderNumber,jdbcType=VARCHAR}, - #{rechargeAmount,jdbcType=INTEGER}, #{orderTime,jdbcType=TIMESTAMP}, #{rechargeTime,jdbcType=TIMESTAMP}, + #{rechargeAmount,jdbcType=FLOAT}, #{orderTime,jdbcType=TIMESTAMP}, #{rechargeTime,jdbcType=TIMESTAMP}, #{orderState,jdbcType=TINYINT}) </insert> <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoSe.SeVcRecharge"> @@ -98,7 +98,7 @@ #{orderNumber,jdbcType=VARCHAR}, </if> <if test="rechargeAmount != null"> - #{rechargeAmount,jdbcType=INTEGER}, + #{rechargeAmount,jdbcType=FLOAT}, </if> <if test="orderTime != null"> #{orderTime,jdbcType=TIMESTAMP}, @@ -131,7 +131,7 @@ order_number = #{orderNumber,jdbcType=VARCHAR}, </if> <if test="rechargeAmount != null"> - recharge_amount = #{rechargeAmount,jdbcType=INTEGER}, + recharge_amount = #{rechargeAmount,jdbcType=FLOAT}, </if> <if test="orderTime != null"> order_time = #{orderTime,jdbcType=TIMESTAMP}, @@ -153,7 +153,7 @@ money = #{money,jdbcType=FLOAT}, after_recharge = #{afterRecharge,jdbcType=FLOAT}, order_number = #{orderNumber,jdbcType=VARCHAR}, - recharge_amount = #{rechargeAmount,jdbcType=INTEGER}, + recharge_amount = #{rechargeAmount,jdbcType=FLOAT}, order_time = #{orderTime,jdbcType=TIMESTAMP}, recharge_time = #{rechargeTime,jdbcType=TIMESTAMP}, order_state = #{orderState,jdbcType=TINYINT} @@ -179,14 +179,14 @@ <where> AND order_state = 2 <if test = "virtualId != null and virtualId > 0"> - AND vc_id = ${virtualId} + AND vc_id = #{virtualId} </if> </where> ORDER BY order_number </select> <!--鏍规嵁璁㈠崟鍙疯幏鍙栧厖鍊奸噾棰�--> - <select id="getRechargeAmountByOrderNumber" resultType="java.lang.Integer"> + <select id="getRechargeAmountByOrderNumber" resultType="java.lang.Double"> SELECT recharge_amount AS rechargeAmount FROM se_vc_recharge diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVirtualCardMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVirtualCardMapper.xml index 6fc5c10..d38ce76 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVirtualCardMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVirtualCardMapper.xml @@ -210,7 +210,8 @@ SELECT id, vc_num AS vcNum, - ROUND(money / 100,2) AS money, +<!-- ROUND(money / 100,2) AS money,--> + money, in_use AS inUse, (CASE WHEN in_use = 0 THEN '鏈娇鐢�' diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/workOrder/ConsumerListener.java b/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/workOrder/ConsumerListener.java new file mode 100644 index 0000000..72d46c1 --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/workOrder/ConsumerListener.java @@ -0,0 +1,29 @@ +package com.dy.pipIrrApp.workOrder; + +import org.apache.rocketmq.spring.annotation.ConsumeMode; +import org.apache.rocketmq.spring.annotation.MessageModel; +import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; +import org.apache.rocketmq.spring.core.RocketMQListener; +import org.springframework.stereotype.Component; + +/** + * @author ZhuBaoMin + * @date 2024-11-04 11:00 + * @LastEditTime 2024-11-04 11:00 + * @Description + */ + +@Component +@RocketMQMessageListener( + topic = "workOrder", + consumerGroup = "consumer_group", + selectorExpression = "*", + messageModel = MessageModel.CLUSTERING, + consumeMode = ConsumeMode.CONCURRENTLY +) +public class ConsumerListener implements RocketMQListener<String> { + @Override + public void onMessage(String message) { + System.out.println("ConsumerListener receive message: " + message); + } +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/workOrder/ConsumerListener_push.java b/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/workOrder/ConsumerListener_push.java new file mode 100644 index 0000000..db86cf3 --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/workOrder/ConsumerListener_push.java @@ -0,0 +1,37 @@ +package com.dy.pipIrrApp.workOrder; + +import org.apache.rocketmq.client.consumer.DefaultMQPushConsumer; +import org.apache.rocketmq.client.consumer.listener.ConsumeConcurrentlyStatus; +import org.apache.rocketmq.client.consumer.listener.MessageListenerConcurrently; +import org.apache.rocketmq.client.exception.MQClientException; +import org.apache.rocketmq.common.message.MessageExt; +import org.springframework.stereotype.Component; + +/** + * @author ZhuBaoMin + * @date 2024-11-04 15:02 + * @LastEditTime 2024-11-04 15:02 + * @Description + */ + +@Component +public class ConsumerListener_push{ + public void receiveMessage () throws MQClientException { + DefaultMQPushConsumer consumer = new DefaultMQPushConsumer("consumer_group"); + consumer.setNamesrvAddr("127.0.0.1:9876"); + + // 璁剧疆娑堟伅鐩戝惉鍣� + consumer.registerMessageListener((MessageListenerConcurrently) (msgs, context) -> { + for (MessageExt msg : msgs) { + System.out.println("ConsumerListener_push receive message: " + new String(msg.getBody())); + } + return ConsumeConcurrentlyStatus.CONSUME_SUCCESS; + }); + + // 璁㈤槄涓婚鍜屾爣绛� + consumer.subscribe("workOrder", "鐜嬩簲"); + + // 鍚姩娑堣垂鑰� + consumer.start(); + } +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/workOrder/WorkOrderCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/workOrder/WorkOrderCtrl.java new file mode 100644 index 0000000..a20b809 --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/workOrder/WorkOrderCtrl.java @@ -0,0 +1,60 @@ +package com.dy.pipIrrApp.workOrder; + +import com.dy.common.aop.SsoAop; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.apache.rocketmq.client.exception.MQBrokerException; +import org.apache.rocketmq.client.exception.MQClientException; +import org.apache.rocketmq.client.producer.DefaultMQProducer; +import org.apache.rocketmq.client.producer.SendResult; +import org.apache.rocketmq.common.message.Message; +import org.apache.rocketmq.remoting.exception.RemotingException; +import org.apache.rocketmq.spring.core.RocketMQTemplate; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.nio.charset.StandardCharsets; + +/** + * @author ZhuBaoMin + * @date 2024-11-04 9:30 + * @LastEditTime 2024-11-04 9:30 + * @Description 宸ュ崟鎺у埗绫� + */ + +@Slf4j +@RestController +@RequestMapping(path = "workOrder") +@RequiredArgsConstructor +public class WorkOrderCtrl { + private final WorkOrderSv workOrderSv; + + @Autowired + private RocketMQTemplate rocketMQTemplate; + + + @GetMapping("/sendWorkOrder") + @Transactional(rollbackFor = Exception.class) + @SsoAop() + public void sendWorkOrder() throws MQClientException, MQBrokerException, RemotingException, InterruptedException { + ConsumerListener_push ConsumerListener_push = new ConsumerListener_push(); + ConsumerListener_push.receiveMessage(); + + String topic = "workOrder"; + String tag = "鐜嬩簲"; + String key = "11"; + String message = "Hello World"; + //SendResult sendResult = rocketMQTemplate.syncSend(topic + ":" + tag, message); + //System.out.println("send result:" + sendResult.toString()); + + DefaultMQProducer producer = new DefaultMQProducer("producer_group"); + producer.setNamesrvAddr("127.0.0.1:9876"); + producer.start(); + Message msg = new Message(topic,tag,"11",message.getBytes(StandardCharsets.UTF_8)); + SendResult approveSendResult = producer.send(msg); + System.out.println("send result:" + approveSendResult.toString()); + } +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/workOrder/WorkOrderSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/workOrder/WorkOrderSv.java new file mode 100644 index 0000000..c635d5e --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/workOrder/WorkOrderSv.java @@ -0,0 +1,16 @@ +package com.dy.pipIrrApp.workOrder; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +/** + * @author ZhuBaoMin + * @date 2024-11-04 9:29 + * @LastEditTime 2024-11-04 9:29 + * @Description 宸ュ崟鏈嶅姟绫� + */ + +@Slf4j +@Service +public class WorkOrderSv { +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/client/ClientSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/client/ClientSv.java index 0ae07c7..057c467 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/client/ClientSv.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/client/ClientSv.java @@ -45,8 +45,8 @@ */ public QueryResultVo<List<VoClient>> getClients(QueryVo queryVo){ Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo) ; - Long itemTotal = seClientMapper.getRecordCount(params); + Long itemTotal = (long)seClientMapper.getRecordCount(params).size(); QueryResultVo<List<VoClient>> rsVo = new QueryResultVo<>() ; rsVo.pageSize = queryVo.pageSize ; rsVo.pageCurr = queryVo.pageCurr ; diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/util/PayHelper.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/util/PayHelper.java index c001dc1..d4180ef 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/util/PayHelper.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/util/PayHelper.java @@ -517,8 +517,9 @@ String refundNo = po.getRefundNo(); Integer refund = po.getRefund(); - // 鐢熸垚body - Integer total = virtualCardSv.getRechargeAmountByOrderNumber(tradeNo); + // 鐢熸垚body锛岄噾棰濆崟浣嶇敱鍏冩敼涓哄垎 + //Integer total = virtualCardSv.getRechargeAmountByOrderNumber(tradeNo); + Integer total = (int)(virtualCardSv.getRechargeAmountByOrderNumber(tradeNo)*100); RefundRequest.Amount amount = new RefundRequest.Amount(); amount.setRefund(refund); amount.setTotal(total); diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/virtualCard/VirtualCardSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/virtualCard/VirtualCardSv.java index 889b36a..0d259f0 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/virtualCard/VirtualCardSv.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/virtualCard/VirtualCardSv.java @@ -138,7 +138,7 @@ String orderNumber = po.getOrderNumber(); Long virtualId = po.getVirtualId(); Long clientId = po.getClientId(); - Integer rechargeAmount = po.getRechargeAmount(); + Double rechargeAmount = po.getRechargeAmount(); // 楠岃瘉璇ヨ櫄鎷熷崱璐︽埛鏄惁瀛樺湪骞跺彇鍑哄綋鍓嶈处鎴蜂綑棰� SeVirtualCard seVirtualCard = seVirtualCardMapper.selectByPrimaryKey(virtualId); @@ -189,7 +189,7 @@ Long virtualId = seVcRecharge.getVcId(); Double money = seVcRecharge.getMoney(); - Integer rechargeAmount = seVcRecharge.getRechargeAmount(); + Double rechargeAmount = seVcRecharge.getRechargeAmount(); Double afterRrecharge = money + rechargeAmount; seVcRecharge.setAfterRecharge(afterRrecharge); @@ -312,7 +312,7 @@ * @param orderNumber * @return */ - public Integer getRechargeAmountByOrderNumber(String orderNumber) { + public Double getRechargeAmountByOrderNumber(String orderNumber) { return seVcRechargeMapper.getRechargeAmountByOrderNumber(orderNumber); } diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/virtualCard/dto/DtoVirtualCard.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/virtualCard/dto/DtoVirtualCard.java index 381dd41..f9a7c9b 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/virtualCard/dto/DtoVirtualCard.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/virtualCard/dto/DtoVirtualCard.java @@ -43,5 +43,5 @@ */ @Schema(description = "鍏呭�奸噾棰�", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @NotNull(message = "鍏呭�奸噾棰濅笉鑳戒负绌�") - private Integer rechargeAmount; + private Double rechargeAmount; } diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/wechatpay/PaymentCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/wechatpay/PaymentCtrl.java index 49b6ef7..af8e887 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/wechatpay/PaymentCtrl.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/wechatpay/PaymentCtrl.java @@ -218,7 +218,7 @@ // 鎺ユ敹鍙傛暟锛氱櫥褰曟�両D銆佽櫄鎷熷崱ID銆佸厖鍊奸噾棰濓紙鍒嗭級 Long sessionId = order.getSessionId(); Long virtualId = order.getVcId(); - Integer rechargeAmount = order.getRechargeAmount(); + //Integer rechargeAmount = order.getRechargeAmount(); String prepayId = ""; @@ -240,7 +240,7 @@ virtualCard.setOrderNumber(orderNumber); virtualCard.setClientId(clientId); virtualCard.setVirtualId(virtualId); - virtualCard.setRechargeAmount(rechargeAmount); + virtualCard.setRechargeAmount(order.getRechargeAmount()); BaseResponse result = virtualCardSv.insertVCRecharge(virtualCard); if(!result.getCode().equals("0001")) { return BaseResponseUtils.buildFail(SellResultCode.RECHARGE_ADD_FAIL.getMessage()); @@ -255,7 +255,7 @@ //璁㈠崟閲戦 JSONObject job_amount = new JSONObject(); - job_amount.put("total", rechargeAmount); + job_amount.put("total", (int)(order.getRechargeAmount()*100)); job_amount.put("currency", "CNY"); job_body.put("amount", job_amount); diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/wechatpay/dto/DtoOrder.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/wechatpay/dto/DtoOrder.java index f4ef320..75a58a0 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/wechatpay/dto/DtoOrder.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/wechatpay/dto/DtoOrder.java @@ -35,5 +35,5 @@ */ @Schema(description = "鏀粯閲戦", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @NotNull(message = "铏氭敮浠橀噾棰濅笉鑳戒负绌�") - private Integer rechargeAmount; + private Double rechargeAmount; } diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/util/PayHelper.java b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/util/PayHelper.java index ea8ed6a..db69d4c 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/util/PayHelper.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/util/PayHelper.java @@ -21,8 +21,6 @@ import java.io.ByteArrayInputStream; import java.io.IOException; import java.nio.charset.StandardCharsets; -import java.nio.file.Files; -import java.nio.file.Paths; import java.security.*; import java.security.cert.Certificate; import java.security.cert.CertificateException; @@ -489,7 +487,7 @@ Integer refund = po.getRefund(); // 鐢熸垚body - Integer total = virtualCardSv.getRechargeAmountByOrderNumber(tradeNo); + Double total = virtualCardSv.getRechargeAmountByOrderNumber(tradeNo); RefundRequest.Amount amount = new RefundRequest.Amount(); amount.setRefund(refund); amount.setTotal(total); diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/VirtualCardSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/VirtualCardSv.java index 9957fdf..7cd6de0 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/VirtualCardSv.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/VirtualCardSv.java @@ -163,7 +163,7 @@ String orderNumber = po.getOrderNumber(); Long virtualId = po.getVirtualId(); Long clientId = po.getClientId(); - Integer rechargeAmount = po.getRechargeAmount(); + Double rechargeAmount = po.getRechargeAmount(); // 楠岃瘉璇ヨ櫄鎷熷崱璐︽埛鏄惁瀛樺湪骞跺彇鍑哄綋鍓嶈处鎴蜂綑棰� SeVirtualCard seVirtualCard = seVirtualCardMapper.selectByPrimaryKey(virtualId); @@ -216,7 +216,7 @@ Long virtualId = seVcRecharge.getVcId(); Double money = seVcRecharge.getMoney(); - Integer rechargeAmount = seVcRecharge.getRechargeAmount(); + Double rechargeAmount = seVcRecharge.getRechargeAmount(); Double afterRrecharge = money + rechargeAmount; seVcRecharge.setAfterRecharge(afterRrecharge); @@ -339,7 +339,7 @@ * @param orderNumber * @return */ - public Integer getRechargeAmountByOrderNumber(String orderNumber) { + public Double getRechargeAmountByOrderNumber(String orderNumber) { return seVcRechargeMapper.getRechargeAmountByOrderNumber(orderNumber); } diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/dto/DtoVirtualCard.java b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/dto/DtoVirtualCard.java index 68086f0..c82fd3f 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/dto/DtoVirtualCard.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/dto/DtoVirtualCard.java @@ -37,5 +37,5 @@ * 鍏呭�奸噾棰� */ @NotNull(message = "鍏呭�奸噾棰濅笉鑳戒负绌�") - private Integer rechargeAmount; + private Double rechargeAmount; } \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/PaymentCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/PaymentCtrl.java index 0833021..7c77eb6 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/PaymentCtrl.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/PaymentCtrl.java @@ -199,10 +199,10 @@ return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); } - // 鎺ユ敹鍙傛暟锛氱櫥褰曟�両D銆佽櫄鎷熷崱ID銆佸厖鍊奸噾棰濓紙鍒嗭級 + // 鎺ユ敹鍙傛暟锛氱櫥褰曟�両D銆佽櫄鎷熷崱ID銆佸厖鍊奸噾棰�(鍗曚綅鍏�) Long sessionId = order.getSessionId(); Long virtualId = order.getVcId(); - Integer rechargeAmount = order.getRechargeAmount(); + //Integer rechargeAmount = (int)(order.getRechargeAmount()*100); String prepayId = ""; @@ -233,7 +233,8 @@ virtualCard.setVirtualId(virtualId); virtualCard.setClientId(clientId); virtualCard.setOrderNumber(orderNumber); - virtualCard.setRechargeAmount(rechargeAmount); + //virtualCard.setRechargeAmount(rechargeAmount); + virtualCard.setRechargeAmount(order.getRechargeAmount()); // -1锛氳櫄鎷熷崱涓嶅瓨鍦紝0锛氭坊鍔犲厖鍊艰褰曞け璐� Long rechargeId = virtualCardSv.insertVCRecharge(virtualCard); @@ -267,7 +268,7 @@ //璁㈠崟閲戦 JSONObject job_amount = new JSONObject(); - job_amount.put("total", rechargeAmount); + job_amount.put("total", (int)(order.getRechargeAmount()*100)); job_amount.put("currency", "CNY"); job_body.put("amount", job_amount); diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/dto/DtoOrder.java b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/dto/DtoOrder.java index eee9246..d1d7e9c 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/dto/DtoOrder.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/dto/DtoOrder.java @@ -31,9 +31,9 @@ private Long vcId; /** - * 鍏呭�奸噾棰濋噾棰� + * 鍏呭�奸噾棰濋噾棰濓紝鍗曚綅鍏� */ @Schema(description = "鏀粯閲戦", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @NotNull(message = "铏氭敮浠橀噾棰濅笉鑳戒负绌�") - private Integer rechargeAmount; + private Double rechargeAmount; } diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/dto/RefundRequest.java b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/dto/RefundRequest.java index bf1f6f0..3c9c678 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/dto/RefundRequest.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/dto/RefundRequest.java @@ -58,7 +58,7 @@ */ @Schema(description = "鍘熻鍗曢噾棰�", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @NotNull(message = "鍘熻鍗曢噾棰濅笉鑳戒负绌�") - private Integer total; + private Double total; /** * 閫�娆惧竵绉嶏紝鍥哄畾涓衡�淐NY鈥� -- Gitblit v1.8.0