From 16900a8d681aed70bca5b3fea8dc28715dde9712 Mon Sep 17 00:00:00 2001
From: Administrator <zhubaomin>
Date: 星期三, 17 七月 2024 09:53:13 +0800
Subject: [PATCH] 2024-07-17 朱宝民 重构了获取取水口两个接口
---
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/command/ComSupport.java | 12 +++---
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/webFilter/WXDataSourceNameSetFilter.java | 4 --
pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/PaymentCtrl.java | 4 ++
pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeCtrl.java | 19 ++++++++-
pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeSv.java | 51 ++++++++++++++++++++++++-
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrIntakeMapper.java | 4 +-
pipIrr-platform/pipIrr-global/src/main/resources/application-database-ym.yml | 4 +-
pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml | 20 +++++-----
8 files changed, 90 insertions(+), 28 deletions(-)
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/webFilter/WXDataSourceNameSetFilter.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/webFilter/WXDataSourceNameSetFilter.java
index 385475b..3b127ad 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/webFilter/WXDataSourceNameSetFilter.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/webFilter/WXDataSourceNameSetFilter.java
@@ -22,9 +22,6 @@
@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
- String ds = DataSourceContext.get();
- System.out.println(ds);
-
HttpServletRequest httpRequest = (HttpServletRequest) servletRequest;
String wxDataSourceName = httpRequest.getHeader("tag");
if(wxDataSourceName != null && wxDataSourceName.trim().length() > 0){
@@ -33,7 +30,6 @@
DataSourceContext.set(wxDataSourceName);
} else {
log.info("鐢ㄦ埛鏈�夋嫨鏁版嵁婧�");
- DataSourceContext.set("ym");
}
filterChain.doFilter(servletRequest, servletResponse);
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/command/ComSupport.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/command/ComSupport.java
index 234a1bf..4254d08 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/command/ComSupport.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/command/ComSupport.java
@@ -329,12 +329,12 @@
Data myData = (Data)response_CallBack.getContent();
// 鏇存柊鍛戒护鏃ュ織锛氭墽琛岀粨鏋溿�佽繑鍥炵粨鏋滄椂闂淬�佺粨鏋滃唴瀹�
- rmCommandHistory = new RmCommandHistory();
- rmCommandHistory.setComId(comId);
- rmCommandHistory.setResult((byte)1);
- rmCommandHistory.setResultTime(new Date());
- rmCommandHistory.setResultText((JSONObject)JSON.toJSON(myData));
- rmCommandHistoryMapper.updateByPrimaryKeySelective(rmCommandHistory);
+ //rmCommandHistory = new RmCommandHistory();
+ //rmCommandHistory.setComId(comId);
+ //rmCommandHistory.setResult((byte)1);
+ //rmCommandHistory.setResultTime(new Date());
+ //rmCommandHistory.setResultText((JSONObject)JSON.toJSON(myData));
+ //rmCommandHistoryMapper.updateByPrimaryKeySelective(rmCommandHistory);
return BaseResponseUtils.buildSuccess(myData) ;
} else {
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrIntakeMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrIntakeMapper.java
index c5c2f24..3ab97a6 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrIntakeMapper.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrIntakeMapper.java
@@ -113,14 +113,14 @@
List<Map<String, Object>> getNoBindingIntakes();
/**
- * 鑾峰彇鍙栨按鍙f暟閲忥紙鍦ㄧ嚎鍜屼笉鍦ㄧ嚎锛夊簾寮�
+ * 鑾峰彇鍙栨按鍙f暟閲忥紙鍦ㄧ嚎鍜屼笉鍦ㄧ嚎锛�
* @param params
* @return
*/
Long getOnLineIntakesCount(Map<?, ?> params);
/**
- * 鑾峰彇鍙栨按鍙e垪琛紙鍦ㄧ嚎鍜屼笉鍦ㄧ嚎锛夊簾寮�
+ * 鑾峰彇鍙栨按鍙e垪琛紙鍦ㄧ嚎鍜屼笉鍦ㄧ嚎锛�
* @param params
* @return
*/
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/application-database-ym.yml b/pipIrr-platform/pipIrr-global/src/main/resources/application-database-ym.yml
index ab10469..3b1c640 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/application-database-ym.yml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/application-database-ym.yml
@@ -5,8 +5,8 @@
#name: ym
type: com.alibaba.druid.pool.DruidDataSource
driverClassName: com.mysql.cj.jdbc.Driver
-# url: jdbc:mysql://192.168.40.166:3306/pipIrr_ym?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull
- url: jdbc:mysql://127.0.0.1:3306/pipIrr_ym?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull
+ url: jdbc:mysql://192.168.40.166:3306/pipIrr_ym?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull
+# url: jdbc:mysql://127.0.0.1:3306/pipIrr_ym?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull
# url: jdbc:mysql://8.140.179.55:3306/pipIrr_ym?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull
username: root
password: dysql,;.abc!@#
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml
index 3099a55..54809d4 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml
@@ -358,31 +358,31 @@
WHERE id NOT IN(SELECT intakeId FROM pr_controller) AND deleted = 0
</select>
- <!--鑾峰彇鍙栨按鍙f暟閲忥紙鍦ㄧ嚎鍜屼笉鍦ㄥ厛锛� 搴熷純-->
+ <!--鑾峰彇鍙栨按鍙f暟閲忥紙鍦ㄧ嚎鍜屼笉鍦ㄥ厛锛�-->
<select id="getOnLineIntakesCount" resultType="java.lang.Long">
SELECT
COUNT(*) AS recordCount
FROM pr_controller con
INNER JOIN pr_intake inta ON con.intakeId = inta.id
left JOIN JSON_TABLE(
- <!--'[{"rtuAddr":"37142501020100215","isOnLine":true},{"rtuAddr":"4000004","isOnLine":true},{"rtuAddr":"dy20240325","isOnLine":false}]',-->
- #{onLineMap},
- '$[*]' COLUMNS(
- rtuAddr VARCHAR(20) PATH '$.rtuAddr',
- isOnLine BOOLEAN PATH '$.isOnLine'
- )
- ) rtus ON con.rtuAddr = rtus.rtuAddr
+ <!--'[{"rtuAddr":"37142501020100215","isOnLine":true},{"rtuAddr":"4000004","isOnLine":true},{"rtuAddr":"dy20240325","isOnLine":false}]',-->
+ #{onLineMap},
+ '$[*]' COLUMNS(
+ rtuAddr VARCHAR(20) PATH '$.rtuAddr',
+ isOnLine BOOLEAN PATH '$.isOnLine'
+ )
+ ) rtus ON con.rtuAddr = rtus.rtuAddr
<where>
<if test="isOnLine != null">
rtus.isOnLine = #{isOnLine}
</if>
<if test="intakeNum != null and intakeNum != ''">
- AND inta.name LIKE CONCAT('%', #{intakeNum}, '%')
+ AND inta.name = #{intakeNum}
</if>
</where>
</select>
- <!--鑾峰彇鍙栨按鍙e垪琛紙鍦ㄧ嚎鍜屼笉鍦ㄥ厛锛� 搴熷純-->
+ <!--鑾峰彇鍙栨按鍙e垪琛紙鍦ㄧ嚎鍜屼笉鍦ㄥ厛锛�-->
<select id="getOnLineIntakes" resultType="com.dy.pipIrrGlobal.voPr.VoOnLineIntake">
SELECT
con.intakeId,
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeCtrl.java
index 5ddabb6..e2ee1ef 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeCtrl.java
@@ -30,14 +30,29 @@
private final IntakeSv intakeSv;
/**
- * 鑾峰彇鍙栨按鍙o紙鍦ㄧ嚎鍜屼笉鍦ㄧ嚎锛�
+ * 鏍规嵁鍙栨按鍙g紪鍙疯幏鍙栧彇姘村彛瀵硅薄
+ * @param qo
+ * @return
+ */
+ @GetMapping(path = "one_intake")
+ public BaseResponse<QueryResultVo<VoOnLineIntake>> getOneIntake(OnLineIntakesQO qo) {
+ try {
+ return BaseResponseUtils.buildSuccess(intakeSv.selectOneIntake(qo));
+ } catch (Exception e) {
+ log.error("鏌ヨ鍙栨按鍙e紓甯�", e);
+ return BaseResponseUtils.buildException(e.getMessage());
+ }
+ }
+
+ /**
+ * 鑾峰彇鍙栨按鍙e垪琛紙鍦ㄧ嚎鍜屼笉鍦ㄧ嚎锛�
* @param qo
* @return
*/
@GetMapping(path = "all_intakes")
public BaseResponse<QueryResultVo<VoOnLineIntake>> getAllIntakes(OnLineIntakesQO qo) {
try {
- return BaseResponseUtils.buildSuccess(intakeSv.selectOnLineIntakes(qo));
+ return BaseResponseUtils.buildSuccess(intakeSv.selectAllIntakes(qo));
} catch (Exception e) {
log.error("鏌ヨ鍙栨按鍙e紓甯�", e);
return BaseResponseUtils.buildException(e.getMessage());
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeSv.java
index 32c3ed8..47ecf84 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeSv.java
@@ -6,6 +6,7 @@
import com.dy.common.multiDataSource.DataSourceContext;
import com.dy.common.mw.protocol.Command;
import com.dy.common.webUtil.BaseResponse;
+import com.dy.common.webUtil.QueryResultVo;
import com.dy.pipIrrGlobal.daoPr.PrIntakeMapper;
import com.dy.pipIrrGlobal.voPr.VoOnLineIntake;
import com.dy.pipIrrWechat.intake.qo.OnLineIntakesQO;
@@ -58,10 +59,10 @@
}
/**
- * 鑾峰彇鍙栨按鍙�
+ * 鏍规嵁鍙栨按鍙g紪鍙疯幏鍙栧彇姘村彛瀵硅薄
* @return
*/
- public VoOnLineIntake selectOnLineIntakes(OnLineIntakesQO qo) {
+ public VoOnLineIntake selectOneIntake(OnLineIntakesQO qo) {
Command com = new Command() ;
com.id = Command.defaultId;
com.code = "LCD0001";
@@ -96,6 +97,52 @@
}
/**
+ * 鑾峰彇鍙栨按鍙e垪琛紙鍦ㄧ嚎鍜屼笉鍦ㄧ嚎锛�
+ * @return
+ */
+ public QueryResultVo<List<VoOnLineIntake>> selectAllIntakes(OnLineIntakesQO qo) {
+ Command com = new Command() ;
+ com.id = Command.defaultId;
+ com.code = "LCD0001";
+ com.type = "innerCommand";
+ comSendUrl = env.getProperty(pro_mw + "." + DataSourceContext.get() + "." + key_mw);
+
+ JSONObject response = (JSONObject) JSON.toJSON(sendCom2Mw(com));
+ if(response != null && response.getString("code").equals("0001")) {
+ JSONObject attachment = response.getJSONObject("content").getJSONObject("attachment").getJSONObject("onLineMap");
+ HashMap<String, Boolean> onLineMap = JSON.parseObject(attachment.toJSONString(), HashMap.class);
+
+ JSONArray jsonArray = new JSONArray();
+ for (Map.Entry<String, Boolean> entry : onLineMap.entrySet()) {
+ JSONObject jsonObject = new JSONObject();
+ jsonObject.put("rtuAddr", entry.getKey());
+ jsonObject.put("isOnLine", entry.getValue());
+ jsonArray.add(jsonObject);
+ }
+
+ qo.setOnLineMap(jsonArray.toJSONString());
+ // 濡傛灉 intakeNum 涓嶄负绌猴紝鍒欒浆涓哄皬鍐欏啀鍐欏叆qo瀵硅薄
+ String intakeNum = qo.getIntakeNum();
+ if(intakeNum != null) {
+ qo.setIntakeNum(intakeNum.toLowerCase());
+ }
+
+ Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ;
+ Long itemTotal = prIntakeMapper.getOnLineIntakesCount(params);
+
+ QueryResultVo<List<VoOnLineIntake>> rsVo = new QueryResultVo<>() ;
+ rsVo.pageSize = qo.pageSize ;
+ rsVo.pageCurr = qo.pageCurr ;
+ rsVo.calculateAndSet(itemTotal, params);
+ rsVo.obj = prIntakeMapper.getOnLineIntakes(params);
+ return rsVo;
+ } else {
+ QueryResultVo<List<VoOnLineIntake>> rsVo = new QueryResultVo<>();
+ return rsVo;
+ }
+ }
+
+ /**
* 鏍规嵁鎿嶄綔鍛樿幏鍙栧父鐢ㄥ彇姘村彛
* @param operator
* @return
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 0e8d641..b6043c0 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
@@ -2,6 +2,7 @@
import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONObject;
+import com.dy.common.multiDataSource.DataSourceContext;
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
import com.dy.common.webUtil.ResultCodeMsg;
@@ -246,6 +247,7 @@
job_body.put("mchid", mchid);
job_body.put("description", description);
job_body.put("out_trade_no", orderNumber);
+ job_body.put("attach", DataSourceContext.get());
job_body.put("notify_url", notifyUrl);
//璁㈠崟閲戦
@@ -420,6 +422,8 @@
JSONObject job_resource = JSONObject.parseObject(resource);
// 瑙e瘑鍚庡彇鍑猴細鍟嗘埛璁㈠崟鍙枫�佸井淇℃敮浠樿鍗曞彿銆佷氦鏄撶姸鎬併�佹敮浠樺畬鎴愭椂闂�
+ String attach = job_resource.getString("attach");
+ DataSourceContext.set(attach);
String out_trade_no = job_resource.getString("out_trade_no");
String transaction_id = job_resource.getString("transaction_id");
String trade_state = job_resource.getString("trade_state");
--
Gitblit v1.8.0