From 2914588a65371a3ce43f678cde0a26cd8da26611 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Tue, 15 Dec 2020 16:14:23 +0800
Subject: [PATCH] fix ty urgent bugs

---
 zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysProjServicesServiceImpl.java |   33 +++++++++-------
 zq-erp/src/main/java/com/matrix/system/hive/bean/ShoppingGoods.java                     |    3 +
 zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysVipInfoServiceImpl.java      |    2 
 zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/servicceAddForm.html   |   11 +++--
 zq-erp/src/main/java/com/matrix/system/hive/service/imp/ShoppingGoodsServiceImpl.java   |    4 +-
 zq-erp/src/main/resources/mybatis/mapper/hive/ShoppingGoodsDao.xml                      |   10 ++++-
 zq-erp/src/main/resources/templates/views/admin/hive/vip/vipInfo-list.html              |    2 
 zq-erp/src/main/java/com/matrix/system/hive/bean/SysProjUse.java                        |   14 +++++++
 zq-erp/src/main/resources/templates/views/admin/hive/products/goods-form.html           |    2 
 zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java        |    1 
 10 files changed, 56 insertions(+), 26 deletions(-)

diff --git a/zq-erp/src/main/java/com/matrix/system/hive/bean/ShoppingGoods.java b/zq-erp/src/main/java/com/matrix/system/hive/bean/ShoppingGoods.java
index 695a0ad..7dfeeff 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/bean/ShoppingGoods.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/bean/ShoppingGoods.java
@@ -429,6 +429,9 @@
      */
     private Date invalidTime;
 
+    /**
+     * 任选套餐是否无限次 N-否 Y-是
+     */
     private String isInfinite;
 
     /**
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/bean/SysProjUse.java b/zq-erp/src/main/java/com/matrix/system/hive/bean/SysProjUse.java
index a0c163e..d0e921b 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/bean/SysProjUse.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/bean/SysProjUse.java
@@ -44,6 +44,7 @@
     /**
      * 有效期
      */
+    @JsonFormat(pattern = DateUtil.DATE_FORMAT_DD, timezone = "GMT+8")
     @DateTimeFormat(pattern = DateUtil.DATE_FORMAT_DD)
     private Date failTime;
     /**
@@ -115,10 +116,23 @@
     private String isCourse;
 
     /**
+     * 任选套餐 是否无限次 Y-是 N-否
+     */
+    private String isInfinite;
+
+    /**
      * 单次划扣次数
      */
     private Integer deductionNum;
 
+    public String getIsInfinite() {
+        return isInfinite;
+    }
+
+    public void setIsInfinite(String isInfinite) {
+        this.isInfinite = isInfinite;
+    }
+
     public String getIsCourse() {
         return isCourse;
     }
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/ShoppingGoodsServiceImpl.java b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/ShoppingGoodsServiceImpl.java
index bcc6590..d415e72 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/ShoppingGoodsServiceImpl.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/ShoppingGoodsServiceImpl.java
@@ -99,7 +99,7 @@
             shoppingGoods.setReferencePice(0D);
         }
         // 验证套餐卡卡必须填写最大使用次数
-        if (Dictionary.FLAG_YES_Y.equals(shoppingGoods.getIsCourse())) {
+        if (Dictionary.FLAG_YES_Y.equals(shoppingGoods.getIsCourse()) && Dictionary.FLAG_NO_N.equals(shoppingGoods.getIsInfinite())) {
             if (shoppingGoods.getCarUseCount() == null) {
                 shoppingGoods.setCarUseCount(0);
             }
@@ -434,7 +434,7 @@
     @Override
     public Date calInvalidTime(ShoppingGoods shoppingGoods, @NotNull Integer type, Date buyDate) {
         if (StringUtils.isBlank(shoppingGoods.getBuyValid()) && StringUtils.isBlank(shoppingGoods.getUseValid()) && shoppingGoods.getInvalidTime() == null) {
-            return null;
+            return DateUtil.stringToDate("9999-12-31", DateUtil.DATE_FORMAT_DD);
         }
 
         if (type == 2 && buyDate == null) {
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java
index 2981768..7acacec 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java
@@ -1049,6 +1049,7 @@
         taocanProjUse.setStatus(Dictionary.TAOCAN_STATUS_YX);
         taocanProjUse.setType(Dictionary.SHOPPING_GOODS_TYPE_TC);
         taocanProjUse.setIsCourse(taocanShoppingGoods.getIsCourse());
+        taocanProjUse.setIsInfinite(taocanShoppingGoods.getIsInfinite());
         // 赠送和打折后金额为0的都视为赠送项目
         if (sysOrderItem.getIsFree().equals(Dictionary.FLAG_NO) && sysOrderItem.getZkPrice() > 0) {
             taocanProjUse.setSource(Dictionary.TAOCAN_SOURCE_GM);
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysProjServicesServiceImpl.java b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysProjServicesServiceImpl.java
index 66cf4ed..ef69075 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysProjServicesServiceImpl.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysProjServicesServiceImpl.java
@@ -4,9 +4,7 @@
 import com.matrix.core.exception.GlobleException;
 import com.matrix.core.pojo.PaginationVO;
 import com.matrix.core.pojo.VerifyResult;
-import com.matrix.core.tools.DateUtil;
-import com.matrix.core.tools.LogUtil;
-import com.matrix.core.tools.WebUtil;
+import com.matrix.core.tools.*;
 import com.matrix.system.common.bean.SysUsers;
 import com.matrix.system.common.dao.SysUsersDao;
 import com.matrix.system.constance.Dictionary;
@@ -166,12 +164,19 @@
                     taocan.setSurplusCount(0);
                     taocan.setStatus(Dictionary.TAOCAN_STATUS_WX);
                 } else if (Dictionary.FLAG_YES_Y.equals(taocan.getIsCourse())) {
-                    //任选套餐检查套餐整体剩余次数
-                    int tcSurplusCount = taocan.getSurplusCount() - sysBeauticianState.getCount();
-                    if (tcSurplusCount < 0) {
-                        throw new GlobleException(taocan.getProjName() + "已经达到最大使用次数");
-                    } else {
-                        taocan.setSurplusCount(tcSurplusCount);
+                    if (StringUtils.isBlank(taocan.getIsInfinite()) || Dictionary.FLAG_NO_N.equals(taocan.getIsInfinite())) {
+                        //任选套餐检查套餐整体剩余次数
+                        int tcSurplusCount = taocan.getSurplusCount() - sysBeauticianState.getCount();
+                        if (tcSurplusCount < 0) {
+                            throw new GlobleException(taocan.getProjName() + "已经达到最大使用次数");
+                        } else {
+                            taocan.setSurplusCount(tcSurplusCount);
+                        }
+
+                        if (tcSurplusCount == 0) {
+                            taocan.setIsOver(Dictionary.FLAG_YES_Y);
+                            taocan.setStatus(Dictionary.TAOCAN_STATUS_WX);
+                        }
                     }
                 }
 
@@ -493,13 +498,13 @@
                     if (sysProjUse.getTaocanId() != null) {
                         //TODO 更新套餐状态为有效
                         SysProjUse taocanProjUse = sysProjUseDao.selectById(sysProjUse.getTaocanId());
-                        if (taocanProjUse.getSurplusCount() == 0) {
-                            taocanProjUse.setIsOver(Dictionary.DELETED_N);
-                            taocanProjUse.setStatus(Dictionary.MONEYCARD_STATUS_YX);
-                        }
+                        taocanProjUse.setIsOver(Dictionary.DELETED_N);
+                        taocanProjUse.setStatus(Dictionary.MONEYCARD_STATUS_YX);
 
                         if (Dictionary.FLAG_YES_Y.equals(taocanProjUse.getIsCourse())) {
-                            taocanProjUse.setSurplusCount(taocanProjUse.getSurplusCount() + beauticianState.getCount());
+                            if (StringUtils.isBlank(taocanProjUse.getIsInfinite()) || Dictionary.FLAG_NO_N.equals(taocanProjUse.getIsInfinite())) {
+                                taocanProjUse.setSurplusCount(taocanProjUse.getSurplusCount() + beauticianState.getCount());
+                            }
                         }
                         sysProjUseDao.update(taocanProjUse);
                     }
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysVipInfoServiceImpl.java b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysVipInfoServiceImpl.java
index 3a7c6df..d057117 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysVipInfoServiceImpl.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysVipInfoServiceImpl.java
@@ -101,7 +101,7 @@
 		sysVipInfo.setCompanyId(user.getCompanyId());
 		sysVipInfo.setCreateTime(new Date());
 		sysVipInfo.setPointAll(0);
-		sysVipInfo.setIsDeal(SysVipInfo.DEAL_VIP);
+		sysVipInfo.setIsDeal(SysVipInfo.UNDEAL_VIP);
 		sysVipInfo.setZjm(StringUtils.toHanyuPinyin(sysVipInfo.getVipName())+","+StringUtils.toHeadWordHanyuPinyin(sysVipInfo.getVipName()));
 		int i=sysVipInfoDao.insert(sysVipInfo);
 		modifyVipWithOtherInfo(sysVipInfo);
diff --git a/zq-erp/src/main/resources/mybatis/mapper/hive/ShoppingGoodsDao.xml b/zq-erp/src/main/resources/mybatis/mapper/hive/ShoppingGoodsDao.xml
index 6c35040..31bf0dc 100644
--- a/zq-erp/src/main/resources/mybatis/mapper/hive/ShoppingGoodsDao.xml
+++ b/zq-erp/src/main/resources/mybatis/mapper/hive/ShoppingGoodsDao.xml
@@ -90,6 +90,7 @@
 		<result property="invalidTime" column="invalid_time" />
 		<result property="useValid" column="use_valid" />
 		<result property="buyValid" column="buy_valid" />
+		<result property="isInfinite" column="is_infinite" />
 
 
 
@@ -299,7 +300,8 @@
 		buy_valid,
 		use_valid,
 		invalid_time,
-		pay_methods
+		pay_methods,
+		is_infinite
 		)
 		VALUES (
 		#{id},
@@ -359,7 +361,8 @@
 			#{buyValid},
 			#{useValid},
 			#{invalidTime},
-			#{payMethods}
+			#{payMethods},
+			#{isInfinite}
 		)
 	</insert>
 
@@ -532,6 +535,9 @@
 			<if test="isDel != null and isDel !='' ">
 				is_del = #{isDel},
 			</if>
+			<if test="isInfinite != null and isInfinite !='' ">
+				is_infinite = #{isInfinite},
+			</if>
 				invalid_time = #{invalidTime},
 				buy_valid = #{buyValid},
 				use_valid = #{useValid},
diff --git a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/servicceAddForm.html b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/servicceAddForm.html
index 7691049..d36bf8a 100644
--- a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/servicceAddForm.html
+++ b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/servicceAddForm.html
@@ -125,7 +125,8 @@
 				<el-tab-pane label="套餐" name="tab2">
 					<template v-for="item in taocanList" >
 						<p class="el-big-title">【{{item.isCourse=='N'?'固定套餐':'任选套餐'}}】{{item.projName}}
-						<code v-if="item.projInfo.isCourse=='Y'" > 剩余次数:{{item.surplusCount}} </code>
+							<span style="float: right" v-if="item.failTime != null">有效期:{{item.failTime}}</span>
+							<code v-if="item.projInfo.isCourse=='Y'" > 剩余次数:<span v-if="item.projInfo.isInfinite == 'Y'">无限次</span><span v-else>{{item.surplusCount}}</span> </code>
 						</p>
 						<el-table
 								:data="item.taocanProjUse"
@@ -143,10 +144,10 @@
 									prop="surplusCount"
 									label="余次">
 							</el-table-column>
-							<el-table-column
-									prop="failTimeStr"
-									label="有效期">
-							</el-table-column>
+<!--							<el-table-column-->
+<!--									prop="failTimeStr"-->
+<!--									label="有效期">-->
+<!--							</el-table-column>-->
 							<el-table-column
 									prop="source"
 									label="来源">
diff --git a/zq-erp/src/main/resources/templates/views/admin/hive/products/goods-form.html b/zq-erp/src/main/resources/templates/views/admin/hive/products/goods-form.html
index b5d53b3..225ed3c 100644
--- a/zq-erp/src/main/resources/templates/views/admin/hive/products/goods-form.html
+++ b/zq-erp/src/main/resources/templates/views/admin/hive/products/goods-form.html
@@ -1568,7 +1568,7 @@
                         if (valid) {
 
 
-                            if ( _this.form.goodType == '套餐' && _this.form.isCourse == 'Y' && !_this.form.carUseCount) {
+                            if ( _this.form.goodType == '套餐' && _this.form.isCourse == 'Y' && _this.form.isInfinite == 'N' && !_this.form.carUseCount) {
                                 this.$message.error('请输入套餐最大使用次数!');
                               _this.submiting = false;
                                 return false;
diff --git a/zq-erp/src/main/resources/templates/views/admin/hive/vip/vipInfo-list.html b/zq-erp/src/main/resources/templates/views/admin/hive/vip/vipInfo-list.html
index fa3bdd4..b6f51f1 100644
--- a/zq-erp/src/main/resources/templates/views/admin/hive/vip/vipInfo-list.html
+++ b/zq-erp/src/main/resources/templates/views/admin/hive/vip/vipInfo-list.html
@@ -190,7 +190,7 @@
      * 构建会员名称
      */
     function getVipName(value, row, index){
-            if(row.isDeal==1){
+            if(row.isDeal==2){
                 return value+" &nbsp;<span class='label-danger'>新</span>"
             }else{
                 return value;

--
Gitblit v1.9.1