Commit 3a9b40bb by fudahua

主导购 在线沟通

parent ceff7d29
package com.gic.haoban.manage.service.service.out.impl;
import java.io.InputStream;
import java.net.URL;
import java.util.*;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
import com.alibaba.fastjson.JSONObject;
import com.gic.commons.util.GlobalInfo;
import com.gic.commons.util.GlobalVar;
import com.gic.commons.util.ImageUtil;
import com.gic.haoban.manage.api.dto.*;
import com.gic.haoban.manage.api.enums.SecretTypeEnum;
import com.gic.haoban.manage.api.service.DepartmentApiService;
import com.gic.haoban.manage.service.service.*;
import com.gic.haoban.manage.service.util.EmojiFilterUtil;
import com.gic.redis.data.anno.RedisCache;
import com.gic.thirdparty.api.dto.PicUploadResDTO;
import com.gic.thirdparty.api.service.QQCloudPicService;
import com.google.common.collect.Sets;
import com.vdurmont.emoji.EmojiParser;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.io.IOUtils;
import org.apache.commons.lang.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import cn.hutool.core.collection.CollectionUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.gic.api.base.commons.JSONResponse;
import com.gic.api.base.commons.Page;
import com.gic.clerk.api.dto.ClerkDTO;
import com.gic.clerk.api.service.ClerkService;
import com.gic.commons.util.EntityUtil;
import com.gic.commons.util.GlobalInfo;
import com.gic.commons.util.GlobalVar;
import com.gic.commons.util.ImageUtil;
import com.gic.enterprise.api.dto.StoreDTO;
import com.gic.enterprise.api.dto.StoreGroupDTO;
import com.gic.enterprise.api.service.StoreGroupService;
......@@ -47,6 +21,9 @@ import com.gic.haoban.base.api.common.ServiceResponse;
import com.gic.haoban.common.utils.PageUtil;
import com.gic.haoban.common.utils.StringUtil;
import com.gic.haoban.common.utils.UuidUtil;
import com.gic.haoban.manage.api.dto.*;
import com.gic.haoban.manage.api.enums.SecretTypeEnum;
import com.gic.haoban.manage.api.service.DepartmentApiService;
import com.gic.haoban.manage.api.service.StaffApiService;
import com.gic.haoban.manage.api.service.WxEnterpriseRelatedApiService;
import com.gic.haoban.manage.service.dao.mapper.StaffDepartmentRelatedMapper;
......@@ -55,10 +32,26 @@ import com.gic.haoban.manage.service.entity.TabHaobanDepartment;
import com.gic.haoban.manage.service.entity.TabHaobanStaff;
import com.gic.haoban.manage.service.entity.TabHaobanStaffDepartmentRelated;
import com.gic.haoban.manage.service.entity.TabHaobanSyncErrorLog;
import com.gic.haoban.manage.service.service.*;
import com.gic.haoban.manage.service.util.EmojiFilterUtil;
import com.gic.redis.data.anno.RedisCache;
import com.gic.redis.data.util.RedisUtil;
import com.gic.thirdparty.api.dto.PicUploadResDTO;
import com.gic.thirdparty.api.service.QQCloudPicService;
import com.gic.wechat.api.dto.qywx.UserDTO;
import com.gic.wechat.api.service.qywx.QywxUserApiService;
import com.github.pagehelper.PageHelper;
import com.google.common.collect.Sets;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.*;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
@Service
public class StaffApiServiceImpl implements StaffApiService {
......@@ -1398,33 +1391,32 @@ public class StaffApiServiceImpl implements StaffApiService {
@RedisCache(value = "qrcode-${clerkCode}-${storeId}", timeOut = 1, timeunit = TimeUnit.DAYS)
public ServiceResponse<String> getStaffQrcode(String clerkCode, String storeId) {
ServiceResponse<String> resp = new ServiceResponse<>();
TabHaobanDepartment department = departmentService.selectByRelatedId(storeId);
if (null == department) {
resp.setMessage("部门没关联");
resp.setCode(0);
return resp;
List<String> clerkCodes=new ArrayList<>();
clerkCodes.add(clerkCode);
List<ClerkDTO> list = clerkService.listClerk(storeId, clerkCodes, true);
if (CollectionUtils.isEmpty(list)) {
logger.info("成员不存在:{}",clerkCode);
return null;
}
List<TabHaobanStaffDepartmentRelated> retList = staffDepartmentRelatedService.listByDepartmentId(department.getDepartmentId());
if (CollectionUtils.isEmpty(retList)) {
resp.setMessage("成员没关联");
resp.setCode(0);
return resp;
ClerkDTO clerkDTO = list.get(0);
StaffClerkRelationDTO relationDTO = staffClerkRelationService.getByClerkId(clerkDTO.getClerkId());
if (relationDTO==null) {
logger.info("成员没有关联:{}",clerkCode);
return null;
}
for (TabHaobanStaffDepartmentRelated tab : retList) {
if (clerkCode.equals(tab.getClerkCode())) {
WxEnterpriseDTO wxEnterpriseDTO = wxEnterpriseService.selectById(department.getWxEnterpriseId());
WxEnterpriseDTO wxEnterpriseDTO = wxEnterpriseService.selectById(relationDTO.getWxEnterpriseId());
SecretSettingDTO secretSetting = secretSettingService.getSecretSetting(wxEnterpriseDTO.getWxEnterpriseId(), SecretTypeEnum.HAOBAN_HELP.getVal());
if (null == secretSetting||secretSetting.getCheckFlag()==0) {
logger.info("没有配置secret:{}",wxEnterpriseDTO.getWxEnterpriseId());
return null;
}
UserDTO user = qywxUserApiService.getSelfWorkWxUser(wxEnterpriseDTO.getCorpid(), secretSetting.getSecretVal(), tab.getWxUserId());
UserDTO user = qywxUserApiService.getSelfWorkWxUser(wxEnterpriseDTO.getCorpid(), secretSetting.getSecretVal(), relationDTO.getWxUserId());
if (user != null) {
resp.setResult(user.getQr_code());
return resp;
}
}
}
return resp;
}
@Override
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment