提交 c3664d49 authored 作者: 吴德鹏's avatar 吴德鹏

Optimized coupons

上级 55dafdf3
......@@ -8,8 +8,8 @@ import com.example.afrishop_v3.repository.TbCfToicouponRepository;
import com.example.afrishop_v3.security.services.AuthenticationUser;
import org.springframework.web.bind.annotation.*;
import java.util.LinkedHashMap;
import java.util.List;
import java.math.BigDecimal;
import java.util.*;
@RestController
@RequestMapping("/coupon")
......@@ -24,36 +24,36 @@ public class CouponController {
@GetMapping
public Result getUserCoupons(){
public Result getUserCoupons() {
return queryCouponByUserId(user.userId());
}
@GetMapping("queryCouponByUserId")
public Result queryCouponByUserId(@RequestParam("userId") String userId){
public Result queryCouponByUserId(@RequestParam("userId") String userId) {
List<TbCfToicoupon> availableCoupons = repository.queryUserAvailableCoupon(userId);
List<TbCfToicoupon> expiredCoupons = repository.queryUserExpiredCoupon(userId);
List<TbCfToicoupon> usedCoupons = repository.queryUserUsedCoupon(userId);
LinkedHashMap<String, Object> hashMap = new LinkedHashMap<>();
hashMap.put("validCouponList",availableCoupons);
hashMap.put("usedCouponList",usedCoupons);
hashMap.put("expiredCouponList",expiredCoupons);
hashMap.put("validCouponList", availableCoupons);
hashMap.put("usedCouponList", usedCoupons);
hashMap.put("expiredCouponList", expiredCoupons);
return new Result<>(hashMap);
}
@GetMapping("{couponId}")
public Result queryCouponDetails(@PathVariable("couponId") String couponId){
public Result queryCouponDetails(@PathVariable("couponId") String couponId) {
return new Result<>(repository.findById(couponId));
}
@GetMapping("take/{couponId}")
public Result couponTake(@PathVariable("couponId") String couponId){
public Result couponTake(@PathVariable("couponId") String couponId) {
// TODO
//TbCfCouponEntity tbCfCouponEntity=grabCoupon(couponId);
// if(tbCfCouponEntity!=null) {
......@@ -63,6 +63,34 @@ public class CouponController {
// //result.setMessage("Successfully received");
// } else {
// }
return new Result(ResultCodeEnum.ERROR.getCode(),"The coupon has been snapped up");
return new Result(ResultCodeEnum.ERROR.getCode(), "The coupon has been snapped up");
}
/**
* 查询用户未使用的优惠券,可用的排在顶部
*
* @param orderPrice
* @return
*/
@GetMapping("/selectCoupon")
public Result queryUserAvailableCoupons(@RequestParam("orderPrice") BigDecimal orderPrice) {
Map<String, Object> couponMap = new HashMap<>();
//可使用的优惠券
LinkedList<TbCfToicoupon> availableCoupon = new LinkedList();
//不可使用的优惠券
LinkedList<TbCfToicoupon> unAvailableCoupon = new LinkedList();
List<TbCfToicoupon> couponList = repository.queryUserAvailableCoupon(user.userId());
couponList.forEach(coupon -> {
boolean available = orderPrice.compareTo(coupon.withAmount()) >= 0;
if (available) {
availableCoupon.add(coupon);
} else {
unAvailableCoupon.add(coupon);
}
});
couponMap.put("availableCoupon", availableCoupon);
couponMap.put("unAvailableCoupon", unAvailableCoupon);
return new Result(couponMap);
}
}
server:
servlet:
context-path: /afrishop
port: 8099
spring:
datasource:
url: jdbc:mysql://47.106.242.175:3306/afrishop_test?useUnicode=true&connectionCollation=utf8mb4_general_ci&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
url: jdbc:mysql://159.138.48.71:3306/chinafrica_ref?useUnicode=true&connectionCollation=utf8mb4_general_ci&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
username: root
driver-class-name: com.mysql.cj.jdbc.Driver
password: diaoyun666
password: Diaoyunnuli.8
redis:
#Redis数据库分片索引(默认为0)
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论