From 7d22ca5a1c9416e84430a3997664e17861a2951e Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期五, 11 四月 2025 21:04:17 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/2.0' into 2.0
---
cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java | 203 ++++++++++++++++++++++++++++++++++++++------------
1 files changed, 155 insertions(+), 48 deletions(-)
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java b/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java
index a276027..59bfd58 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java
@@ -10,11 +10,9 @@
import com.dsh.activity.feignclient.course.model.CoursePackagePaymentConfig;
import com.dsh.activity.feignclient.model.*;
import com.dsh.activity.feignclient.other.OperatorClient;
+import com.dsh.activity.feignclient.other.SiteClient;
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.feignclient.other.model.*;
import com.dsh.activity.model.CoachChangeStateVO;
import com.dsh.activity.model.PointMerchandiseIncomeVo;
import com.dsh.activity.model.PointMerchandiseVo;
@@ -27,6 +25,7 @@
import com.dsh.activity.util.*;
import io.swagger.models.auth.In;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
@@ -78,6 +77,8 @@
@Resource
private CouponCityService ccityService;
+ @Autowired
+ private SiteClient siteClient;
@Resource
@@ -225,10 +226,12 @@
String endTime = (String) stringObjectMap.get("endTime");
stringObjectMap.put("timeValue", startTime + "至" + endTime);
int count1 = upmseService.count(new LambdaQueryWrapper<UserPointsMerchandise>()
- .eq(UserPointsMerchandise::getPointsMerchandiseId, o));
+ .eq(UserPointsMerchandise::getPointsMerchandiseId, o)
+ .eq(UserPointsMerchandise::getPayStatus, 2).eq(UserPointsMerchandise::getState, 1));
int count2 = upmseService.count(new LambdaQueryWrapper<UserPointsMerchandise>()
.eq(UserPointsMerchandise::getPointsMerchandiseId, o)
- .eq(UserPointsMerchandise::getStatus, 2));
+ .eq(UserPointsMerchandise::getStatus, 2)
+ .eq(UserPointsMerchandise::getPayStatus, 2).eq(UserPointsMerchandise::getState, 1));
stringObjectMap.put("hasExchangeQty", count1);
stringObjectMap.put("hasPickQty", count2);
@@ -323,7 +326,8 @@
QueryWrapper<PointsMerchandise> wrapper = new QueryWrapper<PointsMerchandise>()
.eq("state", 1)
.eq("shelves", 1)
- .gt("endTime", new Date());
+ .gt("endTime", new Date())
+ .eq("status", 1);
if(cIds.size() > 0){
wrapper.in("id", cIds);
}
@@ -334,7 +338,17 @@
integralCommodity.setCommodityId(merchandise.getId());
integralCommodity.setCommodityImg(merchandise.getCover());
integralCommodity.setCommodityName(merchandise.getName());
- integralCommodity.setCommodityPrice(merchandise.getPrice());
+ if(merchandise.getRedemptionMethod() == 1){
+ integralCommodity.setIntegral(merchandise.getIntegral());
+ }
+ if(merchandise.getRedemptionMethod() == 2){
+ integralCommodity.setCommodityPrice(merchandise.getPrice());
+ integralCommodity.setIntegral(merchandise.getIntegral());
+ }
+ if(merchandise.getRedemptionMethod() == 3){
+ integralCommodity.setCommodityPrice(merchandise.getPrice());
+ }
+ integralCommodity.setRedemptionMethod(merchandise.getRedemptionMethod());
integralCommodity.setGoodsType(merchandise.getType());
integralCommodity.setSort(merchandise.getSort());
commodity.add(integralCommodity);
@@ -347,27 +361,30 @@
storeCoupons.add(couponStore.getCouponId());
}
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- QueryWrapper<Coupon> queryWrapper = new QueryWrapper<Coupon>().eq("state", 1).gt("endTime", sdf.format(new Date()));
+ QueryWrapper<Coupon> queryWrapper = new QueryWrapper<Coupon>()
+ .eq("state", 1).gt("endTime", sdf.format(new Date()));
if(storeCoupons.size() > 0){
queryWrapper.in("id", storeCoupons);
}
List<Coupon> list = couponService.list(queryWrapper.last(" ORDER BY insertTime desc"));
if (!list.isEmpty()){
for (Coupon coupon : list) {
- IntegralCommodity integralCommodity = new IntegralCommodity();
- integralCommodity.setCommodityId(coupon.getId());
- integralCommodity.setCommodityImg(coupon.getCover());
- integralCommodity.setCommodityName(coupon.getName());
- integralCommodity.setCommodityPrice(coupon.getIntegral());
- integralCommodity.setGoodsType(coupon.getType());
-// integralCommodity.setSort(coupon.getSort());
- commodity.add(integralCommodity);
+ IntegralCommodity integralCommodity = new IntegralCommodity();
+ integralCommodity.setCommodityId(coupon.getId());
+ integralCommodity.setCommodityImg(coupon.getCover());
+ integralCommodity.setCommodityName(coupon.getName());
+ if(coupon.getRedemptionMethod() == 1){
+ integralCommodity.setIntegral(coupon.getIntegral().intValue());
+ }
+ if(coupon.getRedemptionMethod() == 2){
+ integralCommodity.setCommodityPrice(coupon.getCash());
+ integralCommodity.setIntegral(coupon.getIntegral().intValue());
+ }
+ integralCommodity.setRedemptionMethod(coupon.getRedemptionMethod());
+ integralCommodity.setGoodsType(4);
+ commodity.add(integralCommodity);
}
-
}
-
-
- System.out.println(commodity);
return commodity;
}
@@ -393,7 +410,11 @@
list = pmdsService.list(new QueryWrapper<PointsMerchandise>()
.eq("state", 1)
- .eq("shelves", 1).le("startTime", new Date()).ge("endTime", new Date()));
+ .eq("shelves", 1)
+ .le("startTime", new Date())
+ .ge("endTime", new Date())
+ .eq("status", 1)
+ );
if (list.size() > 0) {
Iterator<PointsMerchandise> iterator = list.iterator();
while (iterator.hasNext()) {
@@ -441,7 +462,7 @@
detailsVo.setGoodName(coursePackage.getName());
detailsVo.setBelongsScope(merchandise.getUserPopulation());
int coursePackageNums = upmseService.count(new QueryWrapper<UserPointsMerchandise>()
- .eq("pointsMerchandiseId", merchandise.getId()));
+ .eq("pointsMerchandiseId", merchandise.getId()).eq("payStatus", 2).eq("state", 1));
detailsVo.setRedeemedNum(coursePackageNums);
detailsVo.setResidueNum(Math.max(merchandise.getQuantityIssued() - coursePackageNums, 0));
detailsVo.setPerLimit(merchandise.getPickUpQuantity());
@@ -504,7 +525,7 @@
detailsVo.setGoodName(merchandise.getName());
detailsVo.setBelongsScope(merchandise.getUserPopulation());
int count = upmseService.count(new QueryWrapper<UserPointsMerchandise>()
- .eq("pointsMerchandiseId", merchandise.getId()));
+ .eq("pointsMerchandiseId", merchandise.getId()).eq("payStatus", 2).eq("state", 1));
detailsVo.setRedeemedNum(count);
detailsVo.setResidueNum(Math.max(merchandise.getQuantityIssued() - count, 0));
detailsVo.setPerLimit(merchandise.getPickUpQuantity());
@@ -559,7 +580,7 @@
detailsVo.setGoodName(coupon.getName());
detailsVo.setBelongsScope(coupon.getUserPopulation());
int couponNums = upmseService.count(new QueryWrapper<UserPointsMerchandise>()
- .eq("pointsMerchandiseId", merchandise.getId()));
+ .eq("pointsMerchandiseId", merchandise.getId()).eq("payStatus", 2).eq("state", 1));
detailsVo.setRedeemedNum(couponNums);
detailsVo.setResidueNum(Math.max(coupon.getQuantityIssued() - couponNums, 0));
detailsVo.setPerLimit(coupon.getPickUpQuantity());
@@ -639,7 +660,7 @@
detailsVo.setGoodName(coursePackage.getName());
detailsVo.setBelongsScope(merchandise.getUserPopulation());
int coursePackageNums = upmseService.count(new QueryWrapper<UserPointsMerchandise>()
- .eq("pointsMerchandiseId", merchandise.getId()));
+ .eq("pointsMerchandiseId", merchandise.getId()).eq("payStatus", 2).eq("state", 1));
detailsVo.setRedeemedNum(coursePackageNums);
detailsVo.setResidueNum(Math.max(merchandise.getQuantityIssued() - coursePackageNums, 0));
detailsVo.setPerLimit(merchandise.getPickUpQuantity());
@@ -702,7 +723,7 @@
detailsVo.setGoodName(merchandise.getName());
detailsVo.setBelongsScope(merchandise.getUserPopulation());
int count = upmseService.count(new QueryWrapper<UserPointsMerchandise>()
- .eq("pointsMerchandiseId", merchandise.getId()));
+ .eq("pointsMerchandiseId", merchandise.getId()).eq("payStatus", 2).eq("state", 1));
detailsVo.setRedeemedNum(count);
detailsVo.setResidueNum(Math.max(merchandise.getQuantityIssued() - count, 0));
detailsVo.setPerLimit(merchandise.getPickUpQuantity());
@@ -908,11 +929,27 @@
list4.add(43);
detailsResponse.setRid(list4);
}
-
}
}
//======================================================
}
+ }else{
+ // todo 返回门店id 和场地id
+ // 查询指定场地
+ List<PointsMerchandiseStore> list = pmdstoService.list(new LambdaQueryWrapper<PointsMerchandiseStore>()
+ .eq(PointsMerchandiseStore::getPointsMerchandiseId, merchandise.getId()));
+ // 门店
+ ArrayList<Integer> list3 = new ArrayList<>();
+ // 场地
+ ArrayList<Integer> list4 = new ArrayList<>();
+ for (PointsMerchandiseStore temp : list) {
+ Integer storeId = temp.getStoreId();
+ Integer siteId = temp.getSiteId();
+ list3.add(storeId);
+ list4.add(siteId);
+ }
+ detailsResponse.setRid(list4);
+ detailsResponse.setSid(list3);
}
@@ -1344,7 +1381,6 @@
@PostMapping("/base/pointMerchars/updateDetailsUserPointMercase")
public void updateDetailsUserPointMercase(@RequestBody UserPointsMerchandise merchandise) {
merchandise.setUserId(null);
- merchandise.setPointsMerchandiseId(null);
upmseService.updateById(merchandise);
}
@@ -1381,7 +1417,8 @@
public int queryUserHasGoodsNums(@RequestBody AppUserGoodResp goodResp) {
int count = upmseService.count(new LambdaQueryWrapper<UserPointsMerchandise>()
.eq(UserPointsMerchandise::getUserId, goodResp.getAppUserId())
- .eq(UserPointsMerchandise::getPointsMerchandiseId, goodResp.getGoodId()));
+ .eq(UserPointsMerchandise::getPointsMerchandiseId, goodResp.getGoodId())
+ .eq(UserPointsMerchandise::getPayStatus, 2).eq(UserPointsMerchandise::getState, 1));
System.out.println(count);
return count;
}
@@ -1390,7 +1427,8 @@
@PostMapping("/base/pointMerchars/queryUserHasGoodsNums1")
public int queryUserHasGoodsNums1(@RequestBody AppUserGoodResp goodResp) {
int count = upmseService.count(new LambdaQueryWrapper<UserPointsMerchandise>()
- .eq(UserPointsMerchandise::getPointsMerchandiseId, goodResp.getGoodId()));
+ .eq(UserPointsMerchandise::getPointsMerchandiseId, goodResp.getGoodId())
+ .eq(UserPointsMerchandise::getPayStatus, 2).eq(UserPointsMerchandise::getState, 1));
System.out.println(count);
return count;
}
@@ -1421,8 +1459,6 @@
@PostMapping("/base/pointMerchars/getConsumeDetails")
public List<ConsumeDetail> getConsumeDetails(@RequestBody BillingDataRequestVo requestVo) {
return upmseService.getConsumeDetails(requestVo);
-
-
}
@@ -1528,17 +1564,20 @@
List<Map<String, Object>> mapList = new ArrayList<>();
LambdaQueryWrapper<UserPointsMerchandise> userPointsMerchandiseLambdaQueryWrapper = new LambdaQueryWrapper<>();
userPointsMerchandiseLambdaQueryWrapper.eq(UserPointsMerchandise::getPointsMerchandiseId, pointMercharsPayedVo.getId());
+ userPointsMerchandiseLambdaQueryWrapper.eq(UserPointsMerchandise::getPayStatus, 2).eq(UserPointsMerchandise::getState, 1);
if (ToolUtil.isNotEmpty(pointMercharsPayedVo.getStatus())) {
userPointsMerchandiseLambdaQueryWrapper.eq(UserPointsMerchandise::getStatus, pointMercharsPayedVo.getStatus());
}
- List<UserPointsMerchandise> list = upmseService.list(userPointsMerchandiseLambdaQueryWrapper);
+ List<UserPointsMerchandise> list = upmseService.list(userPointsMerchandiseLambdaQueryWrapper.orderByDesc(UserPointsMerchandise::getPaymentTime));
System.out.println(list);
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
if (list.size() > 0) {
for (UserPointsMerchandise pointsMerchandise : list) {
Map<String, Object> map = new HashMap<>();
map.put("id", pointsMerchandise.getId());
map.put("userId", pointsMerchandise.getUserId());
map.put("status", pointsMerchandise.getStatus());
+ map.put("payTime", sdf.format(pointsMerchandise.getPaymentTime()));
mapList.add(map);
}
}
@@ -1622,6 +1661,9 @@
case 3:
infoOneVo.setExchangeArea("指定门店");
break;
+ case 4:
+ infoOneVo.setExchangeArea("指定场地");
+ break;
default:
break;
}
@@ -1659,37 +1701,87 @@
List<StoreVos> storeVos = new ArrayList<>();
List<PointsMerchandiseStore> list = pmdstoService.list(new QueryWrapper<PointsMerchandiseStore>()
.eq("pointsMerchandiseId", id));
- if (list.size() > 0) {
- List<Integer> collect = list.stream().map(PointsMerchandiseStore::getStoreId).collect(Collectors.toList());
- List<Store> stores = stoClient.queryStoreByIds(collect);
- if (stores.size() > 0) {
- for (Store store : stores) {
- StoreVos storeVos1 = new StoreVos();
- storeVos1.setNum1(store.getProvince() + "省" + store.getCity() + "市");
- if (store.getOperatorId() == 0) {
- storeVos1.setNum2("平台");
- } else {
+ PointsMerchandise byId = pmdsService.getById(id);
- storeVos1.setNum2(store.getOName());
+ if (list.size() > 0) {
+
+ if (byId.getUseScope()==3){
+ // 如果是指定门店
+ List<Integer> collect = list.stream().map(PointsMerchandiseStore::getStoreId).collect(Collectors.toList());
+
+ List<Store> stores = stoClient.queryStoreByIds(collect);
+ if (stores.size() > 0) {
+ int a = 0;
+ for (Store store : stores) {
+ StoreVos storeVos1 = new StoreVos();
+ storeVos1.setNum1(store.getProvince() + "省" + store.getCity() + "市");
+ if (store.getOperatorId()==null){
+ storeVos1.setNum2("平台");
+ }else if (store.getOperatorId() == 0) {
+ storeVos1.setNum2("平台");
+ } else {
+ storeVos1.setNum2(store.getOName());
+ }
+ storeVos1.setNum3(store.getName());
+ storeVos1.setNum4(store.getIds());
+ storeVos.add(storeVos1);
}
- storeVos1.setNum3(store.getName());
- storeVos1.setNum4(store.getIds());
- storeVos.add(storeVos1);
}
+ }else if (byId.getUseScope()==4){
+ // 如果是指定场地
+ List<Integer> collect1 = list.stream().map(PointsMerchandiseStore::getSiteId).distinct().collect(Collectors.toList());
+ int temp =0;
+ List<Integer> collect = list.stream().map(PointsMerchandiseStore::getStoreId).collect(Collectors.toList());
+ List<Store> stores1 = new ArrayList<>();
+ for (Integer integer : collect) {
+ List<Integer> list1 = new ArrayList<>();
+ list1.add(integer);
+ List<Store> stores = stoClient.queryStoreByIds(list1);
+ stores1.addAll(stores);
+ }
+ List<Store> stores = stoClient.queryStoreByIds(collect);
+ while (temp!=collect1.size()){
+ for (Store store : stores1) {
+ Integer integer = collect1.get(temp);
+ Site site = siteClient.querySiteById(integer);
+ StoreVos storeVos1 = new StoreVos();
+ storeVos1.setNum5(site.getName());
+ storeVos1.setNum1(store.getProvince() + "省" + store.getCity() + "市");
+ if (store.getOperatorId()==null){
+ storeVos1.setNum2("平台");
+ }else if (store.getOperatorId() == 0) {
+ storeVos1.setNum2("平台");
+ } else {
+ storeVos1.setNum2(store.getOName());
+ }
+ storeVos1.setNum3(store.getName());
+ storeVos1.setNum4(store.getIds());
+ storeVos.add(storeVos1);
+ temp++;
+ }
+ }
+
+
}
+
}
return storeVos;
}
+
@ResponseBody
@PostMapping("/base/pointMerchars/updateGoodsDetail")
public boolean updateGoodsDetail(@RequestBody Map<String, Object> map) {
try {
+ String name = (String) map.get("name");
Integer pointMerchandiseId = (Integer) map.get("pointMerchandiseId");
PointsMerchandise byId1 = pmdsService.getById(pointMerchandiseId);
if (Integer.valueOf(map.get("type").toString()) != 1) {
byId1.setStatus(2);
+ }
+ if(StringUtils.hasLength(name)){
+ byId1.setName(name);
}
Integer quantityIssued = (Integer) map.get("quantityIssued");
Integer pickUpQuantity = (Integer) map.get("pickUpQuantity");
@@ -1742,6 +1834,20 @@
public Boolean addOther(@RequestBody String pam) {
Boolean save = false;
String[] split = pam.split("_");
+ if (split.length>2){
+ if (StringUtils.hasLength(split[2])){
+ for (String s : split[2].split(",")) {
+ PointsMerchandiseStore pointsMerchandiseStore = new PointsMerchandiseStore();
+ pointsMerchandiseStore.setPointsMerchandiseId(Integer.valueOf(split[0]));
+ pointsMerchandiseStore.setSiteId(Integer.valueOf(s));
+ Site site = siteClient.querySiteById(Integer.valueOf(s));
+ pointsMerchandiseStore.setStoreId(site.getStoreId());
+ save = pmdstoService.save(pointsMerchandiseStore);
+ }
+ // 这个门票是选择的场地
+ return save;
+ }
+ }
for (String s : split[1].split(",")) {
PointsMerchandiseStore pointsMerchandiseStore = new PointsMerchandiseStore();
pointsMerchandiseStore.setPointsMerchandiseId(Integer.valueOf(split[0]));
@@ -1751,6 +1857,7 @@
return save;
}
+
@PostMapping("/base/pointMerchars/addCitys")
public Boolean addCitys(@RequestBody ArrayList<Map<String, String>> objects) {
try {
--
Gitblit v1.7.1