parent
73ca8fd197
commit
042bad3ab3
@ -0,0 +1,152 @@
|
||||
package com.example.flower.controller;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.example.flower.entity.Member;
|
||||
import com.example.flower.entity.User;
|
||||
import com.example.flower.service.MemberService;
|
||||
import com.example.flower.service.UserService;
|
||||
import com.example.flower.unit.JWTUtil;
|
||||
import io.jsonwebtoken.Claims;
|
||||
import jakarta.annotation.Resource;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.text.ParseException;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Date;
|
||||
import java.util.Calendar;
|
||||
import java.util.List;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/member")
|
||||
public class MemberController {
|
||||
@Resource
|
||||
private MemberService memberService;
|
||||
@Resource
|
||||
private UserService userService;
|
||||
|
||||
@PostMapping("/history") //memberHistory查询充值记录
|
||||
public JSONObject memberHistory(@RequestHeader String Authorization, @RequestBody JSONObject param){
|
||||
JSONObject jsonObject = new JSONObject();
|
||||
|
||||
if(!JWTUtil.checkToken(Authorization)){ //token认证失败
|
||||
JWTUtil.checkTokenFailed(jsonObject);
|
||||
return jsonObject;
|
||||
}
|
||||
JSONObject jsonObject1 = new JSONObject();
|
||||
int page=param.getIntValue("page");
|
||||
int page_size=param.getIntValue("page_size");
|
||||
Claims claims = JWTUtil.getBodyByToken(Authorization);
|
||||
int user_id = (int) claims.get("id");
|
||||
|
||||
List<Member> memberList = memberService.memberHistory(page,page_size,user_id).getList();
|
||||
|
||||
jsonObject1.put("page_number",memberService.memberHistory(page,page_size,user_id).getPages());
|
||||
jsonObject1.put("total",memberService.memberHistory(page,page_size,user_id).getTotal());
|
||||
|
||||
int size=memberList.size();
|
||||
|
||||
JSONObject[] objects = new JSONObject[size];
|
||||
for(int i = 0;i<size;i++){
|
||||
objects[i]=new JSONObject();
|
||||
objects[i].put("member_id", memberList.get(i).getMember_id());
|
||||
objects[i].put("user_id", memberList.get(i).getUser_id());
|
||||
objects[i].put("member_start_time", memberList.get(i).getMember_start_time());
|
||||
objects[i].put("member_end_time", memberList.get(i).getMember_end_time());
|
||||
objects[i].put("member_money", memberList.get(i).getMember_money());
|
||||
}
|
||||
jsonObject1.put("history",objects);
|
||||
|
||||
jsonObject.put("code",200 );
|
||||
jsonObject.put("msg","token认证成功!" );
|
||||
jsonObject.put("data",jsonObject1);
|
||||
|
||||
return jsonObject;
|
||||
}
|
||||
|
||||
@PostMapping("/charge") //memberCharge会员充值
|
||||
public JSONObject memberCharge(@RequestHeader String Authorization, @RequestBody JSONObject param) {
|
||||
JSONObject jsonObject = new JSONObject();
|
||||
|
||||
if(!JWTUtil.checkToken(Authorization)){ //token认证失败
|
||||
JWTUtil.checkTokenFailed(jsonObject);
|
||||
return jsonObject;
|
||||
}
|
||||
|
||||
Claims claims = JWTUtil.getBodyByToken(Authorization);
|
||||
int user_id = (int) claims.get("id");
|
||||
|
||||
Member member = new Member();
|
||||
member.setMember_period(param.getIntValue("member_period"));
|
||||
member.setMember_money(param.getDoubleValue("member_money"));
|
||||
member.setUser_id(user_id);
|
||||
|
||||
//会员时间判断
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); // 格式化
|
||||
Date date = new Date();
|
||||
String date_now = sdf.format(date); //当前时间
|
||||
|
||||
User user = userService.userInfo(user_id);
|
||||
try {
|
||||
if(user.getUser_role()==0) { //原是非会员
|
||||
member.setMember_start_time(date_now);
|
||||
|
||||
Calendar ca = Calendar.getInstance();
|
||||
Date sourceDate = sdf.parse(date_now);
|
||||
ca.setTime(sourceDate);
|
||||
int addDate = param.getIntValue("member_period");
|
||||
ca.add(Calendar.DATE, addDate); //增加的天数
|
||||
date = ca.getTime();
|
||||
String endDate = sdf.format(date);
|
||||
member.setMember_end_time(endDate);
|
||||
|
||||
user.setMember_start_time(date_now);
|
||||
user.setMember_end_time(endDate);
|
||||
}
|
||||
else{ //本是会员
|
||||
Date date1 = sdf.parse(user.getMember_end_time());
|
||||
Date date2 = sdf.parse(date_now);
|
||||
boolean before = date1.before(date2);
|
||||
|
||||
if(before){ //true 当前时间已经过了会员截止时间
|
||||
member.setMember_start_time(date_now);
|
||||
|
||||
Calendar ca = Calendar.getInstance();
|
||||
Date sourceDate = sdf.parse(date_now);
|
||||
ca.setTime(sourceDate);
|
||||
int addDate = param.getIntValue("member_period");
|
||||
ca.add(Calendar.DATE, addDate); //增加的天数
|
||||
date = ca.getTime();
|
||||
String endDate = sdf.format(date);
|
||||
member.setMember_end_time(endDate);
|
||||
|
||||
user.setMember_start_time(date_now);
|
||||
user.setMember_end_time(endDate);
|
||||
}
|
||||
else { //false 当前时间没过会员截止时间
|
||||
member.setMember_start_time(user.getMember_end_time());
|
||||
|
||||
Calendar ca = Calendar.getInstance();
|
||||
Date sourceDate = sdf.parse(user.getMember_end_time());
|
||||
ca.setTime(sourceDate);
|
||||
int addDate = param.getIntValue("member_period");
|
||||
ca.add(Calendar.DATE, addDate); //增加的天数
|
||||
date = ca.getTime();
|
||||
String endDate = sdf.format(date);
|
||||
member.setMember_end_time(endDate);
|
||||
|
||||
user.setMember_end_time(endDate);
|
||||
}
|
||||
}
|
||||
|
||||
} catch (ParseException e) {e.printStackTrace();}
|
||||
|
||||
memberService.memberCharge(member);
|
||||
userService.userModifyMember(user);
|
||||
|
||||
jsonObject.put("code",200 );
|
||||
jsonObject.put("msg","成功" );
|
||||
jsonObject.put("member_id",member.getMember_id());
|
||||
return jsonObject;
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
Reference in new issue