陈昶聿
昨天 85a54f184e8b0ac52a475f8e32a7df601da0ec54
【市一】/smartor/serviceSubtask/queryTaskByCondition 查询优化
已修改3个文件
32 ■■■■ 文件已修改
smartor/src/main/java/com/smartor/mapper/ServiceSubtaskPreachformMapper.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/resources/mapper/smartor/ServiceSubtaskPreachformMapper.xml 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/mapper/ServiceSubtaskPreachformMapper.java
@@ -1,6 +1,8 @@
package com.smartor.mapper;
import java.util.List;
import com.smartor.domain.ServiceSubtask;
import org.apache.ibatis.annotations.Mapper;
import com.smartor.domain.ServiceSubtaskPreachform;
@@ -70,4 +72,13 @@
     * @return 结果
     */
    public int deleteServiceSubtaskPreachformByIds(Long[] ids);
    /**
     * 根据taskid查询列表
     *
     * @param subtask
     * @return 集合
     */
    public List<ServiceSubtaskPreachform> selectBySubtask(ServiceSubtask subtask);
}
smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -231,7 +231,8 @@
        } catch (JsonProcessingException e) {
            e.printStackTrace();
        }
        List<ServiceSubtaskPreachform> serviceSubtaskPreachformLists =
                    serviceSubtaskPreachformMapper.selectBySubtask(serviceSubtask);
        for (ServiceSubtask serviceSubtask1 : list) {
            PatTaskRelevance patTaskRelevance = new PatTaskRelevance();
            if (!serviceSubtask1.getHospType().equals("2")) {
@@ -288,10 +289,9 @@
            }
            //获取该患者所有的执行状态
            ServiceSubtaskPreachform serviceSubtaskPreachform = new ServiceSubtaskPreachform();
            serviceSubtaskPreachform.setTaskid(serviceTask.getTaskid());
            serviceSubtaskPreachform.setSubid(serviceSubtask1.getId());
            List<ServiceSubtaskPreachform> serviceSubtaskPreachformList = serviceSubtaskPreachformMapper.selectServiceSubtaskPreachformList(serviceSubtaskPreachform);
            List<ServiceSubtaskPreachform> serviceSubtaskPreachformList =
                serviceSubtaskPreachformLists.stream().filter((item -> item.getSubid().equals(serviceSubtask1.getId())
                            && item.getTaskid().equals(serviceTask.getTaskid()))).collect(Collectors.toList());
            List<Map<String, Object>> resultList = serviceSubtaskPreachformList.stream().map(item -> {
                Map<String, Object> map = new HashMap<>();
                map.put("sort", item.getSort());
smartor/src/main/resources/mapper/smartor/ServiceSubtaskPreachformMapper.xml
@@ -274,5 +274,16 @@
        </foreach>
    </update>
    <select id="selectBySubtask" parameterType="com.smartor.domain.ServiceSubtask" resultMap="ServiceSubtaskPreachformResult">
        <include refid="selectServiceSubtaskPreachformVo"/>
        WHERE del_flag = 0
        <!-- 其他条件 -->
        <if test="taskid != null">
            AND taskid = #{taskid}
        </if>
        <if test="orgid != null and orgid != ''">
            AND orgid = #{orgid}
        </if>
    </select>
</mapper>