模块:用户管理
修改:用户课题搜索单选和存入字符,更改获取课题下用户的接口
提出:秦老师
已修改10个文件
89 ■■■■■ 文件已修改
src/main/java/com/nanometer/smartlab/controller/UserMngController.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/nanometer/smartlab/dao/SysLaboratoryContainerDao.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/nanometer/smartlab/dao/SysLaboratoryContainerDao.xml 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/nanometer/smartlab/dao/SysUserDao.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/nanometer/smartlab/dao/SysUserDao.xml 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/nanometer/smartlab/entity/SysUser.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/nanometer/smartlab/service/InterfaceServiceImpl.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerService.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerServiceImpl.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/user_mng.xhtml 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/nanometer/smartlab/controller/UserMngController.java
@@ -373,8 +373,8 @@
                    FacesUtils.warn("ID卡号已存在。");
                    return;
                }
                if(!org.apache.commons.lang.StringUtils.isNotBlank(sysUser.getProjectId())){
                    sysUser.setProjectId(null);
                if(!org.apache.commons.lang.StringUtils.isNotBlank(sysUser.getProject())){
                    sysUser.setProject(null);
                }
                String PW_PATTERN = "(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*[~!@#$%^&*_.]).{8,}";
src/main/java/com/nanometer/smartlab/dao/SysLaboratoryContainerDao.java
@@ -46,4 +46,6 @@
    void updateSysLabContainer(Map params);
    List<Map> exportExcelList(Map params);
    String selectProjectsByContainerCode(String containerCode);
}
src/main/java/com/nanometer/smartlab/dao/SysLaboratoryContainerDao.xml
@@ -213,4 +213,11 @@
  and slc.valid_flag = 1
  </select>
    <select id="selectProjectsByContainerCode" resultType="java.lang.String">
        select project
        from sys_laboratory_container
        where container_code = #{0}
        and valid_flag = 1
    </select>
</mapper>
src/main/java/com/nanometer/smartlab/dao/SysUserDao.java
@@ -42,7 +42,7 @@
    int selectUserFavor(Map params);
    List<SysUser> getUserListByContainerCodeNew(String containerCode, String startTime, String endTime);
    List<SysUser> getUserListByProject(String project, String startTime, String endTime);
    List<SysUserDto> selectUserInfo();
src/main/java/com/nanometer/smartlab/dao/SysUserDao.xml
@@ -22,7 +22,7 @@
    <result property="updateTime" column="update_time"></result>
    <result property="roleName" column="roleName"></result>
    <result property="containerCodeList" column="containerCodeList"></result>
    <result property="projectId" column="project_id"></result>
    <result property="project" column="project"></result>
  </resultMap>
    <resultMap id="SysUserDto" type="com.nanometer.smartlab.entity.dto.SysUserDto">
@@ -155,13 +155,13 @@
  </select>
  <insert id="insertSysUser" parameterType="com.nanometer.smartlab.entity.SysUser">
    insert into sys_user(id, arp, account, password, company, department, name, phone, email, memo, id_card, approver_flag, see_flag, role_id, valid_flag, create_time, update_time,project_id)
    values (#{id}, #{arp}, #{account}, #{password}, #{company}, #{department}, #{name}, #{phone}, #{email}, #{memo}, #{idCard}, #{approverFlag}, #{seeFlag}, #{roleId}, 1, now(), now(),#{projectId})
    insert into sys_user(id, arp, account, password, company, department, name, phone, email, memo, id_card, approver_flag, see_flag, role_id, valid_flag, create_time, update_time,project)
    values (#{id}, #{arp}, #{account}, #{password}, #{company}, #{department}, #{name}, #{phone}, #{email}, #{memo}, #{idCard}, #{approverFlag}, #{seeFlag}, #{roleId}, 1, now(), now(),#{project})
  </insert>
  <update id="updateSysUser" parameterType="com.nanometer.smartlab.entity.SysUser">
    update sys_user set arp=#{arp}, account=#{account}, password=#{password}, company=#{company}, department=#{department}, name=#{name}, phone=#{phone},
    email=#{email}, memo=#{memo}, id_card=#{idCard}, approver_flag=#{approverFlag}, see_flag=#{seeFlag}, role_id=#{roleId}, point=#{point},update_time=now(),project_id=#{projectId}
    email=#{email}, memo=#{memo}, id_card=#{idCard}, approver_flag=#{approverFlag}, see_flag=#{seeFlag}, role_id=#{roleId}, point=#{point},update_time=now(),project=#{project}
    where id=#{id}
  </update>
@@ -191,21 +191,6 @@
    and u.update_time >= #{1} and #{2} > u.update_time
  </select>
    <select id="getUserListByContainerCodeNew" parameterType="java.util.Map" resultMap="SysUser">
        SELECT u.name,u.see_flag,u.role_id,u.valid_flag,u.id_card,bm2.meta_value department,bm1.meta_value company,u.arp,u.point,sp.project
    from sys_user u
    left join base_meta bm1 on bm1.id = u.company
    left join base_meta bm2 on bm2.id = u.department
    LEFT JOIn sys_project sp on sp.id = u.project_id
    where u.project_id = (
    SELECT project_id from sys_laboratory_container
    WHERE container_code =  #{0}
    and  valid_flag = 1)
    AND u.valid_flag = 1
    and sp.valid_flag = 1
    and u.update_time >= #{1} and #{2} > u.update_time
  </select>
  <select id="selectByAccount" parameterType="com.nanometer.smartlab.entity.SysUser" resultMap="SysUser">
    select * from sys_user where valid_flag=1 and account=#{account}
@@ -242,6 +227,16 @@
    where su.valid_flag = 1
    and su.account = #{account}
    </select>
    <select id="getUserListByProject" parameterType="java.util.Map" resultMap="SysUser">
        SELECT u.name,u.see_flag,u.role_id,u.valid_flag,u.id_card,bm2.meta_value department,bm1.meta_value company,u.arp,u.point,u.project
        from sys_user u
        left join base_meta bm1 on bm1.id = u.company
        left join base_meta bm2 on bm2.id = u.department
        where
        u.project = #{0}
        and u.valid_flag = 1
        and u.update_time >= #{1} and #{2} > u.update_time
    </select>
    <update id="updateUserPointBySelective" parameterType="java.util.Map">
        update sys_user set point=#{point}
src/main/java/com/nanometer/smartlab/entity/SysUser.java
@@ -32,7 +32,6 @@
    private Timestamp updateTime;
    private String containerCodeList;
    private String roleName;
    private String projectId;
    private String project;
    public String getId() {
@@ -193,14 +192,6 @@
    public void setContainerCodeList(String containerCodeList) {
        this.containerCodeList = containerCodeList;
    }
    public String getProjectId() {
        return projectId;
    }
    public void setProjectId(String projectId) {
        this.projectId = projectId;
    }
    public String getProject() {
src/main/java/com/nanometer/smartlab/service/InterfaceServiceImpl.java
@@ -1030,8 +1030,16 @@
        if (containerCode==null||containerCode.isEmpty()) {
            throw new ApiException(ApiStatus.PARAM_NO_EXIST, ApiStatus.PARAM_NO_EXIST.getRetMsg() + "[containerCode]");
        }
        return sysUserDao.getUserListByContainerCodeNew(containerCode, startTime, endTime);
        List<String> projects = sysLaboratoryContainer.selectProjectsByContainerCode(containerCode);
        List<SysUser> userList = null;
        if (projects != null) {
            userList = new ArrayList<>();
            for (String project : projects) {
                List<SysUser> dataList = sysUserDao.getUserListByProject(project, startTime, endTime);
                userList.addAll(dataList);
            }
        }
        return userList;
    }
src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerService.java
@@ -33,4 +33,7 @@
    List<Map> exportExcelList(String laboratoryType, String laboratoryName);
    void export2Excel(List<Map> list) throws Exception;
    List<String> selectProjectsByContainerCode(String containerCode);
}
src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerServiceImpl.java
@@ -280,4 +280,13 @@
    }
    @Override
    public List<String> selectProjectsByContainerCode(String containerCode) {
        String projects = sysLaboratoryContainerDao.selectProjectsByContainerCode(containerCode);
        if (projects != null){
            return Arrays.asList(projects.split(","));
        }
        return null;
    }
}
src/main/webapp/user_mng.xhtml
@@ -85,7 +85,7 @@
                </p:column>
                <p:column headerText="课题组">
                    <h:outputText value="#{sysProjectServiceImpl.getSysProject(row.projectId).project}"></h:outputText>
                    <h:outputText value="#{row.project}"></h:outputText>
                </p:column>
                <p:column headerText="ARP">
@@ -166,10 +166,10 @@
                             required="true" requiredMessage="请输入ARP号"></p:inputText>
                <p:outputLabel value="课题组"></p:outputLabel>
                <p:selectOneMenu value="#{userMngController.sysUser.projectId}">
                    <f:selectItem itemLabel="不选择课题组"  />
                <p:selectOneMenu value="#{userMngController.sysUser.project}" filter="true" filterMatchMode="startsWith">
                    <f:selectItem itemLabel="不选择课题组" />
                    <f:selectItems value="#{sysProjectServiceImpl.getAll()}"
                                   var="item" itemLabel="#{item.project}"  itemValue="#{item.id}"></f:selectItems>
                                   var="item" itemLabel="#{item.project}"  itemValue="#{item.project}"></f:selectItems>
                </p:selectOneMenu>
                <p:outputLabel value="姓名"></p:outputLabel>