From 1aa309700fb7e12d85f98bed22a45bdac448ec1c Mon Sep 17 00:00:00 2001 From: liujie <liujie> Date: 星期六, 16 九月 2023 11:18:46 +0800 Subject: [PATCH] app 2.0 --- cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.java | 148 +++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 141 insertions(+), 7 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 a98b635..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,22 +1,32 @@ 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.*; @@ -24,10 +34,9 @@ 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 +64,9 @@ @Resource private CityManagerClient cmgrClient; + @Autowired + private AppUserClient appUserClient; + /** @@ -73,7 +85,75 @@ Integer objectType = UserExt.getUser().getObjectType(); System.out.println(objectType); model.addAttribute("userType",objectType); - return PREFIX + "TCouponAdd.html"; + 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"; } @@ -83,7 +163,13 @@ */ @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") @@ -137,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<>(); } @@ -156,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); @@ -173,7 +295,9 @@ //文件大小(字节数) map.put("size", imgFile.getSize() + ""); System.out.println(map); - return url; + return url; + } + return ResultUtil.success(); } /** @@ -188,4 +312,14 @@ 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