diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/YtHsResUtils.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/YtHsResUtils.java index 3a23dac10d..d30e1087cb 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/YtHsResUtils.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/YtHsResUtils.java @@ -40,8 +40,8 @@ public class YtHsResUtils { log.info("hscy api param:{}", param); Result result = HttpClientManager.getInstance().sendGet(SERVER_URL + "hscyxxcx", param); - //String mockData = "{\"id\":\"1570924677539635484\",\"name\":\"杨XX\",\"card_type\":\"1\",\"card_no\":\"370283199912010302\",\"create_by\":\"370613594\",\"create_time\":\"2022-09-17 07:15:22\",\"sys_org_code\":\"370613\",\"sample_tube\":\"GCJ-0825-0441\",\"package_id\":\"bcj00208083952\",\"city\":\"烟台市\",\"uuid\":\"6225684525062602095\",\"county\":\"莱山区\",\"depart_ids\":\"未填写\",\"depart_name\":null,\"realname\":\"采样点327\",\"upload_time\":\"2022-09-17 07:56:45\",\"sd_id\":null,\"sd_batch\":null,\"sd_operation\":null,\"sd_time\":null,\"inserttime\":\"2022-09-17 09:36:20\"}"; - //Result result = new Result().ok(mockData); +// String mockData = "{\"code\":\"200\",\"msg\":\"请求成功\",\"data\":[{\"id\":\"1570924677539635484\",\"name\":\"杨XX\",\"card_type\":\"1\",\"card_no\":\"370283199912010302\",\"create_by\":\"370613594\",\"create_time\":\"2022-09-24 06:48:28\",\"sys_org_code\":\"370613\",\"sample_tube\":\"GCJ-0825-0441\",\"package_id\":\"bcj00208083952\",\"city\":\"烟台市\",\"uuid\":\"6225684525062602095\",\"county\":\"莱山区\",\"depart_ids\":\"未填写\",\"depart_name\":null,\"realname\":\"采样点327\",\"upload_time\":\"2022-09-17 07:56:45\",\"sd_id\":null,\"sd_batch\":null,\"sd_operation\":null,\"sd_time\":null,\"inserttime\":\"2022-09-17 09:36:20\"}]}"; +// Result result = new Result().ok(mockData); log.info("hscy api result:{}", JSON.toJSONString(result)); if (result.success()) { String data = result.getData(); @@ -74,7 +74,7 @@ public class YtHsResUtils { param.put(PAGE_SIZE, pageSize); log.info("hsjc api param:{}", param); Result result = HttpClientManager.getInstance().sendGet(SERVER_URL + "hsjcxx", param); -// String mockData = "{\"code\":\"200\",\"msg\":\"请求成功\",\"data\":[{\"id\":\"6a31eb2d38c011eda054fa163ebc7ff4\",\"name\":\"数据同步测试用户\",\"card_no\":\"370283199912010302\",\"telephone\":\"13697890860\",\"address\":\"保利香榭里公馆18-1-302\",\"test_time\":\"2022-09-20 12:52:28\",\"depart_name\":\"天仁医学检验实验室有限公司\",\"county\":\"莱山区\",\"upload_time\":\"2022-09-20 21:23:10\",\"sample_result_pcr\":\"2\",\"sample_time\":\"2022-09-20 06:48:28\",\"sampling_org_pcr\":\"采样点327\"}],\"total\":1}"; +// String mockData = "{\"code\":\"200\",\"msg\":\"请求成功\",\"data\":[{\"id\":\"6a31eb2d38c011eda054fa163ebc7ff4\",\"name\":\"数据同步测试用户\",\"card_no\":\"370283199912010302\",\"telephone\":\"13697890860\",\"address\":\"保利香榭里公馆18-1-302\",\"test_time\":\"2022-09-24 12:52:28\",\"depart_name\":\"天仁医学检验实验室有限公司\",\"county\":\"莱山区\",\"upload_time\":\"2022-09-20 21:23:10\",\"sample_result_pcr\":\"2\",\"sample_time\":\"2022-09-24 06:48:28\",\"sampling_org_pcr\":\"采样点327\"}],\"total\":1}"; // Result result = new Result().ok(mockData); log.info("hsjc api result:{}", JSON.toJSONString(result)); if (result.success()) { diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/api/yt/YantaiApi.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/api/yt/YantaiApi.java index 95a54779b0..8cf49c6410 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/api/yt/YantaiApi.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/api/yt/YantaiApi.java @@ -50,6 +50,49 @@ public class YantaiApi { */ //private static final String SSO_BACKGROUND_SERVER_URL = "http://120.220.248.247:8081/"; + /** + * desc:根据组织id获取本级组织信息 + * + * @param organizationId + * @return + */ + public static OrgData getOuInfoByOuGuid(String organizationId) { + try { + if (StringUtils.isBlank(organizationId)) { + throw new EpmetException(EpmetErrorCode.INTERNAL_VALIDATE_ERROR.getCode(), EpmetErrorCode.INTERNAL_VALIDATE_ERROR.getMsg(), EpmetErrorCode.INTERNAL_VALIDATE_ERROR.getMsg()); + } + //加密 + String organizationIdEn = SM4UtilsForYanTai.dealEncryptData(organizationId); + //pwd = URLEncoder.encode(pwd, "UTF-8"); + String url = SSO_BACKGROUND_SERVER_URL + "person/ouinfo/getOuInfoByOuGuid"; + + Map paramMap = new HashMap<>(); + paramMap.put("organizationId",organizationIdEn); + + log.info("getOuInfoByOuGuid request param:{} url:{}",paramMap, url); + Result result = HttpClientManager.getInstance().sendGet(url, paramMap, getApiHeaderMap()); + log.info("getOuInfoByOuGuid request result:{}", result); + if (!result.success()){ + return new OrgData(); + } + JSONObject jsonObject = JSONObject.parseObject(result.getData()); + String secondCode = jsonObject.getString("code"); + String secondMessage = jsonObject.getString("message"); + if (!"200".equals(secondCode)) { + log.warn("getOuInfoByOuGuid 接口错误"); + return new OrgData(); + } + //解密 + String data = SM4UtilsForYanTai.dealDecryptData(jsonObject.getString("data")); + OrgData orgData = JSON.parseObject(data, OrgData.class); + log.info("getChildOuInfoByGuid request real result:{}", JSON.toJSONString(orgData)); + return orgData; + } catch (Exception e) { + log.error("getChildOuInfoByGuid exception", e); + } + return new OrgData(); + } + /** * desc:根据组织id获取下级组织 * @@ -245,6 +288,8 @@ public class YantaiApi { //getLoginToken("0d554bccfbac4be3846d643252daf92b"); String organizationId = "44e05de9-34fa-48f6-b89f-02838d792cf9"; + OrgData ouInfoByOuGuid = getOuInfoByOuGuid(organizationId); + System.out.println("ouInfoByOuGuid:"+JSON.toJSONString(ouInfoByOuGuid)); List childOuInfoByGuid = getChildOuInfoByGuid(organizationId); System.out.println("childOuInfoByGuid:"+JSON.toJSONString(childOuInfoByGuid)); //先用他说的有人的组织id联调 diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/controller/yantai/DataSyncUserAndOrgServiceImpl.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/controller/yantai/DataSyncUserAndOrgServiceImpl.java index 7179573098..f7af284abc 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/controller/yantai/DataSyncUserAndOrgServiceImpl.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/controller/yantai/DataSyncUserAndOrgServiceImpl.java @@ -80,16 +80,15 @@ public class DataSyncUserAndOrgServiceImpl implements DataSyncUserAndOrgService for (UserData u : data) { CustomerStaffInfoDTOCache staffInfo = CustomerStaffRedis.getStaffInfoByMobile(customerId, u.getMobileTelephoneNumber()); DataSyncUserDataEntity entity = ConvertUtils.sourceToTarget(u, DataSyncUserDataEntity.class); + entity.setOrganizationId(org.getOrganizationId()); entity.setCustomerId(customerId); entity.setRemark(""); if (null == staffInfo){ entity.setStatus(NumConstant.ZERO_STR); - entity.setOrganizationId(""); entity.setStaffId(""); }else { CustomerStaffInfoCacheResult staffInfo1 = CustomerStaffRedis.getStaffInfo(customerId, staffInfo.getUserId()); entity.setStatus(NumConstant.ONE_STR); - entity.setOrganizationId(null == staffInfo1 ? "" : staffInfo1.getAgencyId()); entity.setStaffId(staffInfo.getUserId()); } needInsert.add(entity); diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/resources/db/migration/V0.0.17__yt_sync_organduser.sql b/epmet-module/epmet-third/epmet-third-server/src/main/resources/db/migration/V0.0.17__yt_sync_organduser.sql new file mode 100644 index 0000000000..5249bca97b --- /dev/null +++ b/epmet-module/epmet-third/epmet-third-server/src/main/resources/db/migration/V0.0.17__yt_sync_organduser.sql @@ -0,0 +1,52 @@ +CREATE TABLE `data_sync_org_data` ( + `ID` varchar(64) NOT NULL COMMENT '主键ID', + `CONTACT` varchar(64) DEFAULT NULL COMMENT '联系人姓名', + `CONTACTTELEPHONE_NUMBER` varchar(64) DEFAULT NULL COMMENT '联系电话号码', + `DETAIL_ADDRESS` varchar(64) DEFAULT NULL COMMENT '详细地址', + `FIRSTNAMEOF_ORGANIZATION` varchar(64) DEFAULT NULL COMMENT '组织机构第一名称', + `NAMEOF_ORGANIZATION` varchar(64) DEFAULT NULL COMMENT '组织机构全称', + `ORDER_NUMBER` varchar(64) DEFAULT NULL COMMENT '排序号码', + `ORGANIZATIO_NABBREVIATION` varchar(64) NOT NULL COMMENT '组织机构简称', + `ORGANIZATION_ID` varchar(64) NOT NULL COMMENT '组织机构ID', + `ORGANIZATION_LEVEL` varchar(64) DEFAULT NULL COMMENT '组织机构级别', + `ORGANIZATION_PATH` varchar(256) NOT NULL COMMENT '组织机构路径', + `ORGANIZATION_TYPE` varchar(64) DEFAULT NULL COMMENT '组织机构类型', + `REGISTRATION_TYPE` varchar(64) DEFAULT NULL COMMENT '注册类型', + `UNIFIEDSOCIALCREDIT_ID` varchar(64) DEFAULT NULL COMMENT '统一社会信用代码', + `DEL_FLAG` int(11) NOT NULL DEFAULT '0' COMMENT '删除标识 0.未删除 1.已删除', + `REVISION` int(11) NOT NULL COMMENT '乐观锁', + `CREATED_BY` varchar(32) NOT NULL COMMENT '创建人', + `CREATED_TIME` datetime NOT NULL COMMENT '创建时间', + `UPDATED_BY` varchar(32) NOT NULL COMMENT '更新人', + `UPDATED_TIME` datetime NOT NULL COMMENT '更新时间', + `CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户id;烟台id', + `PID` varchar(64) NOT NULL COMMENT '上级组织机构id:ORGANIZATION_ID; 根级组织赋值0', + `PARENT_ORG_NAME` varchar(64) DEFAULT NULL COMMENT '上一级组织机构名称:ORGANIZATIO_NABBREVIATION', + `PIDS` varchar(255) DEFAULT NULL COMMENT '所有上级组织。不包含本身!如果是根组织,此列为空串', + PRIMARY KEY (`ID`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +CREATE TABLE `data_sync_user_data` ( + `ID` varchar(64) NOT NULL COMMENT '主键ID', + `GENDER` varchar(64) DEFAULT NULL COMMENT '性别:0未知1男2女', + `MOBILE_TELEPHONE_NUMBER` varchar(64) NOT NULL COMMENT '手机号码', + `ORDER_NUMBER` varchar(64) DEFAULT NULL COMMENT '排序号码', + `POSITION` varchar(64) DEFAULT NULL COMMENT '职务', + `POSITION_LEVEL` varchar(64) DEFAULT NULL COMMENT '职级', + `TELEPHONE_NUMBER` varchar(64) DEFAULT NULL COMMENT '电话号码', + `USER_GUID` varchar(64) DEFAULT NULL COMMENT '统一用户编码', + `USER_NAME` varchar(64) NOT NULL COMMENT '用户姓名', + `USER_PATH` varchar(128) DEFAULT NULL COMMENT '人员路径', + `ORGANIZATION_ID` varchar(64) NOT NULL COMMENT 'data_sync_org_data.组织机构ID;', + `DEL_FLAG` int(11) NOT NULL DEFAULT '0' COMMENT '删除标识 0.未删除 1.已删除', + `REVISION` int(11) NOT NULL COMMENT '乐观锁', + `CREATED_BY` varchar(32) NOT NULL COMMENT '创建人', + `CREATED_TIME` datetime NOT NULL COMMENT '创建时间', + `UPDATED_BY` varchar(32) NOT NULL COMMENT '更新人', + `UPDATED_TIME` datetime NOT NULL COMMENT '更新时间', + `CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户id', + `STATUS` varchar(1) DEFAULT '0' COMMENT '0未创建、1已创建', + `STAFF_ID` varchar(64) DEFAULT NULL COMMENT 'customer_staff.userId,已创建的此列不能为空', + `REMARK` varchar(255) DEFAULT NULL COMMENT '备注;目前为空', + PRIMARY KEY (`ID`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/NatUserInfoResultDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/NatUserInfoResultDTO.java index 278f3ca537..dc696ff8dc 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/NatUserInfoResultDTO.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/NatUserInfoResultDTO.java @@ -32,4 +32,9 @@ public class NatUserInfoResultDTO implements Serializable { * 18大类 中 某一类的 是否值,用于比较 同步数据结果确定是否要插入到表中 */ private String categoryColumn; + + /** + * ic_nat表ID + */ + private String id; } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcEpidemicSpecialAttentionController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcEpidemicSpecialAttentionController.java index 85cf3c302e..f04dbe7ada 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcEpidemicSpecialAttentionController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcEpidemicSpecialAttentionController.java @@ -25,6 +25,7 @@ import com.epmet.feign.EpmetAdminOpenFeignClient; import com.epmet.feign.EpmetCommonServiceOpenFeignClient; import com.epmet.service.IcEpidemicSpecialAttentionService; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.io.FilenameUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -244,4 +245,16 @@ public class IcEpidemicSpecialAttentionController { return new Result().ok(icEpidemicSpecialAttentionService.pie(tokenDto)); } + /** + * 批量删除 ic_epidemic_special_attention + * @param ids + * @return + */ + @PostMapping("delete") + public Result delete(@RequestBody List ids){ + if(CollectionUtils.isNotEmpty(ids)){ + icEpidemicSpecialAttentionService.delete(ids); + } + return new Result(); + } } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcEpidemicSpecialAttentionService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcEpidemicSpecialAttentionService.java index 8986660ec2..ec3ccec89e 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcEpidemicSpecialAttentionService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcEpidemicSpecialAttentionService.java @@ -82,7 +82,7 @@ public interface IcEpidemicSpecialAttentionService extends BaseService ids); /** * Desc: 【疫苗接种关注名单,疫苗接种关注名单】列表 diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/DataSyncConfigServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/DataSyncConfigServiceImpl.java index c2e6565703..7fc6aa2bb6 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/DataSyncConfigServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/DataSyncConfigServiceImpl.java @@ -252,6 +252,9 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl queryWrapper = new LambdaQueryWrapper<>(); @@ -536,7 +539,10 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl existInfo.stream().filter(i -> i.getUserId().equals(e.getUserId()) && i.getIdCard().equals(e.getIdCard())).forEach(i -> e.setExistStatus(true))); + entities.forEach(e -> existInfo.stream().filter(i -> i.getUserId().equals(e.getUserId()) && i.getIdCard().equals(e.getIdCard())).forEach(i -> { + e.setExistStatus(true); + e.setId(i.getId()); + })); Map> groupByStatus = entities.stream().collect(Collectors.groupingBy(IcNatEntity::getExistStatus)); if (CollectionUtils.isNotEmpty(groupByStatus.get(false))) { for (List icNatEntities : ListUtils.partition(groupByStatus.get(false), NumConstant.FIVE_HUNDRED)) { diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/DataSyncRecordDisabilityServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/DataSyncRecordDisabilityServiceImpl.java index 3b564f19e7..d91d29cc3a 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/DataSyncRecordDisabilityServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/DataSyncRecordDisabilityServiceImpl.java @@ -11,6 +11,7 @@ import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult; +import com.epmet.commons.tools.enums.GenderEnum; import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.EpmetException; import com.epmet.commons.tools.page.PageData; @@ -97,7 +98,10 @@ public class DataSyncRecordDisabilityServiceImpl extends BaseServiceImpl ids) { // 逻辑删除(@TableLogic 注解) - baseDao.deleteBatchIds(Arrays.asList(ids)); + baseDao.deleteBatchIds(ids); } /** diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/DataSyncRecordDisabilityDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/DataSyncRecordDisabilityDao.xml index 889ca27c1c..bca57f359e 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/DataSyncRecordDisabilityDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/DataSyncRecordDisabilityDao.xml @@ -132,6 +132,12 @@ when d.deal_status = 2 then '处理失败' else '处理失败' end) as dealStatusName, d.now_add as address, + ( + case when d.GENDER='1' then '男' + when d.GENDER='2' then '女' + else '未知' + end + )as genderCn, d.* FROM data_sync_record_disability d WHERE DEL_FLAG = 0 diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/IcNatDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/IcNatDao.xml index ea4f9a8bc6..991bc5220d 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/IcNatDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/IcNatDao.xml @@ -158,6 +158,7 @@