From 26e2592813b9263124d518d238262910e817d323 Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期一, 14 八月 2023 10:13:10 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.java | 159 ++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 146 insertions(+), 13 deletions(-) diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.java index d26a70f..668c3e4 100644 --- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.java +++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.java @@ -1,33 +1,41 @@ package com.dsh.guns.modular.system.controller.code; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.dsh.course.feignClient.account.AppUserClient; import com.dsh.course.feignClient.account.CityManagerClient; import com.dsh.course.feignClient.account.model.CityManager; +import com.dsh.course.feignClient.account.model.QueryByNamePhone; +import com.dsh.course.feignClient.account.model.TAppUser; import com.dsh.course.feignClient.activity.CouponClient; +import com.dsh.course.feignClient.activity.model.Coupon; +import com.dsh.course.feignClient.activity.model.CouponCity; import com.dsh.course.feignClient.activity.model.CouponListOfSearch; +import com.dsh.course.feignClient.activity.model.CouponRecordQuery; import com.dsh.guns.config.UserExt; +import com.dsh.guns.core.base.tips.SuccessTip; import com.dsh.guns.core.common.constant.factory.PageFactory; import com.dsh.guns.core.util.ToolUtil; +import com.dsh.guns.modular.system.model.CouponDataVo; import com.dsh.guns.modular.system.model.Region; +import com.dsh.guns.modular.system.model.TStore; import com.dsh.guns.modular.system.service.IRegionService; import com.dsh.guns.modular.system.service.IStoreService; import com.dsh.guns.modular.system.util.OBSUploadUtil; import org.apache.commons.beanutils.ConvertUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; import java.io.IOException; -import java.util.Date; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.text.SimpleDateFormat; +import java.util.*; +import java.util.stream.Collectors; /** @@ -55,6 +63,9 @@ @Resource private CityManagerClient cmgrClient; + @Autowired + private AppUserClient appUserClient; + /** @@ -77,6 +88,74 @@ } + @RequestMapping("/coupon_record/{id}") + public String memberCouponAdd(@PathVariable Integer id,Model model) { + Coupon coupon = client.queryCouponById(id); + + model.addAttribute("id",id); + model.addAttribute("type",coupon.getType()); + return PREFIX + "TCouponRecord.html"; + } + + + + @RequestMapping("/coupon_detail/{id}") + public String memberCouponDetail(@PathVariable Integer id,Model model) { + Coupon coupon = client.queryCouponById(id); + String content = coupon.getContent(); + JSONObject jsonObject = JSONObject.parseObject(content); + String one =""; + String two =""; + String three =""; + if(coupon.getType()==1){ + one = jsonObject.get("conditionalAmount").toString(); + two = jsonObject.get("deductionAmount").toString(); + } + if(coupon.getType()==2){ + one = jsonObject.get("conditionalAmount").toString(); + } + if(coupon.getType()==3){ + three = jsonObject.get("experienceName").toString(); + } + List<CouponCity> list = new ArrayList<>(); + List<Integer> list1=null; + List<TStore> list2=new ArrayList<>(); + if(coupon.getUseScope()==2){ + list = client.queryCity(coupon.getId()); + } + if(coupon.getUseScope()==3){ + list1 = client.queryStore(coupon.getId()); + list2 = storeService.list(new LambdaQueryWrapper<TStore>().in(TStore::getId, list1)); + for (TStore tStore : list2) { + CityManager cityManager = cmgrClient.queryCityManagerById(tStore.getCityManagerId()); + if (ToolUtil.isNotEmpty(cityManager)){ + tStore.setProvince(tStore.getProvince()+tStore.getCity()); + tStore.setPhone(cityManager.getName()+"-"+cityManager.getPhone()); + } + } + + } + model.addAttribute("city",list); + model.addAttribute("store",list2); + model.addAttribute("s",new SimpleDateFormat("yyyy-MM-dd").format(coupon.getStartTime())); + model.addAttribute("e",new SimpleDateFormat("yyyy-MM-dd").format(coupon.getEndTime())); + model.addAttribute("one",one); + model.addAttribute("two",two); + model.addAttribute("three",three); + ArrayList<String> strings = new ArrayList<>(); + String productImages = coupon.getProductImages(); + for (String s : productImages.split(",")) { + strings.add(s); + } + + model.addAttribute("img",strings); + Integer objectType = UserExt.getUser().getObjectType(); + System.out.println(objectType); + model.addAttribute("item",coupon); + return PREFIX + "TCouponInfo.html"; + } + + /** * 跳转到门店管理列表页 @@ -84,6 +163,12 @@ @RequestMapping("/storeList") public String storePage(Model model) { return PREFIX + "TStoreList.html"; + } + @RequestMapping("/updateType") + @ResponseBody + public Object updateType(Long id) { + client.updateType(id); + return new SuccessTip<>(); } @RequestMapping("/storeDetailsOfSearch") @@ -101,7 +186,7 @@ } if (ToolUtil.isNotEmpty(cityId)){ Region cityRegion = regiService.getById(cityId); - provinceCode = cityRegion.getCode(); + cityCode = cityRegion.getCode(); } Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage(); List<Map<String,Object>> storeList = storeService.queryListOfpage(provinceCode,cityCode,cityManagerId,storeName,page); @@ -137,12 +222,47 @@ ofSearch.setState(state); return client.getCouponListOfSearch(ofSearch); } + @RequestMapping(value = "/listRecord") + @ResponseBody + public Object listRecord(Integer id,String name, Integer type, String phone) { + Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage(); + List<TAppUser> tAppUsers = appUserClient.queryByNamePhone(new QueryByNamePhone(name, phone)); + if(tAppUsers.size()==0){ + return new ArrayList<>(); + } + CouponRecordQuery ofSearch = new CouponRecordQuery(); + ofSearch.setId(id); + ofSearch.setLimit(page.getSize()); + ofSearch.setOffset(page.getCurrent()); + ofSearch.setIds(tAppUsers.stream().map(TAppUser::getId).collect(Collectors.toList())); + ofSearch.setType(type); + List<Map<String, Object>> maps = client.listRecord(ofSearch); + for (Map<String, Object> map : maps) { + map.put("id",map.get("id").toString()); + for (TAppUser tAppUser : tAppUsers) { + if(map.get("userId").equals(tAppUser.getId())){ + map.put("name",tAppUser.getName()); + map.put("phone",tAppUser.getPhone()); + } + } + } + return maps; + } @RequestMapping(value = "/getProvince") @ResponseBody public Object getProvince(){ return regiService.list(new LambdaQueryWrapper<Region>() .eq(Region::getParentId,0)); + } + + @RequestMapping(value = "/onShelf") + @ResponseBody + public Object onShelf(Integer id,Integer type){ + Coupon coupon = client.queryCouponById(id); + coupon.setState(type); + client.updateCouponData(coupon); + return new SuccessTip<>(); } @@ -179,10 +299,23 @@ /** * 提交添加 */ - @RequestMapping(value = "/commitData") - public void commitData(){ - - - + @PostMapping(value = "/commitData") + @ResponseBody + public Object commitData( CouponDataVo dataVo){ + System.out.println(dataVo); + Integer objectType = UserExt.getUser().getObjectType(); + dataVo.setUserType(objectType); + client.insertIntoData(dataVo); + return new SuccessTip<>(); + } + @PostMapping(value = "/update") + @ResponseBody + public Object update( Integer id,Integer num,Integer num1,String text){ + Coupon coupon = client.queryCouponById(id); + coupon.setQuantityIssued(num); + coupon.setPickUpQuantity(num1); + coupon.setIllustrate(text); + client.updateCouponData(coupon); + return new SuccessTip<>(); } } -- Gitblit v1.7.1