From ef96dbc9278ebae4af204cca9de98c63f0d6328e Mon Sep 17 00:00:00 2001 From: 44323 <443237572@qq.com> Date: 星期三, 20 九月 2023 19:16:21 +0800 Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/PlayPai --- cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.java | 219 +++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 207 insertions(+), 12 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 615e19a..bf6aacd 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,29 +1,42 @@ 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 com.dsh.guns.modular.system.util.ResultUtil; 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; /** @@ -43,7 +56,18 @@ private IRegionService regiService; @Resource + private IStoreService storeService; + + @Resource private CouponClient client; + + @Resource + private CityManagerClient cmgrClient; + + @Autowired + private AppUserClient appUserClient; + + /** * 跳转到优惠券管理首页 @@ -57,20 +81,130 @@ * 跳转到添加 */ @RequestMapping("/coupon_add") - public String memberCouponAdd() { - return PREFIX + "TCouponAdd.html"; + public String memberCouponAdd(Model model) { + Integer objectType = UserExt.getUser().getObjectType(); + System.out.println(objectType); + model.addAttribute("userType",objectType); + return PREFIX + "TQuestionAdd.html"; + } + + + @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"; } /** - * 跳转到优惠券管理首页 + * 跳转到门店管理列表页 */ @RequestMapping("/storeList") public String storePage(Model model) { - return PREFIX + "TStoreList.html"; + return PREFIX + "TQuestionEdit.html"; + } + @RequestMapping("/updateType") + @ResponseBody + public Object updateType(Long id) { + client.updateType(id); + return new SuccessTip<>(); } + @RequestMapping("/storeDetailsOfSearch") + @ResponseBody + public Object listOfStore(Integer provinceId,Integer cityId,Integer cityManagerId,String storeName){ + System.out.println("provinceId"+provinceId); + System.out.println("cityId"+cityId); + System.out.println("cityManagerId"+cityManagerId); + System.out.println("storeName"+storeName); + String provinceCode = null; + String cityCode = null; + if (ToolUtil.isNotEmpty(provinceId)){ + Region provinceRegion = regiService.getById(provinceId); + provinceCode = provinceRegion.getCode(); + } + if (ToolUtil.isNotEmpty(cityId)){ + Region cityRegion = regiService.getById(cityId); + 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); + if (storeList.size() > 0 ){ + for (Map<String, Object> stringObjectMap : storeList) { + String provinceName = (String) stringObjectMap.get("province"); + String cityName = (String) stringObjectMap.get("city"); + stringObjectMap.put("provinceCity",provinceName+cityName); + Integer managerId = (Integer) stringObjectMap.get("cityManagerId"); + CityManager cityManager = cmgrClient.queryCityManagerById(managerId); + if (ToolUtil.isNotEmpty(cityManager)){ + stringObjectMap.put("accountName",cityManager.getName()+"+"+cityManager.getPhone()); + } + } + } + return storeList; + } /** * 获取 优惠券管理 @@ -89,12 +223,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<>(); } @@ -108,6 +277,7 @@ @RequestMapping(value = "/uploadPic") @ResponseBody public Object add(@RequestParam("file") MultipartFile imgFile) throws IOException { + if (imgFile != null){ String originalFilename = imgFile.getOriginalFilename(); String newName = originalFilename.substring(imgFile.getOriginalFilename().lastIndexOf(".")); String url = OBSUploadUtil.inputStreamUpload(imgFile); @@ -125,6 +295,31 @@ //文件大小(字节数) map.put("size", imgFile.getSize() + ""); System.out.println(map); - return url; + return url; + } + return ResultUtil.success(); + } + + /** + * 提交添加 + */ + @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