Browse Source

核酸功能增加数据权限

origin/epidemic_user
zhangyuan 4 years ago
parent
commit
f1a4f41dde
  1. 17
      epdc-cloud-custom/src/main/java/com/elink/esua/epdc/modules/epidemic/service/impl/PersonTestingServiceImpl.java
  2. 46
      epdc-cloud-custom/src/main/resources/mapper/epidemic/PersonTestingDao.xml

17
epdc-cloud-custom/src/main/java/com/elink/esua/epdc/modules/epidemic/service/impl/PersonTestingServiceImpl.java

@ -21,9 +21,12 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl;
import com.elink.esua.epdc.commons.tools.constant.FieldConstant;
import com.elink.esua.epdc.commons.tools.constant.NumConstant;
import com.elink.esua.epdc.commons.tools.enums.UserSexEnum;
import com.elink.esua.epdc.commons.tools.exception.RenException;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.security.user.SecurityUser;
import com.elink.esua.epdc.commons.tools.security.user.UserDetail;
import com.elink.esua.epdc.commons.tools.utils.ConvertUtils;
import com.elink.esua.epdc.commons.tools.utils.IdentityNoUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
@ -71,12 +74,16 @@ public class PersonTestingServiceImpl extends BaseServiceImpl<PersonTestingDao,
@Override
public PageData<PersonTestingPageDTO> page(Map<String, Object> params) {
// IPage<PersonTestingEntity> page = baseDao.selectPage(
// getPage(params, FieldConstant.CREATED_TIME, false),
// getWrapper(params)
// );
// return getPageData(page, PersonTestingDTO.class);
IPage<PersonTestingPageDTO> page = getPage(params);
UserDetail user = SecurityUser.getUser();
if (user == null) {
throw new RenException("用户未登录");
}
// 街道和超管有权查看所有数据
if (NumConstant.ZERO == user.getSuperAdmin() && user.getDeptId() != 1258587398679126017L) {
params.put("deptIdList", user.getDeptIdList());
}
List<PersonTestingPageDTO> list = baseDao.getTestingPage(params);
return new PageData<>(list, page.getTotal());
}

46
epdc-cloud-custom/src/main/resources/mapper/epidemic/PersonTestingDao.xml

@ -24,19 +24,51 @@
<result property="delFlag" column="DEL_FLAG"/>
</resultMap>
<select id="getTestingPage" resultType="com.elink.esua.epdc.dto.PersonTestingPageDTO">
select *
from epdc_person_testing
where del_flag='0'
SELECT
t.*
FROM
epdc_person_testing t
LEFT JOIN (
SELECT
i.ID_CARD,
i.HELP_STATUS,
i.FAMILY_CATEGORY,
i.VACCINATION_NUM,
i.VACCINATION_STATE,
i.HOUSEHOLD_REGISTER_DETAIL AS HOUSE_ADDRESS,
h.GRID_ID,
substring_index(h.ALL_DEPT_NAMES, '-' ,- 1) AS grid_name,
h.PARENT_DEPT_IDS,
h.PARENT_DEPT_NAMES,
h.ALL_DEPT_IDS,
h.ALL_DEPT_NAMES
FROM
epidemic_user_info i
LEFT JOIN epdc_house_resident r ON r.RESIDENT_ID = i.id
LEFT JOIN epdc_housing_information h ON h.id = r.HOUSE_ID
WHERE
i.DEL_FLAG = 0
AND r.DEL_FLAG = 0
AND h.DEL_FLAG = 0
) t2 ON t2.ID_CARD = t.IDCARD
WHERE
t.DEL_FLAG = 0
<if test="deptIdList != null">
and t2.grid_id in
<foreach item="id" collection="deptIdList" open="(" separator="," close=")">
#{id}
</foreach>
</if>
<if test="name != null and name != ''">
AND name like '%${name}%'
AND t.name like '%${name}%'
</if>
<if test="idcard != null and idcard != ''">
AND idcard like '%${idcard}%'
AND t.idcard like '%${idcard}%'
</if>
<if test="mobile != null and mobile != ''">
AND mobile like '%${mobile}%'
AND t.mobile like '%${mobile}%'
</if>
order by CREATED_TIME desc
order by t.CREATED_TIME desc
</select>
<select id="getMobileByIdCard" resultType="java.lang.String">
select MOBILE

Loading…
Cancel
Save