Commit 3ad130e1 by qwmqiuwenmin

Merge branch 'developer' into 'master'

Developer

See merge request !60
parents 8313f86c a7fb769f
......@@ -43,6 +43,14 @@ public class MaidianLogDTO implements Serializable{
private String systemInfo;
private Integer stayTime;
private String trackSign;
private Integer storeStatus;
private String storeId;
private String clerkCode;
private Date createTime;
......@@ -218,4 +226,38 @@ public class MaidianLogDTO implements Serializable{
this.updateTime = updateTime;
}
public String getTrackSign() {
return trackSign;
}
public void setTrackSign(String trackSign) {
this.trackSign = trackSign;
}
public Integer getStoreStatus() {
return storeStatus;
}
public void setStoreStatus(Integer storeStatus) {
this.storeStatus = storeStatus;
}
public String getStoreId() {
return storeId;
}
public void setStoreId(String storeId) {
this.storeId = storeId;
}
public String getClerkCode() {
return clerkCode;
}
public void setClerkCode(String clerkCode) {
this.clerkCode = clerkCode;
}
}
......@@ -15,7 +15,7 @@ public interface DepartmentApiService {
* @param parentId
* @return
*/
List<DepartmentDTO> listByDepartmentIds(List<String> departmentIds,int storeFlag);
List<DepartmentDTO> listByDepartmentIds(List<String> departmentIds,Integer storeFlag);
/**
* 查门店列表
* @param relatedIds
......@@ -170,5 +170,8 @@ public interface DepartmentApiService {
* @return
*/
Integer totalStoreCountByEnterpriseId(String wxEnterpriseId);
List<DepartmentDTO> listSonByDepartmentIds(List<String> departmentIdSet, String wxEnterpriseId);
}
......@@ -35,4 +35,6 @@ public interface StaffDepartmentRelatedApiService {
//发送消息,单人发送
boolean sendSingleMessage(String wxUserId,String title,String content,String pageUrl);
List<StaffDepartmentRelatedDTO> listByStaffIds(List<String> staffIds);
}
......@@ -122,6 +122,11 @@
<version>${gic-thirdparty-api}</version>
</dependency>
<dependency>
<groupId>com.gic</groupId>
<artifactId>haoban-app-customer-api</artifactId>
<version>${haoban-app-customer-api}</version>
</dependency>
</dependencies>
<build>
......
......@@ -32,7 +32,7 @@ public interface DepartmentMapper {
List<TabHaobanDepartment> getByWxId(@Param("wxDepartmentId")String wxDepartmentId, @Param("wxEnterpriseId") String wxEnterpriseId);
List<TabHaobanDepartment> listByDepartmentIds(@Param("departmentIds")List<String> departmentIds,@Param("storeFlag")int storeFlag);
List<TabHaobanDepartment> listByDepartmentIds(@Param("departmentIds")List<String> departmentIds,@Param("storeFlag")Integer storeFlag);
List<TabHaobanDepartment> listByRelatedIds(@Param("relatedIds")List<String> relatedIds);
......
......@@ -47,5 +47,7 @@ public interface StaffDepartmentRelatedMapper {
List<TabHaobanStaffDepartmentRelated> listByWxUserId(@Param("wxUserId")String wxUserId);
List<TabHaobanStaffDepartmentRelated> listByClerkCode(@Param("clerkCode")String clerkCode);
List<TabHaobanStaffDepartmentRelated> listStaffDepartmentByStaffIds(@Param("staffIds")List<String> staffIds);
}
\ No newline at end of file
......@@ -41,6 +41,14 @@ public class TabHaobanMaidianLog implements Serializable {
private String systemInfo;
private Integer stayTime;
private String trackSign;
private Integer storeStatus;
private String storeId;
private String clerkCode;
private Date createTime;
......@@ -215,4 +223,38 @@ public class TabHaobanMaidianLog implements Serializable {
public void setUpdateTime(Date updateTime) {
this.updateTime = updateTime;
}
public String getTrackSign() {
return trackSign;
}
public void setTrackSign(String trackSign) {
this.trackSign = trackSign;
}
public Integer getStoreStatus() {
return storeStatus;
}
public void setStoreStatus(Integer storeStatus) {
this.storeStatus = storeStatus;
}
public String getStoreId() {
return storeId;
}
public void setStoreId(String storeId) {
this.storeId = storeId;
}
public String getClerkCode() {
return clerkCode;
}
public void setClerkCode(String clerkCode) {
this.clerkCode = clerkCode;
}
}
\ No newline at end of file
......@@ -41,10 +41,7 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.*;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
......@@ -285,7 +282,13 @@ public class DealSyncOperationApiServiceImpl implements DealSyncOperationApiServ
eidListMap.forEach((k, v) -> {
//获取所有分组列表
List<StoreGroupDTO> groupDTOList = storeGroupService.listStoreGroupAndChildren(v.toArray(new String[]{}), k);
List<TabHaobanPreDealLog> dealList = groupDTOList.stream().map(storeGroupDTO -> {
List<String> hasKey=new ArrayList<>();
List<TabHaobanPreDealLog> dealList = groupDTOList.stream().filter(dto->{
if (hasKey.contains(dto.getStoreGroupId())) {
return false;
}
return true;
}).map(storeGroupDTO -> {
TabHaobanPreDealLog dealLog = new TabHaobanPreDealLog();
dealLog.setDataId(storeGroupDTO.getStoreGroupId());
if (pMap.containsKey(storeGroupDTO.getStoreGroupId())) {
......
package com.gic.haoban.manage.service.service.out.impl;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
import cn.hutool.core.collection.CollectionUtil;
......@@ -370,7 +373,7 @@ public class DepartmentApiServiceImpl implements DepartmentApiService {
@Override
public List<DepartmentDTO> listByDepartmentIds(List<String> departmentIds,
int storeFlag) {
Integer storeFlag) {
List<TabHaobanDepartment> list= departmentMapper.listByDepartmentIds(departmentIds, storeFlag);
if(list==null){
return new ArrayList<DepartmentDTO>();
......@@ -758,4 +761,26 @@ public class DepartmentApiServiceImpl implements DepartmentApiService {
public Integer totalStoreCountByEnterpriseId(String wxEnterpriseId) {
return departmentService.totalStoreCountByEnterpriseId(wxEnterpriseId);
}
@Override
public List<DepartmentDTO> listSonByDepartmentIds(List<String> departmentIdList,String wxEnterpriseId) {
List<DepartmentDTO> list = new ArrayList<>();
for (String departmentId : departmentIdList) {
String chainId = "";
TabHaobanDepartment department = departmentService.selectById(departmentId);
if(department != null){
chainId = department.getChainId() + Constant.ID_SEPARATOR + departmentId;
}
list.add(EntityUtil.changeEntityByJSON(DepartmentDTO.class, department));
if(StringUtils.isNotBlank(chainId)){
List<TabHaobanDepartment> tabList = departmentService.listByChainId(chainId,wxEnterpriseId);
for (TabHaobanDepartment tabHaobanDepartment : tabList) {
list.add(EntityUtil.changeEntityByJSON(DepartmentDTO.class, tabHaobanDepartment));
}
}
}
return list;
}
}
......@@ -5,6 +5,7 @@ import com.gic.commons.util.EntityUtil;
import com.gic.commons.util.GICMQClientUtil;
import com.gic.commons.util.GlobalInfo;
import com.gic.commons.util.GlobalVar;
import com.gic.haoban.app.customer.service.api.service.InnerApiService;
import com.gic.haoban.base.api.common.Constant;
import com.gic.haoban.base.api.common.ServiceResponse;
import com.gic.haoban.manage.api.dto.DepartmentDTO;
......@@ -71,6 +72,9 @@ public class MessageApiServiceImpl implements MessageApiService {
@Autowired
private QQCloudPicService qqCloudPicService;
@Autowired
private InnerApiService innerApiService;
private final String CONTACT_APP = "contactSuiteId";
@Override
......@@ -347,6 +351,7 @@ public class MessageApiServiceImpl implements MessageApiService {
if(StringUtils.isNotBlank(staffRelated.getClerkCode())){
staffApiService.cleanGicClerk(staffRelated.getClerkCode(), staffRelated.getDepartmentId());
}
innerApiService.delCardByStaffId(oldStaff.getStaffId());
this.staffDepartmentRelatedService.del(EntityUtil.changeEntityByJSON(StaffDepartmentRelatedDTO.class, staffRelated));
this.staffService.delByuserid(oldStaff.getStaffId());
}else {
......
......@@ -96,6 +96,16 @@ public class StaffDepartmentRelatedApiServiceImpl implements StaffDepartmentRela
List<StaffDepartmentRelatedDTO> resultList = EntityUtil.changeEntityListByJSON(StaffDepartmentRelatedDTO.class, list);
return resultList;
}
@Override
public List<StaffDepartmentRelatedDTO> listByStaffIds(List<String> staffIds) {
List<TabHaobanStaffDepartmentRelated> list = staffDepartmentRelatedMapper.listStaffDepartmentByStaffIds(staffIds);
if(CollectionUtil.isEmpty(list)){
return new ArrayList<StaffDepartmentRelatedDTO>();
}
List<StaffDepartmentRelatedDTO> resultList = EntityUtil.changeEntityListByJSON(StaffDepartmentRelatedDTO.class, list);
return resultList;
}
@Override
public StaffDepartmentRelatedDTO getOneByClerkCodeAndDepartmentId(String clerkCode, String departmentId) {
......
......@@ -26,6 +26,7 @@ import com.gic.haoban.manage.service.service.SyncTaskService;
import com.gic.mq.sdk.GicMQClient;
import com.gic.redis.data.util.RedisUtil;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -157,6 +158,9 @@ public class StoreSyncOperation implements BaseSyncOperation {
if (finalHasDatas.contains(mid.getClerkId())) {
return false;
}
if (StringUtils.isBlank(mid.getPhoneNumber())) {
return false;
}
return true;
}).map(clerkMid -> {
TabHaobanPreDealLog dealLog = new TabHaobanPreDealLog();
......@@ -169,6 +173,7 @@ public class StoreSyncOperation implements BaseSyncOperation {
dealLog.setWxEnterpriseId(wxEnterpriseId);
return dealLog;
}).collect(Collectors.toList());
logger.info("过滤后导入clerk:{},{},{}", enterpriseId, dataId, JSONObject.toJSONString(preDealLogList));
preDealService.insert(preDealLogList);
}
boolean b = preDealService.updateStatusByDataId(taskId, dataId, PreDealStatusEnum.computed.getVal(), "成功");
......
......@@ -61,5 +61,7 @@
<dubbo:reference id="qqCloudPicService" interface="com.gic.thirdparty.api.service.QQCloudPicService" timeout="10000" retries="0" check="false" />
<dubbo:reference id="innerApiService" interface="com.gic.haoban.app.customer.service.api.service.InnerApiService" timeout="10000" retries="0" check="false" />
</beans>
\ No newline at end of file
......@@ -305,7 +305,9 @@
<include refid="Base_Column_List" />
from tab_haoban_department
where status_flag = 1
and is_store = #{storeFlag,jdbcType=INTEGER}
<if test="storeFlag != null">
and is_store = #{storeFlag}
</if>
<if test="departmentIds != null and departmentIds.size() > 0">
and department_id IN
<foreach collection="departmentIds" item="id" index="index" open="(" close=")" separator=",">
......
......@@ -184,7 +184,7 @@
where member_unionid_related_id = #{memberUnionidRelatedId,jdbcType=VARCHAR}
</update>
<update id="cleanByCid" parameterType="String" >
<update id="cleanByCid" >
update tab_haoban_member_unionid_related
set
status_flag = 0,
......
......@@ -289,4 +289,17 @@
</foreach>
and status_flag = 1
</select>
<select id="listStaffDepartmentByStaffIds" resultMap="BaseResultMap" >
select
<include refid="Base_Column_List" />
from tab_haoban_staff_department_related
where staff_id in
<foreach collection="staffIds" item="id" index="index" open="(" close=")" separator=",">
#{id,jdbcType=VARCHAR}
</foreach>
and status_flag = 1
group by staff_id
</select>
</mapper>
\ No newline at end of file
......@@ -21,13 +21,17 @@
<result column="version" property="version" jdbcType="VARCHAR" />
<result column="system_info" property="systemInfo" jdbcType="VARCHAR" />
<result column="stay_time" property="stayTime" jdbcType="INTEGER" />
<result column="track_sign" property="trackSign" jdbcType="VARCHAR" />
<result column="store_id" property="storeId" jdbcType="VARCHAR" />
<result column="clerk_code" property="clerkCode" jdbcType="VARCHAR" />
<result column="store_status" property="storeStatus" jdbcType="INTEGER" />
<result column="create_time" property="createTime" jdbcType="TIMESTAMP" />
<result column="update_time" property="updateTime" jdbcType="TIMESTAMP" />
</resultMap>
<sql id="Base_Column_List" >
maidian_id, staff_id, wx_enterprise_id, phone_number, device_date, options, event,
url, context, scene, platform, model, brand, hbversion, system, sdk_version, version,
system_info, stay_time, create_time, update_time
system_info, stay_time, create_time, update_time,track_sign,store_id,,store_status,clerk_code
</sql>
<select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
select
......@@ -46,7 +50,7 @@
scene, platform, model,
brand, hbversion, system,
sdk_version, version, system_info,
stay_time, create_time, update_time
stay_time, create_time, update_time,track_sign,store_status,clerk_code,store_id
)
values (#{maidianId,jdbcType=INTEGER}, #{staffId,jdbcType=VARCHAR}, #{wxEnterpriseId,jdbcType=VARCHAR},
#{phoneNumber,jdbcType=VARCHAR}, #{deviceDate,jdbcType=TIMESTAMP}, #{options,jdbcType=VARCHAR},
......@@ -54,7 +58,8 @@
#{scene,jdbcType=VARCHAR}, #{platform,jdbcType=VARCHAR}, #{model,jdbcType=VARCHAR},
#{brand,jdbcType=VARCHAR}, #{hbversion,jdbcType=VARCHAR}, #{system,jdbcType=VARCHAR},
#{sdkVersion,jdbcType=VARCHAR}, #{version,jdbcType=VARCHAR}, #{systemInfo,jdbcType=VARCHAR},
#{stayTime,jdbcType=INTEGER}, #{createTime,jdbcType=TIMESTAMP}, #{updateTime,jdbcType=TIMESTAMP}
#{stayTime,jdbcType=INTEGER}, #{createTime,jdbcType=TIMESTAMP}, #{updateTime,jdbcType=TIMESTAMP},#{trackSign},
#{storeStatus},#{clerkCode},#{storeId}
)
</insert>
<insert id="insertSelective" parameterType="com.gic.haoban.manage.service.entity.TabHaobanMaidianLog" >
......@@ -123,6 +128,9 @@
<if test="updateTime != null" >
update_time,
</if>
<if test="trackSign != null" >
track_sign,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides="," >
<if test="maidianId != null" >
......@@ -188,6 +196,9 @@
<if test="updateTime != null" >
#{updateTime,jdbcType=TIMESTAMP},
</if>
<if test="trackSign != null" >
#{trackSign},
</if>
</trim>
</insert>
<update id="updateByPrimaryKeySelective" parameterType="com.gic.haoban.manage.service.entity.TabHaobanMaidianLog" >
......
......@@ -169,6 +169,11 @@ public void sendMessage() {
String s = qywxUserApiService.listSelfExternalUserid("ww9ede832a84b7ae5f", "01YQ-pcdYzF3K0So8uCFfkB5i8D5EBW7KcVB4qA8Ktk", "de2c33f2e8924ff884e0073ca2f2f711");
System.out.println(JSONObject.toJSONString(s));
}
@Test
public void extensionList1() {
UserDTO selfWorkWxUser = qywxUserApiService.getSelfWorkWxUser("ww9ede832a84b7ae5f", "65zze159pYb4ofbFsIREZ5X7d7iaZ-bWsVIQk2y5kTU", "de2c33f2e8924ff884e0073ca2f2f711");
// String s = qywxUserApiService.listSelfExternalUserid("ww9ede832a84b7ae5f", "01YQ-pcdYzF3K0So8uCFfkB5i8D5EBW7KcVB4qA8Ktk", "de2c33f2e8924ff884e0073ca2f2f711");
System.out.println(JSONObject.toJSONString(selfWorkWxUser));
}
}
......@@ -30,13 +30,13 @@ public class AuthRequestUtil {
public static final String REDIS_FAKE_LOGIN_FLAG_PREFIX = "GIC:HAOBAN:HAOBAN_MOBILE_APP:FAKE_LOGIN_TOKEN:";
public static String LOGIN_SESSION_KEY = "HAOBAN:LOGINUSER";
public static LoginVO getSessionUser() {
String json = (String) getSession().getAttribute(LOGIN_SESSION_KEY);
if (StringUtils.isBlank(json)){
return null;
}
return JSON.parseObject(json, LoginVO.class);
}
// public static LoginVO getSessionUser() {
// String json = (String) getSession().getAttribute(LOGIN_SESSION_KEY);
// if (StringUtils.isBlank(json)){
// return null;
// }
// return JSON.parseObject(json, LoginVO.class);
// }
public static void setSessionUser(Object obj) {
String userJson = JSON.toJSONString(obj);
......
......@@ -3,6 +3,7 @@ package com.gic.haoban.manage.web.controller;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
......@@ -23,6 +24,7 @@ import com.gic.haoban.manage.web.anno.IgnoreLogin;
import com.gic.haoban.manage.web.auth.AuthRequestUtil;
import com.gic.haoban.manage.web.config.Config;
import com.gic.haoban.manage.web.vo.LoginVO;
import com.gic.redis.data.util.RedisUtil;
import com.gic.wechat.api.service.qywx.QywxSuiteApiService;
import com.gic.wechat.api.service.qywx.QywxUserApiService;
......@@ -89,6 +91,25 @@ public class ApplicationController extends WebBaseController{
if(CollectionUtil.isNotEmpty(applicationIds)){
closeList = applicationApiService.listByApplications(applicationIds);
}
Object o = RedisUtil.getCache("haobanWxEnterpriseIdAppOpen");
String wxEnterpriseIds = o == null?"":o.toString();
if(!wxEnterpriseIds.contains(wxEnterpriseId)){
//不开启
Iterator<ApplicationDTO> it = openList.iterator();
while(it.hasNext()){
ApplicationDTO s = it.next();
if(s.getApplicationName().contains("内购券")){
it.remove();
}
}
Iterator<ApplicationDTO> it2 = closeList.iterator();
while(it2.hasNext()){
ApplicationDTO s = it2.next();
if(s.getApplicationName().contains("内购券")){
it2.remove();
}
}
}
map.put("open", openList);
map.put("close", closeList);
return resultResponse(HaoBanErrCode.ERR_1,map);
......
......@@ -234,7 +234,7 @@ public class DepartmentContoller extends WebBaseController{
@RequestMapping("department-recycle-count")
public HaobanResponse departmentRecycleCount() {
LoginVO login = (LoginVO) AuthRequestUtil.getSessionUser();
LoginVO login = (LoginVO) AuthRequestUtil.getLoginUser();
String wxEnterpriseId = login.getWxEnterpriseId();
Integer count = departmentApiService.departmentRecycleCount(wxEnterpriseId);
Map<String,Object> map = new HashMap<String, Object>();
......@@ -270,7 +270,7 @@ public class DepartmentContoller extends WebBaseController{
@RequestMapping("department-batch-sync")
@ResponseBody
public HaobanResponse departmentBatchSync(@RequestBody SyncDepartmentQO args) {
LoginVO login = (LoginVO) AuthRequestUtil.getSessionUser();
LoginVO login = (LoginVO) AuthRequestUtil.getLoginUser();
String wxEnterpriseId = login.getWxEnterpriseId();
String key = "haoban-sync-department-" + wxEnterpriseId;
if(RedisUtil.getCache(key) != null){
......@@ -597,7 +597,7 @@ public class DepartmentContoller extends WebBaseController{
@RequestMapping("department-recycle-list")
public HaobanResponse departmentRecycleList(String keyWord,Integer storeFlag,BasePageInfo pageInfo) {
LoginVO login = (LoginVO) AuthRequestUtil.getSessionUser();
LoginVO login = (LoginVO) AuthRequestUtil.getLoginUser();
String wxEnterpriseId = login.getWxEnterpriseId();
Integer recycleFlag = 1;
Page<DepartmentDTO> page = departmentApiService.pageDepartmentByParams(pageInfo,wxEnterpriseId,keyWord,storeFlag,recycleFlag);
......
......@@ -67,6 +67,7 @@ public class SyncDealContoller extends WebBaseController {
String wxEnterpriseId = login.getWxEnterpriseId();
logger.info("login:{}", JSONObject.toJSONString(login));
logger.info("data:{}", JSONObject.toJSONString(qo));
String taskLock = dealSyncOperationApiService.getTaskLock(wxEnterpriseId);
if (null != taskLock) {
......@@ -156,7 +157,7 @@ public class SyncDealContoller extends WebBaseController {
@ResponseBody
public HaobanResponse syncTask(String wxEnterpriseId, BasePageInfo pageInfo) {
if (StringUtils.isBlank(wxEnterpriseId)) {
LoginVO login = (LoginVO) AuthRequestUtil.getSessionUser();
LoginVO login = (LoginVO) AuthRequestUtil.getLoginUser();
wxEnterpriseId = login.getWxEnterpriseId();
}
Page<SyncTaskDTO> retPage = dealSyncOperationApiService.listSyncTask(wxEnterpriseId, pageInfo);
......@@ -175,7 +176,7 @@ public class SyncDealContoller extends WebBaseController {
@ResponseBody
public HaobanResponse syncTaskDetail(String wxEnterpriseId, String taskId, BasePageInfo pageInfo) {
if (StringUtils.isBlank(wxEnterpriseId)) {
LoginVO login = (LoginVO) AuthRequestUtil.getSessionUser();
LoginVO login = (LoginVO) AuthRequestUtil.getLoginUser();
wxEnterpriseId = login.getWxEnterpriseId();
}
Page<PreDealLogInfoDTO> retPage = dealSyncOperationApiService.listSyncTaskDetail(wxEnterpriseId, taskId, pageInfo);
......
......@@ -66,7 +66,7 @@ public class WxEnterpriseController extends WebBaseController{
@RequestMapping("wx-enterprise-list")
public HaobanResponse wxEnterpriseList() {
// String wxEnterpriseId = "123456";
LoginVO login = (LoginVO) AuthRequestUtil.getSessionUser();
LoginVO login = (LoginVO) AuthRequestUtil.getLoginUser();
String wxEnterpriseId = login.getWxEnterpriseId();
List<EnterpriseDetailDTO> list = wxEnterpriseRelatedApiService.listEnterpriseByWxEnterpriseId(wxEnterpriseId);
if(CollectionUtil.isNotEmpty(list)){
......@@ -238,6 +238,7 @@ public class WxEnterpriseController extends WebBaseController{
if(wxEnterprise == null){
return resultResponse(HaoBanErrCode.ERR_10012);
}
contactSecret = contactSecret.trim();
UserDTO user = qywxUserApiService.getSelfWorkWxUser(wxEnterprise.getCorpid(), contactSecret, login.getStaffDTO().getWxUserId());
logger.info("【保存联系人key】user={}",JSON.toJSONString(user));
if(user != null){
......@@ -267,6 +268,7 @@ public class WxEnterpriseController extends WebBaseController{
if(wxEnterprise == null){
return resultResponse(HaoBanErrCode.ERR_10012);
}
wxSecretKey = wxSecretKey.trim();
String res = qywxUserApiService.listSelfExternalUserid(wxEnterprise.getCorpid(), wxSecretKey, login.getStaffDTO().getWxUserId());
logger.info("【保存联系人key】res={}",res);
if(res == null){
......@@ -296,6 +298,7 @@ public class WxEnterpriseController extends WebBaseController{
if(wxEnterprise == null){
return resultResponse(HaoBanErrCode.ERR_10012);
}
memberSecret = memberSecret.trim();
UserDTO user = qywxUserApiService.getSelfWorkWxUser(wxEnterprise.getCorpid(), memberSecret, login.getStaffDTO().getWxUserId());
if(user != null){
wxEnterprise.setMemberSecret(memberSecret);
......
......@@ -49,6 +49,14 @@ public class ApplicationController extends WebBaseController{
it.remove();
continue ;
}
if("卡券赠送".equals(app.getApplicationName())){
it.remove();
continue ;
}
if("内购券".equals(app.getApplicationName())){
it.remove();
continue ;
}
}
return resultResponse(HaoBanErrCode.ERR_1,list);
......
package com.gic.haoban.manage.web.controller;
import cn.hutool.core.collection.CollectionUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.gic.clerk.api.dto.ClerkDTO;
import com.gic.clerk.api.service.ClerkService;
import com.gic.dict.api.dto.DictDTO;
import com.gic.dict.api.service.ManagerDictService;
import com.gic.enterprise.api.dto.StoreDTO;
import com.gic.enterprise.api.dto.StorePhotoDTO;
import com.gic.haoban.app.customer.dto.StaffOpenRelatedDTO;
import com.gic.haoban.app.customer.service.api.service.StaffMemberRelationApiService;
import com.gic.haoban.base.api.common.ServiceResponse;
import com.gic.haoban.common.utils.EntityUtil;
import com.gic.haoban.common.utils.HaobanResponse;
import com.gic.haoban.contacts.manage.api.service.StoreService;
import com.gic.haoban.manage.api.dto.*;
import com.gic.haoban.manage.api.service.ClerkMainStoreRelatedApiService;
import com.gic.haoban.manage.api.service.DepartmentApiService;
import com.gic.haoban.manage.api.service.MemberUnionidRelatedApiService;
import com.gic.haoban.manage.api.service.StaffApiService;
import com.gic.haoban.manage.api.service.StaffDepartmentRelatedApiService;
import com.gic.haoban.manage.api.service.WxEnterpriseApiService;
import com.gic.haoban.manage.api.service.WxEnterpriseRelatedApiService;
import com.gic.haoban.manage.api.service.*;
import com.gic.haoban.manage.web.config.Config;
import com.gic.haoban.manage.web.errCode.HaoBanErrCode;
import com.gic.haoban.manage.web.qo.GetUserByMemberCodeQo;
......@@ -29,7 +26,6 @@ import com.gic.haoban.manage.web.vo.StoreVO;
import com.gic.wechat.api.dto.qywx.UserDTO;
import com.gic.wechat.api.service.qywx.QywxCorpApiService;
import com.gic.wechat.api.service.qywx.QywxUserApiService;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
......@@ -38,7 +34,10 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
@RestController
......@@ -73,6 +72,12 @@ public class InfoController extends WebBaseController{
private ClerkMainStoreRelatedApiService clerkMainStoreRelatedApiService;
@Autowired
private StaffDepartmentRelatedApiService staffDepartmentRelatedApiService;
@Autowired
private ManagerDictService managerDictService;
@Autowired
private StaffMemberRelationApiService staffMemberRelationApiService;
private static Logger logger= LoggerFactory.getLogger(InfoController.class);
......@@ -104,6 +109,22 @@ public class InfoController extends WebBaseController{
if(loginStaff == null){
return resultResponse(HaoBanErrCode.ERR_600001);
}
if (StringUtils.isNotBlank(loginStaff.getPhoneNumber())) {
DictDTO loginPhoneNum = managerDictService.getSMSDict("app_login_phone_num", loginStaff.getPhoneNumber());
logger.info("伪登录:{}",loginStaff.getPhoneNumber(), JSONObject.toJSONString(loginPhoneNum));
if (null != loginPhoneNum) {
String midPhone = loginPhoneNum.getDictValue();
List<StaffDTO> staffDTOS = staffApiService.listByPhoneNumber(midPhone);
if (CollectionUtils.isNotEmpty(staffDTOS)) {
loginStaff=staffDTOS.get(0);
}
// StaffDTO staffDTO = staffApiService.selectByNationcodeAndPhoneNumber(enterprise.getWxEnterpriseId(), "86", midPhone);
// if (null !=staffDTO) {
// loginStaff=staffDTO;
// }
}
}
String wxEnterpriseId = loginStaff.getWxEnterpriseId();
WxEnterpriseDTO wxEnterpriseDTO = wxEnterpriseApiService.getOne(wxEnterpriseId);
......@@ -150,6 +171,14 @@ public class InfoController extends WebBaseController{
logger.info("成员不存在");
return resultResponse(HaoBanErrCode.ERR_6);
}
//保存关联关系
StaffOpenRelatedDTO relatedDTO = new StaffOpenRelatedDTO();
relatedDTO.setMemberId(qo.getMemberId());
relatedDTO.setOpenId(qo.getOpenid());
relatedDTO.setStaffId(staffDTO.getStaffId());
relatedDTO.setWxEnterpriseId(enterpriseDTO.getWxEnterpriseId());
relatedDTO.setGicEnterpriseId(enterpriseDetailDTO.getEnterpriseId());
staffMemberRelationApiService.bindMemberAndStaff(relatedDTO);
ServiceResponse<List<DepartmentDTO>> response = departmentApiService.listStoreListByStaffId(staffDTO.getStaffId());
List<DepartmentDTO> result = response.getResult();
......
......@@ -51,4 +51,6 @@
<dubbo:reference interface="com.gic.haoban.manage.api.service.MaidianLogApiService" id="maidianLogApiService"/>
<dubbo:reference interface="com.gic.haoban.app.customer.service.api.service.StaffMemberRelationApiService" id="staffMemberRelationApiService"/>
</beans>
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