Commit 11daef44 authored by yangshuxing's avatar yangshuxing

bug修改

parent 2d11c98b
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
package com.dlbridge.jadp.common.interceptor; package com.dlbridge.jadp.common.interceptor;
import com.dlbridge.jadp.common.service.JService; import com.dlbridge.jadp.common.service.JService;
import com.dlbridge.jadp.plugins.cmpt.bean.exception.NoAuthException;
import com.neusoft.www.utils.web.RequestParamHelper; import com.neusoft.www.utils.web.RequestParamHelper;
import lombok.extern.log4j.Log4j; import lombok.extern.log4j.Log4j;
import lombok.extern.log4j.Log4j2; import lombok.extern.log4j.Log4j2;
...@@ -41,6 +42,14 @@ public class SecurityInterceptor extends JService implements HandlerInterceptor ...@@ -41,6 +42,14 @@ public class SecurityInterceptor extends JService implements HandlerInterceptor
Method method = handlerMethod.getMethod(); Method method = handlerMethod.getMethod();
PageView annotation = method.getAnnotation(PageView.class); PageView annotation = method.getAnnotation(PageView.class);
String userAgent = request.getHeader("user-agent").toLowerCase();
if(userAgent.indexOf("miniprogram")>-1) {//小程序
String partnerId = request.getParameter("partnerId");
if(partnerId == null){
throw new NoAuthException("未查询到partnerdId,没权限!");
}
}
if (annotation != null) { if (annotation != null) {
String[] split = request.getRequestURI().split("/"); String[] split = request.getRequestURI().split("/");
String cmptId = split[split.length - 1]; String cmptId = split[split.length - 1];
......
package com.dlbridge.jadp.config.properties;
import lombok.Getter;
import lombok.Setter;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Configuration;
import org.springframework.stereotype.Component;
@Component
@ConfigurationProperties(prefix = "weixin.micro")
@Setter
@Getter
public class WeiXin {
private String appid;
private String secret;
}
package com.dlbridge.jadp.job;
import com.alibaba.fastjson.JSONObject;
import com.dlbridge.jadp.config.properties.WeiXin;
import lombok.extern.log4j.Log4j2;
import org.springframework.data.redis.core.ValueOperations;
import org.springframework.http.ResponseEntity;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import org.springframework.web.client.RestTemplate;
import javax.annotation.PostConstruct;
import javax.annotation.Resource;
@Component
@Log4j2
public class WeiXinAccessToken {
@Resource
RestTemplate restTemplate;
private static String ACCESS_TOKEN;
@Resource
WeiXin weiXin;
@Resource
private ValueOperations valueOperations;
/*@Scheduled(fixedRate = 3600 * 1000)
public void accessToken() {
log.info("获取access_token...");
ResponseEntity<String> forEntity = restTemplate.getForEntity("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&" +
"appid=" + weiXin.getAppid() + "&secret=" + weiXin.getSecret(),
String.class);
log.info("appId:"+weiXin.getAppid()+",获取token结果:" + forEntity.getBody());
ACCESS_TOKEN = JSONObject.parseObject(forEntity.getBody()).getString("access_token");
log.info("access_token:" + ACCESS_TOKEN);
valueOperations.set("micro_gk:access_token",ACCESS_TOKEN);
}*/
@Scheduled(fixedRate = 1800 * 1000)
public void accessToken() {
ACCESS_TOKEN = (String) valueOperations.get("micro_gk:access_token");
log.info("获取access_token: " + ACCESS_TOKEN);
}
public static String getAccessToken(){
return ACCESS_TOKEN;
}
}
package com.dlbridge.jadp.plugins.cmpt.bean;
import lombok.Data;
@Data
public class Partner {
private Integer id;
private String appId;
private String appSecret;
private int userId;
private String partnerId;
private int status;
private String name;
}
package com.dlbridge.jadp.plugins.cmpt.bean.exception;
public class NoAuthException extends Exception{
public NoAuthException(String message) {
super(message);
}
}
package com.dlbridge.jadp.plugins.cmpt.dao.mapper; package com.dlbridge.jadp.plugins.cmpt.dao.mapper;
import com.dlbridge.jadp.plugins.cmpt.bean.CmptVo; import com.dlbridge.jadp.plugins.cmpt.bean.*;
import com.dlbridge.jadp.plugins.cmpt.bean.EnrollInfo;
import com.dlbridge.jadp.plugins.cmpt.bean.NeuUser;
import com.dlbridge.jadp.plugins.cmpt.bean.RaceEnrollUser;
import com.dlbridge.jadp.plugins.cmpt.dao.model.UserCmpt; import com.dlbridge.jadp.plugins.cmpt.dao.model.UserCmpt;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
...@@ -12,6 +9,7 @@ import org.springframework.data.domain.Pageable; ...@@ -12,6 +9,7 @@ import org.springframework.data.domain.Pageable;
import com.dlbridge.jadp.plugins.cmpt.dao.model.Cmpt; import com.dlbridge.jadp.plugins.cmpt.dao.model.Cmpt;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* 赛事接口 * 赛事接口
...@@ -42,9 +40,9 @@ public interface CmptMapper { ...@@ -42,9 +40,9 @@ public interface CmptMapper {
List<CmptVo> queryUserCmptList(Integer userId); List<CmptVo> queryUserCmptList(Integer userId);
long countCount(@Param("keyword") String keyword,@Param("type") int type); long countCount(@Param("param") Map<String,String> param);
List<Cmpt> queryCmpt(@Param("page") Pageable page, @Param("keyword") String keyword,@Param("type") int type); List<Cmpt> queryCmpt(@Param("page") Pageable page, @Param("param") Map<String,String> param);
void updateCmpt(Cmpt cmpt); void updateCmpt(Cmpt cmpt);
...@@ -67,4 +65,10 @@ public interface CmptMapper { ...@@ -67,4 +65,10 @@ public interface CmptMapper {
void updateUserCmptById(@Param("cmpt") UserCmpt cmpt); void updateUserCmptById(@Param("cmpt") UserCmpt cmpt);
int getEnrollInfoCount(@Param("cmptId") Integer cmptId,@Param("phone") String phone); int getEnrollInfoCount(@Param("cmptId") Integer cmptId,@Param("phone") String phone);
String getPartnerId(Integer cmptid);
String getDefaultPartnerId(Integer cmptid);
Partner getParnterByParnterId(String partnerId);
} }
...@@ -132,18 +132,18 @@ ...@@ -132,18 +132,18 @@
</select> </select>
<sql id="cmpt-where-sql"> <sql id="cmpt-where-sql">
<if test="@org.apache.commons.lang3.StringUtils@isNotBlank(param.keyword)">
<if test="@org.apache.commons.lang3.StringUtils@isNotBlank(keyword)"> and a.cmpt_name like concat('%',#{param.keyword},'%')
and a.cmpt_name like concat('%',#{keyword},'%')
</if> </if>
<if test="true"> <if test="true">
and a.cmpt_status = 2 and a.cmpt_status = 2
</if> </if>
<if test="param.type == 1">
<if test="type == 1">
and now() >= c.openTime and c.deadLine >= now() and now() >= c.openTime and c.deadLine >= now()
</if> </if>
<if test="param.userId > 0">
and c.createUserId=#{param.userId}
</if>
</sql> </sql>
<update id="updateCmpt"> <update id="updateCmpt">
...@@ -202,7 +202,26 @@ ...@@ -202,7 +202,26 @@
<select id="getEnrollInfoCount" resultType="int"> <select id="getEnrollInfoCount" resultType="int">
select count(1) select count(1)
from common.neucmpt a inner join raceenroll.competitionusermap b on a.gcmptid=b.cmptId from common.neucmpt a
where b.callPhone=#{phone} and a.gtcmptid=#{cmptId} and b.isDelete=0 and b.isTeam=0 inner join raceenroll.competitionusermap b on a.gcmptid=b.cmptId
where b.callPhone=#{phone} and a.gtcmptid=#{cmptId} and b.isDelete=0 and b.isTeam=0 and b.isPay>0
</select>
<select id="getPartnerId" resultType="java.lang.String">
select c.partner_id
from common.neucmpt a inner join raceenroll.competition b
on a.gcmptid = b.cmptId
inner join gk_app_info c on b.createUserId=c.user_id
where a.gtcmptid=#{cmptId} limit 1
</select>
<select id="getDefaultPartnerId" resultType="java.lang.String">
select partner_id from gk_app_info where id=1
</select>
<select id="getParnterByParnterId" resultType="com.dlbridge.jadp.plugins.cmpt.bean.Partner">
select id,app_id appId,partner_id partnerId,app_secret appSecret,status,user_id userId
from gk_app_info
where partner_id=#{partnerId}
</select> </select>
</mapper> </mapper>
\ No newline at end of file
package com.dlbridge.jadp.plugins.cmpt.service; package com.dlbridge.jadp.plugins.cmpt.service;
import com.dlbridge.jadp.plugins.cmpt.bean.CmptVo; import com.dlbridge.jadp.plugins.cmpt.bean.*;
import com.dlbridge.jadp.plugins.cmpt.bean.EnrollInfo;
import com.dlbridge.jadp.plugins.cmpt.bean.NeuUser;
import com.dlbridge.jadp.plugins.cmpt.bean.RaceEnrollUser;
import com.dlbridge.jadp.plugins.cmpt.dao.mapper.CmptMapper; import com.dlbridge.jadp.plugins.cmpt.dao.mapper.CmptMapper;
import com.dlbridge.jadp.plugins.cmpt.dao.model.UserCmpt; import com.dlbridge.jadp.plugins.cmpt.dao.model.UserCmpt;
import com.dlbridge.jadp.plugins.cmpt.utils.Page; import com.dlbridge.jadp.plugins.cmpt.utils.Page;
...@@ -19,6 +16,7 @@ import com.dlbridge.jadp.plugins.cmpt.dao.model.Cmpt; ...@@ -19,6 +16,7 @@ import com.dlbridge.jadp.plugins.cmpt.dao.model.Cmpt;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* 赛事 * 赛事
...@@ -128,9 +126,9 @@ public class CmptService { ...@@ -128,9 +126,9 @@ public class CmptService {
return cmptMapper.queryUserCmptList(userId); return cmptMapper.queryUserCmptList(userId);
} }
public Page<List<Cmpt>> queryCmpt(Pageable page, String keyword, int type) { public Page<List<Cmpt>> queryCmpt(Pageable page, Map<String,String> param) {
long count = cmptMapper.countCount(keyword,type); long count = cmptMapper.countCount(param);
List<Cmpt> list = cmptMapper.queryCmpt(page, keyword,type); List<Cmpt> list = cmptMapper.queryCmpt(page, param);
return PageFactory.setContent(list, page, count); return PageFactory.setContent(list, page, count);
} }
...@@ -174,4 +172,16 @@ public class CmptService { ...@@ -174,4 +172,16 @@ public class CmptService {
public int getEnrollInfoCount(Integer cmptId, String phone) { public int getEnrollInfoCount(Integer cmptId, String phone) {
return cmptMapper.getEnrollInfoCount(cmptId,phone); return cmptMapper.getEnrollInfoCount(cmptId,phone);
} }
public String getPartnerId(Integer cmptid) {
String parnterId = cmptMapper.getPartnerId(cmptid);
if(parnterId == null){
return cmptMapper.getDefaultPartnerId(cmptid);
}
return parnterId;
}
public Partner getPartnerById(String parnter) {
return cmptMapper.getParnterByParnterId(parnter);
}
} }
...@@ -61,26 +61,6 @@ public class RemoteService { ...@@ -61,26 +61,6 @@ public class RemoteService {
public Cmpt getCmptByCmptId(Integer cmptId) { public Cmpt getCmptByCmptId(Integer cmptId) {
Cmpt cmpt = cmptService.getCmptFromEnroll(cmptId); Cmpt cmpt = cmptService.getCmptFromEnroll(cmptId);
return cmpt; return cmpt;
/* ResponseEntity<String> forEntity = restTemplate.getForEntity(timerURL + "getCmptConfig.do?cmptId="
+ cmptId, String.class);
if (forEntity.getStatusCode() == HttpStatus.OK) {
String resultString = forEntity.getBody();
JSONObject object = JSONObject.parseObject(resultString);
Cmpt cmpt = new Cmpt();
cmpt.setCmptId(cmptId);
log.info(object.toJSONString());
JSONObject content = object.getJSONObject("content");
log.info("resultString:" + resultString);
if (content != null && !content.isEmpty()) {
cmpt.setCmptName(content.getString("cmptName"));
cmpt.setStartTime(content.getString("startTime"));
return cmpt;
} else {
return null;
}
} else {
return null;
}*/
} }
public EnrollInfo getUserInfoByPhone(String phone, Integer cmptId) { public EnrollInfo getUserInfoByPhone(String phone, Integer cmptId) {
...@@ -333,7 +313,7 @@ public class RemoteService { ...@@ -333,7 +313,7 @@ public class RemoteService {
public HashMap<String,String> uploadGpsCheckpointScore(int cmptId, String records){ public HashMap<String,String> uploadGpsCheckpointScore(int cmptId, String records){
HashMap<String,String> resultMap=new HashMap<String,String>(); HashMap<String,String> resultMap=new HashMap<String,String>();
ResponseEntity<String> forEntity = restTemplate.getForEntity(timerURL + "/cmpt/recordUpload.do?cmptId="+ cmptId + "&records="+records, String.class); ResponseEntity<String> forEntity = restTemplate.getForEntity(timerURL + "/cmpt/recordUpload.do?cmptId="+ cmptId + "&records="+records+"&appId=02001_1.0", String.class);
if (forEntity.getStatusCode() == HttpStatus.OK) { if (forEntity.getStatusCode() == HttpStatus.OK) {
String resultString = forEntity.getBody(); String resultString = forEntity.getBody();
log.info("上传成绩的信息:" + resultString); log.info("上传成绩的信息:" + resultString);
......
...@@ -2,7 +2,8 @@ package com.dlbridge.jadp.plugins.cmpt.service; ...@@ -2,7 +2,8 @@ package com.dlbridge.jadp.plugins.cmpt.service;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.dlbridge.jadp.config.properties.WeiXin; import com.dlbridge.jadp.plugins.cmpt.bean.Partner;
import com.dlbridge.jadp.plugins.cmpt.dao.mapper.CmptMapper;
import lombok.extern.log4j.Log4j2; import lombok.extern.log4j.Log4j2;
import org.apache.http.HttpEntity; import org.apache.http.HttpEntity;
import org.apache.http.client.methods.CloseableHttpResponse; import org.apache.http.client.methods.CloseableHttpResponse;
...@@ -13,8 +14,6 @@ import org.apache.http.impl.client.HttpClients; ...@@ -13,8 +14,6 @@ import org.apache.http.impl.client.HttpClients;
import org.apache.http.ssl.SSLContextBuilder; import org.apache.http.ssl.SSLContextBuilder;
import org.apache.http.ssl.TrustStrategy; import org.apache.http.ssl.TrustStrategy;
import org.apache.http.util.EntityUtils; import org.apache.http.util.EntityUtils;
import org.apache.log4j.Logger;
import org.apache.log4j.spi.LoggerFactory;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
...@@ -30,14 +29,15 @@ import java.security.cert.X509Certificate; ...@@ -30,14 +29,15 @@ import java.security.cert.X509Certificate;
public class WeixinInfoService { public class WeixinInfoService {
@Resource @Resource
WeiXin weiXin; CmptMapper cmptMapper;
public JSONObject getOpenIdAndSessionKey(String code) { public JSONObject getOpenIdAndSessionKey(String code, String partnerId) {
try { try {
log.info("appid:" + weiXin.getAppid() + ",secret:" + weiXin.getSecret()); Partner parnter= cmptMapper.getParnterByParnterId(partnerId);
log.info("appid:" + parnter.getAppId() + ",secret:" + parnter.getAppSecret());
CloseableHttpClient hp = createSSLClientDefault(); CloseableHttpClient hp = createSSLClientDefault();
HttpGet hg = new HttpGet("https://api.weixin.qq.com/sns/jscode2session?appid=" + HttpGet hg = new HttpGet("https://api.weixin.qq.com/sns/jscode2session?appid=" +
weiXin.getAppid() + "&secret=" + weiXin.getSecret() + "&js_code=" + code + "&grant_type=authorization_code"); parnter.getAppId() + "&secret=" + parnter.getAppSecret() + "&js_code=" + code + "&grant_type=authorization_code");
CloseableHttpResponse response = hp.execute(hg); CloseableHttpResponse response = hp.execute(hg);
HttpEntity entity = response.getEntity(); HttpEntity entity = response.getEntity();
String content = EntityUtils.toString(entity, "utf-8"); String content = EntityUtils.toString(entity, "utf-8");
......
package com.dlbridge.jadp.plugins.cmpt.web;
import com.neusoft.www.utils.web.Result;
import org.springframework.core.annotation.Order;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;
@ControllerAdvice
@Order(0)
public class ExceptionController {
@ResponseBody
@ExceptionHandler(value = Exception.class)
public Result errorHandler(Exception ex) {
return Result.fail().setMsg(ex.getMessage());
}
}
...@@ -38,7 +38,6 @@ import java.net.HttpURLConnection; ...@@ -38,7 +38,6 @@ import java.net.HttpURLConnection;
import java.net.URL; import java.net.URL;
import java.text.DecimalFormat; import java.text.DecimalFormat;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.time.LocalTime;
import java.util.*; import java.util.*;
...@@ -139,7 +138,7 @@ public class MicroApiController { ...@@ -139,7 +138,7 @@ public class MicroApiController {
if (info == null) { if (info == null) {
int count = cmptService.getEnrollInfoCount(cmptId,phone); int count = cmptService.getEnrollInfoCount(cmptId,phone);
if(count == 0){ if(count == 0){
return Result.fail().setMsg("该用户未报名!"); return Result.fail().setMsg("请完成报名,再绑定!");
}else{ }else{
return Result.fail().setMsg("报名成功,未查询到组委会分配的号码牌!"); return Result.fail().setMsg("报名成功,未查询到组委会分配的号码牌!");
} }
...@@ -158,13 +157,14 @@ public class MicroApiController { ...@@ -158,13 +157,14 @@ public class MicroApiController {
@ApiResponse(code = -1, message = "失败"), @ApiResponse(code = -1, message = "失败"),
@ApiResponse(code = 200, message = "成功", response = Result.class)}) @ApiResponse(code = 200, message = "成功", response = Result.class)})
@ApiOperation(value = "微信手机信息绑定赛事", notes = "微信手机信息绑定赛事", tags = "赛事页面") @ApiOperation(value = "微信手机信息绑定赛事", notes = "微信手机信息绑定赛事", tags = "赛事页面")
public Result<EnrollInfo> bind(Integer userId, Integer cmptId, String encryptedData, String iv, String code) { public Result<EnrollInfo> bind(HttpServletRequest request,Integer userId, Integer cmptId, String encryptedData, String iv, String code) {
try { try {
Object session_key = valueOperations.get(KEY + userId); Object session_key = valueOperations.get(KEY + userId);
if (session_key == null) { if (session_key == null) {
log.info("session_key:" + session_key); log.info("session_key:" + session_key);
if (StringUtils.isNotBlank(code)) { if (StringUtils.isNotBlank(code)) {
JSONObject json = weixinInfoService.getOpenIdAndSessionKey(code); String partnerId = request.getParameter("partnerId");
JSONObject json = weixinInfoService.getOpenIdAndSessionKey(code,partnerId);
if (null != json) { if (null != json) {
if (json.containsKey("errcode")) { //是否有错误 if (json.containsKey("errcode")) { //是否有错误
return Result.fail().setMsg(json.getString("errcode") + " == " + json.getString("errmsg")); return Result.fail().setMsg(json.getString("errcode") + " == " + json.getString("errmsg"));
...@@ -196,7 +196,7 @@ public class MicroApiController { ...@@ -196,7 +196,7 @@ public class MicroApiController {
if (info == null) { if (info == null) {
int count = cmptService.getEnrollInfoCount(cmptId,purePhoneNumber); int count = cmptService.getEnrollInfoCount(cmptId,purePhoneNumber);
if(count == 0){ if(count == 0){
return Result.fail().setMsg("该用户未报名!"); return Result.fail().setMsg("请完成报名,再绑定!");
}else{ }else{
return Result.fail().setMsg("报名成功,未查询到组委会分配的号码牌!"); return Result.fail().setMsg("报名成功,未查询到组委会分配的号码牌!");
} }
...@@ -275,7 +275,14 @@ public class MicroApiController { ...@@ -275,7 +275,14 @@ public class MicroApiController {
@ApiOperation(value = "赛事列表", notes = "赛事列表,与查询接口一致", tags = "首页接口") @ApiOperation(value = "赛事列表", notes = "赛事列表,与查询接口一致", tags = "首页接口")
public Page<List<Cmpt>> cmpt(@ApiIgnore Pageable page, String keyword,HttpServletRequest request) { public Page<List<Cmpt>> cmpt(@ApiIgnore Pageable page, String keyword,HttpServletRequest request) {
int type = NumberUtils.toInt(request.getParameter("type"), 0); int type = NumberUtils.toInt(request.getParameter("type"), 0);
Page<List<Cmpt>> result = cmptService.queryCmpt(page, keyword,type); String partnerId = request.getParameter("partnerId");
Partner partner = cmptService.getPartnerById(partnerId);
log.info("partner:"+partner);
Map<String,String> param = new HashMap<>();
param.put("userId",partner.getUserId()+"");
param.put("type",type+"");
param.put("keyword",keyword);
Page<List<Cmpt>> result = cmptService.queryCmpt(page, param);
result.setCode(200); result.setCode(200);
return result; return result;
} }
...@@ -417,7 +424,8 @@ public class MicroApiController { ...@@ -417,7 +424,8 @@ public class MicroApiController {
//////////////// 1、向微信服务器 使用登录凭证 code 获取 session_key 和 openid //////////////// //////////////// 1、向微信服务器 使用登录凭证 code 获取 session_key 和 openid ////////////////
log.info("code:" + code + ",encryptedData:" + encryptedData + ",code:" + code); log.info("code:" + code + ",encryptedData:" + encryptedData + ",code:" + code);
log.info("请求方法:" + request.getMethod()); log.info("请求方法:" + request.getMethod());
JSONObject json = weixinInfoService.getOpenIdAndSessionKey(code); String partnerId = request.getParameter("partnerId");
JSONObject json = weixinInfoService.getOpenIdAndSessionKey(code, partnerId);
String openid = null; String openid = null;
String session_key; String session_key;
String unionId = null; String unionId = null;
...@@ -442,8 +450,16 @@ public class MicroApiController { ...@@ -442,8 +450,16 @@ public class MicroApiController {
JSONObject jsoninfo = JSONObject.parseObject(result); JSONObject jsoninfo = JSONObject.parseObject(result);
String name = jsoninfo.getString("nickName"); String name = jsoninfo.getString("nickName");
String imgUrl = jsoninfo.getString("avatarUrl"); String imgUrl = jsoninfo.getString("avatarUrl");
String url = geexekURL + "registerInfo/saveOrUpdateByUnionId.do?unionId=" + jsoninfo.getString("unionId") + String url = null;
if(jsoninfo.getString("unionId") != null &&
!"null".equals(jsoninfo.getString("unionId"))){
url = geexekURL + "registerInfo/saveOrUpdateByUnionId.do?unionId=" + jsoninfo.getString("unionId") +
"&userName=" + name + "&nickName=" + name + "&headImgUrl=" + imgUrl + "&userFrom=3"; "&userName=" + name + "&nickName=" + name + "&headImgUrl=" + imgUrl + "&userFrom=3";
}else{
url = geexekURL + "registerInfo/saveOrUpdateByOpenId.do?openId=" + openid +
"&userName=" + name + "&nickName=" + name + "&headImgUrl=" + imgUrl + "&userFrom=3";
}
log.info("请求的URL:" + url); log.info("请求的URL:" + url);
ResponseEntity<String> forEntity = restTemplate.getForEntity(url, String.class); ResponseEntity<String> forEntity = restTemplate.getForEntity(url, String.class);
if (forEntity.getStatusCode() == HttpStatus.OK) { if (forEntity.getStatusCode() == HttpStatus.OK) {
......
package com.dlbridge.jadp.plugins.cmpt.web; package com.dlbridge.jadp.plugins.cmpt.web;
import com.dlbridge.jadp.common.interceptor.PageView;
import com.dlbridge.jadp.common.persistence.IStorageService;
import com.dlbridge.jadp.common.persistence.Result;
import com.dlbridge.jadp.common.properties.Global;
import com.dlbridge.jadp.common.service.FileSystemStorageService;
import com.dlbridge.jadp.job.WeiXinAccessToken;
import com.dlbridge.jadp.plugins.cmpt.dao.model.Cmpt; import com.dlbridge.jadp.plugins.cmpt.dao.model.Cmpt;
import com.dlbridge.jadp.plugins.cmpt.service.CmptService; import com.dlbridge.jadp.plugins.cmpt.service.CmptService;
import com.dlbridge.jadp.plugins.cmpt.service.CmptSettingService;
import com.dlbridge.jadp.plugins.cmpt.service.RemoteService;
import org.json.JSONObject; import org.json.JSONObject;
import org.springframework.data.redis.core.ValueOperations; import org.springframework.data.redis.core.ValueOperations;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
import org.springframework.util.DigestUtils;
import org.springframework.util.StringUtils; import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.web.client.RestTemplate; import org.springframework.web.client.RestTemplate;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.support.StandardMultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import springfox.documentation.annotations.ApiIgnore; import springfox.documentation.annotations.ApiIgnore;
import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.imageio.ImageIO; import javax.imageio.ImageIO;
import javax.servlet.ServletOutputStream; import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.awt.*; import java.awt.*;
import java.awt.geom.RoundRectangle2D; import java.awt.geom.RoundRectangle2D;
import java.awt.image.BufferedImage; import java.awt.image.BufferedImage;
import java.io.*; import java.io.*;
import java.net.URL; import java.net.URL;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Controller @Controller
@RequestMapping(value = "/img") @RequestMapping(value = "/img")
@ApiIgnore @ApiIgnore
public class ResourcesController { public class ResourcesController {
@Resource
WeiXinAccessToken accessToken;
@Resource @Resource
RestTemplate restTemplate; RestTemplate restTemplate;
...@@ -60,8 +39,9 @@ public class ResourcesController { ...@@ -60,8 +39,9 @@ public class ResourcesController {
public void img(@PathVariable("cmptid") Integer cmptid, HttpServletResponse response) throws IOException { public void img(@PathVariable("cmptid") Integer cmptid, HttpServletResponse response) throws IOException {
JSONObject obj = new JSONObject(); JSONObject obj = new JSONObject();
obj.put("scene", "raceId=" + cmptid); obj.put("scene", "raceId=" + cmptid);
String partnerId = cmptService.getPartnerId(cmptid);
ResponseEntity<org.springframework.core.io.Resource> resourceResponseEntity = restTemplate.postForEntity("https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=" ResponseEntity<org.springframework.core.io.Resource> resourceResponseEntity = restTemplate.postForEntity("https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token="
+ (String) valueOperations.get("micro_gk:access_token"), obj.toString(), org.springframework.core.io.Resource.class); + (String) valueOperations.get("micro_gk:access_token_"+ partnerId) , obj.toString(), org.springframework.core.io.Resource.class);
ServletOutputStream outputStream = response.getOutputStream(); ServletOutputStream outputStream = response.getOutputStream();
org.springframework.core.io.Resource body = resourceResponseEntity.getBody(); org.springframework.core.io.Resource body = resourceResponseEntity.getBody();
...@@ -81,9 +61,10 @@ public class ResourcesController { ...@@ -81,9 +61,10 @@ public class ResourcesController {
response.addHeader("Content-Disposition", "attachment; filename=qrcode.jpg"); response.addHeader("Content-Disposition", "attachment; filename=qrcode.jpg");
JSONObject obj = new JSONObject(); JSONObject obj = new JSONObject();
obj.put("scene", "raceId=" + cmptid); obj.put("scene", "raceId=" + cmptid);
; String partnerId = cmptService.getPartnerId(cmptid);
ResponseEntity<org.springframework.core.io.Resource> resourceResponseEntity = restTemplate.postForEntity("https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=" ResponseEntity<org.springframework.core.io.Resource> resourceResponseEntity = restTemplate.postForEntity(
+ (String) valueOperations.get("micro_gk:access_token"), obj.toString(), org.springframework.core.io.Resource.class); "https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token="
+ (String) valueOperations.get("micro_gk:access_token_"+ partnerId) , obj.toString(), org.springframework.core.io.Resource.class);
Cmpt cmpt = cmptService.queryCmptBycmptId(cmptid); Cmpt cmpt = cmptService.queryCmptBycmptId(cmptid);
BufferedImage bg = ImageIO.read(resourceResponseEntity.getBody().getInputStream()); BufferedImage bg = ImageIO.read(resourceResponseEntity.getBody().getInputStream());
......
...@@ -204,7 +204,7 @@ ...@@ -204,7 +204,7 @@
$scope.mesNotify = function () { $scope.mesNotify = function () {
$scope.findMore(0) $scope.findMore(0)
$http.get("https://testevent.geexek.com.cn/registerBalance/getBalance?userId=1").success( $http.get("https://event.geexek.com/registerBalance/getBalance?userId=1").success(
function (response) { function (response) {
$scope.amount = response.result.amount $scope.amount = response.result.amount
} }
...@@ -263,8 +263,8 @@ ...@@ -263,8 +263,8 @@
console.log(smsStr) console.log(smsStr)
$.ajax({ $.ajax({
type: "POST", type: "POST",
url: "https://testevent.geexek.com.cn/sms/sendMicroGroup.do", url: "https://event.geexek.com/sms/sendMicroGroup.do",
data: {userId: 1, smsStr: JSON.stringify(smsStr), message: getMessage(0)}, data: {userId: getUId(), smsStr: JSON.stringify(smsStr), message: getMessage(0)},
async: false, async: false,
dataType: "json", dataType: "json",
success: function (data) { success: function (data) {
......
...@@ -90,15 +90,15 @@ $(document).ready(function () { ...@@ -90,15 +90,15 @@ $(document).ready(function () {
smsRevStr.push(con); smsRevStr.push(con);
$.ajax({ $.ajax({
type: "POST", type: "POST",
url: "https://testevent.geexek.com.cn/sms/sendMicroGroup.do", url: "https://event.geexek.com/sms/sendMicroGroup.do",
data: { data: {
userId: 1, smsStr: JSON.stringify(smsRevStr), message: userId: getUId(), smsStr: JSON.stringify(smsRevStr), message:
getMessage(dataName, dataPhone, dataLat + ', ' + dataLng) getMessage(dataName, dataPhone, dataLat + ', ' + dataLng)
}, },
async: false, async: false,
dataType: "json", dataType: "json",
success: function (data) { success: function (data) {
// layer.msg('救援发送成功:'+JSON.stringify(data),{icon:4,time:1000}) if(data.code == 1){
param.acceptTime = Date.now(); param.acceptTime = Date.now();
$.ajax({ $.ajax({
type: "POST", type: "POST",
...@@ -139,6 +139,10 @@ $(document).ready(function () { ...@@ -139,6 +139,10 @@ $(document).ready(function () {
} }
} }
}); });
}else{
alert(data.msg);
}
}, },
error: function (error) { error: function (error) {
// layer.msg('救援发送失败:'+JSON.stringify(error),{icon:4,time:1000}) // layer.msg('救援发送失败:'+JSON.stringify(error),{icon:4,time:1000})
......
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