ADD file via upload

main
pjhmizn49 1 year ago
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…
Cancel
Save