配置修改及部分交易部分功能

pull/1/head
yz 2 years ago
parent 283101b27b
commit c4dd85fde5

@ -1,13 +1,20 @@
package com.sztzjy.forex.trading_trading.common.mql5API;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.sztzjy.forex.trading_trading.entity.mql5Entity.CurrencyEntity;
import com.sztzjy.forex.trading_trading.entity.mql5Entity.ExchangeFrateEntity;
import com.sztzjy.forex.trading_trading.entity.mql5Entity.ForexData;
import com.sztzjy.forex.trading_trading.entity.mql5Entity.RmbquotEntity;
import com.sztzjy.forex.trading_trading.util.HttpUtils;
import org.apache.commons.lang3.StringUtils;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
public class Mql5API {
@ -63,4 +70,46 @@ public class Mql5API {
}
}
//查询外汇汇率 返回ForexData对象
public List<ForexData> getMarketQuotation() {
try {
String returnStr = HttpUtils.sendGet(ExchangeFrateAddr);
JSONObject jsonObject = JSONObject.parseObject(returnStr);
JSONArray jsonArray = (JSONArray) jsonObject.get("result");
JSONObject dataObject = jsonArray.getJSONObject(0);
ObjectMapper objectMapper = new ObjectMapper();
List<ForexData> forexDataList = new ArrayList<>();
for (String key : dataObject.keySet()) {
String value = dataObject.getString(key);
ForexData forexData = objectMapper.readValue(value, ForexData.class);
forexDataList.add(forexData);
}
return forexDataList;
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
//根据code查询外汇汇率
public ForexData getMarketQuotationByCode(String code) {
try {
String returnStr = HttpUtils.sendGet(ExchangeFrateAddr);
JSONObject jsonObject = JSONObject.parseObject(returnStr);
JSONArray jsonArray = (JSONArray) jsonObject.get("result");
JSONObject dataObject = jsonArray.getJSONObject(0);
ObjectMapper objectMapper = new ObjectMapper();
for (String key : dataObject.keySet()) {
String value = dataObject.getString(key);
ForexData forexData = objectMapper.readValue(value, ForexData.class);
if(forexData.getCode().equals(code)){
return forexData;
}
}
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
}

@ -1,33 +1,109 @@
package com.sztzjy.forex.trading_trading.controller;
import com.alibaba.fastjson.JSONObject;
import com.github.pagehelper.PageHelper;
import com.sztzjy.forex.trading_trading.annotation.AnonymousAccess;
import com.sztzjy.forex.trading_trading.common.mql5API.Mql5API;
import com.sztzjy.forex.trading_trading.entity.Member;
import com.sztzjy.forex.trading_trading.entity.mql5Entity.ExchangeFrateEntity;
import com.sztzjy.forex.trading_trading.entity.mql5Entity.ForexData;
import com.sztzjy.forex.trading_trading.service.MemberService;
import io.swagger.models.auth.In;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.math.BigDecimal;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
//学生端 交易
@RestController
@RequestMapping("api/trading")
public class TradingController {
@Autowired
MemberService memberService;
//获取市场报价
@AnonymousAccess
@PostMapping("getMarketQuotation")
public JSONObject getMarketQuotation(){
Mql5API mql5API=new Mql5API();
ExchangeFrateEntity exchangeFrate = mql5API.getExchangeFrate();
return exchangeFrate;
public List<ForexData> getMarketQuotation() {
Mql5API mql5API = new Mql5API();
List<ForexData> marketQuotation = mql5API.getMarketQuotation();
return marketQuotation;
}
//根据交易类型获取实时数据
@AnonymousAccess
@PostMapping("getMarketQuotationByCode")
public ForexData getMarketQuotationByCode(@RequestBody String code) {
Mql5API mql5API = new Mql5API();
ForexData forexData = mql5API.getMarketQuotationByCode(code);
return forexData;
}
//市场报价交易
//市场报价交易 交易量为1为1000美元
@AnonymousAccess
@PostMapping("TransactionMarketQuotation")
public JSONObject getMarketQuotation(JSONObject jsonObject){
Mql5API mql5API=new Mql5API();
ExchangeFrateEntity exchangeFrate = mql5API.getExchangeFrate();
return exchangeFrate;
public JSONObject getMarketQuotation(@RequestBody JSONObject jsonObject) {
//交易品种
String code = String.valueOf(jsonObject.get("code"));
//交易类型
String transactionType = String.valueOf(jsonObject.get("transactionType"));
//买卖手(量)
Double transactionVolume = (Double) jsonObject.get("transactionVolume");
//买入卖出类型
String buySellType = String.valueOf(jsonObject.get("buySellType"));
//获取账户资金 调用member表中的
Integer memberId = (Integer) jsonObject.get("memberId");
Integer trainingId = (Integer) jsonObject.get("trainingId");
Member member = memberService.getMemberByMemberIdAndTrainingId(memberId, trainingId);
Double availableFunds = member.getAvailableFunds();
if (transactionType.equals("sjkc")) {//市价开仓
//美元在前
if (code.startsWith("USD")) {
//判断可用资金是否足够
if(availableFunds<transactionVolume*1000){
return JSONObject.parseObject("可用资金不足");
}else {
//获取当前买卖价格
ForexData forexData = getMarketQuotationByCode(code);
if (buySellType.equals("buy")) {
String buyPic = forexData.getBuyPic();
} else if (buySellType.equals("sell")) {
String sellPic = forexData.getSellPic();
}
availableFunds=availableFunds-transactionVolume*1000;
member.setAvailableFunds(availableFunds);
//获取当前已用保证金
Double marginUsed = member.getMarginUsed();
member.setMarginUsed(marginUsed+availableFunds);
}
//美元在后
} else {
}
//买入
//卖出
} else if (transactionType.equals("gdkc")) {//挂单开仓
//限价买进
//限价卖出
//止损买进
//止损卖出
} else {
JSONObject returnJson = JSONObject.parseObject("error");
return returnJson;
}
return null;
}
}

@ -1,32 +1,30 @@
package com.sztzjy.forex.trading_trading.entity;
import java.math.BigDecimal;
public class Member {
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column sys_member.member_id
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
private Long memberId;
private Integer memberId;
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column sys_member.training_id
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
private String trainingId;
private Integer trainingId;
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column sys_member.name
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
private String name;
@ -35,7 +33,7 @@ public class Member {
* This field was generated by MyBatis Generator.
* This field corresponds to the database column sys_member.student_number
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
private String studentNumber;
@ -44,7 +42,7 @@ public class Member {
* This field was generated by MyBatis Generator.
* This field corresponds to the database column sys_member.major
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
private String major;
@ -53,106 +51,106 @@ public class Member {
* This field was generated by MyBatis Generator.
* This field corresponds to the database column sys_member.class_grade
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
private String classGrade;
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column sys_member.rank
* This field corresponds to the database column sys_member.stu_rank
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
private Integer rank;
private Integer stuRank;
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column sys_member.initial_capital
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
private BigDecimal initialCapital;
private Double initialCapital;
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column sys_member.total_assets
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
private BigDecimal totalAssets;
private Double totalAssets;
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column sys_member.net_value
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
private BigDecimal netValue;
private Double netValue;
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column sys_member.margin_used
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
private BigDecimal marginUsed;
private Double marginUsed;
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column sys_member.available_funds
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
private BigDecimal availableFunds;
private Double availableFunds;
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column sys_member.margin_level
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
private BigDecimal marginLevel;
private Double marginLevel;
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column sys_member.position_profit_loss
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
private BigDecimal positionProfitLoss;
private Double positionProfitLoss;
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column sys_member.cumulative_profit_loss
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
private BigDecimal cumulativeProfitLoss;
private Double cumulativeProfitLoss;
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column sys_member.yield
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
private BigDecimal yield;
private Double yield;
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column sys_member.opening_trades
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
private Integer openingTrades;
@ -161,7 +159,7 @@ public class Member {
* This field was generated by MyBatis Generator.
* This field corresponds to the database column sys_member.closing_trades
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
private Integer closingTrades;
@ -171,9 +169,9 @@ public class Member {
*
* @return the value of sys_member.member_id
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public Long getMemberId() {
public Integer getMemberId() {
return memberId;
}
@ -183,9 +181,9 @@ public class Member {
*
* @param memberId the value for sys_member.member_id
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public void setMemberId(Long memberId) {
public void setMemberId(Integer memberId) {
this.memberId = memberId;
}
@ -195,9 +193,9 @@ public class Member {
*
* @return the value of sys_member.training_id
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public String getTrainingId() {
public Integer getTrainingId() {
return trainingId;
}
@ -207,10 +205,10 @@ public class Member {
*
* @param trainingId the value for sys_member.training_id
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public void setTrainingId(String trainingId) {
this.trainingId = trainingId == null ? null : trainingId.trim();
public void setTrainingId(Integer trainingId) {
this.trainingId = trainingId;
}
/**
@ -219,7 +217,7 @@ public class Member {
*
* @return the value of sys_member.name
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public String getName() {
return name;
@ -231,7 +229,7 @@ public class Member {
*
* @param name the value for sys_member.name
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public void setName(String name) {
this.name = name == null ? null : name.trim();
@ -243,7 +241,7 @@ public class Member {
*
* @return the value of sys_member.student_number
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public String getStudentNumber() {
return studentNumber;
@ -255,7 +253,7 @@ public class Member {
*
* @param studentNumber the value for sys_member.student_number
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public void setStudentNumber(String studentNumber) {
this.studentNumber = studentNumber == null ? null : studentNumber.trim();
@ -267,7 +265,7 @@ public class Member {
*
* @return the value of sys_member.major
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public String getMajor() {
return major;
@ -279,7 +277,7 @@ public class Member {
*
* @param major the value for sys_member.major
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public void setMajor(String major) {
this.major = major == null ? null : major.trim();
@ -291,7 +289,7 @@ public class Member {
*
* @return the value of sys_member.class_grade
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public String getClassGrade() {
return classGrade;
@ -303,7 +301,7 @@ public class Member {
*
* @param classGrade the value for sys_member.class_grade
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public void setClassGrade(String classGrade) {
this.classGrade = classGrade == null ? null : classGrade.trim();
@ -311,26 +309,26 @@ public class Member {
/**
* This method was generated by MyBatis Generator.
* This method returns the value of the database column sys_member.rank
* This method returns the value of the database column sys_member.stu_rank
*
* @return the value of sys_member.rank
* @return the value of sys_member.stu_rank
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public Integer getRank() {
return rank;
public Integer getStuRank() {
return stuRank;
}
/**
* This method was generated by MyBatis Generator.
* This method sets the value of the database column sys_member.rank
* This method sets the value of the database column sys_member.stu_rank
*
* @param rank the value for sys_member.rank
* @param stuRank the value for sys_member.stu_rank
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public void setRank(Integer rank) {
this.rank = rank;
public void setStuRank(Integer stuRank) {
this.stuRank = stuRank;
}
/**
@ -339,9 +337,9 @@ public class Member {
*
* @return the value of sys_member.initial_capital
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public BigDecimal getInitialCapital() {
public Double getInitialCapital() {
return initialCapital;
}
@ -351,9 +349,9 @@ public class Member {
*
* @param initialCapital the value for sys_member.initial_capital
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public void setInitialCapital(BigDecimal initialCapital) {
public void setInitialCapital(Double initialCapital) {
this.initialCapital = initialCapital;
}
@ -363,9 +361,9 @@ public class Member {
*
* @return the value of sys_member.total_assets
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public BigDecimal getTotalAssets() {
public Double getTotalAssets() {
return totalAssets;
}
@ -375,9 +373,9 @@ public class Member {
*
* @param totalAssets the value for sys_member.total_assets
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public void setTotalAssets(BigDecimal totalAssets) {
public void setTotalAssets(Double totalAssets) {
this.totalAssets = totalAssets;
}
@ -387,9 +385,9 @@ public class Member {
*
* @return the value of sys_member.net_value
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public BigDecimal getNetValue() {
public Double getNetValue() {
return netValue;
}
@ -399,9 +397,9 @@ public class Member {
*
* @param netValue the value for sys_member.net_value
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public void setNetValue(BigDecimal netValue) {
public void setNetValue(Double netValue) {
this.netValue = netValue;
}
@ -411,9 +409,9 @@ public class Member {
*
* @return the value of sys_member.margin_used
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public BigDecimal getMarginUsed() {
public Double getMarginUsed() {
return marginUsed;
}
@ -423,9 +421,9 @@ public class Member {
*
* @param marginUsed the value for sys_member.margin_used
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public void setMarginUsed(BigDecimal marginUsed) {
public void setMarginUsed(Double marginUsed) {
this.marginUsed = marginUsed;
}
@ -435,9 +433,9 @@ public class Member {
*
* @return the value of sys_member.available_funds
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public BigDecimal getAvailableFunds() {
public Double getAvailableFunds() {
return availableFunds;
}
@ -447,9 +445,9 @@ public class Member {
*
* @param availableFunds the value for sys_member.available_funds
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public void setAvailableFunds(BigDecimal availableFunds) {
public void setAvailableFunds(Double availableFunds) {
this.availableFunds = availableFunds;
}
@ -459,9 +457,9 @@ public class Member {
*
* @return the value of sys_member.margin_level
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public BigDecimal getMarginLevel() {
public Double getMarginLevel() {
return marginLevel;
}
@ -471,9 +469,9 @@ public class Member {
*
* @param marginLevel the value for sys_member.margin_level
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public void setMarginLevel(BigDecimal marginLevel) {
public void setMarginLevel(Double marginLevel) {
this.marginLevel = marginLevel;
}
@ -483,9 +481,9 @@ public class Member {
*
* @return the value of sys_member.position_profit_loss
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public BigDecimal getPositionProfitLoss() {
public Double getPositionProfitLoss() {
return positionProfitLoss;
}
@ -495,9 +493,9 @@ public class Member {
*
* @param positionProfitLoss the value for sys_member.position_profit_loss
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public void setPositionProfitLoss(BigDecimal positionProfitLoss) {
public void setPositionProfitLoss(Double positionProfitLoss) {
this.positionProfitLoss = positionProfitLoss;
}
@ -507,9 +505,9 @@ public class Member {
*
* @return the value of sys_member.cumulative_profit_loss
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public BigDecimal getCumulativeProfitLoss() {
public Double getCumulativeProfitLoss() {
return cumulativeProfitLoss;
}
@ -519,9 +517,9 @@ public class Member {
*
* @param cumulativeProfitLoss the value for sys_member.cumulative_profit_loss
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public void setCumulativeProfitLoss(BigDecimal cumulativeProfitLoss) {
public void setCumulativeProfitLoss(Double cumulativeProfitLoss) {
this.cumulativeProfitLoss = cumulativeProfitLoss;
}
@ -531,9 +529,9 @@ public class Member {
*
* @return the value of sys_member.yield
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public BigDecimal getYield() {
public Double getYield() {
return yield;
}
@ -543,9 +541,9 @@ public class Member {
*
* @param yield the value for sys_member.yield
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public void setYield(BigDecimal yield) {
public void setYield(Double yield) {
this.yield = yield;
}
@ -555,7 +553,7 @@ public class Member {
*
* @return the value of sys_member.opening_trades
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public Integer getOpeningTrades() {
return openingTrades;
@ -567,7 +565,7 @@ public class Member {
*
* @param openingTrades the value for sys_member.opening_trades
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public void setOpeningTrades(Integer openingTrades) {
this.openingTrades = openingTrades;
@ -579,7 +577,7 @@ public class Member {
*
* @return the value of sys_member.closing_trades
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public Integer getClosingTrades() {
return closingTrades;
@ -591,7 +589,7 @@ public class Member {
*
* @param closingTrades the value for sys_member.closing_trades
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
public void setClosingTrades(Integer closingTrades) {
this.closingTrades = closingTrades;

@ -11,7 +11,7 @@ import java.util.List;
@Setter
@Data
//外汇汇率实例
public class ExchangeFrateEntity extends JSONObject {
public class ExchangeFrateEntity extends JSONObject{
private int error_code;
private String resultcode;
private String reason;

@ -1,16 +1,18 @@
package com.sztzjy.forex.trading_trading.mappers;
import com.sztzjy.forex.trading_trading.entity.Member;
import com.sztzjy.forex.trading_trading.entity.example.MemberExample;
import com.sztzjy.forex.trading_trading.entity.MemberExample;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@Mapper
public interface MemberMapper {
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table sys_member
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
long countByExample(MemberExample example);
@ -18,7 +20,7 @@ public interface MemberMapper {
* This method was generated by MyBatis Generator.
* This method corresponds to the database table sys_member
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
int deleteByExample(MemberExample example);
@ -26,15 +28,15 @@ public interface MemberMapper {
* This method was generated by MyBatis Generator.
* This method corresponds to the database table sys_member
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
int deleteByPrimaryKey(Long memberId);
int deleteByPrimaryKey(Integer memberId);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table sys_member
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
int insert(Member record);
@ -42,7 +44,7 @@ public interface MemberMapper {
* This method was generated by MyBatis Generator.
* This method corresponds to the database table sys_member
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
int insertSelective(Member record);
@ -50,7 +52,7 @@ public interface MemberMapper {
* This method was generated by MyBatis Generator.
* This method corresponds to the database table sys_member
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
List<Member> selectByExample(MemberExample example);
@ -58,15 +60,15 @@ public interface MemberMapper {
* This method was generated by MyBatis Generator.
* This method corresponds to the database table sys_member
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
Member selectByPrimaryKey(Long memberId);
Member selectByPrimaryKey(Integer memberId);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table sys_member
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
int updateByExampleSelective(@Param("record") Member record, @Param("example") MemberExample example);
@ -74,7 +76,7 @@ public interface MemberMapper {
* This method was generated by MyBatis Generator.
* This method corresponds to the database table sys_member
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
int updateByExample(@Param("record") Member record, @Param("example") MemberExample example);
@ -82,7 +84,7 @@ public interface MemberMapper {
* This method was generated by MyBatis Generator.
* This method corresponds to the database table sys_member
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
int updateByPrimaryKeySelective(Member record);
@ -90,7 +92,7 @@ public interface MemberMapper {
* This method was generated by MyBatis Generator.
* This method corresponds to the database table sys_member
*
* @mbg.generated Tue Jun 27 13:28:23 CST 2023
* @mbg.generated Wed Jun 28 16:43:19 CST 2023
*/
int updateByPrimaryKey(Member record);
}

@ -75,7 +75,7 @@ spring:
mybatis:
type-aliases-package: com.sztzjy.forex.trading_trading.entity
mapper-locations: classpath*:mapper/*.xml
mapper-locations: classpath*:/mappers/*.xml
swagger:
enable: true

@ -1,493 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.sztzjy.forex.trading_trading.mappers.MemberMapper">
<resultMap id="BaseResultMap" type="com.sztzjy.forex.trading_trading.entity.Member">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Tue Jun 27 13:28:23 CST 2023.
-->
<id column="member_id" jdbcType="BIGINT" property="memberId" />
<result column="training_id" jdbcType="VARCHAR" property="trainingId" />
<result column="name" jdbcType="VARCHAR" property="name" />
<result column="student_number" jdbcType="VARCHAR" property="studentNumber" />
<result column="major" jdbcType="VARCHAR" property="major" />
<result column="class_grade" jdbcType="VARCHAR" property="classGrade" />
<result column="rank" jdbcType="INTEGER" property="rank" />
<result column="initial_capital" jdbcType="DECIMAL" property="initialCapital" />
<result column="total_assets" jdbcType="DECIMAL" property="totalAssets" />
<result column="net_value" jdbcType="DECIMAL" property="netValue" />
<result column="margin_used" jdbcType="DECIMAL" property="marginUsed" />
<result column="available_funds" jdbcType="DECIMAL" property="availableFunds" />
<result column="margin_level" jdbcType="DECIMAL" property="marginLevel" />
<result column="position_profit_loss" jdbcType="DECIMAL" property="positionProfitLoss" />
<result column="cumulative_profit_loss" jdbcType="DECIMAL" property="cumulativeProfitLoss" />
<result column="yield" jdbcType="DECIMAL" property="yield" />
<result column="opening_trades" jdbcType="INTEGER" property="openingTrades" />
<result column="closing_trades" jdbcType="INTEGER" property="closingTrades" />
</resultMap>
<sql id="Example_Where_Clause">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Tue Jun 27 13:28:23 CST 2023.
-->
<where>
<foreach collection="oredCriteria" item="criteria" separator="or">
<if test="criteria.valid">
<trim prefix="(" prefixOverrides="and" suffix=")">
<foreach collection="criteria.criteria" item="criterion">
<choose>
<when test="criterion.noValue">
and ${criterion.condition}
</when>
<when test="criterion.singleValue">
and ${criterion.condition} #{criterion.value}
</when>
<when test="criterion.betweenValue">
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when test="criterion.listValue">
and ${criterion.condition}
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id="Update_By_Example_Where_Clause">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Tue Jun 27 13:28:23 CST 2023.
-->
<where>
<foreach collection="example.oredCriteria" item="criteria" separator="or">
<if test="criteria.valid">
<trim prefix="(" prefixOverrides="and" suffix=")">
<foreach collection="criteria.criteria" item="criterion">
<choose>
<when test="criterion.noValue">
and ${criterion.condition}
</when>
<when test="criterion.singleValue">
and ${criterion.condition} #{criterion.value}
</when>
<when test="criterion.betweenValue">
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when test="criterion.listValue">
and ${criterion.condition}
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id="Base_Column_List">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Tue Jun 27 13:28:23 CST 2023.
-->
member_id, training_id, name, student_number, major, class_grade, rank, initial_capital,
total_assets, net_value, margin_used, available_funds, margin_level, position_profit_loss,
cumulative_profit_loss, yield, opening_trades, closing_trades
</sql>
<select id="selectByExample" parameterType="com.sztzjy.forex.trading_trading.entity.example.MemberExample" resultMap="BaseResultMap">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Tue Jun 27 13:28:23 CST 2023.
-->
select
<if test="distinct">
distinct
</if>
<include refid="Base_Column_List" />
from sys_member
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
<if test="orderByClause != null">
order by ${orderByClause}
</if>
</select>
<select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Tue Jun 27 13:28:23 CST 2023.
-->
select
<include refid="Base_Column_List" />
from sys_member
where member_id = #{memberId,jdbcType=BIGINT}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Tue Jun 27 13:28:23 CST 2023.
-->
delete from sys_member
where member_id = #{memberId,jdbcType=BIGINT}
</delete>
<delete id="deleteByExample" parameterType="com.sztzjy.forex.trading_trading.entity.example.MemberExample">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Tue Jun 27 13:28:23 CST 2023.
-->
delete from sys_member
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
</delete>
<insert id="insert" parameterType="com.sztzjy.forex.trading_trading.entity.Member">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Tue Jun 27 13:28:23 CST 2023.
-->
insert into sys_member (member_id, training_id, name,
student_number, major, class_grade,
rank, initial_capital, total_assets,
net_value, margin_used, available_funds,
margin_level, position_profit_loss, cumulative_profit_loss,
yield, opening_trades, closing_trades
)
values (#{memberId,jdbcType=BIGINT}, #{trainingId,jdbcType=VARCHAR}, #{name,jdbcType=VARCHAR},
#{studentNumber,jdbcType=VARCHAR}, #{major,jdbcType=VARCHAR}, #{classGrade,jdbcType=VARCHAR},
#{rank,jdbcType=INTEGER}, #{initialCapital,jdbcType=DECIMAL}, #{totalAssets,jdbcType=DECIMAL},
#{netValue,jdbcType=DECIMAL}, #{marginUsed,jdbcType=DECIMAL}, #{availableFunds,jdbcType=DECIMAL},
#{marginLevel,jdbcType=DECIMAL}, #{positionProfitLoss,jdbcType=DECIMAL}, #{cumulativeProfitLoss,jdbcType=DECIMAL},
#{yield,jdbcType=DECIMAL}, #{openingTrades,jdbcType=INTEGER}, #{closingTrades,jdbcType=INTEGER}
)
</insert>
<insert id="insertSelective" parameterType="com.sztzjy.forex.trading_trading.entity.Member">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Tue Jun 27 13:28:23 CST 2023.
-->
insert into sys_member
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="memberId != null">
member_id,
</if>
<if test="trainingId != null">
training_id,
</if>
<if test="name != null">
name,
</if>
<if test="studentNumber != null">
student_number,
</if>
<if test="major != null">
major,
</if>
<if test="classGrade != null">
class_grade,
</if>
<if test="rank != null">
rank,
</if>
<if test="initialCapital != null">
initial_capital,
</if>
<if test="totalAssets != null">
total_assets,
</if>
<if test="netValue != null">
net_value,
</if>
<if test="marginUsed != null">
margin_used,
</if>
<if test="availableFunds != null">
available_funds,
</if>
<if test="marginLevel != null">
margin_level,
</if>
<if test="positionProfitLoss != null">
position_profit_loss,
</if>
<if test="cumulativeProfitLoss != null">
cumulative_profit_loss,
</if>
<if test="yield != null">
yield,
</if>
<if test="openingTrades != null">
opening_trades,
</if>
<if test="closingTrades != null">
closing_trades,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="memberId != null">
#{memberId,jdbcType=BIGINT},
</if>
<if test="trainingId != null">
#{trainingId,jdbcType=VARCHAR},
</if>
<if test="name != null">
#{name,jdbcType=VARCHAR},
</if>
<if test="studentNumber != null">
#{studentNumber,jdbcType=VARCHAR},
</if>
<if test="major != null">
#{major,jdbcType=VARCHAR},
</if>
<if test="classGrade != null">
#{classGrade,jdbcType=VARCHAR},
</if>
<if test="rank != null">
#{rank,jdbcType=INTEGER},
</if>
<if test="initialCapital != null">
#{initialCapital,jdbcType=DECIMAL},
</if>
<if test="totalAssets != null">
#{totalAssets,jdbcType=DECIMAL},
</if>
<if test="netValue != null">
#{netValue,jdbcType=DECIMAL},
</if>
<if test="marginUsed != null">
#{marginUsed,jdbcType=DECIMAL},
</if>
<if test="availableFunds != null">
#{availableFunds,jdbcType=DECIMAL},
</if>
<if test="marginLevel != null">
#{marginLevel,jdbcType=DECIMAL},
</if>
<if test="positionProfitLoss != null">
#{positionProfitLoss,jdbcType=DECIMAL},
</if>
<if test="cumulativeProfitLoss != null">
#{cumulativeProfitLoss,jdbcType=DECIMAL},
</if>
<if test="yield != null">
#{yield,jdbcType=DECIMAL},
</if>
<if test="openingTrades != null">
#{openingTrades,jdbcType=INTEGER},
</if>
<if test="closingTrades != null">
#{closingTrades,jdbcType=INTEGER},
</if>
</trim>
</insert>
<select id="countByExample" parameterType="com.sztzjy.forex.trading_trading.entity.example.MemberExample" resultType="java.lang.Long">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Tue Jun 27 13:28:23 CST 2023.
-->
select count(*) from sys_member
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
</select>
<update id="updateByExampleSelective" parameterType="map">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Tue Jun 27 13:28:23 CST 2023.
-->
update sys_member
<set>
<if test="record.memberId != null">
member_id = #{record.memberId,jdbcType=BIGINT},
</if>
<if test="record.trainingId != null">
training_id = #{record.trainingId,jdbcType=VARCHAR},
</if>
<if test="record.name != null">
name = #{record.name,jdbcType=VARCHAR},
</if>
<if test="record.studentNumber != null">
student_number = #{record.studentNumber,jdbcType=VARCHAR},
</if>
<if test="record.major != null">
major = #{record.major,jdbcType=VARCHAR},
</if>
<if test="record.classGrade != null">
class_grade = #{record.classGrade,jdbcType=VARCHAR},
</if>
<if test="record.rank != null">
rank = #{record.rank,jdbcType=INTEGER},
</if>
<if test="record.initialCapital != null">
initial_capital = #{record.initialCapital,jdbcType=DECIMAL},
</if>
<if test="record.totalAssets != null">
total_assets = #{record.totalAssets,jdbcType=DECIMAL},
</if>
<if test="record.netValue != null">
net_value = #{record.netValue,jdbcType=DECIMAL},
</if>
<if test="record.marginUsed != null">
margin_used = #{record.marginUsed,jdbcType=DECIMAL},
</if>
<if test="record.availableFunds != null">
available_funds = #{record.availableFunds,jdbcType=DECIMAL},
</if>
<if test="record.marginLevel != null">
margin_level = #{record.marginLevel,jdbcType=DECIMAL},
</if>
<if test="record.positionProfitLoss != null">
position_profit_loss = #{record.positionProfitLoss,jdbcType=DECIMAL},
</if>
<if test="record.cumulativeProfitLoss != null">
cumulative_profit_loss = #{record.cumulativeProfitLoss,jdbcType=DECIMAL},
</if>
<if test="record.yield != null">
yield = #{record.yield,jdbcType=DECIMAL},
</if>
<if test="record.openingTrades != null">
opening_trades = #{record.openingTrades,jdbcType=INTEGER},
</if>
<if test="record.closingTrades != null">
closing_trades = #{record.closingTrades,jdbcType=INTEGER},
</if>
</set>
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
</update>
<update id="updateByExample" parameterType="map">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Tue Jun 27 13:28:23 CST 2023.
-->
update sys_member
set member_id = #{record.memberId,jdbcType=BIGINT},
training_id = #{record.trainingId,jdbcType=VARCHAR},
name = #{record.name,jdbcType=VARCHAR},
student_number = #{record.studentNumber,jdbcType=VARCHAR},
major = #{record.major,jdbcType=VARCHAR},
class_grade = #{record.classGrade,jdbcType=VARCHAR},
rank = #{record.rank,jdbcType=INTEGER},
initial_capital = #{record.initialCapital,jdbcType=DECIMAL},
total_assets = #{record.totalAssets,jdbcType=DECIMAL},
net_value = #{record.netValue,jdbcType=DECIMAL},
margin_used = #{record.marginUsed,jdbcType=DECIMAL},
available_funds = #{record.availableFunds,jdbcType=DECIMAL},
margin_level = #{record.marginLevel,jdbcType=DECIMAL},
position_profit_loss = #{record.positionProfitLoss,jdbcType=DECIMAL},
cumulative_profit_loss = #{record.cumulativeProfitLoss,jdbcType=DECIMAL},
yield = #{record.yield,jdbcType=DECIMAL},
opening_trades = #{record.openingTrades,jdbcType=INTEGER},
closing_trades = #{record.closingTrades,jdbcType=INTEGER}
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
</update>
<update id="updateByPrimaryKeySelective" parameterType="com.sztzjy.forex.trading_trading.entity.Member">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Tue Jun 27 13:28:23 CST 2023.
-->
update sys_member
<set>
<if test="trainingId != null">
training_id = #{trainingId,jdbcType=VARCHAR},
</if>
<if test="name != null">
name = #{name,jdbcType=VARCHAR},
</if>
<if test="studentNumber != null">
student_number = #{studentNumber,jdbcType=VARCHAR},
</if>
<if test="major != null">
major = #{major,jdbcType=VARCHAR},
</if>
<if test="classGrade != null">
class_grade = #{classGrade,jdbcType=VARCHAR},
</if>
<if test="rank != null">
rank = #{rank,jdbcType=INTEGER},
</if>
<if test="initialCapital != null">
initial_capital = #{initialCapital,jdbcType=DECIMAL},
</if>
<if test="totalAssets != null">
total_assets = #{totalAssets,jdbcType=DECIMAL},
</if>
<if test="netValue != null">
net_value = #{netValue,jdbcType=DECIMAL},
</if>
<if test="marginUsed != null">
margin_used = #{marginUsed,jdbcType=DECIMAL},
</if>
<if test="availableFunds != null">
available_funds = #{availableFunds,jdbcType=DECIMAL},
</if>
<if test="marginLevel != null">
margin_level = #{marginLevel,jdbcType=DECIMAL},
</if>
<if test="positionProfitLoss != null">
position_profit_loss = #{positionProfitLoss,jdbcType=DECIMAL},
</if>
<if test="cumulativeProfitLoss != null">
cumulative_profit_loss = #{cumulativeProfitLoss,jdbcType=DECIMAL},
</if>
<if test="yield != null">
yield = #{yield,jdbcType=DECIMAL},
</if>
<if test="openingTrades != null">
opening_trades = #{openingTrades,jdbcType=INTEGER},
</if>
<if test="closingTrades != null">
closing_trades = #{closingTrades,jdbcType=INTEGER},
</if>
</set>
where member_id = #{memberId,jdbcType=BIGINT}
</update>
<update id="updateByPrimaryKey" parameterType="com.sztzjy.forex.trading_trading.entity.Member">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Tue Jun 27 13:28:23 CST 2023.
-->
update sys_member
set training_id = #{trainingId,jdbcType=VARCHAR},
name = #{name,jdbcType=VARCHAR},
student_number = #{studentNumber,jdbcType=VARCHAR},
major = #{major,jdbcType=VARCHAR},
class_grade = #{classGrade,jdbcType=VARCHAR},
rank = #{rank,jdbcType=INTEGER},
initial_capital = #{initialCapital,jdbcType=DECIMAL},
total_assets = #{totalAssets,jdbcType=DECIMAL},
net_value = #{netValue,jdbcType=DECIMAL},
margin_used = #{marginUsed,jdbcType=DECIMAL},
available_funds = #{availableFunds,jdbcType=DECIMAL},
margin_level = #{marginLevel,jdbcType=DECIMAL},
position_profit_loss = #{positionProfitLoss,jdbcType=DECIMAL},
cumulative_profit_loss = #{cumulativeProfitLoss,jdbcType=DECIMAL},
yield = #{yield,jdbcType=DECIMAL},
opening_trades = #{openingTrades,jdbcType=INTEGER},
closing_trades = #{closingTrades,jdbcType=INTEGER}
where member_id = #{memberId,jdbcType=BIGINT}
</update>
</mapper>
Loading…
Cancel
Save