liusheng
2025-04-25 fce30cf9f7692d49c3d408475dfb72d289b1cd4f
代码提交
已修改8个文件
122 ■■■■■ 文件已修改
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/domain/ServiceSubtask.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/domain/ServiceSubtaskCountReq.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/domain/ServiceSubtaskVO.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/IServiceSubtaskService.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/resources/mapper/smartor/ServiceTaskdeptMapper.xml 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java
@@ -171,6 +171,14 @@
        return toAjax(serviceSubtaskService.insertServiceSubtask(serviceSubtask));
    }
    @ApiOperation("患者再次随访")
    @PostMapping("/addSubTaskAgain")
    public AjaxResult addSubTaskAgain(@RequestBody ServiceSubtask serviceSubtask) {
        SysUser user = getLoginUser().getUser();
        if (ObjectUtils.isNotEmpty(user)) serviceSubtask.setOrgid(user.getOrgid());
        return success(serviceSubtaskService.addSubTaskAgain(serviceSubtask));
    }
    /**
     * 根据条件查询任务信息
     */
smartor/src/main/java/com/smartor/domain/ServiceSubtask.java
@@ -566,5 +566,17 @@
    @ApiModelProperty(value = "患者来源:0本地患者表    1外部患者表")
    private String patfrom;
    /**
     * 随访次数
     */
    @ApiModelProperty(value = "随访次数")
    private Integer visitCount;
    /**
     * 是否在次随访:1否    2是
     */
    @ApiModelProperty(value = "是否在次随访:1是    2否")
    private Integer isVisitAgain;
}
smartor/src/main/java/com/smartor/domain/ServiceSubtaskCountReq.java
@@ -22,6 +22,9 @@
    @ApiModelProperty(value = "用户ID")
    private Long userId;
    private Integer visitCount;
    private Integer isVisitAgain;
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "开始时间")
    private Date startTime;
smartor/src/main/java/com/smartor/domain/ServiceSubtaskVO.java
@@ -36,6 +36,18 @@
    private String taskGuid;
    /**
     * 随访次数
     */
    @ApiModelProperty(value = "随访次数")
    private Integer visitCount;
    /**
     * 是否在次随访:1否    2是
     */
    @ApiModelProperty(value = "是否在次随访:1是    2否")
    private Integer isVisitAgain;
    /**
     * 患者ID
     */
    @Excel(name = "  患者ID")
smartor/src/main/java/com/smartor/service/IServiceSubtaskService.java
@@ -56,6 +56,14 @@
    public int insertServiceSubtask(ServiceSubtask ServiceSubtask);
    /**
     * 再次新增单一任务(随访)
     *
     * @param ServiceSubtask 再次新增单一任务(随访)
     * @return 结果
     */
    public String addSubTaskAgain(ServiceSubtask ServiceSubtask);
    /**
     * 修改单一任务(随访)
     *
     * @param ServiceSubtask 单一任务(随访)
smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -92,6 +92,12 @@
    @Autowired
    private FtpService ftpService;
    @Autowired
    private PatMedInhospMapper patMedInhospMapper;
    @Autowired
    private PatArchiveMapper patArchiveMapper;
    @Value("${pri_key}")
    private String pri_key;
@@ -314,6 +320,49 @@
    }
    /**
     * 再次新增单一任务(随访)
     *
     * @param serviceSubtask 再次新增单一任务(随访)
     * @return 结果
     */
    @Override
    public String addSubTaskAgain(ServiceSubtask serviceSubtask) {
        ServiceSubtask serviceSubtask1 = selectServiceSubtaskById(serviceSubtask.getId());
        PatMedInhosp patMedInhosp = new PatMedInhosp();
        patMedInhosp.setPatid(serviceSubtask1.getPatid());
        patMedInhosp.setInhospstate("0");
        List<PatMedInhosp> patMedInhospList = patMedInhospMapper.selectPatMedInhospList(patMedInhosp);
        PatArchive patArchive = patArchiveMapper.selectPatArchiveByPatid(serviceSubtask1.getPatid());
        if (patMedInhospList.size() > 0) {
            serviceSubtask1.setIsVisitAgain(2);
            serviceSubtaskMapper.updateServiceSubtask(serviceSubtask1);
            return "无需再次随访,患者再入院了";
        } else if (serviceSubtask1.getSendstate() == 4L) {
            serviceSubtask1.setIsVisitAgain(2);
            serviceSubtaskMapper.updateServiceSubtask(serviceSubtask1);
            return "无需再次随访,任务被标记不在执行";
        } else if (patArchive.getNotrequiredFlag().equals("1")) {
            serviceSubtask1.setIsVisitAgain(2);
            serviceSubtaskMapper.updateServiceSubtask(serviceSubtask1);
            return "无需再次随访,患者被标记不需要被服务";
        }
        //新增再次随访任务
        ServiceSubtask serviceSubtask2 = DtoConversionUtils.sourceToTarget(serviceSubtask1, ServiceSubtask.class);
        serviceSubtask2.setId(null);
        serviceSubtask2.setVisitCount(serviceSubtask1.getVisitCount() + 1);
        serviceSubtask2.setSendstate(2L);
        int i = serviceSubtaskMapper.insertServiceSubtask(serviceSubtask2);
        if (i == 1) {
            //新增成功后,需要将之前的任务设置为不要再随访(防止重复点,然后重复生成)
            serviceSubtask1.setIsVisitAgain(2);
            serviceSubtaskMapper.updateServiceSubtask(serviceSubtask1);
            return "再次随访任务创建成功";
        }
        return "再次随访任务创建失败,再请次重试";
    }
    /**
     * 修改单一任务(随访)
     *
     * @param serviceSubtask 单一任务(随访)
smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
@@ -76,6 +76,8 @@
        <result property="inhospid" column="inhospid"/>
        <result property="patfrom" column="patfrom"/>
        <result property="patguid" column="patguid"/>
        <result property="visitCount" column="visit_count"/>
        <result property="isVisitAgain" column="is_visit_again"/>
    </resultMap>
    <resultMap type="com.smartor.domain.ServiceSubtaskCount" id="ServiceSubtaskResult2">
@@ -91,6 +93,8 @@
               task_guid,
               patfrom,
               inhospid,
               visit_count,
               is_visit_again,
               patguid,
               suggest,
               sendstate,
@@ -280,10 +284,12 @@
            <if test="excep != null ">and excep = #{excep}</if>
            <if test="nurseName != null ">and nurse_name = #{nurseName}</if>
            <if test="score != null">and score = #{score}</if>
            <if test="visitCount != null">and visit_count = #{visitCount}</if>
            <if test="remark != null">and remark = #{remark}</if>
            <if test="suggest != null">and suggest = #{suggest}</if>
            <if test="createBy != null">and create_by = #{createBy}</if>
            <if test="taskGuid != null">and task_guid = #{taskGuid}</if>
            <if test="isVisitAgain != null">and is_visit_again = #{isVisitAgain}</if>
        </where>
        <if test="sort != null  and sort==0">order by endtime asc</if>
        <if test="sort != null  and sort==1">order by endtime desc</if>
@@ -307,6 +313,8 @@
            <if test="sendname != null ">and sendname = #{sendname}</if>
            <if test="sfzh != null ">and sfzh = #{sfzh}</if>
            <if test="patguid != null ">and patguid = #{patguid}</if>
            <if test="visitCount != null ">and visit_count = #{visitCount}</if>
            <if test="isVisitAgain != null ">and is_visit_again = #{isVisitAgain}</if>
        </where>
    </select>
@@ -401,6 +409,8 @@
            <if test="patfrom != null ">patfrom,</if>
            <if test="taskGuid != null ">task_guid,</if>
            <if test="patguid != null ">patguid,</if>
            <if test="visitCount != null ">visit_count,</if>
            <if test="isVisitAgain != null ">is_visit_again,</if>
        </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="sendname != null">#{sendname},</if>
@@ -476,6 +486,8 @@
            <if test="patfrom != null ">#{patfrom},</if>
            <if test="taskGuid != null ">#{taskGuid},</if>
            <if test="patguid != null ">#{patguid},</if>
            <if test="visitCount != null ">#{visitCount},</if>
            <if test="isVisitAgain != null ">#{isVisitAgain},</if>
        </trim>
    </insert>
@@ -556,6 +568,8 @@
            <if test="patfrom != null ">patfrom=#{patfrom},</if>
            <if test="taskGuid != null ">task_guid=#{taskGuid},</if>
            <if test="patguid != null ">patguid=#{patguid},</if>
            <if test="visitCount != null ">visit_count=#{visitCount},</if>
            <if test="isVisitAgain != null ">is_visit_again=#{isVisitAgain},</if>
        </trim>
        where id = #{id}
    </update>
@@ -617,6 +631,7 @@
            <if test="sendstate != null ">sendstate = #{sendstate},</if>
            <if test="serviceType != null ">service_type = #{serviceType},</if>
            <if test="score != null ">score = #{score},</if>
            <if test="visitCount != null ">visit_count = #{visitCount},</if>
            <if test="submit != null ">submit = #{submit},</if>
            <if test="leavehospitaldistrictcode != null  and leavehospitaldistrictcode != ''">leavehospitaldistrictcode
                = #{leavehospitaldistrictcode},
@@ -637,6 +652,7 @@
            <if test="patfrom != null ">patfrom=#{patfrom},</if>
            <if test="taskGuid != null ">taskGuid=#{taskGuid},</if>
            <if test="patguid != null ">patguid=#{patguid},</if>
            <if test="isVisitAgain != null ">is_visit_again=#{isVisitAgain},</if>
        </trim>
        <where>
            <if test="patid != null ">and patid = #{patid}</if>
@@ -677,6 +693,8 @@
            <if test="orgid != null">orgid = #{orgid},</if>
            <if test="pid != null">pid = #{pid},</if>
            <if test="guid != null">guid = #{guid},</if>
            <if test="visitCount != null">visit_count = #{visitCount},</if>
            <if test="isVisitAgain != null">is_visit_again = #{isVisitAgain},</if>
            <if test="textParam != null">text_param = #{textParam},</if>
            <if test="preachform != null">preachform = #{preachform},</if>
            <if test="bedNo != null">bed_no = #{bedNo},</if>
@@ -770,6 +788,8 @@
            <if test="wechat != null  and wechat != ''">wechat = #{wechat},</if>
            <if test="roomno != null  and roomno != ''">roomno = #{roomno},</if>
            <if test="admindate != null ">admindate = #{admindate},</if>
            <if test="visitCount != null ">visit_count = #{visitCount},</if>
            <if test="isVisitAgain != null ">is_visit_again = #{isVisitAgain},</if>
            <if test="deptname != null  and deptname != ''">deptname = #{deptname},</if>
            <if test="leaveicd10code != null  and leaveicd10code != ''">leaveicd10code = #{leaveicd10code},</if>
            <if test="leavediagname != null  and leavediagname != ''">leavediagname = #{leavediagname},</if>
@@ -882,6 +902,8 @@
               upload_time,
               orgid,
               pid,
               visit_count,
               is_visit_again,
               guid,
               text_param,
               preachform,
smartor/src/main/resources/mapper/smartor/ServiceTaskdeptMapper.xml
@@ -173,8 +173,8 @@
            </if>
        </trim>
        <where>
        <if test="id != null">and id = #{id},</if>
        <if test="taskId != null">and task_id = #{taskId},</if>
        <if test="id != null">and id = #{id}</if>
        <if test="taskId != null">and task_id = #{taskId}</if>
        </where>
    </update>
@@ -193,8 +193,8 @@
            update_time = sysdate()
        </trim>
        <where>
            <if test="id != null">and id = #{id},</if>
            <if test="taskId != null">and task_id = #{taskId},</if>
            <if test="id != null">and id = #{id}</if>
            <if test="taskId != null">and task_id = #{taskId}</if>
        </where>
    </update>