From c80b393f074148626e1134aae38e71bca28ac809 Mon Sep 17 00:00:00 2001
From: houruijun <411269194@kidgrow.com>
Date: Sun, 28 Jun 2020 18:44:14 +0800
Subject: [PATCH] 调整扣费业务支持feign调用

---
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysUserController.java                         |    8 +++
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java                         |   33 +++++++++++++++-
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysUserService.java                                 |    6 +++
 kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/constant/CommonConstant.java                                             |    9 ++++
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ConsumptionRecordServiceImpl.java |   15 +++++--
 5 files changed, 64 insertions(+), 7 deletions(-)

diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ConsumptionRecordServiceImpl.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ConsumptionRecordServiceImpl.java
index 5026604..400c2ff 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ConsumptionRecordServiceImpl.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ConsumptionRecordServiceImpl.java
@@ -101,7 +101,7 @@
         //记录类型
         int recordType=ConsumptionConstant.BEFORE_DEDUCTION;
         //业务执行结果
-        boolean isSuccess = false;
+        boolean isSuccess = true;
         //业务执行结果信息
         String reMsg = "";
         if (VateParams(consumptionRequest)) {
@@ -118,16 +118,17 @@
                         //4.余额充足 获取要扣的套餐 写预扣费记录
                         if (beforeConsumption(consumptionRequest)) {
                             //预扣费成功
-                            isSuccess = true;
                             reMsg = "预扣费成功!";
                             bcode = ConsumptionConstant.BUSINESS_CODE_IS_BEFORE_DEDUCTION;
                         } else {
                             //预扣费执行失败
+                            isSuccess = false;
                             reMsg = "预扣费执行失败!";
                             bcode = ConsumptionConstant.BUSINESS_CODE_ERROR;
                         }
                     } else {
                         //余额不足
+                        isSuccess = false;
                         reMsg = "余额不足或获取失败!";
                         bcode = ConsumptionConstant.BUSINESS_CODE_FAIL;
                     }
@@ -142,6 +143,7 @@
                 bcode = ConsumptionConstant.BUSINESS_CODE_IS_DEDUCTION;
             }
         } else {
+            isSuccess = false;
             reMsg = "传入参数有误!";
             bcode = ConsumptionConstant.BUSINESS_CODE_PARAMS_ERROR;
         }
@@ -162,7 +164,7 @@
         //记录类型
         int recordType=ConsumptionConstant.DEDUCTION;
         //业务执行结果
-        boolean isSuccess = false;
+        boolean isSuccess = true;
         //业务执行结果信息
         String reMsg = "";
         if (VateParams(consumptionRequest)) {
@@ -182,22 +184,24 @@
                             logger.info("医院id:【{}】AI返回结果应该不走预扣,目前确已经预扣!", hospitalId);
                         } else {
                             //预扣费执行失败
+                            isSuccess = false;
                             reMsg = "预扣费执行失败!";
                             bcode = ConsumptionConstant.BUSINESS_CODE_ERROR;
                             return ResultReturn(consumptionRequest, bcode,ConsumptionConstant.BEFORE_DEDUCTION, reMsg, isSuccess);
                         }
                     } else {
                         //余额不足
+                        isSuccess = false;
                         reMsg = "余额不足或获取失败!";
                         bcode = ConsumptionConstant.BUSINESS_CODE_FAIL;
                         return ResultReturn(consumptionRequest, bcode,ConsumptionConstant.BEFORE_DEDUCTION, reMsg, isSuccess);
                     }
                 }
                 if (consumptionBusiess(consumptionRequest, consumptionRecordList)) {
-                    isSuccess = true;
                     reMsg = "该业务扣费成功!";
                     bcode = ConsumptionConstant.BUSINESS_CODE_IS_DEDUCTION;
                 } else {
+                    isSuccess = false;
                     reMsg = "该业务扣费失败!";
                     bcode = ConsumptionConstant.BUSINESS_CODE_FAIL;
                 }
@@ -207,6 +211,7 @@
                 bcode = ConsumptionConstant.BUSINESS_CODE_IS_DEDUCTION;
             }
         } else {
+            isSuccess = false;
             reMsg = "传入参数有误!";
             bcode = ConsumptionConstant.BUSINESS_CODE_PARAMS_ERROR;
         }
@@ -255,6 +260,7 @@
                         consumptionRecordNew.setLastRecordId(consumptionRecord.getId());
                         if (SaveConsumptionRecord(consumptionRecordNew))
                         {
+                            isSuccess=true;
                             reMsg = "有预扣,写退还预扣成功!";
                             bcode = ConsumptionConstant.BUSINESS_CODE_RETURN_BEFORE_DEDUCTION;
                         }
@@ -404,6 +410,7 @@
                     bcode = ConsumptionConstant.BUSINESS_CODE_PARAMS_ERROR;
                 }
             } else {
+                isSuccess = true;
                 //已经扣费
                 reMsg = "该业务已经扣费!";
                 bcode = ConsumptionConstant.BUSINESS_CODE_IS_DEDUCTION;
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysUserService.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysUserService.java
index 72d4e66..5fe2ed6 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysUserService.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysUserService.java
@@ -151,5 +151,11 @@
 	 * @return
 	 */
 	ResultBody hospitalDoctorList(Long hospitalId, Long departmentId);
+	/**
+	 * 获取医院科室下的所有有效的医生
+	 * @param userTel
+	 * @return
+	 */
+	ResultBody isRegUser(String userTel);
 
 }
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java
index b30238f..ffd3b8b 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java
@@ -647,9 +647,9 @@
             return ResultBody.failed("该手机号已经注册");
         }
         //创建人id
-        Long createUserId = 0L;
+        Long createUserId = CommonConstant.CREATE_USER_ID;
         //创建人id
-        String createUserName = "自动创建";
+        String createUserName = CommonConstant.CREATE_USER_NAME;
         //是否注册用户
         Boolean isReg = false;
         //业务成功
@@ -990,4 +990,33 @@
         }
         return new com.kidgrow.usercenter.model.SysDoctor();
     }
+
+    /**
+     * 检查手机号是注册用户还是正式用户
+     * @param userTel
+     * @return
+     */
+    public ResultBody isRegUser(String userTel)
+    {
+        if (StringUtils.isNotBlank(userTel)) {
+            List<SysUser> users = baseMapper.selectList(
+                    new QueryWrapper<SysUser>().eq("username", userTel)
+            );
+            if (users != null&&users.size()==1) {
+                SysUser sysUser=users.get(0);
+                if (sysUser.getCreateUserId()==CommonConstant.CREATE_USER_ID&&sysUser.getCreateUserName().equals(CommonConstant.CREATE_USER_NAME)) {
+                    return ResultBody.ok().data(true);
+                }
+                return ResultBody.ok().data(false);
+            }
+            else
+            {
+                return ResultBody.failed("用户数据有误!");
+            }
+        }
+        else
+        {
+            return ResultBody.failed("必要参数有误!");
+        }
+    }
 }
\ No newline at end of file
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysUserController.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysUserController.java
index eb54485..cfac358 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysUserController.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysUserController.java
@@ -86,7 +86,6 @@
     @ApiOperation(value = "根据用户名查询用户实体")
     @Cacheable(value = "user", key = "#username")
     public SysUser selectByUsername(@PathVariable String username) {
-
         return appUserService.selectByUsername(username);
     }
 
@@ -452,4 +451,11 @@
 
         return appUserService.findAppointUsers(Integer.parseInt(type));
     }
+    /**
+     * 检查该手机号是否注册
+     */
+    @GetMapping("users/isRegUser")
+    public ResultBody isRegUser(String userTel) {
+        return appUserService.isRegUser(userTel);
+    }
 }
diff --git a/kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/constant/CommonConstant.java b/kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/constant/CommonConstant.java
index 25ca205..bec9753 100644
--- a/kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/constant/CommonConstant.java
+++ b/kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/constant/CommonConstant.java
@@ -275,4 +275,13 @@
      * 自主注册的科室组织id
      */
     public static final Long DEPARTMENT_ORG_ID=1273810374550335490L;
+
+    /**
+     * 自主注册的创建人id
+     */
+    public static final Long CREATE_USER_ID= 0L;
+    /**
+     * 自主注册的创建人名称
+     */
+    public static final String CREATE_USER_NAME= "自动创建";
 }

--
Gitblit v1.8.0