22 files modified
2 files added
| | |
| | | @RequestMapping({"queryMyOption.do"}) |
| | | @ResponseBody |
| | | public ServerResponse queryMyOption(@RequestParam("code") String code, HttpServletRequest request) { |
| | | // return this.iUserService.queryMyOption(code, request); |
| | | |
| | | return null; |
| | | return this.iUserService.queryMyOption(code, request); |
| | | } |
| | | |
| | | //用户下单买入股票 |
| | |
| | | |
| | | /** |
| | | * 用户新股列表 |
| | | * @param pageNum |
| | | * @param pageSize |
| | | * @param name |
| | | * @param code |
| | | * @param zt |
| | |
| | | return this.iUserStockSubscribeService.userSubmit(id,request); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * vip抢筹 (涨停板买入) |
| | | * |
| | | */ |
| | | @RequestMapping({"transfer.do"}) |
| | | @ResponseBody |
| | | public ServerResponse transfer(@RequestParam("fromType") String fromType, @RequestParam("toType") String toType, |
| | |
| | | } |
| | | |
| | | |
| | | //大宗下单列表 |
| | | @RequestMapping({"getMoenyLog.do"}) |
| | | @ResponseBody |
| | | public ServerResponse getMoenyLog(@RequestParam("type") String stockCode, HttpServletRequest request) { |
| | | return this.iUserService.getMoenyLog(stockCode, request); |
| | | } |
| | | |
| | | } |
| New file |
| | |
| | | package com.nq.dao; |
| | | |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | import com.nq.pojo.MoneyLog; |
| | | |
| | | public interface MoneyLogMapper extends BaseMapper<MoneyLog> { |
| | | } |
| New file |
| | |
| | | package com.nq.pojo; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import lombok.Data; |
| | | |
| | | @Data |
| | | public class MoneyLog { |
| | | |
| | | @TableId(value = "id",type = IdType.AUTO) |
| | | private int id; |
| | | private String type; |
| | | private String amount; |
| | | private String descs; |
| | | private String beFore; |
| | | private String after; |
| | | private String accectType; |
| | | private String userId; |
| | | |
| | | |
| | | } |
| | |
| | | package com.nq.pojo; |
| | | import lombok.Data; |
| | | |
| | | import java.util.Date; |
| | | |
| | | @Data |
| | | public class StockOption { |
| | | private Integer id; |
| | | private Integer userId; |
| | |
| | | private String stockGid; |
| | | private Integer isLock; |
| | | |
| | | public StockOption(Integer id, Integer userId, Integer stockId, Date addTime, String stockCode, String stockName, String stockGid, Integer isLock) { |
| | | this.id = id; |
| | | this.userId = userId; |
| | | this.stockId = stockId; |
| | | this.addTime = addTime; |
| | | this.stockCode = stockCode; |
| | | this.stockName = stockName; |
| | | this.stockGid = stockGid; |
| | | this.isLock = isLock; |
| | | } |
| | | |
| | | |
| | | public StockOption() { |
| | | } |
| | | |
| | | public Integer getId() { |
| | | return id; |
| | | } |
| | | |
| | | public void setId(Integer id) { |
| | | this.id = id; |
| | | } |
| | | |
| | | public Integer getUserId() { |
| | | return userId; |
| | | } |
| | | |
| | | public void setUserId(Integer userId) { |
| | | this.userId = userId; |
| | | } |
| | | |
| | | public Integer getStockId() { |
| | | return stockId; |
| | | } |
| | | |
| | | public void setStockId(Integer stockId) { |
| | | this.stockId = stockId; |
| | | } |
| | | |
| | | public Date getAddTime() { |
| | | return addTime; |
| | | } |
| | | |
| | | public void setAddTime(Date addTime) { |
| | | this.addTime = addTime; |
| | | } |
| | | |
| | | public String getStockCode() { |
| | | return stockCode; |
| | | } |
| | | |
| | | public void setStockCode(String stockCode) { |
| | | this.stockCode = stockCode; |
| | | } |
| | | |
| | | public String getStockName() { |
| | | return stockName; |
| | | } |
| | | |
| | | public void setStockName(String stockName) { |
| | | this.stockName = stockName; |
| | | } |
| | | |
| | | public String getStockGid() { |
| | | return stockGid; |
| | | } |
| | | |
| | | public void setStockGid(String stockGid) { |
| | | this.stockGid = stockGid; |
| | | } |
| | | |
| | | public Integer getIsLock() { |
| | | return isLock; |
| | | } |
| | | |
| | | public void setIsLock(Integer isLock) { |
| | | this.isLock = isLock; |
| | | } |
| | | } |
| | |
| | | void updateUserAmt(Double amt, Integer user_id); |
| | | |
| | | // |
| | | // ServerResponse queryMyOption(String code, HttpServletRequest request); |
| | | ServerResponse queryMyOption(String code, HttpServletRequest request); |
| | | |
| | | ServerResponse getMoenyLog(String type,HttpServletRequest request); |
| | | } |
| | |
| | | @Autowired |
| | | StockMapper stockMapper; |
| | | |
| | | public ServerResponse<PageInfo> findMyStockOptions(String keyWords, HttpServletRequest request, int pageNum, int pageSize,String stockType) { |
| | | public ServerResponse<PageInfo> findMyStockOptions(String keyWords, HttpServletRequest request, int pageNum, int pageSize, String stockType) { |
| | | |
| | | PageHelper.startPage(pageNum, pageSize); |
| | | User user = this.iUserService.getCurrentUser(request); |
| | | PageInfo pageInfo; |
| | | if (user == null) { |
| | | pageInfo =new PageInfo(); |
| | | return ServerResponse.createBySuccessMsg("請先登錄"); |
| | | }else{ |
| | | List<StockOption> stockOptions = this.stockOptionMapper.findMyOptionByKeywords(user.getId(), keyWords,stockType); |
| | | List<StockListVO> stockOptionListVOS = Lists.newArrayList(); |
| | | for (StockOption option : stockOptions) { |
| | | StockListVO stockListVO = assembleStockOptionListVO(option); |
| | | stockOptionListVOS.add(stockListVO); |
| | | } |
| | | pageInfo = new PageInfo(stockOptions); |
| | | pageInfo.setList(stockOptionListVOS); |
| | | |
| | | List<StockOption> stockOptions = this.stockOptionMapper.findMyOptionByKeywords(user.getId(), keyWords, stockType); |
| | | List<StockListVO> stockOptionListVOS = Lists.newArrayList(); |
| | | |
| | | for (StockOption option : stockOptions) { |
| | | StockListVO stockListVO = assembleStockOptionListVO(option); |
| | | stockOptionListVOS.add(stockListVO); |
| | | } |
| | | pageInfo = new PageInfo(stockOptionListVOS); |
| | | pageInfo.setList(stockOptionListVOS); |
| | | return ServerResponse.createBySuccess(pageInfo); |
| | | |
| | | } |
| | |
| | | } |
| | | return ServerResponse.createByErrorMsg("已添加"); |
| | | } |
| | | |
| | | public String isMyOption(Integer uid, String code) { |
| | | StockOption stockOption = this.stockOptionMapper.isOption(uid, code); |
| | | if (stockOption == null) { |
| | |
| | | } |
| | | return "1"; |
| | | } |
| | | |
| | | private StockListVO assembleStockOptionListVO(StockOption option) { |
| | | Stock stock = this.stockMapper.selectByPrimaryKey(option.getStockId()); |
| | | StockListVO stockVO = StockApi.getStockRealTime(stock); |
| | |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.nq.common.ServerResponse; |
| | | import com.nq.dao.MoneyLogMapper; |
| | | import com.nq.dao.UserAssetsMapper; |
| | | import com.nq.enums.EUserAssets; |
| | | import com.nq.pojo.MoneyLog; |
| | | import com.nq.pojo.UserAssets; |
| | | import com.nq.service.IUserAssetsServices; |
| | | import org.springframework.stereotype.Service; |
| | |
| | | @Resource |
| | | UserAssetsMapper userAssetsMapper; |
| | | |
| | | @Resource |
| | | MoneyLogMapper moneyLogMapper; |
| | | |
| | | @Override |
| | | public UserAssets assetsByTypeAndUserId(String accetType, Integer userId) { |
| | |
| | | accetType = "US"; |
| | | } |
| | | UserAssets userAssets = assetsByTypeAndUserId(accetType,userId); |
| | | |
| | | String type = eUserAssets.getDesc(); |
| | | String before = userAssets.getAvailableBalance().setScale(2).toString(); |
| | | String accectType = userAssets.getAccectType(); |
| | | if(Objects.equals(eUserAssets.getCode(), EUserAssets.BUY.getCode())){ |
| | | userAssets.setAvailableBalance(userAssets.getAvailableBalance().add(amount)); |
| | | userAssets.setFreezeMoney(userAssets.getFreezeMoney().add(amount.negate())); |
| | |
| | | }else if(Objects.equals(eUserAssets.getCode(), EUserAssets.WITHDRAW.getCode())){ |
| | | userAssets.setAvailableBalance(userAssets.getAvailableBalance().add(amount)); |
| | | } |
| | | //TODO 添加日志 |
| | | |
| | | String after = userAssets.getAvailableBalance().toString(); |
| | | MoneyLog moneyLog = new MoneyLog(); |
| | | moneyLog.setDescs(eUserAssets.getDesc()); |
| | | moneyLog.setBeFore(before); |
| | | moneyLog.setAfter(after); |
| | | moneyLog.setAmount(amount.toString()); |
| | | moneyLog.setAccectType(accectType); |
| | | moneyLog.setType(type); |
| | | moneyLog.setUserId(userId+""); |
| | | moneyLogMapper.insert(moneyLog); |
| | | return userAssetsMapper.updateById(userAssets)>1; |
| | | } |
| | | } |
| | |
| | | @Transactional |
| | | public ServerResponse buy(Integer stockId, Integer buyNum, Integer buyType, Integer lever, BigDecimal profitTarget, BigDecimal stopTarget, HttpServletRequest request) throws Exception { |
| | | |
| | | // 判断周末不能买 |
| | | // Date today = new Date(); |
| | | // Calendar c = Calendar.getInstance(); |
| | | // c.setTime(today); |
| | | /*实名认证开关开启*/ |
| | | SiteProduct siteProduct = iSiteProductService.getProductSetting(); |
| | | |
| | | User user = this.iUserService.getCurrentRefreshUser(request); |
| | |
| | | if (siteProduct.getRealNameDisplay() && user.getIsLock().intValue() == 1) { |
| | | return ServerResponse.createByErrorMsg("Order failed, account has been locked"); |
| | | } |
| | | |
| | | SiteSetting siteSetting = this.iSiteSettingService.getSiteSetting(); |
| | | if (siteSetting == null) { |
| | | log.error("下单出错,网站设置表不存在"); |
| | |
| | | if (stock == null) { |
| | | return ServerResponse.createByErrorMsg("Order failed, stock code error"); |
| | | } |
| | | |
| | | // if (Objects.equals(stock.getStockType(), EStockType.US.getCode())) { |
| | | // if (buyNum < siteSetting.getDzMinByCount()) { |
| | | // return ServerResponse.createByErrorMsg("Minimum purchase for bulk commodities " + siteSetting.getDzMinByCount()); |
| | | // } |
| | | // String am_begin = siteSetting.getTransAmBeginUs(); |
| | | // String am_end = siteSetting.getTransAmEndUs(); |
| | | // String pm_begin = siteSetting.getTransPmBeginUs(); |
| | | // String pm_end = siteSetting.getTransPmEndUs(); |
| | | // boolean am_flag = BuyAndSellUtils.isTransTime(am_begin, am_end); |
| | | // boolean pm_flag = BuyAndSellUtils.isTransTime(pm_begin, pm_end); |
| | | // log.info("是否在上午交易时间 = {} 是否在下午交易时间 = {}", Boolean.valueOf(am_flag), Boolean.valueOf(pm_flag)); |
| | | // if (!am_flag && !pm_flag) { |
| | | // return ServerResponse.createByErrorMsg("Order failed, not in the stock trading session"); |
| | | // } |
| | | // } else { |
| | | // String am_begin = siteSetting.getTransAmBegin(); |
| | | // String am_end = siteSetting.getTransAmEnd(); |
| | | // String pm_begin = siteSetting.getTransPmBegin(); |
| | | // String pm_end = siteSetting.getTransPmEnd(); |
| | | // boolean am_flag = BuyAndSellUtils.isTransTime(am_begin, am_end); |
| | | // boolean pm_flag = BuyAndSellUtils.isTransTime(pm_begin, pm_end); |
| | | // if (!am_flag && !pm_flag) { |
| | | // return ServerResponse.createByErrorMsg("Order failed, out of trading hours"); |
| | | // } |
| | | // if (siteProduct.getHolidayDisplay()) { |
| | | // return ServerResponse.createByErrorMsg("No trading on weekends or holidays!"); |
| | | // } |
| | | // } |
| | | //判断股票是否在可交易时间段 |
| | | Boolean b = tradingHourService.timeCheck(); |
| | | if (!b) { |
| | |
| | | } |
| | | |
| | | |
| | | if (stock.getIsLock().intValue() != 0) { |
| | | if (stock.getIsLock() != 0) { |
| | | return ServerResponse.createByErrorMsg("Order failed, shares cannot be traded at present"); |
| | | } |
| | | |
| | | List dbPosition = findPositionByStockCodeAndTimes(siteSetting.getBuySameTimes().intValue(), stock |
| | | .getStockCode(), user.getId()); |
| | | if (dbPosition.size() >= siteSetting.getBuySameNums().intValue()) { |
| | | return ServerResponse.createByErrorMsg("Frequent trading," + siteSetting.getBuySameTimes() + "Hold no more than one stock within a minute" + siteSetting |
| | | .getBuySameNums() + "article"); |
| | | } |
| | | |
| | | Integer transNum = findPositionNumByTimes(siteSetting.getBuyNumTimes().intValue(), user.getId()); |
| | | if (transNum.intValue() / 100 >= siteSetting.getBuyNumLots().intValue()) { |
| | | return ServerResponse.createByErrorMsg("Frequent trading," + siteSetting |
| | | .getBuyNumTimes() + "Hold no more than one stock within a minute" + siteSetting.getBuyNumLots() + "hand"); |
| | | } |
| | | |
| | | if (buyNum.intValue() < siteSetting.getBuyMinNum().intValue()) { |
| | | return ServerResponse.createByErrorMsg("Order failed, purchase quantity is less than" + siteSetting |
| | | .getBuyMinNum() ); |
| | | } |
| | | if (buyNum.intValue() > siteSetting.getBuyMaxNum().intValue()) { |
| | | return ServerResponse.createByErrorMsg("Order failed, purchase quantity is greater than于" + siteSetting |
| | | .getBuyMaxNum() + "stocks"); |
| | | } |
| | | BigDecimal now_price; |
| | | //股票类型 现价 数据源的处理 |
| | | StockListVO stockListVO = StockApi.getStockRealTime(stock); |
| | |
| | | @Autowired |
| | | ISiteInfoService iSiteInfoService; |
| | | |
| | | @Resource |
| | | UserAssetsMapper userAssetsMapper; |
| | | public ServerResponse checkInMoney(int maxOrder, Integer userId) { |
| | | int count = this.userRechargeMapper.checkInMoney(0, userId); |
| | | |
| | |
| | | |
| | | User user = this.iUserService.getCurrentUser(request); |
| | | List<UserRecharge> userRecharges = this.userRechargeMapper.findUserChargeList(user.getId(), payChannel, orderStatus); |
| | | log.info("充值列表,增加用户 {} ,payChannel = {} , orderStatus = {}, 数量 = {}", new Object[]{user.getId(), payChannel, orderStatus, userRecharges.size()}); |
| | | PageInfo pageInfo = new PageInfo(userRecharges); |
| | | |
| | | for (int i = 0; i <userRecharges.size() ; i++) { |
| | | SitePay s = sitePayMapper.selectById(userRecharges.get(i).getPayId()); |
| | | if(s.getAssetsType().equals("US")){ |
| | | userRecharges.get(i).setAssetsType("$"); |
| | | userRecharges.get(i).setChannelName("USD"); |
| | | }else{ |
| | | userRecharges.get(i).setAssetsType("RM"); |
| | | userRecharges.get(i).setChannelName("MYR"); |
| | | } |
| | | } |
| | | |
| | | return ServerResponse.createBySuccess(pageInfo); |
| | | } |
| | | |
| | |
| | | |
| | | |
| | | @Resource |
| | | MoneyLogMapper mapper; |
| | | |
| | | @Resource |
| | | UserPositionMapper userPositionMapper; |
| | | @Resource |
| | | SiteAmtTransLogMapper siteAmtTransLogMapper; |
| | |
| | | userMapper.updateUserAmt(amt, user_id); |
| | | } |
| | | |
| | | // @Override |
| | | // public ServerResponse queryMyOption(String code, HttpServletRequest request) { |
| | | // User user = getCurrentUser(request); |
| | | // |
| | | // if (user == null) { |
| | | // return ServerResponse.createBySuccessMsg("請先登錄"); |
| | | // } |
| | | // String stockcode = code; |
| | | // if(code.contains("hf")){ |
| | | // stockcode = code.split("_")[1].toString(); |
| | | // } |
| | | // stockcode = stockcode.replace("sh","").replace("sz","").replace("bj",""); |
| | | // return this.iStockOptionService.isOption(user.getId(), stockcode); |
| | | // } |
| | | |
| | | @Override |
| | | public ServerResponse queryMyOption(String code, HttpServletRequest request) { |
| | | User user = getCurrentUser(request); |
| | | |
| | | return this.iStockOptionService.isOption(user.getId(), code); |
| | | } |
| | | |
| | | @Override |
| | | public ServerResponse getMoenyLog(String type,HttpServletRequest request) { |
| | | User user = getCurrentUser(request); |
| | | QueryWrapper<MoneyLog> queryWrapper = new QueryWrapper<>(); |
| | | queryWrapper.eq("type",type); |
| | | queryWrapper.eq("user_id",user.getId()); |
| | | return ServerResponse.createBySuccess(mapper.selectList(queryWrapper)); |
| | | } |
| | | |
| | | } |
| | | |
| | |
| | | StockListVO stockListVO = new StockListVO(); |
| | | try { |
| | | StockRealTimeBean realTimeStock = RedisKeyUtil.getCacheRealTimeStock(stock); |
| | | stockListVO.setHcrate(new BigDecimal(realTimeStock.getPcp().replace("%", ""))); |
| | | |
| | | stockListVO.setHcrate(new BigDecimal(realTimeStock.getPcp())); |
| | | stockListVO.setHcrateP(realTimeStock.getPcp()+"%"); |
| | | if(realTimeStock.getPcp().contains("-")){ |
| | | stockListVO.setColor(0); |
| | | }else{ |
| | | stockListVO.setColor(1); |
| | | } |
| | | |
| | | stockListVO.setNowPrice(realTimeStock.getLast()); |
| | | stockListVO.setToday_max(realTimeStock.getHigh()); |
| | | stockListVO.setToday_min(realTimeStock.getLow()); |
| | |
| | | |
| | | return null; |
| | | } |
| | | |
| | | |
| | | return stockListVO; |
| | | } |
| | | |
| | |
| | | } |
| | | try { |
| | | StockRealTimeBean qhBean = RedisKeyUtil.getCacheRealTimeStock(stock); |
| | | |
| | | |
| | | stockListVO.setHcrate(qhBean.getPcp()); |
| | | stockListVO.setNowPrice(qhBean.getLast()); |
| | | stockListVO.setToday_max(qhBean.getHigh()); |
| | |
| | | while (totleStock>list.size()){ |
| | | try{ |
| | | String result = HttpClientRequest.doGet(eStockType.stockUrl+"list?country_id="+eStockType.getContryId()+"&size=1000&page="+page+"&key="+eStockType.stockKey); |
| | | |
| | | ReponseBase reponseBase = new Gson().fromJson(result,ReponseBase.class); |
| | | list.addAll(reponseBase.getData()); |
| | | page++; |
| | |
| | | |
| | | |
| | | /*** |
| | | * 每3分钟同步一次数据源到数据库 |
| | | * 每3同步一次数据源到数据库 |
| | | * |
| | | */ |
| | | @Scheduled(cron = "0/3 * * * * ?") |
| | |
| | | @Override |
| | | public void onMessage(String s) { |
| | | try { |
| | | |
| | | StockRealTimeBean stockDetailBean = new Gson().fromJson(s, StockRealTimeBean.class); |
| | | RedisKeyUtil.setCacheRealTimeStock(EStockType.US,stockDetailBean); |
| | | ApplicationContext act = ApplicationContextRegisterUtil.getApplicationContext(); |
| | |
| | | |
| | | @Override |
| | | public void onClose(int i, String s, boolean b) { |
| | | log.info("websocket 关闭"+1); |
| | | log.info("websocket 美股关闭关闭"+1); |
| | | } |
| | | |
| | | @Override |
| | |
| | | public Map<String, WebSocketClient> websocketRunClientMap() { |
| | | |
| | | Map<String, WebSocketClient> retMap = new HashMap<>(2); |
| | | |
| | | |
| | | |
| | | |
| | | try { |
| | | WebsocketRunClient websocketRunClient = new WebsocketRunClient(new URI(PropertiesUtil.getProperty("MAS_WS_URL"))); |
| | | websocketRunClient.connect(); |
| | |
| | | @Override |
| | | public void onMessage(String s) { |
| | | try { |
| | | |
| | | |
| | | ApplicationContext act = ApplicationContextRegisterUtil.getApplicationContext(); |
| | | MandatoryLiquidationService liquidationService = (MandatoryLiquidationService) act.getBean(IMandatoryLiquidationService.class); |
| | | StockRealTimeBean stockDetailBean = new Gson().fromJson(s, StockRealTimeBean.class); |
| | |
| | | |
| | | @Override |
| | | public void onClose(int i, String s, boolean b) { |
| | | log.info("websocket 关闭"+1); |
| | | log.info("websocket 马来西亚 关闭"+1); |
| | | } |
| | | |
| | | @Override |
| | |
| | | IN_WS_URL = ws://api-in-ws.js-stock.top |
| | | IN_KEY = r3ZAgtcYzuBizmqge2hK |
| | | |
| | | US_HTTP_API = http://api-1-ws.js-stock.top/ |
| | | US_WS_URL = ws://api-1-ws.js-stock.top |
| | | US_HTTP_API = http://ws-us.js-stock.top/ |
| | | US_WS_URL = ws://ws-us.js-stock.top |
| | | US_KEY = jZFrku4RGQjP87Hmq5tm |
| | | |
| | | HK_HTTP_API = http://test.js-stock.top/ |
| | |
| | | datasource: |
| | | type: com.alibaba.druid.pool.DruidDataSource |
| | | driverClassName: com.mysql.cj.jdbc.Driver |
| | | url: jdbc:mysql://127.0.0.1:3306/stock?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 |
| | | url: jdbc:mysql://45.204.85.67:7306/stock?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 |
| | | username: root |
| | | password: 123456 |
| | | druid: |
| | |
| | | <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" > |
| | | <mapper namespace="com.nq.dao.StockOptionMapper" > |
| | | <resultMap id="BaseResultMap" type="com.nq.pojo.StockOption" > |
| | | <constructor > |
| | | <idArg column="id" jdbcType="INTEGER" javaType="java.lang.Integer" /> |
| | | <arg column="user_id" jdbcType="INTEGER" javaType="java.lang.Integer" /> |
| | | <arg column="stock_id" jdbcType="INTEGER" javaType="java.lang.Integer" /> |
| | | <arg column="add_time" jdbcType="TIMESTAMP" javaType="java.util.Date" /> |
| | | <arg column="stock_code" jdbcType="VARCHAR" javaType="java.lang.String" /> |
| | | <arg column="stock_name" jdbcType="VARCHAR" javaType="java.lang.String" /> |
| | | <arg column="stock_gid" jdbcType="VARCHAR" javaType="java.lang.String" /> |
| | | <arg column="is_lock" jdbcType="INTEGER" javaType="java.lang.Integer" /> |
| | | </constructor> |
| | | <id column="id" property="id" /> |
| | | <result column="user_id" property="userId" /> |
| | | <result column="stock_id" property="stockId" /> |
| | | <result column="add_time" property="addTime" /> |
| | | <result column="stock_code" property="stockCode" /> |
| | | <result column="stock_name" property="stockName" /> |
| | | <result column="stock_gid" property="stockGid" /> |
| | | <result column="is_lock" property="isLock" /> |
| | | </resultMap> |
| | | <sql id="Base_Column_List" > |
| | | id, user_id, stock_id, add_time, stock_code, stock_name, stock_gid, is_lock |
| | |
| | | IN_WS_URL = ws://api-in-ws.js-stock.top |
| | | IN_KEY = r3ZAgtcYzuBizmqge2hK |
| | | |
| | | US_HTTP_API = http://api-1-ws.js-stock.top/ |
| | | US_WS_URL = ws://api-1-ws.js-stock.top |
| | | US_HTTP_API = http://ws-us.js-stock.top/ |
| | | US_WS_URL = ws://ws-us.js-stock.top |
| | | US_KEY = jZFrku4RGQjP87Hmq5tm |
| | | |
| | | HK_HTTP_API = http://test.js-stock.top/ |
| | |
| | | datasource: |
| | | type: com.alibaba.druid.pool.DruidDataSource |
| | | driverClassName: com.mysql.cj.jdbc.Driver |
| | | url: jdbc:mysql://127.0.0.1:3306/stock?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 |
| | | url: jdbc:mysql://45.204.85.67:7306/stock?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 |
| | | username: root |
| | | password: 123456 |
| | | druid: |
| | |
| | | <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" > |
| | | <mapper namespace="com.nq.dao.StockOptionMapper" > |
| | | <resultMap id="BaseResultMap" type="com.nq.pojo.StockOption" > |
| | | <constructor > |
| | | <idArg column="id" jdbcType="INTEGER" javaType="java.lang.Integer" /> |
| | | <arg column="user_id" jdbcType="INTEGER" javaType="java.lang.Integer" /> |
| | | <arg column="stock_id" jdbcType="INTEGER" javaType="java.lang.Integer" /> |
| | | <arg column="add_time" jdbcType="TIMESTAMP" javaType="java.util.Date" /> |
| | | <arg column="stock_code" jdbcType="VARCHAR" javaType="java.lang.String" /> |
| | | <arg column="stock_name" jdbcType="VARCHAR" javaType="java.lang.String" /> |
| | | <arg column="stock_gid" jdbcType="VARCHAR" javaType="java.lang.String" /> |
| | | <arg column="is_lock" jdbcType="INTEGER" javaType="java.lang.Integer" /> |
| | | </constructor> |
| | | <id column="id" property="id" /> |
| | | <result column="user_id" property="userId" /> |
| | | <result column="stock_id" property="stockId" /> |
| | | <result column="add_time" property="addTime" /> |
| | | <result column="stock_code" property="stockCode" /> |
| | | <result column="stock_name" property="stockName" /> |
| | | <result column="stock_gid" property="stockGid" /> |
| | | <result column="is_lock" property="isLock" /> |
| | | </resultMap> |
| | | <sql id="Base_Column_List" > |
| | | id, user_id, stock_id, add_time, stock_code, stock_name, stock_gid, is_lock |
| | |
| | | com\nq\dao\UserPendingorderMapper.class |
| | | com\nq\service\IUserAssetsServices.class |
| | | com\nq\controller\agent\AgentRechargeController.class |
| | | com\nq\pojo\MoneyLog.class |
| | | com\nq\controller\backend\AdminController.class |
| | | com\nq\utils\http\HttpClientRequest.class |
| | | com\nq\controller\VerifyCodeController.class |
| | |
| | | com\nq\vo\foreigncurrency\ExchangeVO.class |
| | | com\nq\service\impl\UserWithdrawServiceImpl.class |
| | | com\nq\controller\protol\UserController.class |
| | | com\nq\dao\MoneyLogMapper.class |
| | | com\nq\utils\email\MailSender$Builder.class |
| | | com\nq\utils\translate\GoogleTranslateUtil.class |
| | | com\nq\utils\redis\RedisPoolUtil.class |