From 9999e298dcf23b79e8efdb972d77d268121ee970 Mon Sep 17 00:00:00 2001
From: liujie <liujie>
Date: 星期三, 27 九月 2023 11:25:43 +0800
Subject: [PATCH] 后台修改门票

---
 cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TGoodsController.java |  239 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 218 insertions(+), 21 deletions(-)

diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TGoodsController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TGoodsController.java
index 58c86e5..7c36464 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TGoodsController.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TGoodsController.java
@@ -13,15 +13,14 @@
 import com.dsh.course.feignClient.activity.CouponClient;
 import com.dsh.course.feignClient.activity.PointMercharsClient;
 import com.dsh.course.feignClient.activity.model.*;
+import com.dsh.course.feignClient.course.CourseClient;
 import com.dsh.guns.config.UserExt;
+import com.dsh.guns.core.base.controller.BaseController;
 import com.dsh.guns.core.base.tips.ErrorTip;
 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.TCity;
-import com.dsh.guns.modular.system.model.TStore;
+import com.dsh.guns.modular.system.model.*;
 import com.dsh.guns.modular.system.service.ICityService;
 import com.dsh.guns.modular.system.service.IRegionService;
 import com.dsh.guns.modular.system.service.IStoreService;
@@ -34,11 +33,10 @@
 
 import javax.annotation.Resource;
 import java.io.IOException;
+import java.math.BigDecimal;
+import java.text.ParseException;
 import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.stream.Collectors;
 
 
@@ -48,7 +46,7 @@
 
 @Controller
 @RequestMapping("/tGoods")
-public class TGoodsController {
+public class TGoodsController extends BaseController {
 
 
 
@@ -71,6 +69,9 @@
     private AppUserClient appUserClient;
     @Autowired
     private ICityService cityService;
+
+    @Autowired
+    private CourseClient courseClient;
 
     @Resource
     private PointMercharsClient pointMercharsClient;
@@ -96,7 +97,72 @@
         model.addAttribute("userType",objectType);
         List<TCity> list = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId, 0));
         model.addAttribute("list",list);
+        List<Map<String,Object>> listOne =  courseClient.getPageageType();
+        model.addAttribute("courseType",listOne);
+
+
         return PREFIX + "TGoods_add.html";
+    }
+
+    /**
+     * 跳转到添加
+     */
+    @RequestMapping("/tGoods_info")
+    public String tGoodsInfo(Model model) {
+        Integer objectType = UserExt.getUser().getObjectType();
+        System.out.println(objectType);
+        model.addAttribute("userType",objectType);
+        List<TCity> list = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId, 0));
+        model.addAttribute("list",list);
+        return PREFIX + "TGoods_detail_one.html";
+    }
+
+    @RequestMapping("/goods_info/{id}")
+    public String memberCouponInfo(@PathVariable Integer id, Model model) {
+        PointsMerchandise pointMercharsVo = pointMercharsClient.queryPointMerchaseById(id);
+        model.addAttribute("item",pointMercharsVo);
+        if(pointMercharsVo.getType()==2){
+            Date startTime = pointMercharsVo.getStartTime();
+            SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
+            model.addAttribute("sTime",format.format(startTime));
+            model.addAttribute("eTime",format.format(pointMercharsVo.getEndTime()));
+            Integer shopId = pointMercharsClient.getshopName(id);
+            TStore byId = storeService.getById(shopId);
+            model.addAttribute("shopName",byId.getName());
+            Integer coursePackageId = pointMercharsVo.getCoursePackageId();
+            List<String> name = courseClient.queryPackageById(coursePackageId);
+            Integer coursePackageId1 = pointMercharsVo.getCoursePackageId();
+            String classHours = courseClient.getHours(coursePackageId1);
+            model.addAttribute("typeName",name.get(0));
+            model.addAttribute("pageName",name.get(1));
+            model.addAttribute("classHours",classHours);
+            String productImages = pointMercharsVo.getProductImages();
+            ArrayList<String> strings = new ArrayList<>();
+            for (String s : productImages.split(",")) {
+                strings.add(s);
+            }
+            model.addAttribute("pictures",strings);
+            return PREFIX + "TGoods_detail_two.html";
+        }else {
+            GoodsInfoOneVo infoOneVo = pointMercharsClient.queryDetailsOfGoods(id);
+            System.out.println("pointMercharsVo:"+infoOneVo);
+            model.addAttribute("item",infoOneVo);
+            String[] split = infoOneVo.getPics().split(",");
+            List<String> list = Arrays.asList(split);
+            if (infoOneVo.getUseScope() == 2){
+                List<StoreVos> provinces = pointMercharsClient.getProvinces(id);
+                model.addAttribute("city",provinces);
+            }
+            if (infoOneVo.getUseScope() == 2){
+                List<StoreVos> storeVos = pointMercharsClient.getStoreList(id);
+                model.addAttribute("store",storeVos);
+            }
+            model.addAttribute("pictures",list);
+            model.addAttribute("exchangeMethod",infoOneVo.getExchangeMethod());
+            return PREFIX + "TGoods_detail_one.html";
+        }
+
+
     }
 
 
@@ -303,15 +369,131 @@
         client.insertIntoData(dataVo);
         return new SuccessTip<>();
     }
+
+    /**
+     *  编辑 商品详情
+     * @param pointMerchandiseId 商品Id
+     * @param quantityIssued 发放数量
+     * @param pickUpQuantity 限领数量
+     * @param redemptionInstructions 说明
+     * @param cover 封面图
+     * @param productImages 商品图片
+     * @param sort 排序
+     * @return
+     */
     @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);
+    public Object update( Integer pointMerchandiseId,Integer quantityIssued,Integer pickUpQuantity,String redemptionInstructions,String cover,String productImages,Integer sort){
+        Map<String, Object> stringObjectHashMap = new HashMap<>();
+        stringObjectHashMap.put("pointMerchandiseId",pointMerchandiseId);
+        stringObjectHashMap.put("quantityIssued",quantityIssued);
+        stringObjectHashMap.put("pickUpQuantity",pickUpQuantity);
+        stringObjectHashMap.put("redemptionInstructions",redemptionInstructions);
+        stringObjectHashMap.put("cover",cover);
+        stringObjectHashMap.put("productImages",productImages);
+        stringObjectHashMap.put("sort",sort);
+        System.out.println(stringObjectHashMap);
+        pointMercharsClient.updateGoodsDetail(stringObjectHashMap);
         return new SuccessTip<>();
+    }
+    /*
+    ajax.set("typeAll",typeAll);
+        ajax.set("provinceCode",pCode);
+        ajax.set("cityCode",cCode);
+        ajax.set("storeId",storeId);
+        ajax.set("coursePackageTypeId",coursePackageTypeId);
+        ajax.set("coursePackageId",coursePackageId);
+        ajax.set("coursePackageConfigId",coursePackageConfigId);
+        ajax.set("price",price);
+        ajax.set("type",type);
+        ajax.set("integral",integral);
+        ajax.set("cash",cash);
+        ajax.set("cover",cover1);
+        ajax.set("imgOne",imgOne);
+        ajax.set("userPopulation",userPopulation);
+        ajax.set("quantityIssued",quantityIssued);
+        ajax.set("pickUpQuantity",pickUpQuantity);
+        ajax.set("startTime",startTime);
+        ajax.set("text",text);
+        ajax.set("sort",sort);
+        ajax.set("useScope",company);
+        ajax.set("cityIds",cts);
+        ajax.set("storeIds",stores);
+     */
+    @PostMapping(value = "/add")
+    @ResponseBody
+    public Object add( Integer typeAll,String provinceCode,String cityCode,Integer storeId,Integer coursePackageTypeId,Integer coursePackageId,Integer coursePackageConfigId,
+                       Double price,Integer type,Integer integral,Double cash,String cover,String imgOne,Integer userPopulation,Integer quantityIssued,Integer pickUpQuantity,
+                       String startTime,String text,Integer sort,String name,Integer useScope,String cityIds,String storeIds,Integer cardType
+    ) throws ParseException {
+        PointsMerchandise pointsMerchandise = new PointsMerchandise();
+        pointsMerchandise.setType(typeAll);
+        pointsMerchandise.setName(name);
+        pointsMerchandise.setCoursePackageId(coursePackageId);
+        pointsMerchandise.setPrice(new BigDecimal(price));
+        pointsMerchandise.setRedemptionMethod(type);
+        if(type==2 || type==3){
+            pointsMerchandise.setCash(new BigDecimal(cash));
+        }
+        if(type==1 || type==2){
+            pointsMerchandise.setIntegral(integral);
+        }
+        pointsMerchandise.setCover(cover);
+        pointsMerchandise.setProductImages(imgOne);
+        pointsMerchandise.setUserPopulation(userPopulation);
+        pointsMerchandise.setCardType(cardType);
+        pointsMerchandise.setQuantityIssued(quantityIssued);
+        pointsMerchandise.setPickUpQuantity(pickUpQuantity);
+        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
+        pointsMerchandise.setStartTime(format.parse(startTime.split(" - ")[0]));
+        pointsMerchandise.setEndTime(format.parse(startTime.split(" - ")[1]));
+        pointsMerchandise.setUseScope(useScope);
+        if(ToolUtil.isNotEmpty(provinceCode)){
+            TCity one = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, provinceCode));
+            pointsMerchandise.setProvinceCode(provinceCode);
+            pointsMerchandise.setProvince(one.getName());
+        }
+        if(ToolUtil.isNotEmpty(cityCode)){
+            TCity one = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, cityCode));
+            pointsMerchandise.setCityCode(cityCode);
+            pointsMerchandise.setCity(one.getName());
+        }
+        pointsMerchandise.setRedemptionInstructions(text);
+        pointsMerchandise.setSort(sort);
+        pointsMerchandise.setState(1);
+        pointsMerchandise.setInsertTime(new Date());
+        pointsMerchandise.setCoursePackageConfigId(coursePackageConfigId);
+        // 代替storeId
+        pointsMerchandise.setShelves(storeId);
+        Integer id = pointMercharsClient.add(pointsMerchandise);
+        if(typeAll!=2){
+            if(useScope==2){
+                ArrayList<Map<String,String>> objects = new ArrayList<>();
+                for (String s : cityIds.split(",")) {
+                    TCity tCity = cityService.getById(Integer.valueOf(s));
+                    HashMap<String, String> map = new HashMap<>();
+                    TCity pCity = cityService.getById(tCity.getParentId());
+                    map.put("pName",pCity.getName());
+                    map.put("pCode",pCity.getCode());
+                    map.put("cName",tCity.getName());
+                    map.put("cCode",tCity.getCode());
+                    map.put("id",id.toString());
+                    objects.add(map);
+                }
+                pointMercharsClient.addCitys(objects);
+            }else if(useScope==3){
+                String pam = id+"_"+storeIds;
+                // 添加多个城市 门店
+                try{
+                    pointMercharsClient.addOther(pam);
+
+                }catch (Exception e){
+                    e.printStackTrace();
+                }
+            }
+        }
+        return new SuccessTip<>();
+
     }
 
 
@@ -338,7 +520,7 @@
 
 
     /**
-     * 跳转到修改车辆管理
+     * 跳转到修改商品详情
      */
     @RequestMapping("/tGoods_update/{id}")
     public String tCityUpdate(@PathVariable Integer id, Model model) {
@@ -346,8 +528,11 @@
         PointMercharsVo pointMercharsVo = pointMercharsClient.queryPointMerchaseDetailOfId(id);
         System.out.println("pointMercharsVo:"+pointMercharsVo);
         String[] split = pointMercharsVo.getPics().split(",");
+        List<String> list = Arrays.asList(split);
+        model.addAttribute("id",id);
         model.addAttribute("item",pointMercharsVo);
-        model.addAttribute("pictures",split);
+        model.addAttribute("pictures",list);
+        System.out.println(list);
         return PREFIX + "TGoods_edit.html";
     }
 
@@ -434,11 +619,23 @@
      */
     @RequestMapping("/write_off")
     @ResponseBody
-    public Object GoodsWriteOff(Integer id){
-        System.out.println(id);
-        // TODO: 2023/8/15 核销操作
-        return new SuccessTip<>();
+    public Object GoodsWriteOff(String id){
+        Integer objectType = UserExt.getUser().getObjectType();
+        Map<String, Object> stringObjectHashMap = new HashMap<>();
+        stringObjectHashMap.put("goodsId",id);
+        stringObjectHashMap.put("managerId",objectType);
+        boolean b = pointMercharsClient.writeOffGoodsStatus(stringObjectHashMap);
+        System.out.println(b);
+        if (b){
+            return new SuccessTip<>();
+        }else {
+            return ERROR;
+        }
+
     }
 
 
+
+
+
 }

--
Gitblit v1.7.1