正在显示
5 个修改的文件
包含
188 行增加
和
7 行删除
| 1 | +package com.sunyo.energy.location.dao; | ||
| 2 | + | ||
| 3 | +import com.sunyo.energy.location.model.WaterMeterSacc; | ||
| 4 | + | ||
| 5 | +public interface WaterMeterSaccMapper { | ||
| 6 | + int deleteByPrimaryKey(String wmId); | ||
| 7 | + | ||
| 8 | + int insert(WaterMeterSacc record); | ||
| 9 | + | ||
| 10 | + int insertSelective(WaterMeterSacc record); | ||
| 11 | + | ||
| 12 | + WaterMeterSacc selectByPrimaryKey(String wmId); | ||
| 13 | + | ||
| 14 | + int updateByPrimaryKeySelective(WaterMeterSacc record); | ||
| 15 | + | ||
| 16 | + int updateByPrimaryKey(WaterMeterSacc record); | ||
| 17 | +} | 
| 1 | +package com.sunyo.energy.location.model; | ||
| 2 | + | ||
| 3 | +import java.math.BigDecimal; | ||
| 4 | + | ||
| 5 | +public class WaterMeterSacc { | ||
| 6 | + private String wmId; | ||
| 7 | + | ||
| 8 | + private String ardname; | ||
| 9 | + | ||
| 10 | + private BigDecimal unitPrice; | ||
| 11 | + | ||
| 12 | + private BigDecimal wmSacc; | ||
| 13 | + | ||
| 14 | + public String getWmId() { | ||
| 15 | + return wmId; | ||
| 16 | + } | ||
| 17 | + | ||
| 18 | + public void setWmId(String wmId) { | ||
| 19 | + this.wmId = wmId == null ? null : wmId.trim(); | ||
| 20 | + } | ||
| 21 | + | ||
| 22 | + public String getArdname() { | ||
| 23 | + return ardname; | ||
| 24 | + } | ||
| 25 | + | ||
| 26 | + public void setArdname(String ardname) { | ||
| 27 | + this.ardname = ardname == null ? null : ardname.trim(); | ||
| 28 | + } | ||
| 29 | + | ||
| 30 | + public BigDecimal getUnitPrice() { | ||
| 31 | + return unitPrice; | ||
| 32 | + } | ||
| 33 | + | ||
| 34 | + public void setUnitPrice(BigDecimal unitPrice) { | ||
| 35 | + this.unitPrice = unitPrice; | ||
| 36 | + } | ||
| 37 | + | ||
| 38 | + public BigDecimal getWmSacc() { | ||
| 39 | + return wmSacc; | ||
| 40 | + } | ||
| 41 | + | ||
| 42 | + public void setWmSacc(BigDecimal wmSacc) { | ||
| 43 | + this.wmSacc = wmSacc; | ||
| 44 | + } | ||
| 45 | +} | 
| @@ -6,9 +6,11 @@ import com.sunyo.energy.location.controller.response.ResultJson; | @@ -6,9 +6,11 @@ import com.sunyo.energy.location.controller.response.ResultJson; | ||
| 6 | import com.sunyo.energy.location.dao.LocationMapper; | 6 | import com.sunyo.energy.location.dao.LocationMapper; | 
| 7 | import com.sunyo.energy.location.dao.PayRecordsMapper; | 7 | import com.sunyo.energy.location.dao.PayRecordsMapper; | 
| 8 | import com.sunyo.energy.location.dao.WaterMeterMapper; | 8 | import com.sunyo.energy.location.dao.WaterMeterMapper; | 
| 9 | +import com.sunyo.energy.location.dao.WaterMeterSaccMapper; | ||
| 9 | import com.sunyo.energy.location.demopay.QrDemo; | 10 | import com.sunyo.energy.location.demopay.QrDemo; | 
| 10 | import com.sunyo.energy.location.model.PayRecords; | 11 | import com.sunyo.energy.location.model.PayRecords; | 
| 11 | import com.sunyo.energy.location.model.WaterMeter; | 12 | import com.sunyo.energy.location.model.WaterMeter; | 
| 13 | +import com.sunyo.energy.location.model.WaterMeterSacc; | ||
| 12 | import com.sunyo.energy.location.service.WaterMeterService; | 14 | import com.sunyo.energy.location.service.WaterMeterService; | 
| 13 | import com.sunyo.energy.location.utils.AllUtils; | 15 | import com.sunyo.energy.location.utils.AllUtils; | 
| 14 | import com.sunyo.energy.location.utils.HttpsUtils; | 16 | import com.sunyo.energy.location.utils.HttpsUtils; | 
| @@ -35,6 +37,10 @@ public class WaterMeterServiceImp implements WaterMeterService { | @@ -35,6 +37,10 @@ public class WaterMeterServiceImp implements WaterMeterService { | ||
| 35 | 37 | ||
| 36 | @Autowired | 38 | @Autowired | 
| 37 | private LocationMapper locationMapper; | 39 | private LocationMapper locationMapper; | 
| 40 | + | ||
| 41 | + @Autowired | ||
| 42 | + WaterMeterSaccMapper waterMeterSaccMapper; | ||
| 43 | + | ||
| 38 | /** | 44 | /** | 
| 39 | * 查询所有水表 | 45 | * 查询所有水表 | 
| 40 | */ | 46 | */ | 
| @@ -130,9 +136,22 @@ public class WaterMeterServiceImp implements WaterMeterService { | @@ -130,9 +136,22 @@ public class WaterMeterServiceImp implements WaterMeterService { | ||
| 130 | // 得到请求接口 返回值 和总水量 | 136 | // 得到请求接口 返回值 和总水量 | 
| 131 | Map<String, Object> map = allWater(payFees, wmId); | 137 | Map<String, Object> map = allWater(payFees, wmId); | 
| 132 | Map hashMap = JSON.parseObject(map.get("status").toString(), HashMap.class); | 138 | Map hashMap = JSON.parseObject(map.get("status").toString(), HashMap.class); | 
| 139 | + /** | ||
| 140 | + * 外部充值水表成功 | ||
| 141 | + */ | ||
| 133 | if ("0".equals(hashMap.get("state").toString())) { | 142 | if ("0".equals(hashMap.get("state").toString())) { | 
| 134 | - int update = waterMeterMapper.update(wmId, map.get("allSacc").toString()); | ||
| 135 | - resultJson.setCode("200"); | 143 | + WaterMeterSacc waterMeterSacc = new WaterMeterSacc(); | 
| 144 | + waterMeterSacc.setWmId(AllUtils.wmIdUtils(wmId)); | ||
| 145 | + waterMeterSacc.setWmSacc(new BigDecimal(String.valueOf(map.get("Add_sacc")))); | ||
| 146 | + /** | ||
| 147 | + * 修改本地累计充值量 | ||
| 148 | + */ | ||
| 149 | + int i = waterMeterSaccMapper.updateByPrimaryKeySelective(waterMeterSacc); | ||
| 150 | + if (i > 0){ | ||
| 151 | + resultJson.setCode("200"); | ||
| 152 | + }else { | ||
| 153 | + resultJson.setCode("203"); | ||
| 154 | + } | ||
| 136 | } else { | 155 | } else { | 
| 137 | resultJson.setCode("203"); | 156 | resultJson.setCode("203"); | 
| 138 | } | 157 | } | 
| @@ -217,8 +236,8 @@ public class WaterMeterServiceImp implements WaterMeterService { | @@ -217,8 +236,8 @@ public class WaterMeterServiceImp implements WaterMeterService { | ||
| 217 | // 充值最后立方水数值 | 236 | // 充值最后立方水数值 | 
| 218 | String s = AllUtils.nubmerDivision(payFees); | 237 | String s = AllUtils.nubmerDivision(payFees); | 
| 219 | // 查询累计充值量 | 238 | // 查询累计充值量 | 
| 220 | - WaterMeter realTime = findRealTime(wmId); | ||
| 221 | - String allSacc = AllUtils.nubmerAdd(s, realTime.getWmSacc()); | 239 | + WaterMeterSacc waterMeterSacc = waterMeterSaccMapper.selectByPrimaryKey(AllUtils.wmIdUtils(wmId)); | 
| 240 | + String allSacc = AllUtils.nubmerAdd(s, waterMeterSacc.getWmSacc()); | ||
| 222 | Map<String, Object> datas = new HashMap<>(); | 241 | Map<String, Object> datas = new HashMap<>(); | 
| 223 | datas.put("MtId", wmId); | 242 | datas.put("MtId", wmId); | 
| 224 | datas.put("Add_sacc", allSacc); | 243 | datas.put("Add_sacc", allSacc); | 
| @@ -265,4 +284,5 @@ public class WaterMeterServiceImp implements WaterMeterService { | @@ -265,4 +284,5 @@ public class WaterMeterServiceImp implements WaterMeterService { | ||
| 265 | 284 | ||
| 266 | return payRecords; | 285 | return payRecords; | 
| 267 | } | 286 | } | 
| 287 | + | ||
| 268 | } | 288 | } | 
| @@ -35,11 +35,10 @@ public class AllUtils { | @@ -35,11 +35,10 @@ public class AllUtils { | ||
| 35 | 35 | ||
| 36 | 36 | ||
| 37 | //数字相加 参数1加参数2 | 37 | //数字相加 参数1加参数2 | 
| 38 | - public static String nubmerAdd(String oneWmSacc, String s) { | 38 | + public static String nubmerAdd(String oneWmSacc, BigDecimal s) { | 
| 39 | 39 | ||
| 40 | BigDecimal bigDecimal = new BigDecimal(oneWmSacc); | 40 | BigDecimal bigDecimal = new BigDecimal(oneWmSacc); | 
| 41 | - BigDecimal bigDecimal1 = new BigDecimal(s); | ||
| 42 | - String s1 = bigDecimal.add(bigDecimal1).toString(); | 41 | + String s1 = bigDecimal.add(s).toString(); | 
| 43 | return s1; | 42 | return s1; | 
| 44 | } | 43 | } | 
| 45 | 44 | ||
| @@ -56,5 +55,23 @@ public class AllUtils { | @@ -56,5 +55,23 @@ public class AllUtils { | ||
| 56 | return merchantId + result; | 55 | return merchantId + result; | 
| 57 | } | 56 | } | 
| 58 | 57 | ||
| 58 | + /** | ||
| 59 | + * 处理水表编号加 '-' 问题 | ||
| 60 | + * @param replace 水表编号 | ||
| 61 | + * @return | ||
| 62 | + */ | ||
| 63 | + public static String wmIdUtils(String replace) { | ||
| 64 | + if (!replace.contains("-")){ | ||
| 65 | + String regex = "(.{2})"; | ||
| 66 | + replace = replace.replaceAll(regex, "$1-"); | ||
| 67 | + String substring = replace.substring(0, replace.length() - 1); | ||
| 68 | + | ||
| 69 | + return substring; | ||
| 70 | + }else { | ||
| 71 | + return replace; | ||
| 72 | + } | ||
| 73 | + | ||
| 74 | + } | ||
| 75 | + | ||
| 59 | 76 | ||
| 60 | } | 77 | } | 
| 1 | +<?xml version="1.0" encoding="UTF-8" ?> | ||
| 2 | +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" > | ||
| 3 | +<mapper namespace="com.sunyo.energy.location.dao.WaterMeterSaccMapper" > | ||
| 4 | + <resultMap id="BaseResultMap" type="com.sunyo.energy.location.model.WaterMeterSacc" > | ||
| 5 | + <id column="wm_id" property="wmId" jdbcType="VARCHAR" /> | ||
| 6 | + <result column="ardname" property="ardname" jdbcType="VARCHAR" /> | ||
| 7 | + <result column="unit_price" property="unitPrice" jdbcType="DECIMAL" /> | ||
| 8 | + <result column="wm_sacc" property="wmSacc" jdbcType="DECIMAL" /> | ||
| 9 | + </resultMap> | ||
| 10 | + <sql id="Base_Column_List" > | ||
| 11 | + wm_id, ardname, unit_price, wm_sacc | ||
| 12 | + </sql> | ||
| 13 | + <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.String" > | ||
| 14 | + select | ||
| 15 | + <include refid="Base_Column_List" /> | ||
| 16 | + from water_meter_sacc | ||
| 17 | + where wm_id = #{wmId,jdbcType=VARCHAR} | ||
| 18 | + </select> | ||
| 19 | + <delete id="deleteByPrimaryKey" parameterType="java.lang.String" > | ||
| 20 | + delete from water_meter_sacc | ||
| 21 | + where wm_id = #{wmId,jdbcType=VARCHAR} | ||
| 22 | + </delete> | ||
| 23 | + <insert id="insert" parameterType="com.sunyo.energy.location.model.WaterMeterSacc" > | ||
| 24 | + insert into water_meter_sacc (wm_id, ardname, unit_price, | ||
| 25 | + wm_sacc) | ||
| 26 | + values (#{wmId,jdbcType=VARCHAR}, #{ardname,jdbcType=VARCHAR}, #{unitPrice,jdbcType=DECIMAL}, | ||
| 27 | + #{wmSacc,jdbcType=DECIMAL}) | ||
| 28 | + </insert> | ||
| 29 | + <insert id="insertSelective" parameterType="com.sunyo.energy.location.model.WaterMeterSacc" > | ||
| 30 | + insert into water_meter_sacc | ||
| 31 | + <trim prefix="(" suffix=")" suffixOverrides="," > | ||
| 32 | + <if test="wmId != null" > | ||
| 33 | + wm_id, | ||
| 34 | + </if> | ||
| 35 | + <if test="ardname != null" > | ||
| 36 | + ardname, | ||
| 37 | + </if> | ||
| 38 | + <if test="unitPrice != null" > | ||
| 39 | + unit_price, | ||
| 40 | + </if> | ||
| 41 | + <if test="wmSacc != null" > | ||
| 42 | + wm_sacc, | ||
| 43 | + </if> | ||
| 44 | + </trim> | ||
| 45 | + <trim prefix="values (" suffix=")" suffixOverrides="," > | ||
| 46 | + <if test="wmId != null" > | ||
| 47 | + #{wmId,jdbcType=VARCHAR}, | ||
| 48 | + </if> | ||
| 49 | + <if test="ardname != null" > | ||
| 50 | + #{ardname,jdbcType=VARCHAR}, | ||
| 51 | + </if> | ||
| 52 | + <if test="unitPrice != null" > | ||
| 53 | + #{unitPrice,jdbcType=DECIMAL}, | ||
| 54 | + </if> | ||
| 55 | + <if test="wmSacc != null" > | ||
| 56 | + #{wmSacc,jdbcType=DECIMAL}, | ||
| 57 | + </if> | ||
| 58 | + </trim> | ||
| 59 | + </insert> | ||
| 60 | + <update id="updateByPrimaryKeySelective" parameterType="com.sunyo.energy.location.model.WaterMeterSacc" > | ||
| 61 | + update water_meter_sacc | ||
| 62 | + <set > | ||
| 63 | + <if test="ardname != null" > | ||
| 64 | + ardname = #{ardname,jdbcType=VARCHAR}, | ||
| 65 | + </if> | ||
| 66 | + <if test="unitPrice != null" > | ||
| 67 | + unit_price = #{unitPrice,jdbcType=DECIMAL}, | ||
| 68 | + </if> | ||
| 69 | + <if test="wmSacc != null" > | ||
| 70 | + wm_sacc = #{wmSacc,jdbcType=DECIMAL}, | ||
| 71 | + </if> | ||
| 72 | + </set> | ||
| 73 | + where wm_id = #{wmId,jdbcType=VARCHAR} | ||
| 74 | + </update> | ||
| 75 | + <update id="updateByPrimaryKey" parameterType="com.sunyo.energy.location.model.WaterMeterSacc" > | ||
| 76 | + update water_meter_sacc | ||
| 77 | + set ardname = #{ardname,jdbcType=VARCHAR}, | ||
| 78 | + unit_price = #{unitPrice,jdbcType=DECIMAL}, | ||
| 79 | + wm_sacc = #{wmSacc,jdbcType=DECIMAL} | ||
| 80 | + where wm_id = #{wmId,jdbcType=VARCHAR} | ||
| 81 | + </update> | ||
| 82 | +</mapper> | 
- 
请 注册 或 登录 后发表评论