|
@@ -8,13 +8,16 @@ import com.miaxis.common.core.domain.entity.UserInfo;
|
|
|
import com.miaxis.common.utils.StringUtils;
|
|
|
import com.miaxis.common.utils.wx.MessageUtil;
|
|
|
import com.miaxis.feign.service.IWxSendService;
|
|
|
+import com.miaxis.school.mapper.SchoolInfoMapper;
|
|
|
import com.miaxis.system.service.ISysUserService;
|
|
|
+import com.miaxis.user.service.IUserInfoService;
|
|
|
import com.miaxis.wx.domain.WxForeverCode;
|
|
|
import com.miaxis.wx.mapper.WxMenuMapper;
|
|
|
import com.miaxis.wx.service.IWxForeverCodeService;
|
|
|
import com.miaxis.wx.service.IWxGzhService;
|
|
|
import com.miaxis.wx.service.IWxMessageEvenService;
|
|
|
import com.qcloud.cos.COSClient;
|
|
|
+import lombok.Data;
|
|
|
import lombok.RequiredArgsConstructor;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.commons.io.IOUtils;
|
|
@@ -46,10 +49,14 @@ public class WxGzhServiceImpl implements IWxGzhService {
|
|
|
|
|
|
private final ISysUserService userService;
|
|
|
|
|
|
+ private final IUserInfoService userInfoService;
|
|
|
+
|
|
|
private final IWxMessageEvenService wxMessageEvenService;
|
|
|
|
|
|
private final IWxForeverCodeService wxForeverCodeService;
|
|
|
|
|
|
+ private final SchoolInfoMapper schoolInfoMapper;
|
|
|
+
|
|
|
@Value("${app.appid}")
|
|
|
private String appid;
|
|
|
|
|
@@ -126,10 +133,12 @@ public class WxGzhServiceImpl implements IWxGzhService {
|
|
|
}
|
|
|
else if (content.startsWith("你好")){
|
|
|
return MessageUtil.initText(fromUserName, toUserName, "你好啊");
|
|
|
- }else if (content.startsWith("傻逼")){
|
|
|
- return MessageUtil.initText(fromUserName, toUserName, "你才是煞笔");
|
|
|
+ }else if (content.startsWith("查看菜单")){
|
|
|
+ String content1 = "<a href=\"weixin://bizmsgmenu?msgmenuid=1&msgmenucontent=菜单1\">\\n";
|
|
|
+ content1+="<a href=\"weixin://bizmsgmenu?msgmenuid=2&msgmenucontent=菜单2\">\\n";
|
|
|
+ return MessageUtil.initText(fromUserName, toUserName, content1);
|
|
|
}else {
|
|
|
- return MessageUtil.initText(fromUserName, toUserName, "文本消息-默认回复信息");
|
|
|
+ return MessageUtil.initText(fromUserName, toUserName, "金牌车教,您的学车好伙伴!");
|
|
|
}
|
|
|
|
|
|
} else if (MessageUtil.MESSAGE_IMAGE.equals(msgType)) { // 图片消息
|
|
@@ -159,7 +168,7 @@ public class WxGzhServiceImpl implements IWxGzhService {
|
|
|
return MessageUtil.initText(fromUserName,toUserName,subscribeEvent);
|
|
|
|
|
|
}else {
|
|
|
- return MessageUtil.initText(fromUserName, toUserName, "关注事件");
|
|
|
+ return MessageUtil.initText(fromUserName, toUserName, "欢迎关注金牌车教,您的学车好伙伴!");
|
|
|
}
|
|
|
|
|
|
} else if (MessageUtil.MESSAGE_UNSUBSCRIBE.equals(event)) { // 取消订阅事件
|
|
@@ -183,6 +192,15 @@ public class WxGzhServiceImpl implements IWxGzhService {
|
|
|
String mediaId = wxMessageEvenService.gainTicketEvent(fromUserName, this.getGzhToken(),true,wxForeverCode);
|
|
|
return MessageUtil.initImage(fromUserName,toUserName,mediaId);
|
|
|
}
|
|
|
+ //判定是否需要填写驾校信息
|
|
|
+ //查询该用户的销售类型
|
|
|
+ UserInfo userInfo = userInfoService.getOne(new QueryWrapper<UserInfo>().eq("openid", fromUserName));
|
|
|
+ //查询该用户的上级
|
|
|
+ UserInfo upUserInfo = userInfoService.getUpUserInfo(fromUserName);
|
|
|
+ //当用户销售类型为 普通用户(含驾校分成) 并且他的父级不是代理商(含驾校分成)时,则需要填写驾校信息,且未填写驾校信息时
|
|
|
+// if (userInfo.getSaleType() ==1 && upUserInfo.getSaleType()!=3 && upUserInfo.getSchoolName() == null ){
|
|
|
+// return choseSchoolName(userInfo,null,fromUserName,toUserName);
|
|
|
+// }
|
|
|
String mediaId = wxMessageEvenService.gainTicketEvent(fromUserName, this.getGzhToken(), false, wxForeverCode);
|
|
|
return MessageUtil.initImage(fromUserName,toUserName,mediaId);
|
|
|
}
|
|
@@ -197,8 +215,66 @@ public class WxGzhServiceImpl implements IWxGzhService {
|
|
|
return null;
|
|
|
}
|
|
|
|
|
|
- public static void main(String[] args) {
|
|
|
- System.out.println("qrscene_ovKTX5-FKLF6_sgTtCIXpG_lz3PY".substring(8));
|
|
|
+// private String choseSchoolName(UserInfo userInfo,String text,String fromUserName,String toUserName) throws Exception {
|
|
|
+// int index =0;
|
|
|
+// if (userInfo.getCityName() ==null){
|
|
|
+// if ()
|
|
|
+// QueryParams queryParams = new QueryParams();
|
|
|
+// queryParams.setChoseColumName("city_name");
|
|
|
+// List<String> cities = schoolInfoMapper.queryNames(queryParams);
|
|
|
+// String content = "请选择驾校所在省份: \\n";
|
|
|
+// for (String city: cities){
|
|
|
+// content+=" "+"<a href=\"weixin://bizmsgmenu?msgmenuid="+index+"&msgmenucontent="+city+"\">"+city+"</a>\\n";
|
|
|
+// index++;
|
|
|
+// }
|
|
|
+// return MessageUtil.initText(fromUserName, toUserName, content);
|
|
|
+// }
|
|
|
+//
|
|
|
+// //如果输入值是市名称,则查出改市所有区名称
|
|
|
+// if (cities.contains(text)){
|
|
|
+// QueryParams queryParamsArea = new QueryParams();
|
|
|
+// queryParams.setChoseColumName("area_name");
|
|
|
+// queryParams.setConditionColumName("city_name");
|
|
|
+// queryParams.setValue(text);
|
|
|
+// List<String> areas = schoolInfoMapper.queryNames(queryParamsArea);
|
|
|
+// String content = "请选择驾校所在区: \\n";
|
|
|
+// for (String area: areas){
|
|
|
+// content+=" "+"<a href=\"weixin://bizmsgmenu?msgmenuid="+index+"&msgmenucontent="+area+"\">"+area+"</a>\\n";
|
|
|
+// index++;
|
|
|
+// }
|
|
|
+// return MessageUtil.initText(fromUserName, toUserName, content);
|
|
|
+// }
|
|
|
+//
|
|
|
+// QueryParams queryParamsArea = new QueryParams();
|
|
|
+// queryParams.setChoseColumName("area_name");
|
|
|
+// queryParams.setConditionColumName("city_name");
|
|
|
+// queryParams.setValue(text);
|
|
|
+// List<String> areas = schoolInfoMapper.queryNames(queryParamsArea);
|
|
|
+// //如果输入值是区名称,则选出所有区驾校名称
|
|
|
+// if (areas.contains(text)){
|
|
|
+// QueryParams queryParamsSchool = new QueryParams();
|
|
|
+// queryParams.setChoseColumName("area_name");
|
|
|
+// queryParams.setConditionColumName("city_name");
|
|
|
+// queryParams.setValue(text);
|
|
|
+// List<String> areas = schoolInfoMapper.queryNames(queryParamsArea);
|
|
|
+// String content = "请选择驾校所在区: \\n";
|
|
|
+// for (String area: areas){
|
|
|
+// content+=" "+"<a href=\"weixin://bizmsgmenu?msgmenuid="+index+"&msgmenucontent="+area+"\">"+area+"</a>\\n";
|
|
|
+// index++;
|
|
|
+// }
|
|
|
+// return MessageUtil.initText(fromUserName, toUserName, content);
|
|
|
+// }
|
|
|
+
|
|
|
+
|
|
|
+// return null;
|
|
|
+// }
|
|
|
+
|
|
|
+
|
|
|
+ @Data
|
|
|
+ public class QueryParams {
|
|
|
+ String choseColumName;
|
|
|
+ String conditionColumName;
|
|
|
+ String value;
|
|
|
}
|
|
|
|
|
|
|