Commit 7d8bc0bb by 徐高华

Merge branch 'feature/计费中心-视频' into 'master'

Feature/计费中心 视频

See merge request !784
parents e240e151 1d6635b7
......@@ -38,6 +38,8 @@ public enum AppPageType {
MARKET_CLUE_TASK(16, "hbapp_marketing_task_list"),
//话务任务
TEL_WITHIN_TIME_LIMIT(17, "hbapp_marketing_task_list"),
// 客户预约
hbapp_appointment_list(18 , "hbapp_appointment_list")
;
......
......@@ -43,7 +43,8 @@ public enum NoticeMessageTypeEnum {
DAILY_REPORT_TRANS(3033, "云日报通知", NoticeMessageCategoryTypeEnum.OTHER.getType(), "daily_report_trans", "/pages/route/index?pageType=", "hbapp_task_daily_report_detail"),
CASH_OUT_REFUSE(3040, "提现通知", NoticeMessageCategoryTypeEnum.OTHER.getType(), "cash_out_refuse", "/pages/route/index?pageType=", "hbapp_withdraw_list"),
OFFLINE_PRE(3041, "预约提醒", NoticeMessageCategoryTypeEnum.OTHER.getType(), "task_overdue", "/pages/route/index?pageType=", "hbapp_appointment_list"),
CUSTOMER_MOVE(3052, "客户变动通知", NoticeMessageCategoryTypeEnum.OTHER.getType(), "customer_move", "/pages/route/index?pageType=", "hbapp_customer_list"),
......
package com.gic.haoban.manage.api.service;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.haoban.manage.api.dto.QywxCallBackDTO;
/**
......@@ -66,5 +67,18 @@ public interface MessageApiService {
* @date 2022-03-10 13:48:10
*/
String getNewWxUserIdByStaffId(String wxEnterpriseId, String staffId);
/**
*
* @Title: sendPreMessage
* @Description: 发送线下预约消息
* @author xugh
* @param enterpriseId
* @param storeId
* @param message
* @return
* @throws
*/
ServiceResponse<Void> sendPreMessage(String enterpriseId ,String storeId , String message) ;
}
package com.gic.haoban.manage.service.service.out.impl;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
......@@ -18,6 +19,7 @@ import org.springframework.stereotype.Service;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.gic.clerk.api.dto.ClerkDTO;
import com.gic.clerk.api.dto.ClerkQwDTO;
import com.gic.clerk.api.service.ClerkService;
import com.gic.commons.util.EntityUtil;
......@@ -619,5 +621,49 @@ public class MessageApiServiceImpl implements MessageApiService {
}
return qwDTO.needOpenUserId3th() ? tabHaobanStaff.getWxOpenUseId() : tabHaobanStaff.getWxUserId();
}
@Override
public com.gic.api.base.commons.ServiceResponse<Void> sendPreMessage(String enterpriseId ,String storeId, String message) {
log.info("线下预约通知,storeId={}",storeId);
ClerkDTO clerkDTO = this.clerkService.getClerkLeaderByStoreId(storeId) ;
if(null == clerkDTO) {
log.info("店长查不到");
return com.gic.api.base.commons.ServiceResponse.success() ;
}
String clerkId = clerkDTO.getClerkId() ;
StaffClerkRelationDTO dto = this.staffClerkRelationApiService.getOneByClerkId(clerkId) ;
if(null == dto) {
log.info("导购成员未关联");
return com.gic.api.base.commons.ServiceResponse.success() ;
}
String eid = dto.getEnterpriseId() ;
if(!enterpriseId.equals(eid)) {
log.info("导购成员关联多个");
return com.gic.api.base.commons.ServiceResponse.success() ;
}
String wxEnterpriseId = dto.getWxEnterpriseId() ;
String staffId = dto.getStaffId() ;
WxEnterpriseQwDTO qwDTO = this.wxEnterpriseService.getQwInfo(wxEnterpriseId);
if (qwDTO == null) {
log.info("企业为空");
return com.gic.api.base.commons.ServiceResponse.success() ;
}
StaffDTO staff = this.staffApiService.selectById(staffId) ;
QywxXcxSendMessageDTO messageDTO = new QywxXcxSendMessageDTO();
String wxUserId = staff.getWxUserId() ;
if(qwDTO.needOpenUserId3th()) {
wxUserId = staff.getWxOpenUseId() ;
}
messageDTO.setAppid(config.getAppid());
messageDTO.setUserIds(Arrays.asList(wxUserId));
messageDTO.setPage(NoticeMessageTypeEnum.OFFLINE_PRE.getPageUrl()+NoticeMessageTypeEnum.OFFLINE_PRE.getPageType());
messageDTO.setTitle(NoticeMessageTypeEnum.OFFLINE_PRE.getName());
Map<String, String> map = new HashMap<>();
map.put("事件", message);
List<ItemDTO> items = getItemsList(map);
messageDTO.setItems(items);
qywxSuiteApiService.sendMessage(qwDTO.getThirdCorpid(), config.getWxSuiteid(), messageDTO);
return com.gic.api.base.commons.ServiceResponse.success() ;
}
}
......@@ -438,10 +438,9 @@ public class StaffDepartmentRelatedApiServiceImpl implements StaffDepartmentRela
messageDTO.setTitle(title);
messageDTO.setItems(items);
logger.info("发送参数为corpId============:{},suitId============:{},messageDTO============:{},", corpId, config.getWxSuiteid(), JSONObject.toJSONString(messageDTO));
logger.info("发送消息参数为corpId={},messageDTO={},", corpId, JSONObject.toJSONString(messageDTO));
boolean b = qywxSuiteApiService.sendMessage(corpId, config.getWxSuiteid(), messageDTO);
logger.info("发送===============》{}", b);
logger.info("发送消息返回={}", b);
return b;
}
......
package com.gic.haoban.manage.web.controller;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.convert.Convert;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
import javax.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.gic.api.base.commons.ServiceResponse;
......@@ -12,17 +31,43 @@ import com.gic.dict.api.dto.DictDTO;
import com.gic.dict.api.service.ManagerDictService;
import com.gic.enterprise.api.dto.EnterpriseDTO;
import com.gic.enterprise.api.dto.StoreDTO;
import com.gic.enterprise.api.service.AccountService;
import com.gic.enterprise.api.service.EnterpriseService;
import com.gic.haoban.app.customer.dto.*;
import com.gic.haoban.app.customer.dto.ChildDTO;
import com.gic.haoban.app.customer.dto.CustomerDTO;
import com.gic.haoban.app.customer.dto.FilterListDTO;
import com.gic.haoban.app.customer.dto.MemberInfoListParamsDTO;
import com.gic.haoban.app.customer.dto.StaffOpenRelatedDTO;
import com.gic.haoban.app.customer.service.api.service.CustomerApiService;
import com.gic.haoban.app.customer.service.api.service.StaffMemberRelationApiService;
import com.gic.haoban.common.anno.HttpLimit;
import com.gic.haoban.common.anno.IgnoreLogin;
import com.gic.haoban.common.utils.EntityUtil;
import com.gic.haoban.common.utils.HaobanResponse;
import com.gic.haoban.manage.api.dto.*;
import com.gic.haoban.manage.api.dto.ClerkMainStoreRelatedDTO;
import com.gic.haoban.manage.api.dto.ExternalClerkRelatedDTO;
import com.gic.haoban.manage.api.dto.ExternalUserDTO;
import com.gic.haoban.manage.api.dto.MemberStoreDTO;
import com.gic.haoban.manage.api.dto.MemberUnionidRelatedDTO;
import com.gic.haoban.manage.api.dto.MiniprogramSettingDTO;
import com.gic.haoban.manage.api.dto.SecretSettingDTO;
import com.gic.haoban.manage.api.dto.StaffClerkInfoDTO;
import com.gic.haoban.manage.api.dto.StaffClerkRelationDTO;
import com.gic.haoban.manage.api.dto.StaffDTO;
import com.gic.haoban.manage.api.dto.StaffPrivacyUseLogDTO;
import com.gic.haoban.manage.api.dto.UserLoginLogDTO;
import com.gic.haoban.manage.api.dto.WxEnterpriseDTO;
import com.gic.haoban.manage.api.dto.WxEnterpriseQwDTO;
import com.gic.haoban.manage.api.dto.WxEnterpriseRelationDetailDTO;
import com.gic.haoban.manage.api.dto.YwWxEnterpriseDTO;
import com.gic.haoban.manage.api.enums.SecretTypeEnum;
import com.gic.haoban.manage.api.service.*;
import com.gic.haoban.manage.api.service.ClerkMainStoreRelatedApiService;
import com.gic.haoban.manage.api.service.ExternalClerkRelatedApiService;
import com.gic.haoban.manage.api.service.MemberUnionidRelatedApiService;
import com.gic.haoban.manage.api.service.StaffApiService;
import com.gic.haoban.manage.api.service.StaffClerkRelationApiService;
import com.gic.haoban.manage.api.service.WxEnterpriseApiService;
import com.gic.haoban.manage.api.service.WxEnterpriseRelatedApiService;
import com.gic.haoban.manage.web.config.Config;
import com.gic.haoban.manage.web.errCode.HaoBanErrCode;
import com.gic.haoban.manage.web.qo.GetUserByMemberCodeQo;
......@@ -37,21 +82,9 @@ import com.gic.member.api.service.MemberOpenCardBusinessService;
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;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import java.util.*;
import java.util.stream.Collectors;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.convert.Convert;
@RestController
public class WxEnterpriseInfoController extends WebBaseController {
......@@ -92,6 +125,8 @@ public class WxEnterpriseInfoController extends WebBaseController {
private ClerkMainStoreRelatedApiService clerkMainStoreRelatedApiService;
@Autowired
private CustomerApiService customerApiService;
@Autowired
private AccountService accountService ;
/**
......@@ -612,5 +647,16 @@ public class WxEnterpriseInfoController extends WebBaseController {
memberOpenCardBusinessService.memberClerkProcessByQywxFriend(enterpriseId, memberId, unionid, relationKey);
return resultResponse(HaoBanErrCode.ERR_1);
}
@RequestMapping("check-storage-fee")
@ResponseBody
public RestResponse<Object> checkStorageFee(String enterpriseId , String url) {
String gicUrl = "1251519181.cos.ap-shanghai.myqcloud.com" ;
if(StringUtils.isNotBlank(url) && !url.contains(gicUrl)) {
return RestResponse.successResult(true) ;
}
boolean check = this.accountService.storageFeeCheck(enterpriseId) ;
return RestResponse.successResult(check) ;
}
}
......@@ -112,9 +112,13 @@
<dubbo:reference interface="com.gic.haoban.manage.api.service.role.HaobanRoleApiService" id="haobanRoleApiService"/>
<dubbo:reference interface="com.gic.haoban.manage.api.service.role.HaobanMenuApiService" id="haobanMenuApiService"/>
<dubbo:reference interface="com.gic.enterprise.api.service.AccountService" id="accountService"/>
<dubbo:reference interface="com.gic.content.api.service.ContentColumnApiService" id="contentColumnApiService" timeout="10000" retries="0" check="false"/>
<dubbo:reference interface="com.gic.content.api.service.ContentMaterialApiService" id="contentMaterialApiService" timeout="10000" retries="0" check="false"/>
<dubbo:reference interface="com.gic.content.api.service.ContentMaterialShareApiService" id="contentMaterialShareApiService" timeout="10000" retries="0" check="false"/>
<dubbo:reference id="settingApiService" interface="com.gic.haoban.app.aggregation.api.service.SettingApiService" timeout="10000" retries="0" check="false"/>
</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