陈昶聿
15 小时以前 1a38082352708692a339a8b43db79bc349be07f1
【景宁】批量新增患者满意度调整
已修改5个文件
79 ■■■■ 文件已修改
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatSatisfactionController.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/domain/PatSatisfaction.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/IPatSatisfactionService.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/impl/PatSatisfactionServiceImpl.java 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/resources/mapper/smartor/PatSatisfactionMapper.xml 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatSatisfactionController.java
@@ -121,14 +121,8 @@
    @Log(title = "患者满意度", businessType = BusinessType.INSERT)
    @PostMapping("/batchinsert")
    public AjaxResult batchinsert(@RequestBody List<PatSatisfaction> patSatisfaction) {
        LoginUser loginUser = getLoginUser();
        SysUser user = loginUser.getUser();
        for (PatSatisfaction patSatisfaction1 : patSatisfaction) {
            patSatisfaction1.setCreateBy(user.getNickName());
            patSatisfaction1.setOrgid(user.getOrgid());
            patSatisfactionService.insertPatSatisfaction(patSatisfaction1);
        }
        return toAjax(1);
        Integer row = patSatisfactionService.batchInsert(patSatisfaction);
        return toAjax(row);
    }
    /**
smartor/src/main/java/com/smartor/domain/PatSatisfaction.java
@@ -8,6 +8,7 @@
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
 * 患者满意度对象 pat_satisfaction
@@ -155,6 +156,9 @@
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;
    @ApiModelProperty(value = "主键Id集合")
    private List<Long> ids;
    /**
     * pageNum
     */
smartor/src/main/java/com/smartor/service/IPatSatisfactionService.java
@@ -40,6 +40,14 @@
    public int insertPatSatisfaction(PatSatisfaction patSatisfaction);
    /**
     * 批量新增患者满意度
     *
     * @param patSatisfactions 患者满意度
     * @return 结果
     */
    public int batchInsert(List<PatSatisfaction> patSatisfactions);
    /**
     * 修改患者满意度
     *
     * @param patSatisfaction 患者满意度
smartor/src/main/java/com/smartor/service/impl/PatSatisfactionServiceImpl.java
@@ -5,7 +5,11 @@
import java.util.*;
import java.util.stream.Collectors;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.domain.entity.SysUserDept;
import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.common.utils.Arith;
import com.ruoyi.common.utils.ArrayListUtils;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.DtoConversionUtils;
import com.smartor.domain.*;
@@ -19,6 +23,8 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.smartor.service.IPatSatisfactionService;
import static com.ruoyi.common.utils.SecurityUtils.getLoginUser;
/**
 * 患者满意度Service业务层处理
@@ -101,6 +107,50 @@
    }
    /**
     * 新增患者满意度
     *
     * @param patSatisfactions 患者满意度
     * @return 结果
     */
    @Override
    public int batchInsert(List<PatSatisfaction> patSatisfactions) {
        if(CollectionUtils.isEmpty(patSatisfactions)){
            return 0;
        }
        List<Long> ids = patSatisfactions.stream().map(PatSatisfaction::getId).
                distinct().collect(Collectors.toList());
        List<PatSatisfaction> patSatisfactionsOld = new ArrayList<>();
        PatSatisfaction patSatisfactionVo = new PatSatisfaction();
        patSatisfactionVo.setIds(ids);
        patSatisfactionsOld = patSatisfactionMapper.selectPatSatisfactionList(patSatisfactionVo);
        Map<String, List<PatSatisfaction>> maps = ArrayListUtils.splitListsById(patSatisfactions,
                patSatisfactionsOld, PatSatisfaction::getId);
        //只在patSatisfactions的数据,执行新增操作
        List<PatSatisfaction> addItems = maps.get("onlyIn1");
        //只在patSatisfactionsOld的数据,执行删除操作
//        List<PatSatisfaction> delItems = maps.get("onlyIn2");
        //重叠的数据,执行更新操作
        List<PatSatisfaction> editItems = maps.get("common");
        Integer count = 0;
        LoginUser loginUser = getLoginUser();
        SysUser user = loginUser.getUser();
        for (PatSatisfaction patSatisfaction0 : editItems) {
            patSatisfaction0.setUpdateBy(user.getNickName());
            patSatisfaction0.setUpdateTime(DateUtils.getNowDate());
            count = count + patSatisfactionMapper.updatePatSatisfaction(patSatisfaction0);
        }
        for (PatSatisfaction patSatisfaction1 : addItems) {
            patSatisfaction1.setCreateBy(user.getNickName());
            patSatisfaction1.setOrgid(user.getOrgid());
            patSatisfaction1.setCreateTime(DateUtils.getNowDate());
            patSatisfaction1.setUpdateTime(DateUtils.getNowDate());
            count = count + patSatisfactionMapper.insertPatSatisfaction(patSatisfaction1);
        }
        return count;
    }
    /**
     * 修改患者满意度
     *
     * @param patSatisfaction 患者满意度
smartor/src/main/resources/mapper/smartor/PatSatisfactionMapper.xml
@@ -114,6 +114,13 @@
            <if test="endTime != null">
                AND date_format(update_time,'%y%m%d') &lt;= date_format(#{endTime},'%y%m%d')
            </if>
            <if test="ids != null and ids.size()>0">
                AND id IN
                <foreach collection="ids" item="idItem" open="(" separator=","
                         close=")">
                    #{idItem}
                </foreach>
            </if>
    </select>
    <select id="selectPatSatisfactionById" parameterType="Long"