From 4351e71d782741143a98f86f6648acd16689165f Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Fri, 27 May 2022 19:48:02 +0800
Subject: [PATCH] Merge branch 'developer' into hive2.0

---
 zq-erp/src/main/java/com/matrix/system/hive/action/VipInfoController.java |   90 ++++++++++++++++++++++++++++++--------------
 1 files changed, 61 insertions(+), 29 deletions(-)

diff --git a/zq-erp/src/main/java/com/matrix/system/hive/action/VipInfoController.java b/zq-erp/src/main/java/com/matrix/system/hive/action/VipInfoController.java
index 0b1ce64..1bc056e 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/action/VipInfoController.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/action/VipInfoController.java
@@ -7,17 +7,17 @@
 import com.matrix.core.pojo.PaginationVO;
 import com.matrix.core.tools.DateUtil;
 import com.matrix.core.tools.LogUtil;
-import com.matrix.core.tools.PropertiesUtil;
+import com.matrix.core.tools.StringUtils;
 import com.matrix.core.tools.WebUtil;
 import com.matrix.core.tools.excl.ExcelSheetPO;
 import com.matrix.core.tools.excl.ExcelUtil;
 import com.matrix.core.tools.excl.ExcelVersion;
 import com.matrix.system.common.bean.SysUsers;
 import com.matrix.system.common.bean.SystemDictionary;
-import com.matrix.system.common.constance.AppConstance;
 import com.matrix.system.common.dao.CustomerDataDictionaryDao;
 import com.matrix.system.common.service.SysUsersService;
 import com.matrix.system.common.service.SystemDictionaryService;
+import com.matrix.system.common.tools.DataAuthUtil;
 import com.matrix.system.common.tools.ResponseHeadUtil;
 import com.matrix.system.constance.Dictionary;
 import com.matrix.system.hive.action.util.QueryUtil;
@@ -30,8 +30,8 @@
 import com.matrix.system.hive.service.*;
 import com.matrix.system.score.dao.ScoreVipDetailDao;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Controller;
-import org.springframework.ui.ModelMap;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 
@@ -41,7 +41,6 @@
 import java.io.File;
 import java.io.IOException;
 import java.io.OutputStream;
-import java.net.URLDecoder;
 import java.net.URLEncoder;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -57,6 +56,11 @@
 @Controller
 @RequestMapping(value = "admin/vipInfo")
 public class VipInfoController extends BaseController {
+
+
+    @Value("${file_storage_path}")
+    private String fileStoragePath;
+
     @Resource
     private SysVipInfoService vipInfoService;
 
@@ -115,7 +119,6 @@
         queryUse.setType(Dictionary.SHOPPING_GOODS_TYPE_XM);
         queryUse.setTaocanId(-1L);
         queryUse.setStatus(Dictionary.TAOCAN_STATUS_YX);
-        queryUse.setIsOver(Dictionary.FLAG_NO_N);
         List<SysProjUse> projList = projUseService.findInPage(queryUse, null);
 
         List<List<Object>> list = new ArrayList<>();
@@ -136,9 +139,11 @@
         }
         //套餐
         //切换到套餐查询条件
-        queryUse.setTaocanId(null);
-        queryUse.setType(Dictionary.SHOPPING_GOODS_TYPE_TC);
-        List<SysProjUse> taoCanList = projUseService.findInPage(queryUse, null);
+        SysProjUse queryTaocan = new SysProjUse();
+        queryTaocan.setType(Dictionary.SHOPPING_GOODS_TYPE_TC);
+        queryTaocan.setStatus(Dictionary.TAOCAN_STATUS_YX);
+        queryTaocan.setVipId(vipId);
+        List<SysProjUse> taoCanList = projUseService.findInPage(queryTaocan, null);
         taoCanList.forEach(item->{
             item.setTaocanProjUse(projUseService.selectTaocanProjUse(item.getId(), queryUse.getStatus()));
             item.setProjInfo(shoppingGoodsDao.selectById(item.getProjId()));
@@ -146,7 +151,12 @@
         if (taoCanList.size() > 0) {
             for (SysProjUse item : taoCanList) {
                 List<Object> temp = new ArrayList<>();
-                temp.add("套餐");
+
+                if(Dictionary.FLAG_YES_Y.equals(item.getIsCourse())){
+                    temp.add("任选套餐");
+                }else{
+                    temp.add("固定套餐");
+                }
                 temp.add(item.getProjName());
                 temp.add(item.getSource());
                 temp.add("有效");
@@ -231,9 +241,9 @@
     public @ResponseBody
     AjaxResult showList(PaginationVO pageVo, SysVipInfo vipInfo) {
 
-//        if (!getMe().getShopRole().equals(Dictionary.FLAG_YES_Y)) {
-        vipInfo.setShopId(getMe().getShopId());
-//        }
+
+        QueryUtil.setQueryLimit(vipInfo);
+
         return showList(vipInfoService, vipInfo, pageVo);
     }
 
@@ -256,6 +266,7 @@
             vips.get(0).setLabels(sysVipLabelDao.selectByVipId(vips.get(0).getId()));
             vips.get(0).setAge(DateUtil.getAgeForBirthDay(vips.get(0).getBirthday1()));
             vips.get(0).setBalance(moneyCardUseDao.selectVipCardTotalMoney(vips.get(0).getId()));
+            vips.get(0).setArrears(sysOrderService.findVipArrearsByVipId(vips.get(0).getId()));
             AjaxResult result = new AjaxResult(AjaxResult.STATUS_SUCCESS, vips, 0);
             return result;
         } else {
@@ -287,7 +298,9 @@
         } else {
             vipInfo.setVipState(Dictionary.VIP_STATE_HY);
             SysUsers users = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY);
-            vipInfo.setShopId(users.getShopId());
+            if(vipInfo.getShopId()==null){
+                vipInfo.setShopId(users.getShopId());
+            }
             return add(vipInfoService, vipInfo, "会员信息");
         }
     }
@@ -321,8 +334,14 @@
     @RequestMapping(value = "/del")
     public @ResponseBody
     AjaxResult del(String keys) {
-
-        return remove(vipInfoService, keys);
+            List<Long> ids = StringUtils.strToCollToLong(keys, ",");
+            int i = vipInfoService.removeLogic(ids);
+            if (i > 0) {
+                return new AjaxResult(AjaxResult.STATUS_SUCCESS, "成功删除" + i + "条数据");
+            } else {
+                return new AjaxResult(AjaxResult.STATUS_FAIL, "删除失败");
+            }
+//        return remove(vipInfoService, keys);
     }
 
     /**
@@ -540,25 +559,17 @@
     }
 
     @RequestMapping(value = "/exportExcel")
-    public void report(ModelMap model, HttpServletRequest request, HttpServletResponse response,
+    public void report( HttpServletResponse response,
                        SysVipInfo vipInfo) throws IOException {
 
-        if (vipInfo.getVipType() != null && !(vipInfo.getVipType().equals(""))) {
-            vipInfo.setVipType(URLDecoder.decode(vipInfo.getVipType(), "UTF-8"));
-        }
-        if (vipInfo.getVipName() != null && !"".equals(vipInfo.getVipName())) {
-            vipInfo.setVipName(URLDecoder.decode(vipInfo.getVipName(), "UTF-8"));
-        }
-        if (vipInfo.getArrivalWay() != null && !"".equals(vipInfo.getArrivalWay())) {
-            vipInfo.setArrivalWay(URLDecoder.decode(vipInfo.getArrivalWay(), "UTF-8"));
-        }
-        if (vipInfo.getVipState() != null && !"".equals(vipInfo.getVipState())) {
-            vipInfo.setVipState(URLDecoder.decode(vipInfo.getVipState(), "UTF-8"));
+        SysUsers sysUsers = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY);
+        if(!DataAuthUtil.hasAllShopAuth()){
+            vipInfo.setShopId(sysUsers.getShopId());
         }
 
         List<ExcelSheetPO> res = new ArrayList<>();
         ExcelSheetPO orderSheet = new ExcelSheetPO();
-        String title = "每日单据明细";
+        String title = "会员资料";
         orderSheet.setSheetName(title);
         orderSheet.setTitle(title);
         String[] header = {"会员编号", "姓名", "性别", "手机号码", "会员类型", "会员活跃度", "到店途径", "健康顾问", "所属门店"};
@@ -605,12 +616,14 @@
         return showList(vipInfoService, info, null);
     }
 
+
+
     @RequestMapping(value = "/importVipInfo")
     @ResponseBody
     public AjaxResult importVipInfo(HttpServletResponse response, HttpServletRequest request, @RequestParam(value = "file", required = false) MultipartFile file) throws IOException {
 
         String fileName = file.getOriginalFilename();
-        String dirPath = PropertiesUtil.getString(AppConstance.FILES_TORAGE_PATH);
+        String dirPath = fileStoragePath;
 //        String dirPath = "C:/Users/wzy19/Desktop/zq";
         File fileDir = new File(dirPath);
         LogUtil.info("#----->{}#", fileDir.exists());
@@ -633,4 +646,23 @@
     public String toImportForm() {
         return "admin/hive/vip/vipImport-form";
     }
+
+    @RequestMapping(value = "/validFlagChange")
+    @ResponseBody
+    public AjaxResult validFlagChange(Long id) {
+        SysVipInfo sysVipInfo = vipInfoService.findById(id);
+
+        if (sysVipInfo == null) {
+            return AjaxResult.buildFailInstance("用户不存在");
+        }
+
+        if (SysVipInfo.VALID_FLAG_Y == sysVipInfo.getValidFlag()) {
+            sysVipInfo.setValidFlag(SysVipInfo.VALID_FLAG_N);
+        } else {
+            sysVipInfo.setValidFlag(SysVipInfo.VALID_FLAG_Y);
+        }
+
+        vipInfoService.modify(sysVipInfo);
+        return AjaxResult.buildSuccessInstance("设置成功");
+    }
 }

--
Gitblit v1.9.1