Administrator
2024-07-03 7f5b61a32aa6687eac4cebb4705ced19145dd692
2024-07-03 朱宝民 获取充值记录接口添加返回值
5个文件已修改
2个文件已添加
199 ■■■■■ 已修改文件
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmCommandHistoryMapper.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSe/VoRecharge.java 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmCommandHistoryMapper.xml 48 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeCardOperateMapper.xml 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/CommandCtrl.java 43 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/CommandSv.java 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/qo/QoCommand.java 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmCommandHistoryMapper.java
@@ -47,6 +47,17 @@
     */
    VoUnclosedParam getUncloseParam(@Param("onLineMap") String onLineMap, @Param("intakeId")Long intakeId);
    //获取命令历史记录
    /**
     * 根据指定条件获取命令日志历史记录总数
     * @param params
     * @return
     */
    Long getCommandHistoriesCount(Map<?, ?> params);
    /**
     * 根据指定条件获取命令日志历史记录
     * @param params
     * @return
     */
    List<VoCommand> getCommandHistories(Map<?, ?> params);
}
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSe/VoRecharge.java
@@ -1,5 +1,7 @@
package com.dy.pipIrrGlobal.voSe;
import com.alibaba.fastjson2.annotation.JSONField;
import com.alibaba.fastjson2.writer.ObjectWriterImplToString;
import com.dy.common.po.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
@@ -20,8 +22,14 @@
public class VoRecharge implements BaseEntity {
    private static final long serialVersionUID = 1L;
    @Schema(title = "ID")
    private String id;
    //@Schema(title = "ID")
    //private String id;
    @JSONField(serializeUsing= ObjectWriterImplToString.class)
    private Long opeId;
    @JSONField(serializeUsing= ObjectWriterImplToString.class)
    private Long cardId;
    @Schema(title = "农户姓名")
    private String clientName;
@@ -33,6 +41,8 @@
    @Schema(title = "农户编号")
    private String clientNum;
    private String address;
    /**
     * 水卡余额
     */
pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmCommandHistoryMapper.xml
@@ -246,8 +246,29 @@
      LIMIT 0,1
  </select>
  <select id="getCommandHistories" resultType="com.dy.pipIrrGlobal.voRm.VoCommand">
  <!--根据指定条件获取命令日志历史记录总数-->
  <select id="getCommandHistoriesCount" resultType="java.lang.Long">
    SELECT
      COUNT(*) AS recordCount
    FROM rm_command_history his
      INNER JOIN pr_intake inta ON inta.id = his.intake_id
      LEFT JOIN se_client cli ON cli.id = his.operator
      LEFT JOIN ba_user  user ON user.id = his.operator
    <where>
      <if test = "commandName != null and commandName !=''">
        AND his.command_name LIKE CONCAT('%',#{commandName},'%')
      </if>
      <if test = "result != null">
        AND his.result = #{result}
      </if>
      <if test = "timeStart != null and timeStop != null">
        AND his.send_time BETWEEN #{timeStart} AND #{timeStop}
      </if>
    </where>
  </select>
  <!--根据指定条件获取命令日志历史记录-->
  <select id="getCommandHistories" resultType="com.dy.pipIrrGlobal.voRm.VoCommand">
    SELECT
      his.id,
      his.command_name AS commandName,
@@ -263,10 +284,27 @@
      his.result_text,
      IFNULL(cli.name, user.name) AS userName
    FROM rm_command_history his
           INNER JOIN pr_intake inta ON inta.id = his.intake_id
           LEFT JOIN se_client cli ON cli.id = his.operator
           LEFT JOIN ba_user  user ON user.id = his.operator
    WHERE his.command_name LIKE '%关阀%' AND his.result =1 AND his.send_time BETWEEN '2024-06-01 00:00:00' AND '2024-07-31 23:59:59'
     INNER JOIN pr_intake inta ON inta.id = his.intake_id
     LEFT JOIN se_client cli ON cli.id = his.operator
     LEFT JOIN ba_user  user ON user.id = his.operator
    <where>
      <if test = "commandName != null and commandName !=''">
        AND his.command_name LIKE CONCAT('%',#{commandName},'%')
      </if>
      <if test = "result != null">
        AND his.result = #{result}
      </if>
      <if test = "timeStart != null and timeStop != null">
        AND his.send_time BETWEEN #{timeStart} AND #{timeStop}
      </if>
    </where>
    ORDER BY his.send_time DESC
    <trim prefix="limit " >
      <if test="start != null and count != null">
        #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER}
      </if>
    </trim>
  </select>
</mapper>
pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeCardOperateMapper.xml
@@ -266,11 +266,14 @@
  <!--根据指定条件获取充值记录-->
  <select id="getRecharges" resultType="com.dy.pipIrrGlobal.voSe.VoRecharge">
    SELECT
      CAST(ope.id AS char) AS id,
<!--      CAST(ope.id AS char) AS id,-->
      ope.id AS opeId,
      card.id AS cardId,
      cli.name AS clientName,
      cli.phone,
      cli.idCard,
      cli.clientNum,
      cli.address,
      card.money,
      CAST(card.cardNum AS char) AS cardNum,
      IFNULL(ope.trade_amount, 0) AS amount,
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/CommandCtrl.java
New file
@@ -0,0 +1,43 @@
package com.dy.pipIrrRemote.common;
import com.dy.common.aop.SsoAop;
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
import com.dy.common.webUtil.QueryResultVo;
import com.dy.pipIrrGlobal.voRm.VoCommand;
import com.dy.pipIrrRemote.common.qo.QoCommand;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
 * @author ZhuBaoMin
 * @date 2024-07-03 9:48
 * @LastEditTime 2024-07-03 9:48
 * @Description
 */
@Slf4j
@RestController
@RequestMapping(path="get")
@RequiredArgsConstructor
public class CommandCtrl {
    private final CommandSv commandSv;
    @GetMapping(path = "/command_history")
    @SsoAop()
    public BaseResponse<QueryResultVo<List<VoCommand>>> get(QoCommand vo){
        try {
            QueryResultVo<List<VoCommand>> res = commandSv.getCommandHistories(vo);
            return BaseResponseUtils.buildSuccess(res);
        } catch (Exception e) {
            log.error("获取充值记录异常", e);
            return BaseResponseUtils.buildException(e.getMessage()) ;
        }
    }
}
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/CommandSv.java
@@ -15,13 +15,17 @@
import com.dy.pipIrrGlobal.pojoRm.RmCommandHistory;
import com.dy.pipIrrGlobal.pojoSe.SeClientCard;
import com.dy.pipIrrGlobal.voPr.VoOnLineIntake;
import com.dy.pipIrrGlobal.voRm.VoCommand;
import com.dy.pipIrrGlobal.voRm.VoUnclosedParam;
import com.dy.pipIrrGlobal.voRm.VoUnclosedValve;
import com.dy.pipIrrGlobal.voSe.VoVirtualCard;
import com.dy.pipIrrRemote.common.qo.QoCommand;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.common.utils.PojoUtils;
import org.springframework.stereotype.Service;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -179,4 +183,36 @@
    public SeClientCard geClientCardByCardId(Long cardId) {
        return seClientCardMapper.selectByPrimaryKey(cardId);
    }
    /**
     * 根据指定条件获取命令日志历史记录
     * @param query
     * @return
     */
    public QueryResultVo<List<VoCommand>> getCommandHistories(QoCommand query) {
        DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
        // 完善查询起止时间
        String timeStart = query.getTimeStart();
        String timeStop = query.getTimeStop();
        if(timeStart != null) {
            timeStart = timeStart + " 00:00:00";
            query.setTimeStart(timeStart);
        }
        if(timeStop != null) {
            timeStop = timeStop + " 23:59:59";
            query.setTimeStop(timeStop);
        }
        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(query);
        Long itemTotal = rmCommandHistoryMapper.getCommandHistoriesCount(params);
        QueryResultVo<List<VoCommand>> rsVo = new QueryResultVo<>() ;
        rsVo.pageSize = query.pageSize ;
        rsVo.pageCurr = query.pageCurr ;
        rsVo.calculateAndSet(itemTotal, params);
        rsVo.obj = rmCommandHistoryMapper.getCommandHistories(params);
        return rsVo ;
    }
}
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/qo/QoCommand.java
New file
@@ -0,0 +1,40 @@
package com.dy.pipIrrRemote.common.qo;
import com.dy.common.webUtil.QueryConditionVo;
import lombok.*;
/**
 * @author ZhuBaoMin
 * @date 2024-07-03 9:25
 * @LastEditTime 2024-07-03 9:25
 * @Description 命令日志历史记录查询视图
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ToString(callSuper = true)
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class QoCommand extends QueryConditionVo {
    /**
     * 命令名称
     */
    private String commandName;
    /**
     * 命令结果,0-失败,1-成功
     */
    private Integer result;
    /**
     * 查询起始时间
     */
    private String timeStart;
    /**
     * 查询截止时间
     */
    private String timeStop;
}