Explorar o código

改版信息采集表

cgp hai 4 días
pai
achega
82488e2709

+ 27 - 0
fs-service/src/main/java/com/fs/course/param/CollectConfirmGeneratePrescribeParam.java

@@ -0,0 +1,27 @@
+package com.fs.course.param;
+
+import com.fs.his.domain.FsPatient;
+import com.fs.his.vo.AnswerVO;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class CollectConfirmGeneratePrescribeParam {
+    private Long id;
+
+    private Long userId;
+
+    //用户建议
+    private String userAdvice;
+
+    /**
+     * 模板问题以及答案
+     */
+    private List<AnswerVO> answers;
+
+    /**
+     * 患者信息
+     * */
+    private FsPatient patientInfo;
+}

+ 0 - 6
fs-service/src/main/java/com/fs/course/param/CollectionInfoConfirmParam.java

@@ -1,6 +1,5 @@
 package com.fs.course.param;
 
-import com.fs.his.domain.FsPatient;
 import com.fs.his.vo.AnswerVO;
 import lombok.Data;
 
@@ -20,9 +19,4 @@ public class CollectionInfoConfirmParam {
      */
     private List<AnswerVO> answers;
 
-    /**
-     * 患者信息
-     * */
-    private FsPatient patientInfo;
-
 }

+ 2 - 1
fs-service/src/main/java/com/fs/hisStore/service/IFsUserInformationCollectionService.java

@@ -3,6 +3,7 @@ package com.fs.hisStore.service;
 import java.util.List;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.fs.common.core.domain.R;
+import com.fs.course.param.CollectConfirmGeneratePrescribeParam;
 import com.fs.course.param.CollectionBindUserParam;
 import com.fs.course.param.CollectionInfoConfirmParam;
 import com.fs.course.param.SubmitCollectionAnswerParam;
@@ -66,7 +67,7 @@ public interface IFsUserInformationCollectionService extends IService<FsUserInfo
     FsUserInformationCollection createSimpleUserInfo(FsUserInformationCollectionParam fsUserInformationCollection);
 
     //个微版信息采集信息确认并生成处方
-    R generateFormalPrescription(CollectionInfoConfirmParam param);
+    R generateFormalPrescription(CollectConfirmGeneratePrescribeParam param);
     /**
      * 批量删除用户信息采集
      * 

+ 20 - 10
fs-service/src/main/java/com/fs/hisStore/service/impl/FsUserInformationCollectionServiceImpl.java

@@ -29,6 +29,7 @@ import com.fs.company.service.ICompanyService;
 import com.fs.core.config.WxMaConfiguration;
 import com.fs.core.config.WxPayProperties;
 import com.fs.core.utils.OrderCodeUtils;
+import com.fs.course.param.CollectConfirmGeneratePrescribeParam;
 import com.fs.course.param.CollectionBindUserParam;
 import com.fs.course.param.CollectionInfoConfirmParam;
 import com.fs.course.param.SubmitCollectionAnswerParam;
@@ -377,7 +378,7 @@ public class FsUserInformationCollectionServiceImpl extends ServiceImpl<FsUserIn
     //个微信息采集用户确认并生成医生待开处方
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public R generateFormalPrescription(CollectionInfoConfirmParam param) {
+    public R generateFormalPrescription(CollectConfirmGeneratePrescribeParam param) {
         FsUserInformationCollection collection = fsUserInformationCollectionMapper.selectFsUserInformationCollectionById(param.getId());
         if (collection == null) {
             log.error("当前用户userId:{},信息采集表id:{}", param.getUserId(), param.getId());
@@ -404,12 +405,17 @@ public class FsUserInformationCollectionServiceImpl extends ServiceImpl<FsUserIn
             doctorConfirmService.insertFsDoctorConfirm(doctorConfirm);
             //医生确认时间存入缓存 医生确认后删除
             redisCache.setCacheObject("doctorConfirm:" + collection.getId(), doctorConfirm);
-            return R.ok();
+            if (addPrescribeResult > 0){
+                R result=new R();
+                result.put("currentCode",collection.getPersonalCollectStatus());
+                return result;
+            }
+
         }
         return R.error("用户确认失败");
     }
 
-    private FsPrescribe transformCollectionParamToFsPrescribe(CollectionInfoConfirmParam param, FsUserInformationCollection fsUserInformationCollection) {
+    private FsPrescribe transformCollectionParamToFsPrescribe(CollectConfirmGeneratePrescribeParam param, FsUserInformationCollection fsUserInformationCollection) {
         //构建处方编号
         String prescribeCode = IdUtil.getSnowflake(0, 0).nextIdStr();
         FsPrescribe fsPrescribe = new FsPrescribe();
@@ -904,6 +910,7 @@ public class FsUserInformationCollectionServiceImpl extends ServiceImpl<FsUserIn
                 }
             }
             vo.setQwTag(collection.getQwTag());
+            vo.setPersonalCollectStatus(collection.getPersonalCollectStatus());
             vo.setIsPackage(collection.getIsPackage());
             vo.setId(collection.getId());
             vo.setAnswers(JSON.parseArray(collection.getJsonInfo(), AnswerVO.class));
@@ -1593,14 +1600,16 @@ public class FsUserInformationCollectionServiceImpl extends ServiceImpl<FsUserIn
                 informationCollection.setCompleteStatus(0);
             }
             fsUserInformationCollectionMapper.updateFsUserInformationCollection(informationCollection);
-
-            FsUserInformationCollectionSchedule schedule = scheduleMapper.selectCollectionScheduleRunningByCollectionId(informationCollection.getId());
-            if (schedule == null) {
-                throw new CustomException("用户采集信息已更新,请扫描最新二维码确认");
+            if (informationCollection.getQwTag()==0){//企业微信息采集需要记录填写时间
+                FsUserInformationCollectionSchedule schedule = scheduleMapper.selectCollectionScheduleRunningByCollectionId(informationCollection.getId());
+                if (schedule == null) {
+                    throw new CustomException("用户采集信息已更新,请扫描最新二维码确认");
+                }
+                //设置填写时间
+                schedule.setFillTime(DateUtils.getNowDate());
+                result = scheduleMapper.updateFsUserInformationCollectionSchedule(schedule);
             }
-            //设置填写时间
-            schedule.setFillTime(DateUtils.getNowDate());
-            result = scheduleMapper.updateFsUserInformationCollectionSchedule(schedule);
+
         }
         return result;
     }
@@ -1987,5 +1996,6 @@ public class FsUserInformationCollectionServiceImpl extends ServiceImpl<FsUserIn
 //        System.out.println(JSON.toJSONString(collect));
 //        System.out.println(JSON.toJSONString(collect1));
         boolean contains = "是否有糖尿病相关疾病?".contains("糖尿病");
+        System.out.println(calculateAge("1997-04-15"));
     }
 }

+ 9 - 11
fs-user-app/src/main/java/com/fs/app/controller/UserInfoCollectionController.java

@@ -8,6 +8,7 @@ import com.fs.common.core.page.TableDataInfo;
 import com.fs.common.enums.BusinessType;
 import com.fs.common.exception.CustomException;
 import com.fs.company.mapper.CompanyUserRoleMapper;
+import com.fs.course.param.CollectConfirmGeneratePrescribeParam;
 import com.fs.course.param.CollectionBindUserParam;
 import com.fs.course.param.CollectionInfoConfirmParam;
 import com.fs.course.param.SubmitCollectionAnswerParam;
@@ -23,7 +24,6 @@ import com.fs.his.vo.PostPayPrescStatusVo;
 import com.fs.hisStore.domain.FsUserInformationCollection;
 import com.fs.hisStore.param.FsUserInformationCollectionParam;
 import com.fs.hisStore.service.IFsUserInformationCollectionService;
-import com.fs.hisStore.vo.FsUserInformationCollectionVO;
 import com.fs.qw.service.IFsUserInformationCollectionScheduleService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -66,17 +66,15 @@ public class UserInfoCollectionController extends AppBaseController {
     @ApiOperation("确认用户采集信息")
     @PostMapping("/confirm")
     public R confirm(@RequestBody CollectionInfoConfirmParam param) {
-        FsUserInformationCollectionVO collection = userInformationCollectionService.getCollectionByUserId(param.getId());
-        if (collection == null) {
-            return R.error("用户没有采集信息");
-        }
         param.setUserId(Long.parseLong(getUserId()));
-        if (collection.getQwTag() == 0) {
-            return userInformationCollectionService.userConfirm(param);
-        } else if (collection.getQwTag() == 1) {
-            return userInformationCollectionService.generateFormalPrescription(param);
-        }
-        return R.error("参数异常,请稍后再试");
+        return userInformationCollectionService.userConfirm(param);
+    }
+
+    @ApiOperation("个微版信息采集用户确认并生成处方")
+    @PostMapping("/confirmGeneratePrescription")
+    public R confirm2(@RequestBody CollectConfirmGeneratePrescribeParam param) {
+        param.setUserId(Long.parseLong(getUserId()));
+        return userInformationCollectionService.generateFormalPrescription(param);
     }
 
     @ApiOperation("绑定用户信息")