44323
2023-11-23 acad524bfb7f376c09ff8e6600fab207780156e1
cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java
@@ -13,6 +13,7 @@
import com.dsh.activity.feignclient.other.StoreClient;
import com.dsh.activity.feignclient.other.model.Store;
import com.dsh.activity.feignclient.other.model.StoreDetailOfCourse;
import com.dsh.activity.feignclient.other.model.StoreInfoDto;
import com.dsh.activity.feignclient.other.model.TOperatorCity;
import com.dsh.activity.model.CoachChangeStateVO;
import com.dsh.activity.model.PointMerchandiseIncomeVo;
@@ -98,9 +99,17 @@
         pmdsService.changeState(dto);
    }
    /**
     * 门票核销
     * 根据id查询
     */
    @RequestMapping("/base/pointMerchars/getById")
    @ResponseBody
    public PointsMerchandise getById(@RequestBody Integer id){
        return pmdsService.getById(id);
    }
    /**
     * 门票核销
     */
    @RequestMapping("/base/course/changeState")
    @ResponseBody
    public Object changeState(@RequestBody CourseChangeStateDTO dto){
@@ -286,22 +295,26 @@
            cIds.add(pointsMerchandiseCity.getPointsMerchandiseId());
        }
//        if (cIds.size()>0) {
        List<PointsMerchandise> merchandises = pmdsService.list(new QueryWrapper<PointsMerchandise>()
                .eq("state",1)
                .eq("shelves",1).in("id",cIds)
                .gt("endTime",new Date()));
        if (merchandises.size() > 0){
            for (PointsMerchandise merchandise : merchandises) {
                IntegralCommodity integralCommodity = new IntegralCommodity();
                integralCommodity.setCommodityId(merchandise.getId());
                integralCommodity.setCommodityImg(merchandise.getCover());
                integralCommodity.setCommodityName(merchandise.getName());
                integralCommodity.setCommodityPrice(merchandise.getPrice());
                integralCommodity.setGoodsType(merchandise.getType());
                commodity.add(integralCommodity);
            }
            List<PointsMerchandise> merchandises = pmdsService.list(new QueryWrapper<PointsMerchandise>()
                    .eq("state", 1)
                    .eq("shelves", 1)
                    .gt("endTime", new Date()).last("ORDER BY sort desc,insertTime desc"));
            if (merchandises.size() > 0){
                for (PointsMerchandise merchandise : merchandises) {
                    IntegralCommodity integralCommodity = new IntegralCommodity();
                    integralCommodity.setCommodityId(merchandise.getId());
                    integralCommodity.setCommodityImg(merchandise.getCover());
                    integralCommodity.setCommodityName(merchandise.getName());
                    integralCommodity.setCommodityPrice(merchandise.getPrice());
                    integralCommodity.setGoodsType(merchandise.getType());
                    integralCommodity.setSort(merchandise.getSort());
                    commodity.add(integralCommodity);
                }
//            }
        }
        System.out.println(commodity);
        return commodity;
    }
@@ -778,7 +791,10 @@
                ids.add(coupon.getId());
            }
        }
        List<UserCoupon> userCoupons = userCouponService.list(new QueryWrapper<UserCoupon>().eq("userId", appUserId).in("couponId",ids));
        List<UserCoupon> userCoupons = new ArrayList<>();
        if (ids.size()>0) {
           userCoupons = userCouponService.list(new QueryWrapper<UserCoupon>().eq("userId", appUserId).in("couponId", ids));
        }
        if (pointsMerchandises.size() > 0 ){
            for (UserPointsMerchandise pointsMerchandise : pointsMerchandises) {
                PointsMerchandise merchandise = pmdsService.getById(pointsMerchandise.getPointsMerchandiseId());
@@ -866,10 +882,10 @@
                        // Print the result
                        if (isSameDate) {
                        } else {
                            System.out.println("The two dates do not have the same date.");
                            detailsResponse.setUseStatus(3);
                        }
@@ -889,7 +905,7 @@
                            detailsResponse.setUseStatus(3);
                        }
                    } else if (merchandise.getCardType()==3) {
                    } else if (merchandise.getCardType()==3){
                        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
                        Calendar calendar = Calendar.getInstance();
                        calendar.setTime(pointsMerchandise.getInsertTime());
@@ -966,17 +982,24 @@
    }
@Autowired
private PointsMerchandiseStoreService storeService;
    @ResponseBody
    @PostMapping("/base/pointMerchars/getSpecificsOfGoods")
    public PointDetailsVo getSpecificsOfGoods(@RequestBody Long speMercharsId){
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
         SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
        PointDetailsVo detailsVo = new PointDetailsVo();
        UserPointsMerchandise byId = upmseService.getById(speMercharsId);
        if (ToolUtil.isNotEmpty(byId)){
            List<PointsMerchandiseStore> stores = storeService.list(new QueryWrapper<PointsMerchandiseStore>().eq("pointsMerchandiseId", byId.getPointsMerchandiseId()));
            PointsMerchandise pmdsServiceById = pmdsService.getById(byId.getPointsMerchandiseId());
            // 2.0
            detailsVo.setCardType(pmdsServiceById.getCardType());
            detailsVo.setExchangeAddrType(pmdsServiceById.getUseScope());
            detailsVo.setExchangeType(pmdsServiceById.getRedemptionMethod());
            detailsVo.setGoodType(pmdsServiceById.getType());
            if (pmdsServiceById.getRedemptionMethod() == 1){
@@ -991,6 +1014,22 @@
                case 3:
                    List<String> list10 = Arrays.asList(StrUtils.splitStr2StrArr(pmdsServiceById.getProductImages(), ","));
                    ArrayList<String> list2 = new ArrayList<>(list10);
                    SimpleDateFormat dateFormat5 = new SimpleDateFormat("yyyy-MM-dd");
                    for (PointsMerchandiseStore store : stores) {
                        StoreDetailOfCourse courseOfStore = stoClient.getCourseOfStore(store.getStoreId());
                    detailsVo.setBelongs(courseOfStore.getStoreName());
                    }
                    String format = dateFormat5.format(byId.getInsertTime());
                    detailsVo.setOrderTime(format);
                    list2.add(pmdsServiceById.getCover());
                    detailsVo.setPics(list2);
                    Collections.sort(detailsVo.getPics(), (s1, s2) -> {
@@ -1039,6 +1078,9 @@
                    } else if (pmdsServiceById.getCardType()==2) {
                        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
                        Calendar calendar = Calendar.getInstance();
                        calendar.setTime(byId.getInsertTime());
                        calendar.add(Calendar.DAY_OF_MONTH, 31);
@@ -1055,6 +1097,9 @@
                    } else if (pmdsServiceById.getCardType()==3) {
                        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
                        Calendar calendar = Calendar.getInstance();
                        calendar.setTime(byId.getInsertTime());
                        calendar.add(Calendar.DAY_OF_MONTH, 93);
@@ -1142,9 +1187,13 @@
                detailsVo.setUseType(2);
            }else {
                detailsVo.setUseType(1);
                detailsVo.setWriteOffTime(simpleDateFormat.format(byId.getVerificationTime()));
                StoreDetailOfCourse courseOfStore = stoClient.getCourseOfStore(byId.getVerifiStoreId());
                detailsVo.setWriteOffName(courseOfStore.getStoreName());
                if (pmdsServiceById.getType()!=2) {
                    detailsVo.setWriteOffTime(simpleDateFormat.format(byId.getVerificationTime()));
                }
                if (byId.getStoreId()!=null) {
                    StoreDetailOfCourse courseOfStore = stoClient.getCourseOfStore(byId.getStoreId());
                    detailsVo.setWriteOffName(courseOfStore.getStoreName());
                }
            }
            switch (pmdsServiceById.getUseScope()){
                case 1:
@@ -1154,8 +1203,9 @@
                    detailsVo.setBelongs(pmdsServiceById.getProvince()+pmdsServiceById.getCity());
                    break;
                case 3:
                    StoreDetailOfCourse courseOfStore = stoClient.getCourseOfStore(byId.getStoreId());
                    detailsVo.setBelongs(courseOfStore.getStoreName()+" "+courseOfStore.getStoreAddr());
//                    StoreDetailOfCourse courseOfStore = stoClient.getCourseOfStore(byId.getStoreId());
//                    detailsVo.setBelongs(courseOfStore.getStoreName()+" "+courseOfStore.getStoreAddr());
//                    detailsVo.setBelongs("---------------");
                    break;
                default:
                    break;
@@ -1200,25 +1250,26 @@
                detailsVo.setIntegral(coupon.getIntegral().intValue());
                detailsVo.setCash(coupon.getCash());
            }
//            if (coupon.getUseScope() == 1){
//                detailsVo.setExchangeAddrType(1);
//                detailsVo.setBelongs("全国通用");
//            }else if (coupon.getUseScope() == 2){
//                detailsVo.setExchangeAddrType(2);
//                List<CouponCity> list = ccityService.list(new LambdaQueryWrapper<CouponCity>()
//                        .eq(CouponCity::getCouponId, coupon.getId()));
//                if (list.size() > 0){
//                    detailsVo.setBelongs(list.get(0).getProvince()+"|"+list.get(0).getCity() + "用户可用");
//                }
//            }else {
//                detailsVo.setExchangeAddrType(3);
//                List<CouponStore> list = cstoreService.list(new QueryWrapper<CouponStore>()
//                        .eq("couponId",coupon.getId() ));
//                StoreDetailOfCourse courseOfStore = stoClient.getCourseOfStore(list.get(0).getStoreId());
//                detailsVo.setBelongs(courseOfStore.getStoreName()+"可用");
//            }
//            detailsVo.setStartTime(format.format(coupon.getStartTime()));
//            detailsVo.setEndTime(format.format(coupon.getEndTime()));
            if (coupon.getUseScope() == 1){
                detailsVo.setExchangeAddrType(1);
                detailsVo.setBelongs("全国通用");
            }else if (coupon.getUseScope() == 2){
                detailsVo.setExchangeAddrType(2);
                List<CouponCity> list = ccityService.list(new LambdaQueryWrapper<CouponCity>()
                        .eq(CouponCity::getCouponId, coupon.getId()));
                if (list.size() > 0){
                    detailsVo.setBelongs(list.get(0).getProvince()+"|"+list.get(0).getCity() + "用户可用");
                }
            }else {
                detailsVo.setExchangeAddrType(3);
                List<CouponStore> list = cstoreService.list(new QueryWrapper<CouponStore>()
                        .eq("couponId",coupon.getId() ));
                StoreDetailOfCourse courseOfStore = stoClient.getCourseOfStore(list.get(0).getStoreId());
                detailsVo.setBelongs(courseOfStore.getStoreName()+"可用");
            }
            SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
            detailsVo.setStartTime(format.format(coupon.getStartTime()));
            detailsVo.setEndTime(format.format(coupon.getEndTime()));
            detailsVo.setContents(coupon.getIllustrate());
            detailsVo.setGoodType(4);