提交 3f801d9b authored 作者: renjianyu's avatar renjianyu

--no commit message

上级 1fd656e0
......@@ -20,11 +20,11 @@ public class BargainingForm {
private String helpMemberName;
@ApiModelProperty("助力人头像")
private String helpMemberImg;
@ApiModelProperty("助力创建时间")
private Date createDate;
// @ApiModelProperty("助力创建时间")
// private Date createDate;
@ApiModelProperty("1: 99 2:50")
private Integer type;
@ApiModelProperty("价钱")
private BigDecimal price;
// @ApiModelProperty("价钱")
// private BigDecimal price;
}
package com.zrqx.resource.commons.vo.fg.bargaining;
import java.util.List;
import com.zrqx.resource.commons.form.fg.bargaining.BargainingForm;
import com.zrqx.resource.commons.model.bargaining.Bargaining;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ApiModel(value = "FgBargainingVo",description = "分享")
@Data
public class FgBargainingVo {
@ApiModelProperty("是否助力")
private String isType;
@ApiModelProperty("当前助力总金额")
private String sumPrice;
@ApiModelProperty("当前助力人信息")
private Bargaining bargaining;
}
package com.zrqx.resource.fg.controller.BoostActivity;
import java.util.List;
import java.math.BigDecimal;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
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 com.zrqx.core.client.order.fg.FgOrderClient;
import com.zrqx.core.util.response.CallBack;
import com.zrqx.resource.commons.form.fg.bargaining.BargainingForm;
import com.zrqx.resource.commons.form.fg.exchange.ExchangeForm;
import com.zrqx.resource.commons.model.bargaining.Bargaining;
import com.zrqx.resource.commons.vo.fg.bargaining.FgBargainingVo;
import com.zrqx.resource.fg.service.bargaining.FgBargainingSerivceImpl;
import com.zrqx.resource.commons.model.courcelibrary.CourseLibrary;
import com.zrqx.resource.commons.vo.fg.bargaining.FgCourseBargainingListVO;
import com.zrqx.resource.fg.service.bargaining.FgBargainingService;
import com.zrqx.resource.fg.service.courselibrary.FgCourseLibraryService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import tk.mybatis.mapper.entity.Example;
/**
* 助力活动
......@@ -36,10 +51,9 @@ public class FgBoostActivityController {
private FgOrderClient fgOrderClient;
@ApiOperation(value = "分享兑现", notes = "分享兑现")
@GetMapping(value = "/save")
public CallBack<Boolean> ExchangeSave(BargainingForm form) {
fgBargainingSerivce.updateorsave(form);
return CallBack.success(null);
@PostMapping(value = "/save")
public CallBack<Boolean> save(@RequestBody BargainingForm form) {
return CallBack.success(fgBargainingSerivce.updateorsave(form));
}
@ApiOperation(value = "助力活动资源", notes = "助力活动资源1:0.01 ,2:49.9")
......@@ -67,4 +81,31 @@ public class FgBoostActivityController {
return CallBack.success(number);
}
@ApiOperation(value = "助力列表", notes = "助力列表")
@GetMapping(value = "/get/asctivity")
public CallBack<List<Bargaining>> asctivity(String shareMemberId ,Integer type) {
Example example = fgBargainingSerivce.createExample();
example.createCriteria().andEqualTo("shareMemberId",shareMemberId).andNotEqualTo("helpMemberId",shareMemberId).andEqualTo("type",type);
return CallBack.success(fgBargainingSerivce.selectByExample(example));
}
@ApiOperation(value = "是否助力,以及助力信息", notes = "是否助力,以及助力信息")
@GetMapping(value = "/get/isAsctivity")
public CallBack<List<FgBargainingVo>> getIsAsctivity(String shareMemberId ,Integer type) {
FgBargainingVo fgBargainingVo =new FgBargainingVo();
Example example = fgBargainingSerivce.createExample();
example.createCriteria().andEqualTo("shareMemberId",shareMemberId).andNotEqualTo("helpMemberId",shareMemberId).andEqualTo("type",type);
List<Bargaining> list = fgBargainingSerivce.selectByExample(example);
if(list.size()>0) {
fgBargainingVo.setBargaining(list.get(0));
}
return CallBack.success();
}
}
package com.zrqx.resource.fg.mapper.bargaining;
import java.math.BigDecimal;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import com.zrqx.core.mapper.BaseMapper;
import com.zrqx.resource.commons.form.fg.recommend.FgQueryRecommedResourceForm;
import com.zrqx.resource.commons.model.bargaining.Bargaining;
import com.zrqx.resource.commons.vo.fg.courselibrary.FgCourseLibraryListVO;
/**
* 兑换表
*/
......@@ -25,4 +35,26 @@ public interface FgBargainingMapper extends BaseMapper <Bargaining>{
+"</script>" )
Integer getPeopleNumber();
/**
* 获价钱
*/
@Select("<script>"
+ " select IFNULL(sum(price),0) from res_bargaining where 1 = 1"
+ " eq(shareMemberId,shareMemberId)"
+ " ne(helpMemberId,shareMemberId)"
+ " eq(type,type)"
+ "</script>")
BigDecimal queryPrice(@Param("shareMemberId")String shareMemberId,@Param("type")Integer type);
/**
* 获总数
*/
@Select("<script>"
+ " select IFNULL(count(price),0) from res_bargaining where 1 = 1"
+ " eq(shareMemberId,shareMemberId)"
+ " ne(helpMemberId,shareMemberId)"
+ " eq(type,type)"
+ "</script>")
Integer queryCount(@Param("shareMemberId")String shareMemberId,@Param("type")Integer type);
}
package com.zrqx.resource.fg.service.bargaining;
import java.math.BigDecimal;
import java.util.Date;
import java.util.Random;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -8,6 +14,7 @@ import org.springframework.stereotype.Service;
import com.zrqx.core.commons.redis.Redis;
import com.zrqx.core.mapper.BaseMapper;
import com.zrqx.core.service.BaseServiceImpl;
import com.zrqx.core.util.bean.BeanUtils;
import com.zrqx.resource.commons.form.fg.bargaining.BargainingForm;
import com.zrqx.resource.commons.model.bargaining.Bargaining;
import com.zrqx.resource.fg.mapper.bargaining.FgBargainingMapper;
......@@ -16,31 +23,95 @@ import com.zrqx.resource.fg.mapper.bargaining.FgBargainingMapper;
* 分享库
*/
@Service
public class FgBargainingSerivceImpl extends
BaseServiceImpl<Bargaining, String> implements FgBargainingService {
public class FgBargainingSerivceImpl extends BaseServiceImpl<Bargaining, String> implements FgBargainingService {
private static final Logger logger = LoggerFactory.getLogger(Bargaining.class);
@Autowired
private FgBargainingMapper mapper;
@Autowired
private Redis redis;
@Override
public BaseMapper<Bargaining> getMapper() {
return mapper;
}
@Override
public boolean updateorsave(BargainingForm form) {
// TODO Auto-generated method stub
return false;
Bargaining bargaining = new Bargaining();
BeanUtils.copyProperties(form, bargaining);
bargaining.setCreateDate(new Date());
Random random = new Random();
// 砍价钱
// 1类型 99砍价 68.99
if (bargaining.getType() == 1) {
BigDecimal price = new BigDecimal(68.99);
// 查询当前总金额
BigDecimal queryPrice = mapper.queryPrice(bargaining.getShareMemberId(),bargaining.getType());
if (bargaining.getHelpMemberId().equals(bargaining.getShareMemberId())) {
bargaining.setPrice(new BigDecimal(30));
} else {
// 查询次数
Integer count = mapper.queryCount(bargaining.getShareMemberId(),bargaining.getType());
if (count == 8) {
// 最后一次金额
bargaining.setPrice(price.subtract(queryPrice));
System.out.println(queryPrice);
System.out.println(price.subtract(queryPrice));
System.out.println(bargaining.getPrice());
} else if(count<8){
// 剩余钱数
BigDecimal intPrice = price.subtract(queryPrice);
// 总次数
BigDecimal sumcount = new BigDecimal(9);
// 剩余次数
BigDecimal discount = sumcount.subtract(new BigDecimal(count));
// 随机
Integer maxInt = intPrice.divide(discount, 0, BigDecimal.ROUND_DOWN).intValue();
int s = random.nextInt(maxInt) % (maxInt) + 1;
bargaining.setPrice(new BigDecimal(s));
}else {
return true;
}
}
}
// 50砍价 29.1
if (bargaining.getType() == 2) {
BigDecimal price = new BigDecimal(29.1);
// 查询当前总金额
BigDecimal queryPrice = mapper.queryPrice(bargaining.getShareMemberId(),bargaining.getType());
if (bargaining.getHelpMemberId().equals(bargaining.getShareMemberId())) {
bargaining.setPrice(new BigDecimal(20));
} else {
// 查询次数
Integer count = mapper.queryCount(bargaining.getShareMemberId(),bargaining.getType());
if (count == 3) {
// 最后一次金额
bargaining.setPrice(price.subtract(queryPrice));
} else if(count<3) {
// 剩余钱数
BigDecimal intPrice = price.subtract(queryPrice);
// 总次数
BigDecimal sumcount = new BigDecimal(4);
// 剩余次数
BigDecimal discount = sumcount.subtract(new BigDecimal(count));
// 随机
Integer maxInt = intPrice.divide(discount, 0, BigDecimal.ROUND_DOWN).intValue();
int s = random.nextInt(maxInt) % (maxInt) + 1;
bargaining.setPrice(new BigDecimal(s));
}else {
return true;
}
}
}
mapper.insert(bargaining);
return true;
}
@Override
public Integer getStockNum(Integer type) {
Integer stockNum = mapper.getStockNum(type);
......@@ -63,7 +134,5 @@ public class FgBargainingSerivceImpl extends
}
package com.zrqx.resource.fg.service.bargaining;
import com.zrqx.core.service.BaseService;
import com.zrqx.resource.commons.form.fg.bargaining.BargainingForm;
import com.zrqx.resource.commons.model.bargaining.Bargaining;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论