From 3af254f1b36e7722673fcebe110da524b276105c Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期一, 30 十二月 2024 17:56:04 +0800
Subject: [PATCH] 最新版本541200007
---
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/ferp/HkSyncOrgUserToHKServiceImpl.java | 93 +++++++++++++++++++++++++++++++++++++++-------
1 files changed, 78 insertions(+), 15 deletions(-)
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/ferp/HkSyncOrgUserToHKServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/ferp/HkSyncOrgUserToHKServiceImpl.java
index a6ea67e..ef1becb 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/ferp/HkSyncOrgUserToHKServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/ferp/HkSyncOrgUserToHKServiceImpl.java
@@ -1,6 +1,5 @@
package com.doumee.service.business.impl.hksync.ferp;
-import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.doumee.biz.system.SystemDictDataBiz;
@@ -11,19 +10,23 @@
import com.doumee.core.haikang.model.param.request.*;
import com.doumee.core.haikang.model.param.respose.*;
import com.doumee.core.haikang.service.HKService;
+import com.doumee.core.model.LoginUserInfo;
import com.doumee.core.utils.Constants;
import com.doumee.core.utils.DESUtil;
import com.doumee.core.utils.DateUtil;
import com.doumee.core.utils.ImageBase64Util;
import com.doumee.dao.business.*;
import com.doumee.dao.business.dao.CompanyMapper;
+import com.doumee.dao.business.dao.MemberMapper;
import com.doumee.dao.business.join.MemberJoinMapper;
import com.doumee.dao.business.model.*;
+import com.doumee.dao.business.model.Member;
+import com.doumee.dao.system.SystemUserMapper;
+import com.doumee.dao.system.model.SystemUser;
import com.doumee.service.business.ext.ERPSyncService;
import com.doumee.service.business.impl.hksync.HkSyncBaseServiceImpl;
import com.doumee.service.business.impl.hksync.HkSyncEmpowerServiceImpl;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
-import io.swagger.models.auth.In;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
@@ -63,16 +66,72 @@
@Autowired
private ERPSyncService erpSyncService;
@Autowired
+ private SystemUserMapper systemUserMapper;
+ @Autowired
private SystemDictDataBiz systemDictDataBiz;
@Autowired
private DataSyncConfig dataSyncConfig;
/**
+ * 缁戝畾娴峰悍鐢ㄦ埛openId
+ * {
+ * "openId" : "ovmre6R7w-vEQCHg52-UN2mV_abI",
+ * "userName" : "13856591439",
+ * "appKey" : "wx173e6caf5abc718a",
+ * "oaId" : "atwl",
+ * "platformName" : "瀹夋嘲鐗╂祦鍥尯",
+ *
+ * }
+ */
+ @Override
+ public String syncHkUserOpenid(Integer id){
+ SystemUser user = systemUserMapper.selectById(id);
+ if(user == null ||StringUtils.isBlank(user.getOpenid()) ||Constants.equalsInteger(user.getOpenidHkStatus(),Constants.ONE)){
+ return null;
+ }
+ UserOpenidSaveRequest request = new UserOpenidSaveRequest();
+ request.setUserName(user.getUsername());
+ request.setAppKey(systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_APPID).getCode());
+ request.setOaId("atwl");
+ request.setOpenId(user.getOpenid());
+ request.setPlatformName(user.getRealname());
+ BaseResponse<Integer> response = HKService.userOpenidSave(request);
+ if(response!=null &&response.getCode().equals(HKConstants.RESPONSE_SUCCEE) && Constants.equalsInteger(response.getData(),Constants.ONE)){
+ user.setOpenidHkStatus(Constants.ONE);
+ user.setOpenidHkInfo("缁戝畾鎴愬姛");
+ }else{
+ user.setOpenidHkStatus(Constants.TWO);
+ user.setOpenidHkInfo(response!=null?StringUtils.defaultString(response.getMsg(),"銆愭湭鐭ュけ璐ュ師鍥犮��"):"缁戝畾澶辫触");
+ }
+ user.setOpenidHkDate(new Date());
+ systemUserMapper.updateById(user);
+ return "鎴愬姛";
+ }
+ @Override
+ public String delHkUserOpenid(UserOpenidSaveRequest param){
+ UserOpenidSaveRequest request = new UserOpenidSaveRequest();
+ request.setUserName(param.getUserName());
+ request.setAppKey(systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_APPID).getCode());
+ BaseResponse response = HKService.userOpenidDel(request);
+ if(response!=null &&response.getCode().equals(HKConstants.RESPONSE_SUCCEE)){
+ }
+ request.setUserName(null);
+ request.setOpenId(param.getOpenId());
+ request.setAppKey(systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_APPID).getCode());
+ response = HKService.userOpenidDel(request);
+ if(response!=null &&response.getCode().equals(HKConstants.RESPONSE_SUCCEE)){
+ }
+ return "鎴愬姛";
+ }
+
+ /**
* 鍚屾娴峰悍缁勭粐淇℃伅,鏍规嵁erp鍚屾缁勭粐缁撴灉锛屽畾鏃舵鏌ラ渶瑕佷笅鍙戝埌娴峰悍鐨勭粍缁囦俊鎭�
*/
@Override
- public void syncOrgData(){
- if(Constants.DEALING_HK_ORG || Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) != DataSyncConfig.origin.erp){
+ public void syncOrgData(LoginUserInfo user){
+ if(Constants.DEALING_HK_ORG ||
+ !(Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.erp
+ || Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.self)){
return ;
}
Constants.DEALING_HK_ORG =true;
@@ -148,7 +207,7 @@
if(addList!=null &&addList.size()>0){
//澶勭悊鏂板
BaseResponse<OrgOrUserAddResponse> result = HKService.addBatchOrg(addList);
- if(result !=null && StringUtils.equals(result.getCode(),HKConstants.RESPONSE_SUCCEE)){
+ if(result !=null && StringUtils.equals(result.getCode(), HKConstants.RESPONSE_SUCCEE)){
OrgOrUserAddResponse data = result.getData();
if(data.getSuccesses()!=null && data.getSuccesses().size()>0){
//澶勭悊鏂板鎴愬姛鐨勬暟鎹紝淇敼娴峰悍鍚屾鐘舵��
@@ -261,8 +320,10 @@
* @return
*/
@Override
- public void syncUserData(){
- if(Constants.DEALING_HK_USER || Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) != DataSyncConfig.origin.erp){
+ public void syncUserData(LoginUserInfo user){
+ if(Constants.DEALING_HK_USER ||
+ !(Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.erp
+ || Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.self)){
return ;
}
Constants.DEALING_HK_USER =true;
@@ -282,7 +343,7 @@
return;
}
Date date = new Date();
- String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode()
+ String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_LOCAL_RESOURCE_PATH).getCode()
+systemDictDataBiz.queryByCode(Constants.FTP,Constants.MEMBER_IMG).getCode();
for(Member c : list){
dealMemberInfoBiz(c,date,path) ;
@@ -477,7 +538,7 @@
}
if(Constants.equalsInteger(member.getIsdeleted(),Constants.ZERO)){
-// && Constants.equalsObject(member.getHkStatus(),Constants.ONE)){
+// && Constants.equalsInteger(member.getHkStatus(),Constants.ONE)){
List<Integer> deviceIds =new ArrayList<>();//鏂拌澶囩紪鐮侀泦鍚�
List<Empower> list = new ArrayList<>();//鏂版巿鏉冭褰曢泦鍚�
//濡傛灉鐢ㄦ埛鏄悓姝ユ捣搴锋垚鍔燂紝娣诲姞甯︿笅鍙戞潈闄愶紙鍙鐞嗘柊澧炴垨鑰呯紪杈戠殑锛�
@@ -518,7 +579,7 @@
.eq(Empower::getMemberId,member.getId())
.eq(Empower::getIsdeleted,Constants.ZERO)
.in(Empower::getDeviceId,deviceIds) );
- empowerMapper.insertBatchSomeColumn(list);
+ empowerMapper.insert(list);
}
}
}
@@ -544,7 +605,7 @@
List<Integer> deviceIds =new ArrayList<>();//鏂拌澶囩紪鐮侀泦鍚�
List<Empower> list = new ArrayList<>();//鏂版巿鏉冭褰曢泦鍚�
if(Constants.equalsInteger(member.getIsdeleted(),Constants.ZERO)
- && Constants.equalsObject(member.getHkStatus(),Constants.ONE)){
+ && Constants.equalsInteger(member.getHkStatus(),Constants.ONE)){
//濡傛灉鐢ㄦ埛鏄悓姝ユ捣搴锋垚鍔燂紝娣诲姞甯︿笅鍙戞潈闄愶紙鍙鐞嗘柊澧炴垨鑰呯紪杈戠殑锛�
List<Device> deviceList = deviceMapper.selectList(new QueryWrapper<Device>().lambda().in(Device::getId,addDoorIds));
if(deviceList == null || deviceList.size() == 0){
@@ -577,7 +638,7 @@
.eq(Empower::getMemberId,member.getId())
.eq(Empower::getIsdeleted,Constants.ZERO)
.in(Empower::getDeviceId,deviceIds) );
- empowerMapper.insertBatchSomeColumn(list);
+ empowerMapper.insert(list);
}
}
@@ -687,7 +748,7 @@
//澶勭悊鏂板鏁版嵁
BaseResponse result = HKService.editUser(addHkModel);
if(result !=null && StringUtils.equals(result.getCode(),HKConstants.RESPONSE_SUCCEE) ){
- if(StringUtils.isNotBlank(c.getFaceImg()) && Constants.equalsInteger(c.getFaceStatus(),Constants.ZERO)){
+ if(StringUtils.isNotBlank(c.getFaceImg()) && !Constants.equalsInteger(c.getFaceStatus(),Constants.TWO)){
//濡傛灉鏈変汉鑴哥収鐗囷紝澶勭悊浜鸿劯鐓х墖鍚屾
String faceid = dealMemberFace(c,path);
if(StringUtils.isBlank(faceid)){
@@ -861,12 +922,14 @@
model.setOrgIndexCode(c.getHkOrgId());
model.setJobNo(c.getCode());
model.setPhoneNo(c.getPhone());
- model.setCertificateNo(DESUtil.decrypt(Constants.EDS_PWD, c.getIdcardNo()));
+ if(StringUtils.isNotBlank(c.getIdcardNo())){
+ model.setCertificateNo(DESUtil.decrypt(Constants.EDS_PWD, c.getIdcardNo()));
+ }
model.setCertificateType(HKConstants.CertificateType.SHENFENZHENG.getKey()+"");
model.setPersonId(type == 0 ?UUID.randomUUID().toString().replace("-", ""):c.getHkId());
model.setGender(Constants.formatIntegerNum(c.getSex())+"");
model.setPersonName(c.getName());
- if(type== 0 && StringUtils.isNotBlank(c.getFaceImg())){
+ if(StringUtils.isNotBlank(c.getFaceImg())){
model.setFaces(new ArrayList<>());
UserAddFaceRequest face = new UserAddFaceRequest();
String imageBase = ImageBase64Util.Image2Base64(path+c.getFaceImg());
--
Gitblit v1.9.3