浏览代码

修改报装建档接口

sunjian 4 月之前
父节点
当前提交
a983c596d6

+ 2 - 0
collect-fees/fees-px-api/src/main/java/com/tofly/feesapi/bjgl/mapper/YhCbkxxMapper.java

@@ -39,6 +39,8 @@ public interface YhCbkxxMapper extends BaseMapper<YhCbkxx> {
 
     int getNextCbxh(@Param("sscbb") String sscbb, @Param("cbxh") Integer cbxh);
 
+    int getCbkxxSbbh(@Param("yhbh") String yhbh, @Param("sbbh") String sbbh);
+
     YhCbkxx getUp(@Param("sscbb") String sscbb, @Param("cbxh") int cbxh);
 
     YhCbkxx getDown(@Param("sscbb") String sscbb, @Param("cbxh") int cbxh);

+ 2 - 0
collect-fees/fees-px-api/src/main/java/com/tofly/feesapi/bjgl/service/YhCbkxxService.java

@@ -72,4 +72,6 @@ public interface YhCbkxxService extends IService<YhCbkxx> {
     void znbSync();
 
     List<YhCbkxxSync> getBySbsccj(String sbsccj);
+
+    Integer getCbkxxSbbh(String yhbh, String sbbh);
 }

+ 6 - 0
collect-fees/fees-px-api/src/main/java/com/tofly/feesapi/bjgl/service/impl/YhCbkxxServiceImpl.java

@@ -617,6 +617,12 @@ public class YhCbkxxServiceImpl extends ServiceImpl<YhCbkxxMapper, YhCbkxx> impl
         return this.baseMapper.getNextCbxh(sscbb, cbxh + 1);
     }
 
+    public Integer getCbkxxSbbh(String yhbh, String sbbh) {
+        if (yhbh.isEmpty()) return -1;
+        if (sbbh.isEmpty()) return -1;
+        return this.baseMapper.getCbkxxSbbh(yhbh, sbbh);
+    }
+
     private void check(YhCbkxx cbkxx) {
         checkJbcs(cbkxx);
 

+ 120 - 83
collect-fees/fees-px-api/src/main/java/com/tofly/feesapi/yhgl/controller/YhKhjbxxController.java

@@ -904,13 +904,16 @@ public class YhKhjbxxController {
             }
 
         } else if (yhzt.equals("1")) {//正式户
-            if (StringUtils.isEmpty(daCustomerAndMeter.getYhCbkxx().getSbbh().toString())) {
+            if (StringUtils.isEmpty(daCustomerAndMeter.getYhKhjbxx().getYhbh())) {
+                return ResultRespone.failed(false, "用户编号不能为空");
+            }
+            if (StringUtils.isEmpty(daCustomerAndMeter.getYhCbkxx().getSbbh())) {
                 return ResultRespone.failed(false, "水表编号不能为空");
             }
-            if (StringUtils.isEmpty(daCustomerAndMeter.getYhCbkxx().getSblb().toString())) {
+            if (StringUtils.isEmpty(daCustomerAndMeter.getYhCbkxx().getSblb())) {
                 return ResultRespone.failed(false, "水表类别不能为空");
             }
-            if (StringUtils.isEmpty(daCustomerAndMeter.getYhCbkxx().getSbsccj().toString())) {
+            if (StringUtils.isEmpty(daCustomerAndMeter.getYhCbkxx().getSbsccj())) {
                 return ResultRespone.failed(false, "水表厂家不能为空");
             }
             if (StringUtils.isEmpty(daCustomerAndMeter.getYhCbkxx().getSbxh())) {
@@ -919,86 +922,117 @@ public class YhKhjbxxController {
             if (StringUtils.isEmpty(daCustomerAndMeter.getYhCbkxx().getSbkj())) {
                 return ResultRespone.failed(false, "水表口径不能为空");
             }
-            //水表档案基础信息添加
-            YhCbkxx yhCbkxx = daCustomerAndMeter.getYhCbkxx();
-            String inputDate = "1999-01-01 00:00:00";
-            SimpleDateFormat inputFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-            Date date = inputFormat.parse(inputDate);
-            if (yhKhjbxx.getTsbz().equals("0") || StringUtils.isEmpty(yhKhjbxx.getTsbz())) {
-                yhKhjbxx.setTsrq(date);
-                yhKhjbxx.setTsbz("0");
-            }
-            if (yhKhjbxx.getHtqd().equals("0") || StringUtils.isEmpty(yhKhjbxx.getHtqd())) {
-                yhKhjbxx.setHtqdrq(date);
-                yhKhjbxx.setHtqd("0");
-            }
-            if (StringUtils.isEmpty(yhKhjbxx.getZjlb())) {
-                yhKhjbxx.setZjlb("1");
-                yhKhjbxx.setZjhm("0");
-            }
-            if (StringUtils.isEmpty(yhKhjbxx.getFffs())) {
-                yhKhjbxx.setFffs("1");
-            }
-            //抄表计划添加
-            YyCblr yyCblr = new YyCblr();
-
 
-            String jfzt = daCustomerAndMeter.getYhCbkxx().getJfzt();
-            if (yhzt == "0" || yhzt == "申请用户") {
-                yhKhjbxx.setYhzt(YhztEnum.申请用户);//正式用户状态
-                yhCbkxx.setJfzt(JfztEnum.停用.toString());//计费状态(1正常,2停用)
-                yyCblr.setJfzt(JfztEnum.停用.getValue().toString());//正常状态
-            }
-            if (yhzt == "1" || yhzt == "正式用户") {
-                yhKhjbxx.setYhzt(YhztEnum.正式用户);//正式用户状态
-                yhCbkxx.setJfzt(JfztEnum.正常.toString());//计费状态(1正常,2停用)
-                yyCblr.setJfzt(JfztEnum.正常.getValue().toString());//正常状态
-            }
-            if (Arrays.asList("1", "正常").contains(jfzt)) {
-                yhCbkxx.setJfzt("1");//计费状态(1正常,2停用)
-                yyCblr.setJfzt("1");//正常状态(1正常,2停用)
-            } else {
-                yhCbkxx.setJfzt("2");//计费状态(1正常,2停用)
-                yyCblr.setJfzt("2");//正常状态(1正常,2停用)
+            YhCbkxx yhCbkxx = daCustomerAndMeter.getYhCbkxx();
+            QueryWrapper<YhCbkxx> queryWrapper = new QueryWrapper<YhCbkxx>().
+                    eq("yhbh", daCustomerAndMeter.getYhKhjbxx().getYhbh()).
+                    eq("jfzt", "1");
+            YhCbkxx oldyhCbkxx = yhCbkxxService.getOne(queryWrapper);
+            String isadd = "0";
+            if (null != oldyhCbkxx) {
+                //水表编号是否一致
+                if (oldyhCbkxx.getSbbh().equals(daCustomerAndMeter.getYhCbkxx().getSbbh())) {
+                    //和原水表号一致,更新水表信息
+                    //存在 更新水表信息
+                    yhCbkxx.setCzryxm(daCustomerAndMeter.getYhCbkxx().getCzryxm());
+                    yhCbkxx.setCzrybm(daCustomerAndMeter.getYhCbkxx().getCzrybm());
+                    yhCbkxx.setCzsj(new Date());//操作时间
+                    //用户档案修改执行成功
+                    if (yhKhjbxxService.updateById(yhKhjbxx)) {
+                        if (yhCbkxxService.update(yhCbkxx, queryWrapper)) {
+                            //用户水表档案执行功
+                            if (yhCbkxxService.save(yhCbkxx)) {
+                                rest.setCode(1);
+                                rest.setResult(yhKhjbxx.getYhbh());
+                                rest.setMessage("新增水表档案成功");
+                            } else {
+                                rest.setCode(-1);
+                                rest.setMessage("新增水表档案失败");
+                            }
+                        }
+                    }
+                    rest = addDaCustomerAndMeterLog(daCustomerAndMeter, "update_bz");//操作日志添加
+                    return rest;
+                } else {
+                    //水表编号不一致 作废原水表
+                    if (null != oldyhCbkxx.getCbkid()) {
+                        //和原表水表号不一致,作废原水表信息 新增水表信息
+                        oldyhCbkxx.setJfzt("2");
+                        yhCbkxxService.update(oldyhCbkxx, queryWrapper);
+                        isadd = "1";
+                    }
+                }
             }
-            //申请户 创建用户档案和水表档案
-            //水表档案
-            yhCbkxx.setYhbh(String.valueOf(yhKhjbxx.getYhbh()));//用户编号
-            yhCbkxx.setCbkh("1");//抄表卡号
-            String strcbkh = String.valueOf(yhKhjbxx.getYhbh()) + 1;
-            yhCbkxx.setCbkid(strcbkh);//抄表卡ID
-            yhCbkxx.setFmzt(FmztEnum.开阀);
-            yhCbkxx.setCzryxm(daCustomerAndMeter.getYhCbkxx().getCzryxm());
-            yhCbkxx.setCzrybm(daCustomerAndMeter.getYhCbkxx().getCzrybm());
-            yhCbkxx.setCzsj(new Date());//操作时间
-            //抄表计划
-            yyCblr.setYhbh(String.valueOf(yhKhjbxx.getYhbh()));//用户编号
-            yyCblr.setCbkh("1");//抄表卡号
-            yyCblr.setCbkid(strcbkh);//抄表卡ID
-
-            Map<String, Object> mapcwrq = yhKhjbxxMapper.selectCwrq();//获取财务日期
-            String strcwrq = mapcwrq.get("cwrq").toString();//202305
-            yyCblr.setCwrq(strcwrq);//财务日期
-            yyCblr.setJsbz(JsbzEnum.未算费);//计算标志
-
-            yyCblr.setCbbz(CbbzEnum.未抄表);//未抄表状态
-            yyCblr.setShbz(ShbzEnum.未审核);//未审核标志
-            yyCblr.setSsgs(daCustomerAndMeter.getYhKhjbxx().getSsgs());//公司
-            yyCblr.setSscbpq(daCustomerAndMeter.getYhKhjbxx().getSscbpq());//片区
-            yyCblr.setSscbb(daCustomerAndMeter.getYhKhjbxx().getSscbb());//抄表本
-
-            yyCblr.setScds(BigDecimal.valueOf(yhCbkxx.getSbqs()));
-            yyCblr.setBcds(BigDecimal.valueOf(yhCbkxx.getSbqs()));
-            //用户档案修改执行成功
-            if (yhKhjbxxService.updateById(yhKhjbxx)) {
-                //用户水表档案执行功
-                QueryWrapper<YhCbkxx> queryWrapper = new QueryWrapper<>();
-                queryWrapper.eq("cbkid", daCustomerAndMeter.getYhCbkxx().getCbkid());
-                YhCbkxx oldyhCbkxx = yhCbkxxService.getOne(queryWrapper);
-                if (!oldyhCbkxx.getSblb().equals(yhCbkxx.getSblb())) {
-                    return ResultRespone.failed("修改水表档案失败,不能修改水表类型!");
+            if (null == oldyhCbkxx || isadd.equals("1")) {
+                //没有水表信息 新增水表信息
+                String inputDate = "1999-01-01 00:00:00";
+                SimpleDateFormat inputFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+                Date date = inputFormat.parse(inputDate);
+                if (StringUtils.isEmpty(yhKhjbxx.getTsbz())) {
+                    yhKhjbxx.setTsrq(date);
+                    yhKhjbxx.setTsbz("0");
                 }
-                if (yhCbkxxService.update(yhCbkxx, queryWrapper)) {
+                if (StringUtils.isEmpty(yhKhjbxx.getHtqd())) {
+                    yhKhjbxx.setHtqdrq(date);
+                    yhKhjbxx.setHtqd("0");
+                }
+                if (StringUtils.isEmpty(yhKhjbxx.getZjlb())) {
+                    yhKhjbxx.setZjlb("1");
+                    yhKhjbxx.setZjhm("0");
+                }
+                if (StringUtils.isEmpty(yhKhjbxx.getFffs())) {
+                    yhKhjbxx.setFffs("1");
+                }
+                //抄表计划添加
+                YyCblr yyCblr = new YyCblr();
+                String jfzt = daCustomerAndMeter.getYhCbkxx().getJfzt();
+                if (yhzt == "0" || yhzt == "申请用户") {
+                    yhKhjbxx.setYhzt(YhztEnum.申请用户);//正式用户状态
+                    yhCbkxx.setJfzt(JfztEnum.停用.toString());//计费状态(1正常,2停用)
+                    yyCblr.setJfzt(JfztEnum.停用.getValue().toString());//正常状态
+                }
+                if (yhzt == "1" || yhzt == "正式用户") {
+                    yhKhjbxx.setYhzt(YhztEnum.正式用户);//正式用户状态
+                    yhCbkxx.setJfzt(JfztEnum.正常.toString());//计费状态(1正常,2停用)
+                    yyCblr.setJfzt(JfztEnum.正常.getValue().toString());//正常状态
+                }
+                if (Arrays.asList("1", "正常").contains(jfzt)) {
+                    yhCbkxx.setJfzt("1");//计费状态(1正常,2停用)
+                    yyCblr.setJfzt("1");//正常状态(1正常,2停用)
+                } else {
+                    yhCbkxx.setJfzt("2");//计费状态(1正常,2停用)
+                    yyCblr.setJfzt("2");//正常状态(1正常,2停用)
+                }
+                //申请户 创建用户档案和水表档案
+                //水表档案
+                yhCbkxx.setYhbh(String.valueOf(yhKhjbxx.getYhbh()));//用户编号
+                yhCbkxx.setCbkh("1");//抄表卡号
+                String strcbkh = String.valueOf(yhKhjbxx.getYhbh()) + 1;
+                yhCbkxx.setCbkid(strcbkh);//抄表卡ID
+                yhCbkxx.setFmzt(FmztEnum.开阀);
+                yhCbkxx.setCzryxm(daCustomerAndMeter.getYhCbkxx().getCzryxm());
+                yhCbkxx.setCzrybm(daCustomerAndMeter.getYhCbkxx().getCzrybm());
+                yhCbkxx.setCzsj(new Date());//操作时间
+                //抄表计划
+                yyCblr.setYhbh(String.valueOf(yhKhjbxx.getYhbh()));//用户编号
+                yyCblr.setCbkh("1");//抄表卡号
+                yyCblr.setCbkid(strcbkh);//抄表卡ID
+
+                Map<String, Object> mapcwrq = yhKhjbxxMapper.selectCwrq();//获取财务日期
+                String strcwrq = mapcwrq.get("cwrq").toString();//202305
+                yyCblr.setCwrq(strcwrq);//财务日期
+                yyCblr.setJsbz(JsbzEnum.未算费);//计算标志
+
+                yyCblr.setCbbz(CbbzEnum.未抄表);//未抄表状态
+                yyCblr.setShbz(ShbzEnum.未审核);//未审核标志
+                yyCblr.setSsgs(daCustomerAndMeter.getYhKhjbxx().getSsgs());//公司
+                yyCblr.setSscbpq(daCustomerAndMeter.getYhKhjbxx().getSscbpq());//片区
+                yyCblr.setSscbb(daCustomerAndMeter.getYhKhjbxx().getSscbb());//抄表本
+
+                yyCblr.setScds(BigDecimal.valueOf(yhCbkxx.getSbqs()));
+                yyCblr.setBcds(BigDecimal.valueOf(yhCbkxx.getSbqs()));
+                //用户档案修改执行成功
+                if (yhKhjbxxService.updateById(yhKhjbxx)) {
                     //用户水表档案执行功
                     if (yhCbkxxService.save(yhCbkxx)) {
                         //执行抄表计划(0普表、1IC卡表、2远传表、3NB表、4流量计)
@@ -1008,12 +1042,14 @@ public class YhKhjbxxController {
                                     //执行智能表档案添加
                                     if (znbDaLogService.addznbDaLog(yhKhjbxx, yhCbkxx, "0", czyUserDetails)) {
                                         rest.setCode(1);
-                                        rest.setMessage("新增用户档案成功");
+                                        rest.setResult(yhKhjbxx.getYhbh());
+                                        rest.setMessage(" 新增用户档案成功");
                                     } else {
                                         rest.setCode(-1);
                                         rest.setMessage("新增智能表档案日志信息失败");
                                     }
                                 } else {
+                                    rest.setResult(yhKhjbxx.getYhbh());
                                     rest.setCode(1);
                                     rest.setMessage("新增用户档案成功");
                                 }
@@ -1023,6 +1059,7 @@ public class YhKhjbxxController {
                             }
                         } else {
                             rest.setCode(1);
+                            rest.setResult(yhKhjbxx.getYhbh());
                             rest.setMessage("新增用户档案成功");
                         }
                     } else {
@@ -1030,10 +1067,10 @@ public class YhKhjbxxController {
                         rest.setMessage("新增水表档案失败");
                     }
                 }
+                rest = addDaCustomerAndMeterLog(daCustomerAndMeter, "insert_bz");//操作日志添加
             }
-            rest = addDaCustomerAndMeterLog(daCustomerAndMeter, "insert_bz");//操作日志添加
-        }
 
+        }
         return rest;
 
     }

+ 3 - 0
collect-fees/fees-px-api/src/main/resources/mapper/bjgl/YhCbkxxMapper.xml

@@ -180,6 +180,9 @@
         <!--            #{yhbh}-->
         <!--        </foreach>-->
     </select>
+    <select id="getCbkxxSbbh" resultType="Integer">
+        SELECT count(*) FROM yh_cbkxx WHERE yhbh =${yhbh} and sbbh = ${ssbh}
+    </select>
     <select id="getUp" resultType="com.tofly.feesapi.bjgl.entity.YhCbkxx">
         SELECT c.sscbb,
                a.*