Commit 2ebaa084 authored by cy's avatar cy

删除注释掉的代码,添加员工搜索

parent dc493961
......@@ -186,11 +186,12 @@
<select id="getListQueryVip" parameterType="map" resultMap="ExBaseResultMap">
SELECT u.id, u.user_name, u.phone, u.sex, u.school, u.exam_type, u.source, u.is_delete, u.create_time,
u.update_time, u.is_vip, u.vip_mobile,u.last_login_time,
s.culture_grade, s.major_grade
u.update_time, u.is_vip, u.vip_mobile,s.culture_grade, s.major_grade,st.staff_name
FROM `user` u LEFT JOIN score s ON s.user_id = u.id
left join staff_user_vip suv on u.id=suv.user_vip_id
LEFT JOIN staff st on suv.staff_id=st.id
<where>
is_delete=0 and is_vip = 1
u.is_delete=0 and is_vip = 1
<if test="startTime != null">
and create_time
between #{startTime}
......@@ -198,6 +199,7 @@
<if test="endTime != null ">and #{endTime}</if>
<if test="userName != null and userName !=''">and user_name like ('%' #{userName} '%')</if>
<if test="vipMobile != null and vipMobile !=''">and vip_mobile like ('%' #{vipMobile} '%')</if>
<if test="staffName != null and staffName !=''">and staff_name like ('%' #{staffName} '%')</if>
order by create_time desc
<if test="pageNo != null">
limit #{pageNo},#{pageSize}
......@@ -208,8 +210,10 @@
<select id="getListVipCount" parameterType="map" resultType="java.lang.Integer">
SELECT count(1)
FROM `user` u LEFT JOIN score s ON s.user_id = u.id
left join staff_user_vip suv on u.id=suv.user_vip_id
LEFT JOIN staff st on suv.staff_id=st.id
<where>
is_delete=0 and is_vip = 1
u.is_delete=0 and is_vip = 1
<if test="startTime != null ">
and create_time
between #{startTime}
......@@ -217,6 +221,7 @@
<if test="endTime != null">and #{endTime}</if>
<if test="userName != null and userName !=''">and user_name like ('%' #{userName} '%')</if>
<if test="vipMobile != null and vipMobile !=''">and vip_mobile like ('%' #{vipMobile} '%')</if>
<if test="staffName != null and staffName !=''">and staff_name like ('%' #{staffName} '%')</if>
</where>
</select>
......
......@@ -57,4 +57,10 @@ public class UserShowVo implements Serializable {
*/
@ApiModelProperty(value = "vip用户电话",name = "VipMobile")
private String VipMobile;
/**
* 类型(专科、本科)
*/
@ApiModelProperty(value = "类型(专科、本科)",name = "gradeType")
private String gradeType;
}
......@@ -49,4 +49,10 @@ public class UserVipQueryVo implements Serializable {
*/
@ApiModelProperty(value = "vip用户手机", name = "vipMobile")
private String vipMobile;
/**
* 员工姓名
*/
@ApiModelProperty(value = "员工姓名", name = "staffName")
private String staffName;
}
......@@ -39,13 +39,6 @@ public interface UserLoginService {
*/
R<UserInfoVo> login(UserLoginVo userLoginVo, HttpServletRequest request);
/**
* 手机-密码登录测试
*
* @param userLoginVo 登录信息
* @return true 成功 false 失败
*/
R<UserInfoVo> loginTest(UserLoginVo userLoginVo, HttpServletRequest request) throws Exception;
/**
* 退出登录
......
......@@ -160,6 +160,7 @@ public class StaffUserVipServiceImpl extends ServiceImpl<LocalMapper, Local> imp
}
map.put("userName", queryVo.getUserName());
map.put("vipMobile", queryVo.getVipMobile());
map.put("staffName", queryVo.getStaffName());
List<User> list1;
int count;
if(null != queryVo.getStaffId() && queryVo.getStaffId()>0){
......@@ -177,15 +178,11 @@ public class StaffUserVipServiceImpl extends ServiceImpl<LocalMapper, Local> imp
//将集合遍历拿出用户id查询成绩信息
for (User user : list1) {
UserInfoDto userInfoDto = new UserInfoDto();
QueryWrapper<StaffUserVip> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("user_vip_id",user.getId());
StaffUserVip staffUserVip = staffUserVipMapper.selectOne(queryWrapper);
Staff staff = staffMapper.selectById(staffUserVip.getStaffId());
user.setStaffName(staff.getStaffName());
BeanUtils.copyProperties(user, userInfoDto);
userInfoDto.setUserId(user.getId());
list.add(userInfoDto);
}
PageInfo<UserInfoDto> info = new PageInfo<>();
info.setPageSize(null==queryVo.getPageSize()?0:queryVo.getPageSize());
info.setPageNum(null==queryVo.getPageNo()?0:queryVo.getPageNo());
......
......@@ -201,36 +201,6 @@ public class UserLoginServiceImpl extends ServiceImpl<UsersMapper, User> impleme
}
}
@Override
public R<UserInfoVo> loginTest(UserLoginVo userLoginVo, HttpServletRequest request) throws Exception {
//1、根据手机号,获取用户信息
Map<String, Object> map = new HashMap<>(16);
map.put("phone", userLoginVo.getPhone());
map.put("is_delete", 0);
User user = usersMapper.selectOne(map);
Subject subject = SecurityUtils.getSubject();
String credentialsSalt = Md5Util.digestMD5(userLoginVo.getPassword() + userLoginVo.getPhone());
UserToken userToken = new UserToken(userLoginVo.getPhone(), credentialsSalt, USER_LOGIN_TYPE);
try {
subject.login(userToken);
UserInfoVo userInfoVo = new UserInfoVo();
userInfoVo.setUserId(user.getId());
userInfoVo.setPhone(user.getPhone());
userInfoVo.setStudentType(user.getExamType());
userInfoVo.setSex(user.getSex());
return R.ok(0, userInfoVo);
} catch (IncorrectCredentialsException e) {
return R.error(1, "账户密码错误");
} catch (LockedAccountException e) {
return R.error(1, "登录失败!请联系管理员");
} catch (AuthenticationException e) {
return R.error(1, "该用户不存在");
} catch (Exception e) {
return R.error(1, "系统异常");
}
}
@Override
public R<Boolean> loginOut(Integer userId) {
......
......@@ -7,6 +7,9 @@ import cn.wisenergy.model.app.*;
import cn.wisenergy.model.dto.UserCommitDto;
import cn.wisenergy.model.dto.UserDto;
import cn.wisenergy.model.dto.UserInfoDto;
import cn.wisenergy.model.enums.GradeType;
import cn.wisenergy.model.enums.SchemeTypeEnums;
import cn.wisenergy.model.enums.StudentType;
import cn.wisenergy.model.vo.UserInfoVo;
import cn.wisenergy.model.vo.UserQueryVo;
import cn.wisenergy.model.vo.UserShowVo;
......@@ -57,6 +60,8 @@ public class UserServiceImpl extends ServiceImpl<UsersMapper, User> implements U
@Autowired
protected VolunteerManager volunteerManager;
@Autowired
private AdmissionRuleMapper admissionRuleMapper;
@Value("${wxPay.Applets_ID}")
private String appid;
......@@ -74,7 +79,7 @@ public class UserServiceImpl extends ServiceImpl<UsersMapper, User> implements U
Map<String, Object> map = new HashMap<>(4);
//将参数放入容器中
if (null!=queryVo.getPageNo()||null!=queryVo.getPageSize()){
if (null != queryVo.getPageNo() || null != queryVo.getPageSize()) {
map.put("pageNo", (queryVo.getPageNo() - 1) * queryVo.getPageSize());
map.put("pageSize", queryVo.getPageSize());
}
......@@ -84,7 +89,7 @@ public class UserServiceImpl extends ServiceImpl<UsersMapper, User> implements U
map.put("phone", queryVo.getPhone());
//查询用户数据
List<User> list1 = usersMapper.getListQuery(map);
List<User> list1 = usersMapper.getListQuery(map);
List<UserInfoDto> list = new ArrayList<>();
......@@ -98,7 +103,7 @@ public class UserServiceImpl extends ServiceImpl<UsersMapper, User> implements U
double alipayMoney = 0.00;
//微信充值总金额
double weChatMoney = 0.00;
for(PayRecord payRecord : byIds) {
for (PayRecord payRecord : byIds) {
if (payRecord.getType() == 1) {
alipayMoney += null == payRecord.getMoney() ? 0 : payRecord.getMoney();
}
......@@ -109,8 +114,8 @@ public class UserServiceImpl extends ServiceImpl<UsersMapper, User> implements U
rechargeTimes += 1;
}
}
userInfoDto.setWeChatMoney(String.format("%.2f",weChatMoney));
userInfoDto.setAlipayMoney(String.format("%.2f",alipayMoney));
userInfoDto.setWeChatMoney(String.format("%.2f", weChatMoney));
userInfoDto.setAlipayMoney(String.format("%.2f", alipayMoney));
userInfoDto.setRechargeTimes(rechargeTimes);
userInfoDto.setQueryLimit(user.getUsableLimit());
......@@ -121,8 +126,8 @@ public class UserServiceImpl extends ServiceImpl<UsersMapper, User> implements U
list.add(userInfoDto);
}
PageInfo<UserInfoDto> info = new PageInfo<>();
info.setPageSize(null==queryVo.getPageSize()?0:queryVo.getPageSize());
info.setPageNum(null==queryVo.getPageNo()?0:queryVo.getPageNo());
info.setPageSize(null == queryVo.getPageSize() ? 0 : queryVo.getPageSize());
info.setPageNum(null == queryVo.getPageNo() ? 0 : queryVo.getPageNo());
info.setTotal(usersMapper.getUserNumbers(map));
info.setList(list);
......@@ -136,7 +141,7 @@ public class UserServiceImpl extends ServiceImpl<UsersMapper, User> implements U
if (null == userInfo) {
return R.error("入参为空!");
}
userInfo.setUserName(userInfo.getUserName().replace(" ",""));
userInfo.setUserName(userInfo.getUserName().replace(" ", ""));
//1、根据用户id,获取用户信息
User user = usersMapper.getById(userInfo.getUserId());
if (null == user) {
......@@ -173,7 +178,7 @@ public class UserServiceImpl extends ServiceImpl<UsersMapper, User> implements U
}
//4、更新用户信息和保存用户成绩
boolean bool = volunteerManager.updateAndSaveUserInfo(user, scoreInfo,flag);
boolean bool = volunteerManager.updateAndSaveUserInfo(user, scoreInfo, flag);
if (!bool) {
return R.error("添加用户信息失败!");
}
......@@ -194,7 +199,7 @@ public class UserServiceImpl extends ServiceImpl<UsersMapper, User> implements U
if (null == userDto || StringUtils.isBlank(userDto.getUserName())) {
return R.error("入参为空!");
}
userDto.setUserName(userDto.getUserName().replace(" ",""));
userDto.setUserName(userDto.getUserName().replace(" ", ""));
//1、根据用户id,获取用户信息
User user = usersMapper.getById(userDto.getUserId());
if (null == user) {
......@@ -260,7 +265,7 @@ public class UserServiceImpl extends ServiceImpl<UsersMapper, User> implements U
userShowVo.setSex(user.getSex());
userShowVo.setStudentType(user.getExamType());
userShowVo.setUserName(user.getUserName());
if(user.getVipMobile()!=null){
if (user.getVipMobile() != null) {
userShowVo.setVipMobile(user.getVipMobile());
}
//获取成绩信息
......@@ -269,6 +274,52 @@ public class UserServiceImpl extends ServiceImpl<UsersMapper, User> implements U
ScoreInfo scoreInfo = scoreInfoMapper.selectOne(queryWrapper);
if (null != scoreInfo) {
userShowVo.setScoreInfo(scoreInfo);
//文化课考生
if (StudentType.CULTURE_STUDENT.getCode().equals(user.getExamType())) {
AdmissionRule firstRule = admissionRuleMapper.getByType(SchemeTypeEnums.UNDERGRADUATE_CULTURE.getCode());
if (null != firstRule) {
if (scoreInfo.getCultureGrade() >= firstRule.getCultureMin()) {
userShowVo.setGradeType(GradeType.UNDERGRADUATE.getDescription());
} else {
userShowVo.setGradeType(GradeType.SPECIALTY.getDescription());
}
}
}
//美术考生
if (StudentType.ART_STUDENT.getCode().equals(user.getExamType())) {
AdmissionRule firstRule = admissionRuleMapper.getByType(SchemeTypeEnums.UNDERGRADUATE_ARTS.getCode());
if (null != firstRule) {
if (scoreInfo.getCultureGrade() >= firstRule.getCultureMin() && scoreInfo.getMajorGrade() >= firstRule.getProfessionMin()) {
userShowVo.setGradeType(GradeType.UNDERGRADUATE.getDescription());
} else {
userShowVo.setGradeType(GradeType.SPECIALTY.getDescription());
}
}
}
//文学编导考生
if (StudentType.LITERATURE_STUDENT.getCode().equals(user.getExamType())) {
AdmissionRule firstRule = admissionRuleMapper.getByType(SchemeTypeEnums.UNDERGRADUATE_LITERATURE.getCode());
if (null != firstRule) {
if (scoreInfo.getCultureGrade() >= firstRule.getCultureMin() && scoreInfo.getMajorGrade() >= firstRule.getProfessionMin()) {
userShowVo.setGradeType(GradeType.UNDERGRADUATE.getDescription());
} else {
userShowVo.setGradeType(GradeType.SPECIALTY.getDescription());
}
}
}
//体育考生
if (StudentType.SPORTS_STUDENT.getCode().equals(user.getExamType())) {
AdmissionRule firstRule = admissionRuleMapper.getByType(SchemeTypeEnums.UNDERGRADUATE_SPORTS.getCode());
double total = scoreInfo.getMajorGrade() * 750 / 100 * 0.7 + scoreInfo.getCultureGrade() * 0.3;
if (null != firstRule) {
if (total >= firstRule.getCultureMin()) {
userShowVo.setGradeType(GradeType.UNDERGRADUATE.getDescription());
} else {
userShowVo.setGradeType(GradeType.SPECIALTY.getDescription());
}
}
}
}
return R.ok(userShowVo);
}
......@@ -280,7 +331,7 @@ public class UserServiceImpl extends ServiceImpl<UsersMapper, User> implements U
@Override
public R<Boolean> createExcel(UserQueryVo queryVo, HttpServletResponse response) {
log.info("UserServiceImpl[].createExcel[].input.param:"+queryVo);
log.info("UserServiceImpl[].createExcel[].input.param:" + queryVo);
queryVo.setPageSize(null);
queryVo.setPageNo(null);
......@@ -290,19 +341,19 @@ public class UserServiceImpl extends ServiceImpl<UsersMapper, User> implements U
response.setContentType("application/vnd.ms-excel");
response.setCharacterEncoding("utf-8");
List<UserInfoDto> list=getUserList(queryVo).getData().getList();
List<UserInfoDto> list = getUserList(queryVo).getData().getList();
// 使用java8新特性的stream流去处理数据,把空的数据过滤掉
List<UserDto> resultBo = list.stream().filter(Objects::nonNull)
.map(t -> UserDto.builder()
.registerTime(t.getRegisterTime())
.source(t.getSource()==1?"PC":t.getSource()==2?"H5":"小程序")
.userName(t.getUserName()==null?null:t.getUserName())
.phone(t.getPhone()==null?null:t.getPhone())
.lastLoginTime(t.getLastLoginTime()==null?null:t.getLastLoginTime())
.school(t.getSchool()==null?null:t.getSchool())
.examType(t.getExamType()==null?null:t.getExamType()==1?"文化课考生":t.getExamType()==2?"美术生":t.getExamType()==3?"体育生":"文学编导考生")
.sex(t.getSex()==null?null:t.getSex()==0?"男":"女")
.source(t.getSource() == 1 ? "PC" : t.getSource() == 2 ? "H5" : "小程序")
.userName(t.getUserName() == null ? null : t.getUserName())
.phone(t.getPhone() == null ? null : t.getPhone())
.lastLoginTime(t.getLastLoginTime() == null ? null : t.getLastLoginTime())
.school(t.getSchool() == null ? null : t.getSchool())
.examType(t.getExamType() == null ? null : t.getExamType() == 1 ? "文化课考生" : t.getExamType() == 2 ? "美术生" : t.getExamType() == 3 ? "体育生" : "文学编导考生")
.sex(t.getSex() == null ? null : t.getSex() == 0 ? "男" : "女")
.rechargeTimes(t.getRechargeTimes())
.weChatMoney(t.getWeChatMoney())
.alipayMoney(t.getAlipayMoney())
......@@ -319,19 +370,19 @@ public class UserServiceImpl extends ServiceImpl<UsersMapper, User> implements U
// sheet名称
EasyExcel.write(response.getOutputStream(), UserDto.class).sheet(Long.toString(lon)).doWrite(resultBo);
return R.ok(0,true);
return R.ok(0, true);
} catch (Exception e) {
return R.ok(1,false);
return R.ok(1, false);
}
}
@Override
public R<List<User>> test() {
List<String> names=new ArrayList<>();
List<String> names = new ArrayList<>();
names.add("黎楚川");
names.add("陈成");
names.add("雷青松");
List<User> list=usersMapper.test(names);
List<User> list = usersMapper.test(names);
return R.ok(list);
}
......@@ -360,7 +411,7 @@ public class UserServiceImpl extends ServiceImpl<UsersMapper, User> implements U
@Override
public R<UserInfoVo> commitUserVipInfo(UserVipCommitVo userInfo) {
log.info("volunteer-service[]UserServiceImpl[]commitUserVipInfo[]input.param.userInfo:" + userInfo);
if (null == userInfo||null==userInfo.getStaffId()|| null==userInfo.getSource()) {
if (null == userInfo || null == userInfo.getStaffId() || null == userInfo.getSource()) {
return R.error("入参为空!");
}
......@@ -388,7 +439,7 @@ public class UserServiceImpl extends ServiceImpl<UsersMapper, User> implements U
userInfo.setFlag(1);
//4、更新用户信息和保存用户成绩
boolean bool = volunteerManager.updateAndSaveUserVipInfo(user, scoreInfo,userInfo.getFlag(),userInfo.getStaffId());
boolean bool = volunteerManager.updateAndSaveUserVipInfo(user, scoreInfo, userInfo.getFlag(), userInfo.getStaffId());
if (!bool) {
return R.error("添加用户信息失败!");
}
......@@ -406,13 +457,13 @@ public class UserServiceImpl extends ServiceImpl<UsersMapper, User> implements U
}
@Override
public R<String> appletBinding(String code,Integer userId) {
if (StringUtils.isBlank(code)||userId==null) {
public R<String> appletBinding(String code, Integer userId) {
if (StringUtils.isBlank(code) || userId == null) {
return R.error("入参为空!");
}
Map<String, Object> map = WxUtil.getInfoByCode(code, appid, key);
log.info("code解析数据:"+map);
if(null == map.get("openid")){
log.info("code解析数据:" + map);
if (null == map.get("openid")) {
return R.error(map.get("errmsg").toString());
}
User user = new User();
......@@ -420,7 +471,7 @@ public class UserServiceImpl extends ServiceImpl<UsersMapper, User> implements U
user.setId(userId);
user.setUpdateTime(new Date());
int update = baseMapper.updateById(user);
if(update>0){
if (update > 0) {
return R.ok("授权成功");
}
return R.error("授权失败");
......@@ -432,16 +483,16 @@ public class UserServiceImpl extends ServiceImpl<UsersMapper, User> implements U
return R.error("入参为空!");
}
Map<String, Object> map = WxUtil.getInfoByCode(code, appid, key);
log.info("code解析数据:"+map);
log.info("code解析数据:" + map);
if(null == map.get("openid")){
if (null == map.get("openid")) {
return R.error(map.get("errmsg").toString());
}
Map<String, Object> maps = new HashMap<>(16);
maps.put("openid", map.get("openid").toString());
User user = usersMapper.selectOne(maps);
if(null == user){
if (null == user) {
return R.error("该用户还没有授权");
}
UserInfoVo userInfoVo = new UserInfoVo();
......@@ -463,7 +514,7 @@ public class UserServiceImpl extends ServiceImpl<UsersMapper, User> implements U
user.setOpenid("");
user.setUpdateTime(new Date());
int update = baseMapper.updateById(user);
if(update>0){
if (update > 0) {
return R.ok("退出成功");
}
return R.error("退出失败");
......
......@@ -39,24 +39,24 @@ public class Common {
* 支付宝--回调地址
*/
//测试服务器
//public static final String NOTIFY_URL = "http://111.203.232.171:8997/pay/aliPayCallBack.do";
public static final String NOTIFY_URL = "http://111.203.232.171:8997/pay/aliPayCallBack.do";
//线上
public static final String NOTIFY_URL = "https://jygkzy.com/api/pay/aliPayCallBack.do";
//public static final String NOTIFY_URL = "https://jygkzy.com/api/pay/aliPayCallBack.do";
/***
* 支付宝--pc端支付成功跳转地址
*/
//测试服务器
//public static final String RETURN_URL_PC = "http://111.203.232.171:8999/#/wallet";
public static final String RETURN_URL_PC = "http://111.203.232.171:8999/#/wallet";
//线上
public static final String RETURN_URL_PC = "https://jygkzy.com/#/wallet";
//public static final String RETURN_URL_PC = "https://jygkzy.com/#/wallet";
/***
* 支付宝--手机网页支付成功跳转地址
*/
//测试服务器
//public static final String RETURN_URL_WAP = "http://111.203.232.171:8999/#/history";
public static final String RETURN_URL_WAP = "http://111.203.232.171:8999/#/history";
//线上
public static final String RETURN_URL_WAP = "https://jygkzy.com/#/history";
//public static final String RETURN_URL_WAP = "https://jygkzy.com/#/history";
/**
......
package cn.wisenergy.service.util;
import cn.wisenergy.common.utils.R;
import cn.wisenergy.model.dto.PayPageDto;
import cn.wisenergy.service.httpClient.WechatPayHttpClientBuilder;
import cn.wisenergy.service.httpClient.auth.AutoUpdateCertificatesVerifier;
import cn.wisenergy.service.httpClient.auth.PrivateKeySigner;
import cn.wisenergy.service.httpClient.auth.WechatPay2Credentials;
import cn.wisenergy.service.httpClient.auth.WechatPay2Validator;
import cn.wisenergy.service.httpClient.util.PemUtil;
import cn.wisenergy.service.wxpay.WxCommon;
import okhttp3.HttpUrl;
import org.apache.commons.codec.digest.DigestUtils;
import org.apache.commons.lang.RandomStringUtils;
import org.apache.http.HttpEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.ContentType;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.util.EntityUtils;
import org.junit.After;
import javax.servlet.http.HttpServletRequest;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.nio.charset.StandardCharsets;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
import java.security.PrivateKey;
import java.security.SignatureException;
import java.security.spec.InvalidKeySpecException;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.util.*;
public class WxPayUtil {
/**
* 商户号
*/
private static String mchId = WxCommon.MCHID;
// 商户证书序列号
private static String mchSerialNo = WxCommon.SERIAL_NO;
// api密钥
private static String apiV3Key = WxCommon.SECRET_KEY;
// 你的商户私钥
private static String privateKey = "-----BEGIN PRIVATE KEY-----\n" +WxCommon.SECRET_KEY
+ "-----END PRIVATE KEY-----\n";
private static CloseableHttpClient httpClient;
private static AutoUpdateCertificatesVerifier verifier;
static {
PrivateKey merchantPrivateKey = null;
try {
merchantPrivateKey = PemUtil.loadPrivateKey(
new ByteArrayInputStream(privateKey.getBytes("utf-8")));
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
//使用自动更新的签名验证器,不需要传入证书
try {
verifier = new AutoUpdateCertificatesVerifier(
new WechatPay2Credentials(mchId, new PrivateKeySigner(mchSerialNo, merchantPrivateKey)),
apiV3Key.getBytes("utf-8"));
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
httpClient = WechatPayHttpClientBuilder.create()
.withMerchant(mchId, mchSerialNo, merchantPrivateKey)
.withValidator(new WechatPay2Validator(verifier))
.build();
}
@After
public void after() throws IOException {
httpClient.close();
}
public static void main(String[] args) throws IOException, NoSuchAlgorithmException, SignatureException, InvalidKeySpecException, InvalidKeyException {
HttpPost httpPost = new HttpPost(WxCommon.WX_PAY_URL_pc);
long timestamp = System.currentTimeMillis() / 1000;
String nonceStr = UUID.randomUUID().toString().replace("-", "");
String method = "POST";
String tradeNo = "21" + System.currentTimeMillis();
HttpUrl httpurl = HttpUrl.parse(WxCommon.WX_PAY_URL_pc);
// 请求body参数
String reqdata = "{"
+ "\"time_expire\":\"2021-02-07T10:34:56+08:00\","
+ "\"amount\":{"
+ "\"total\":100,"
+ "\"currency\":\"CNY\""
+ "},"
+ "\"mchid\":\""+WxCommon.MCHID+"\","
+ "\"description\":\"Image形象店-深圳腾大-QQ公仔\","
+ "\"notify_url\":\""+WxCommon.NOTIFY_URL+"\","
+ "\"out_trade_no\":\""+tradeNo+"\","
+ "\"goods_tag\":\"WXG\","
+ "\"appid\":\""+WxCommon.APP_ID+"\""
// + "\"attach\":\"自定义数据说明\","
// + "\"detail\": {"
// + "\"invoice_id\":\"wx123\","
// + "\"goods_detail\": ["
// + "{"
// + "\"goods_name\":\"iPhoneX 256G\","
// + "\"wechatpay_goods_id\":\"1001\","
// + "\"quantity\":1,"
// + "\"merchant_goods_id\":\"商品编码\","
// + "\"unit_price\":828800"
// + "},"
// + "{"
// + "\"goods_name\":\"iPhoneX 256G\","
// + "\"wechatpay_goods_id\":\"1001\","
// + "\"quantity\":1,"
// + "\"merchant_goods_id\":\"商品编码\","
// + "\"unit_price\":828800"
// + "}"
// + "],"
// + "\"cost_price\":608800"
// + "},"
// + "\"scene_info\": {"
// + "\"store_info\": {"
// + "\"address\":\"广东省深圳市南山区科技中一道10000号\","
// + "\"area_code\":\"440305\","
// + "\"name\":\"腾讯大厦分店\","
// + "\"id\":\"0001\""
// + "},"
// + "\"device_id\":\"013467007045764\","
// + "\"payer_client_ip\":\"14.23.150.211\""
// + "}"
+ "}";
StringEntity reqEntity = new StringEntity(
reqdata, ContentType.create("application/json", "utf-8"));
httpPost.setEntity(reqEntity);
httpPost.addHeader("Accept", "application/json");
// //构造签名参数
// //构造签名参数
// JSONObject jsonObject = new JSONObject();jsonObject.put("appid", WxCommon.APP_ID);
// jsonObject.put("mchid", WxCommon.MCHID);
// jsonObject.put("description", "充值");
// jsonObject.put("out_trade_no", tradeNo);
// jsonObject.put("notify_url", WxCommon.NOTIFY_URL);
// jsonObject.put("signType", "RSA");
// PayPageDto payPageDto=new PayPageDto();
// payPageDto.setTotal(100);
// jsonObject.put("amount", payPageDto);
// String token = SignDemo.getToken(method, httpurl,jsonObject.toJSONString() , nonceStr, timestamp);
// httpPost.setHeader("Authorization", "WECHATPAY2-SHA256-RSA2048" + " " + token);
// httpPost.setHeader("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");
//完成签名并执行请求
try (CloseableHttpResponse response = httpClient.execute(httpPost)) {
if (response.getStatusLine().getStatusCode() == 200) {
HttpEntity httpEntity = response.getEntity();
String content = EntityUtils.toString(httpEntity, "utf8");
System.out.println(content.length());
}
} catch (IOException e) {
e.printStackTrace();
}
}
/***
* pc端生成统一下单格式的订单,生成一个XML格式的字符串
*/
......
......@@ -12,8 +12,8 @@ public class WxCommon {
public static final String MCHID = "1606042985";
//public static final String NOTIFY_URL = "http://111.203.232.171:8997/pay/wxPayCallBack.do";
public static final String NOTIFY_URL = "https://jygkzy.com/api/pay/wxPayCallBack.do";
public static final String NOTIFY_URL = "http://111.203.232.171:8997/pay/wxPayCallBack.do";
//public static final String NOTIFY_URL = "https://jygkzy.com/api/pay/wxPayCallBack.do";
public static final String WX_PAY_URL_pc = "https://api.mch.weixin.qq.com/v3/pay/transactions/native";
......
......@@ -57,11 +57,6 @@ public class PayController {
@ApiImplicitParam(name = "payPageDto", value = "参数", dataType = "PayPageDto")
@PostMapping("/page")
public R<String> doPost(@RequestBody PayPageDto payPageDto, HttpServletRequest request, HttpServletResponse httpResponse) {
/* public R<String> doPost(Integer userId,Integer payType,Integer total_amount, HttpServletRequest request, HttpServletResponse httpResponse) {
PayPageDto payPageDto = new PayPageDto();
payPageDto.setTotal(total_amount);
payPageDto.setUserId(userId);
payPageDto.setPayType(payType);*/
return aliPayService.doPost(payPageDto,request,httpResponse);
}
@ApiOperation(value = "手机网页支付宝-支付接口", notes = "手机网页支付宝-支付接口", httpMethod = "POST")
......@@ -97,7 +92,7 @@ public class PayController {
}
@ApiOperation(value = "微行支付-统一下单", notes = "微行支付-统一下单", httpMethod = "POST")
@ApiOperation(value = "pc端微行支付-统一下单", notes = "pc端微行支付-统一下单", httpMethod = "POST")
@ApiImplicitParam(name = "payPageDto", value = "支付入参", dataType = "PayPageDto")
@PostMapping("/wxPay")
public R<Map<String, String>> wxPay(@RequestBody PayPageDto payPageDto,HttpServletResponse response){
......
......@@ -42,8 +42,6 @@ public class UserController {
@Autowired
private JwtUtil jwtUtil;
@Autowired
private JwtConfig jwtConfig;
@Autowired
private RedisTemplate<String, Object> redisTemplate;
......@@ -108,7 +106,6 @@ public class UserController {
/**
* shiro登录
*
* @return
*/
@ApiOperation(value = "获取token接口", notes = "获取token接口", httpMethod = "POST")
@PostMapping(value = "/login")
......
......@@ -74,18 +74,6 @@ public class UserLoginController extends BaseController {
return userLoginService.login(userVo,request);
}
@ApiOperation(value = "用户账号密码登录--shrio测试", notes = "用户账号密码登录--shrio测试", httpMethod = "POST")
@ApiImplicitParam(name = "userVo", value = "登录用户信息", dataType = "UserLoginVo")
@PostMapping("/loginTest")
public R<UserInfoVo> loginTest(@RequestBody UserLoginVo userVo, HttpServletRequest request) throws Exception {
log.info("volunteer-service[]UserLongController[]login[]input.param.userVo:" + userVo);
if (null == userVo || StringUtils.isBlank(userVo.getPhone()) || StringUtils.isBlank(userVo.getPassword())) {
return R.error("入参不能为空!");
}
return userLoginService.loginTest(userVo,request);
}
@ApiOperation(value = "退出登录", notes = "退出登录", httpMethod = "POST")
@ApiImplicitParam(name = "outVo", value = "退出用户信息", dataType = "LoginOutVo")
......
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