|
|
@ -84,7 +84,7 @@ public class MemberController {
|
|
|
|
@AnonymousAccess
|
|
|
|
@AnonymousAccess
|
|
|
|
@PostMapping("getPracticeMemberIdByStudentNumberAndPracticeTrainingId")
|
|
|
|
@PostMapping("getPracticeMemberIdByStudentNumberAndPracticeTrainingId")
|
|
|
|
public ResultEntity getPracticeMemberIdByStudentNumberAndPracticeTrainingId(@RequestBody String studentNumber) {
|
|
|
|
public ResultEntity getPracticeMemberIdByStudentNumberAndPracticeTrainingId(@RequestBody String studentNumber) {
|
|
|
|
Member member = memberService.getPracticeMemberIdByStudentNumberAndPracticeTrainingId(studentNumber,Constant.PRACTICE_TRAINING_ID);
|
|
|
|
Member member = memberService.getPracticeMemberIdByStudentNumberAndPracticeTrainingId(studentNumber, Constant.PRACTICE_TRAINING_ID);
|
|
|
|
return new ResultEntity(HttpStatus.OK, "根据学号获取成员ID", member.getMemberId());
|
|
|
|
return new ResultEntity(HttpStatus.OK, "根据学号获取成员ID", member.getMemberId());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -93,48 +93,48 @@ public class MemberController {
|
|
|
|
public ResultEntity getMemberId(@RequestBody JSONObject jsonObject) {
|
|
|
|
public ResultEntity getMemberId(@RequestBody JSONObject jsonObject) {
|
|
|
|
String studentNumber = jsonObject.getString("studentNumber");
|
|
|
|
String studentNumber = jsonObject.getString("studentNumber");
|
|
|
|
String trainingId = jsonObject.getString("trainingId");
|
|
|
|
String trainingId = jsonObject.getString("trainingId");
|
|
|
|
String trainingStatus=jsonObject.getString("trainingStatus");
|
|
|
|
String trainingStatus = jsonObject.getString("trainingStatus");
|
|
|
|
Integer schoolId =Constant.PRACTICE_SCHOOL_ID;
|
|
|
|
Integer schoolId = Constant.PRACTICE_SCHOOL_ID;
|
|
|
|
if(trainingId.isEmpty()){
|
|
|
|
if (trainingId.isEmpty()) {
|
|
|
|
trainingId=Constant.PRACTICE_TRAINING_ID;
|
|
|
|
trainingId = Constant.PRACTICE_TRAINING_ID;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if(!Constant.PRACTICE_TRAINING_ID.equals(trainingId)){
|
|
|
|
if (!Constant.PRACTICE_TRAINING_ID.equals(trainingId)) {
|
|
|
|
schoolId = jsonObject.getInteger("schoolId");
|
|
|
|
schoolId = jsonObject.getInteger("schoolId");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
Member member = memberService.selectByStudentNumberAndSchoolIdAndTrainingID(studentNumber, schoolId, trainingId);
|
|
|
|
Member member = memberService.selectByStudentNumberAndSchoolIdAndTrainingID(studentNumber, schoolId, trainingId);
|
|
|
|
Double positionProfitLoss=0.0;
|
|
|
|
Double positionProfitLoss = 0.0;
|
|
|
|
if(!Constant.TRAINING_STATUS_FINISHED.equals(trainingStatus)){
|
|
|
|
if (!Constant.TRAINING_STATUS_FINISHED.equals(trainingStatus)) {
|
|
|
|
positionProfitLoss = takeStashController.flashTotalPositionProfitLoss(member.getMemberId());
|
|
|
|
positionProfitLoss = takeStashController.flashTotalPositionProfitLoss(member.getMemberId());
|
|
|
|
if (positionProfitLoss==null){
|
|
|
|
if (positionProfitLoss == null) {
|
|
|
|
positionProfitLoss=0.0;
|
|
|
|
positionProfitLoss = 0.0;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
member.setPositionProfitLoss(positionProfitLoss); //设置持仓盈亏
|
|
|
|
member.setPositionProfitLoss(positionProfitLoss); //设置持仓盈亏
|
|
|
|
}
|
|
|
|
}
|
|
|
|
Double initialCapital = member.getInitialCapital();//初始资金
|
|
|
|
Double initialCapital = member.getInitialCapital();//初始资金
|
|
|
|
Double cumulativeProfitLoss = member.getCumulativeProfitLoss(); //累计盈亏
|
|
|
|
Double cumulativeProfitLoss = member.getCumulativeProfitLoss(); //累计盈亏
|
|
|
|
if(cumulativeProfitLoss==null){
|
|
|
|
if (cumulativeProfitLoss == null) {
|
|
|
|
cumulativeProfitLoss=0.0;
|
|
|
|
cumulativeProfitLoss = 0.0;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if(cumulativeProfitLoss==null){
|
|
|
|
if (cumulativeProfitLoss == null) {
|
|
|
|
member.setCumulativeProfitLoss(0.0);
|
|
|
|
member.setCumulativeProfitLoss(0.0);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
Double totalAssets = initialCapital+cumulativeProfitLoss; //总资产=初始资金+累计盈亏
|
|
|
|
Double totalAssets = initialCapital + cumulativeProfitLoss; //总资产=初始资金+累计盈亏
|
|
|
|
Double netValue = bigDecimalUtils.add(totalAssets, positionProfitLoss);
|
|
|
|
Double netValue = bigDecimalUtils.add(totalAssets, positionProfitLoss);
|
|
|
|
member.setTotalAssets(totalAssets); //设置总资产
|
|
|
|
member.setTotalAssets(totalAssets); //设置总资产
|
|
|
|
member.setNetValue(netValue); //设置净值
|
|
|
|
member.setNetValue(netValue); //设置净值
|
|
|
|
|
|
|
|
|
|
|
|
Double marginUsed = member.getMarginUsed(); //获取已用保证金
|
|
|
|
Double marginUsed = member.getMarginUsed(); //获取已用保证金
|
|
|
|
if (marginUsed==null || marginUsed==0.0){
|
|
|
|
if (marginUsed == null || marginUsed == 0.0) {
|
|
|
|
marginUsed=0.0;
|
|
|
|
marginUsed = 0.0;
|
|
|
|
member.setMarginLevel(null);
|
|
|
|
member.setMarginLevel(null);
|
|
|
|
member.setMarginUsed(0.0);
|
|
|
|
member.setMarginUsed(0.0);
|
|
|
|
}else {
|
|
|
|
} else {
|
|
|
|
member.setMarginLevel(bigDecimalUtils.div(netValue, marginUsed, 2)); //设置保证金水平
|
|
|
|
member.setMarginLevel(bigDecimalUtils.div(netValue, marginUsed, 2)); //设置保证金水平
|
|
|
|
}
|
|
|
|
}
|
|
|
|
member.setAvailableFunds(bigDecimalUtils.sub(netValue, marginUsed)); //设置可用资金
|
|
|
|
member.setAvailableFunds(bigDecimalUtils.sub(netValue, marginUsed)); //设置可用资金
|
|
|
|
//特殊处理 占用ReportScore 传递美元转换rmb
|
|
|
|
//特殊处理 占用ReportScore 传递美元转换rmb
|
|
|
|
ForexMarketData usdcnh = forexMarketDateUtil.getForexMarketDateByCode("USDCNY");
|
|
|
|
ForexMarketData usdcnh = forexMarketDateUtil.getForexMarketDateByCode("USDCNY");
|
|
|
|
member.setReportScore(bigDecimalUtils.mul(Double.parseDouble(usdcnh.getSellPic())*totalAssets,1,2));
|
|
|
|
member.setReportScore(bigDecimalUtils.mul(Double.parseDouble(usdcnh.getSellPic()) * totalAssets, 1, 2));
|
|
|
|
|
|
|
|
|
|
|
|
return new ResultEntity(HttpStatus.OK, "获取成员ID", member);
|
|
|
|
return new ResultEntity(HttpStatus.OK, "获取成员ID", member);
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -150,13 +150,13 @@ public class MemberController {
|
|
|
|
@ApiParam("页量") @RequestParam(required = false) Integer size) {
|
|
|
|
@ApiParam("页量") @RequestParam(required = false) Integer size) {
|
|
|
|
|
|
|
|
|
|
|
|
JwtUser jwtUser = TokenProvider.getJWTUser(request);
|
|
|
|
JwtUser jwtUser = TokenProvider.getJWTUser(request);
|
|
|
|
PageInfo<MemberVO> pageInfo = memberService.pagedListMembers(className, trainingName, markStatus, keyword, jwtUser,index, size);
|
|
|
|
PageInfo<MemberVO> pageInfo = memberService.pagedListMembers(className, trainingName, markStatus, keyword, jwtUser, index, size);
|
|
|
|
if (!pageInfo.getList().isEmpty()) {
|
|
|
|
if (!pageInfo.getList().isEmpty()) {
|
|
|
|
for (MemberVO vo : pageInfo.getList()) {
|
|
|
|
for (MemberVO vo : pageInfo.getList()) {
|
|
|
|
Training training = trainingService.findById(vo.getTrainingId());
|
|
|
|
Training training = trainingService.findById(vo.getTrainingId());
|
|
|
|
if (vo.getYield() == null || training == null) continue;
|
|
|
|
if (vo.getYield() == null || training == null) continue;
|
|
|
|
vo.setTradeTrainingScore(gradeWeightService.findWeightByWeightIdAndYield(training.getWeightId(), vo.getYield()).getActualScore());
|
|
|
|
vo.setTradeTrainingScore(gradeWeightService.findWeightByWeightIdAndYield(training.getWeightId(), vo.getYield()).getActualScore());
|
|
|
|
vo.setTotalScore(vo.getTradeTrainingScore() + (vo.getReportScore()==null?0:vo.getReportScore()));
|
|
|
|
vo.setTotalScore(vo.getTradeTrainingScore() + (vo.getReportScore() == null ? 0 : vo.getReportScore()));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return new ResultEntity<PageInfo<MemberVO>>(pageInfo);
|
|
|
|
return new ResultEntity<PageInfo<MemberVO>>(pageInfo);
|
|
|
@ -180,6 +180,12 @@ public class MemberController {
|
|
|
|
ExcelData excelData = ExcelData.create(titles);
|
|
|
|
ExcelData excelData = ExcelData.create(titles);
|
|
|
|
for (MemberVO member : members) {
|
|
|
|
for (MemberVO member : members) {
|
|
|
|
List<Object> rows = new ArrayList<>();
|
|
|
|
List<Object> rows = new ArrayList<>();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Training training = trainingService.findById(member.getTrainingId());
|
|
|
|
|
|
|
|
if (member.getYield() == null || training == null) continue;
|
|
|
|
|
|
|
|
member.setTradeTrainingScore(gradeWeightService.findWeightByWeightIdAndYield(training.getWeightId(), member.getYield()).getActualScore());
|
|
|
|
|
|
|
|
member.setTotalScore(member.getTradeTrainingScore() + (member.getReportScore() == null ? 0 : member.getReportScore()));
|
|
|
|
|
|
|
|
|
|
|
|
rows.add(member.getTrainingName());
|
|
|
|
rows.add(member.getTrainingName());
|
|
|
|
rows.add(member.getClassGrade());
|
|
|
|
rows.add(member.getClassGrade());
|
|
|
|
rows.add(member.getStudentNumber());
|
|
|
|
rows.add(member.getStudentNumber());
|
|
|
@ -205,13 +211,12 @@ public class MemberController {
|
|
|
|
@GetMapping("listMembersByTrainingId")
|
|
|
|
@GetMapping("listMembersByTrainingId")
|
|
|
|
public ResultEntity<PageInfo<MemberVO>> listMembersByTrainingId(@RequestParam String trainingId,
|
|
|
|
public ResultEntity<PageInfo<MemberVO>> listMembersByTrainingId(@RequestParam String trainingId,
|
|
|
|
@ApiParam("班级id") Integer classId,
|
|
|
|
@ApiParam("班级id") Integer classId,
|
|
|
|
@ApiParam("查询关键字:学号和姓名")String keyword,
|
|
|
|
@ApiParam("查询关键字:学号和姓名") String keyword,
|
|
|
|
@RequestParam Integer index,
|
|
|
|
@RequestParam Integer index,
|
|
|
|
@RequestParam Integer size) {
|
|
|
|
@RequestParam Integer size) {
|
|
|
|
PageInfo<MemberVO> members = memberService.pageListMemberByTrainingId(trainingId, classId,keyword,index, size);
|
|
|
|
PageInfo<MemberVO> members = memberService.pageListMemberByTrainingId(trainingId, classId, keyword, index, size);
|
|
|
|
return new ResultEntity<PageInfo<MemberVO>>(members);
|
|
|
|
return new ResultEntity<PageInfo<MemberVO>>(members);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|