Pārlūkot izejas kodu

Merge remote-tracking branch 'origin/b' into b

panhui 6 gadi atpakaļ
vecāks
revīzija
1661c523a4
21 mainītis faili ar 277 papildinājumiem un 74 dzēšanām
  1. 2 0
      src/main/java/com/izouma/awesomeadmin/dao/PayCodeInfoMapper.java
  2. 32 7
      src/main/java/com/izouma/awesomeadmin/dao/PayCodeInfoMapper.xml
  3. 7 3
      src/main/java/com/izouma/awesomeadmin/dao/PayCodeOrderMapper.java
  4. 25 0
      src/main/java/com/izouma/awesomeadmin/dao/PayCodeOrderMapper.xml
  5. 0 1
      src/main/java/com/izouma/awesomeadmin/dao/PayCodeStockMapper.java
  6. 22 1
      src/main/java/com/izouma/awesomeadmin/dao/PayCodeStockMapper.xml
  7. 8 0
      src/main/java/com/izouma/awesomeadmin/model/PayCodeInfo.java
  8. 8 0
      src/main/java/com/izouma/awesomeadmin/model/PayCodeStock.java
  9. 3 0
      src/main/java/com/izouma/awesomeadmin/service/PayCodeInfoService.java
  10. 0 1
      src/main/java/com/izouma/awesomeadmin/service/PayCodeStockService.java
  11. 10 1
      src/main/java/com/izouma/awesomeadmin/service/impl/HouseInfoServiceImpl.java
  12. 19 0
      src/main/java/com/izouma/awesomeadmin/service/impl/PayCodeInfoServiceImpl.java
  13. 39 12
      src/main/java/com/izouma/awesomeadmin/service/impl/PayCodeOrderServiceImpl.java
  14. 5 5
      src/main/java/com/izouma/awesomeadmin/service/impl/PayCodeStockServiceImpl.java
  15. 29 21
      src/main/java/com/izouma/awesomeadmin/web/PayCodeInfoController.java
  16. 23 22
      src/main/java/com/izouma/awesomeadmin/web/PayCodeStockController.java
  17. 2 0
      src/main/resources/spring/appWebService.xml
  18. 12 0
      src/main/vue/src/pages/PayCodeInfo.vue
  19. 11 0
      src/main/vue/src/pages/PayCodeInfos.vue
  20. 9 0
      src/main/vue/src/pages/PayCodeStock.vue
  21. 11 0
      src/main/vue/src/pages/PayCodeStocks.vue

+ 2 - 0
src/main/java/com/izouma/awesomeadmin/dao/PayCodeInfoMapper.java

@@ -31,5 +31,7 @@ public interface PayCodeInfoMapper{
     List<PayCodeInfo> query(PayCodeInfo record);
     /*generatedEnd*/
 
+    int autoOvertime(PayCodeInfo record);
+
 }
 

+ 32 - 7
src/main/java/com/izouma/awesomeadmin/dao/PayCodeInfoMapper.xml

@@ -15,12 +15,13 @@
         <result column="limit_money" property="limitMoney" jdbcType="DECIMAL"/>
         <result column="use_flag" property="useFlag" jdbcType="CHAR"/>
         <result column="remark" property="remark" jdbcType="VARCHAR"/>
+        <result column="auto_timeover" property="autoTimeover" jdbcType="CHAR"/>
         <!--generatedEnd-->
     </resultMap>
 
     <sql id="Base_Column_List">
         <!--generatedStart-->
-        id, del_flag, update_time, update_user, create_time, create_user, code_name, pay_type, image, limit_money, use_flag, remark        <!--generatedEnd-->
+        id, del_flag, update_time, update_user, create_time, create_user, code_name, pay_type, image, limit_money, use_flag, remark, auto_timeover        <!--generatedEnd-->
     </sql>
 
     <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer">
@@ -76,6 +77,9 @@
             <if test="remark!= null">
                 remark,
             </if>
+            <if test="autoTimeover!= null">
+                auto_timeover,
+            </if>
             <!--generatedEnd-->
         </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
@@ -116,6 +120,9 @@
             <if test="remark != null">
                 #{remark,jdbcType=VARCHAR},
             </if>
+            <if test="autoTimeover != null">
+                #{autoTimeover,jdbcType=CHAR},
+            </if>
             <!--generatedEnd-->
         </trim>
     </insert>
@@ -160,6 +167,9 @@
             <if test="remark != null">
                 remark= #{remark,jdbcType=VARCHAR},
             </if>
+            <if test="autoTimeover != null">
+                auto_timeover= #{autoTimeover,jdbcType=CHAR},
+            </if>
             <!--generatedEnd-->
         </set>
         WHERE
@@ -215,16 +225,17 @@
             <if test="record.remark != null and !&quot;&quot;.equals(record.remark)">
                 AND remark = #{record.remark}
             </if>
+            <if test="record.autoTimeover != null and !&quot;&quot;.equals(record.autoTimeover)">
+                AND auto_timeover = #{record.autoTimeover}
+            </if>
             <!--generatedEnd-->
             <if test="record.searchKey != null and !&quot;&quot;.equals(record.searchKey)">
                 <trim prefix="and (" suffix=")" prefixOverrides="OR">
                     <!--generatedStart-->
                     OR code_name LIKE concat('%',#{record.searchKey},'%')
                     OR pay_type LIKE concat('%',#{record.searchKey},'%')
-                    OR image LIKE concat('%',#{record.searchKey},'%')
-                    OR limit_money LIKE concat('%',#{record.searchKey},'%')
-                    OR use_flag LIKE concat('%',#{record.searchKey},'%')
                     OR remark LIKE concat('%',#{record.searchKey},'%')
+                    OR auto_timeover LIKE concat('%',#{record.searchKey},'%')
                     <!--generatedEnd-->
                 </trim>
             </if>
@@ -314,16 +325,17 @@
             <if test="remark != null and !&quot;&quot;.equals(remark)">
                 AND remark = #{remark}
             </if>
+            <if test="autoTimeover != null and !&quot;&quot;.equals(autoTimeover)">
+                AND auto_timeover = #{autoTimeover}
+            </if>
             <!--generatedEnd-->
             <if test="searchKey != null and !&quot;&quot;.equals(searchKey)">
                 <trim prefix="and (" suffix=")" prefixOverrides="OR">
                     <!--generatedStart-->
                     OR code_name LIKE concat('%',#{searchKey},'%')
                     OR pay_type LIKE concat('%',#{searchKey},'%')
-                    OR image LIKE concat('%',#{searchKey},'%')
-                    OR limit_money LIKE concat('%',#{searchKey},'%')
-                    OR use_flag LIKE concat('%',#{searchKey},'%')
                     OR remark LIKE concat('%',#{searchKey},'%')
+                    OR auto_timeover LIKE concat('%',#{searchKey},'%')
                     <!--generatedEnd-->
                 </trim>
             </if>
@@ -409,6 +421,9 @@
             <if test="remark != null and !&quot;&quot;.equals(remark)">
                 AND remark = #{remark}
             </if>
+            <if test="autoTimeover != null and !&quot;&quot;.equals(autoTimeover)">
+                AND auto_timeover = #{autoTimeover}
+            </if>
             <!--generatedEnd-->
         </where>
         LIMIT 1
@@ -436,5 +451,15 @@
         </where>
         ORDER BY id DESC
     </select>
+
+    <update id="autoOvertime" parameterType="com.izouma.awesomeadmin.model.PayCodeInfo">
+        UPDATE pay_code_info
+        SET use_flag = 'N'
+        WHERE
+            del_flag = 'N'
+        AND use_flag = 'Y'
+        AND auto_timeover = 'Y'
+    </update>
+
 </mapper>
 

+ 7 - 3
src/main/java/com/izouma/awesomeadmin/dao/PayCodeOrderMapper.java

@@ -1,16 +1,18 @@
 package com.izouma.awesomeadmin.dao;
 
+import java.math.BigDecimal;
 import java.util.*;
+
 import com.izouma.awesomeadmin.datasource.DataSource;
 import org.springframework.stereotype.Repository;
 import com.izouma.awesomeadmin.model.PayCodeOrder;
 
 
 /**
-*  Dao接口
-*/
+ * Dao接口
+ */
 @Repository("com.zoumaframe.dao.PayCodeOrderMapper")
-public interface PayCodeOrderMapper{
+public interface PayCodeOrderMapper {
     /*generatedStart*/
     int deleteByPrimaryKey(Integer id);
 
@@ -34,5 +36,7 @@ public interface PayCodeOrderMapper{
     List<PayCodeOrder> queryAutoCancelPayCodeOrderList(PayCodeOrder record);
 
     List<PayCodeOrder> queryReportPayCodeOrder(PayCodeOrder record);
+
+    BigDecimal getTotalPayMoney(PayCodeOrder record);
 }
 

+ 25 - 0
src/main/java/com/izouma/awesomeadmin/dao/PayCodeOrderMapper.xml

@@ -641,6 +641,31 @@
         ORDER BY id DESC
     </select>
 
+
+    <select id="getTotalPayMoney" parameterType="java.util.Map"
+            resultType="decimal">
+        SELECT
+        SUM(pay_money) AS money
+        FROM
+        pay_code_order
+        WHERE
+        del_flag = 'N'
+        AND status_flag = 1
+        <if test="codeId != null and !&quot;&quot;.equals(codeId)">
+            and code_id  = #{codeId}
+        </if>
+        <if test="stockId != null and !&quot;&quot;.equals(stockId)">
+            and stock_id = #{stockId}
+        </if>
+        <if test="searchBeginTime != null and !&quot;&quot;.equals(searchBeginTime)">
+            and pay_time  <![CDATA[ >= ]]> #{searchBeginTime}
+        </if>
+        <if test="searchEndTime != null and !&quot;&quot;.equals(searchEndTime)">
+            and pay_time  <![CDATA[ <= ]]> #{searchEndTime}
+        </if>
+
+    </select>
+
     <resultMap id="PagePayCodeOrderResult" type="com.izouma.awesomeadmin.model.PayCodeOrder" extends="BaseResultMap">
 
         <association property="productInfo"

+ 0 - 1
src/main/java/com/izouma/awesomeadmin/dao/PayCodeStockMapper.java

@@ -29,7 +29,6 @@ public interface PayCodeStockMapper{
     PayCodeStock queryPayCodeStock(PayCodeStock record);
 
     List<PayCodeStock> query(PayCodeStock record);
-
     /*generatedEnd*/
     List<PayCodeStock> queryPayCodeStockAllUsedMoney(PayCodeStock record);
     List<PayCodeStock> queryPayCodeStockAllUsedPayType(PayCodeStock record);

+ 22 - 1
src/main/java/com/izouma/awesomeadmin/dao/PayCodeStockMapper.xml

@@ -16,12 +16,13 @@
         <result column="use_flag" property="useFlag" jdbcType="CHAR"/>
         <result column="remark" property="remark" jdbcType="VARCHAR"/>
         <result column="name" property="name" jdbcType="VARCHAR"/>
+        <result column="regenerate" property="regenerate" jdbcType="CHAR"/>
         <!--generatedEnd-->
     </resultMap>
 
     <sql id="Base_Column_List">
         <!--generatedStart-->
-        id, del_flag, update_time, update_user, create_time, create_user, code_id, pay_type, money, amount, use_flag, remark, name        <!--generatedEnd-->
+        id, del_flag, update_time, update_user, create_time, create_user, code_id, pay_type, money, amount, use_flag, remark, name, regenerate        <!--generatedEnd-->
     </sql>
 
     <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer">
@@ -80,6 +81,9 @@
             <if test="name!= null">
                 name,
             </if>
+            <if test="regenerate!= null">
+                regenerate,
+            </if>
             <!--generatedEnd-->
         </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
@@ -123,6 +127,9 @@
             <if test="name != null">
                 #{name,jdbcType=VARCHAR},
             </if>
+            <if test="regenerate != null">
+                #{regenerate,jdbcType=CHAR},
+            </if>
             <!--generatedEnd-->
         </trim>
     </insert>
@@ -170,6 +177,9 @@
             <if test="name != null">
                 name= #{name,jdbcType=VARCHAR},
             </if>
+            <if test="regenerate != null">
+                regenerate= #{regenerate,jdbcType=CHAR},
+            </if>
             <!--generatedEnd-->
         </set>
         WHERE
@@ -228,12 +238,16 @@
             <if test="record.name != null and !&quot;&quot;.equals(record.name)">
                 AND name = #{record.name}
             </if>
+            <if test="record.regenerate != null and !&quot;&quot;.equals(record.regenerate)">
+                AND regenerate = #{record.regenerate}
+            </if>
             <!--generatedEnd-->
             <if test="record.searchKey != null and !&quot;&quot;.equals(record.searchKey)">
                 <trim prefix="and (" suffix=")" prefixOverrides="OR">
                     <!--generatedStart-->
                     OR remark LIKE concat('%',#{record.searchKey},'%')
                     OR name LIKE concat('%',#{record.searchKey},'%')
+                    OR regenerate LIKE concat('%',#{record.searchKey},'%')
                     <!--generatedEnd-->
                 </trim>
             </if>
@@ -326,12 +340,16 @@
             <if test="name != null and !&quot;&quot;.equals(name)">
                 AND name = #{name}
             </if>
+            <if test="regenerate != null and !&quot;&quot;.equals(regenerate)">
+                AND regenerate = #{regenerate}
+            </if>
             <!--generatedEnd-->
             <if test="searchKey != null and !&quot;&quot;.equals(searchKey)">
                 <trim prefix="and (" suffix=")" prefixOverrides="OR">
                     <!--generatedStart-->
                     OR remark LIKE concat('%',#{searchKey},'%')
                     OR name LIKE concat('%',#{searchKey},'%')
+                    OR regenerate LIKE concat('%',#{searchKey},'%')
                     <!--generatedEnd-->
                 </trim>
             </if>
@@ -510,6 +528,9 @@
             <if test="name != null and !&quot;&quot;.equals(name)">
                 AND name = #{name}
             </if>
+            <if test="regenerate != null and !&quot;&quot;.equals(regenerate)">
+                AND regenerate = #{regenerate}
+            </if>
             <!--generatedEnd-->
         </where>
         LIMIT 1

+ 8 - 0
src/main/java/com/izouma/awesomeadmin/model/PayCodeInfo.java

@@ -22,6 +22,7 @@ public class PayCodeInfo{
     private BigDecimal limitMoney;
     private String useFlag;
     private String remark;
+    private String autoTimeover;
 
     private String idStr;
 
@@ -123,6 +124,13 @@ public class PayCodeInfo{
     public void setRemark(String remark){
         this.remark = remark;
     }
+    public String getAutoTimeover(){
+        return this.autoTimeover;
+    }
+
+    public void setAutoTimeover(String autoTimeover){
+        this.autoTimeover = autoTimeover;
+    }
 
     public String getSearchKey() {
         return searchKey;

+ 8 - 0
src/main/java/com/izouma/awesomeadmin/model/PayCodeStock.java

@@ -23,6 +23,7 @@ public class PayCodeStock{
     private String useFlag;
     private String remark;
     private String name;
+    private String regenerate;
 
     private String idStr;
 
@@ -131,6 +132,13 @@ public class PayCodeStock{
     public void setName(String name){
         this.name = name;
     }
+    public String getRegenerate(){
+        return this.regenerate;
+    }
+
+    public void setRegenerate(String regenerate){
+        this.regenerate = regenerate;
+    }
 
     public String getSearchKey() {
         return searchKey;

+ 3 - 0
src/main/java/com/izouma/awesomeadmin/service/PayCodeInfoService.java

@@ -2,6 +2,7 @@ package com.izouma.awesomeadmin.service;
 
 import java.util.*;
 import com.izouma.awesomeadmin.dto.Page;
+import com.izouma.awesomeadmin.dto.Result;
 import com.izouma.awesomeadmin.model.PayCodeInfo;
 
 
@@ -24,5 +25,7 @@ public interface PayCodeInfoService{
 
     boolean updatePayCodeInfo(PayCodeInfo record);
     /*generatedEnd*/
+
+    Result autoOvertime(PayCodeInfo record);
 }
 

+ 0 - 1
src/main/java/com/izouma/awesomeadmin/service/PayCodeStockService.java

@@ -23,7 +23,6 @@ public interface PayCodeStockService{
     boolean deletePayCodeStock(PayCodeStock record);
 
     boolean updatePayCodeStock(PayCodeStock record);
-
     /*generatedEnd*/
     List<PayCodeStock> getPayCodeStockAllUsedMoney(PayCodeStock record);
     List<PayCodeStock> getPayCodeStockAllUsedPayType(PayCodeStock record);

+ 10 - 1
src/main/java/com/izouma/awesomeadmin/service/impl/HouseInfoServiceImpl.java

@@ -14,6 +14,7 @@ import com.izouma.awesomeadmin.util.DateTimeTool;
 import com.izouma.awesomeadmin.util.MbappUtil;
 import com.izouma.awesomeadmin.util.PushUtil;
 import org.apache.commons.collections.CollectionUtils;
+import org.apache.commons.lang.StringUtils;
 import org.apache.log4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -50,6 +51,9 @@ public class HouseInfoServiceImpl implements HouseInfoService {
     @Autowired
     private CustomerServiceService customerServiceService;
 
+    @Autowired
+    private SystemVariableService systemVariableService;
+
 
     @Override
     public List<HouseInfo> getHouseInfoList(HouseInfo record) {
@@ -784,7 +788,12 @@ public class HouseInfoServiceImpl implements HouseInfoService {
             HouseInfo joinHouseInfo = new HouseInfo();
             joinHouseInfo.setId(houseInfo.getId());
             joinHouseInfo.setPlayerNumber(1);
-            joinHouseInfo.setBonus(BigDecimal.valueOf(entryTicket * 10));
+            int ticketPrice = 1;
+            String ticketPriceStr = systemVariableService.get("ticketPrice");
+            if (StringUtils.isNotBlank(ticketPriceStr)) {
+                ticketPrice = Integer.valueOf(ticketPriceStr);
+            }
+            joinHouseInfo.setBonus(BigDecimal.valueOf(entryTicket * ticketPrice));
 
             houseInfoMapper.joinHouseInfo(joinHouseInfo);
 

+ 19 - 0
src/main/java/com/izouma/awesomeadmin/service/impl/PayCodeInfoServiceImpl.java

@@ -1,6 +1,9 @@
 package com.izouma.awesomeadmin.service.impl;
 
 import java.util.*;
+
+import com.izouma.awesomeadmin.dto.Result;
+import com.izouma.awesomeadmin.model.PayCodeOrder;
 import org.apache.log4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -113,5 +116,21 @@ public class PayCodeInfoServiceImpl implements PayCodeInfoService{
         return false;
     }
     /*generatedEnd*/
+
+    @Override
+    public Result autoOvertime(PayCodeInfo record) {
+        logger.info("autoOvertime 付款码自动过期");
+        try {
+
+            int updates = payCodeInfoMapper.autoOvertime(record);
+            if (updates > 0) {
+                return new Result(true, "付款码自动过期 成功");
+            }
+
+        } catch (Exception e) {
+            logger.error("autoOvertime 付款码自动过期", e);
+        }
+        return new Result(false, "autoOvertime 失败");
+    }
 }
 

+ 39 - 12
src/main/java/com/izouma/awesomeadmin/service/impl/PayCodeOrderServiceImpl.java

@@ -1,10 +1,7 @@
 package com.izouma.awesomeadmin.service.impl;
 
 import com.izouma.awesomeadmin.constant.AppConstant;
-import com.izouma.awesomeadmin.dao.MemberCoinMapper;
-import com.izouma.awesomeadmin.dao.PayCodeOrderMapper;
-import com.izouma.awesomeadmin.dao.PayCodeStockMapper;
-import com.izouma.awesomeadmin.dao.ProductInfoMapper;
+import com.izouma.awesomeadmin.dao.*;
 import com.izouma.awesomeadmin.dto.Page;
 import com.izouma.awesomeadmin.dto.Result;
 import com.izouma.awesomeadmin.model.*;
@@ -35,6 +32,9 @@ public class PayCodeOrderServiceImpl implements PayCodeOrderService {
     @Autowired
     private PayCodeStockMapper payCodeStockMapper;
 
+    @Autowired
+    private PayCodeInfoMapper payCodeInfoMapper;
+
     @Autowired
     private ProductInfoMapper productInfoMapper;
 
@@ -254,6 +254,32 @@ public class PayCodeOrderServiceImpl implements PayCodeOrderService {
             record.setPayTime(new Date());
             payCodeOrderMapper.updateByPrimaryKeySelective(record);
 
+
+            PayCodeInfo payCodeInfo = payCodeOrder.getPayCodeInfo();
+            if (payCodeInfo != null) {
+
+                PayCodeOrder checkPay = new PayCodeOrder();
+                checkPay.setCodeId(payCodeInfo.getId());
+                BigDecimal totalPayMoney = payCodeOrderMapper.getTotalPayMoney(checkPay);
+
+                if (totalPayMoney.compareTo(payCodeInfo.getLimitMoney()) >= 0) {
+                    payCodeInfo.setUseFlag("N");
+                    payCodeInfo.setRemark("超出限制金额,更新为不可以");
+                    payCodeInfoMapper.updateByPrimaryKeySelective(payCodeInfo);
+                } else {
+                    PayCodeStock payCodeStock = payCodeOrder.getPayCodeStock();
+                    if (payCodeStock != null) {
+                        if ("Y".equals(payCodeStock.getRegenerate())) {//再生
+                            payCodeStock.setAmount(payCodeStock.getAmount() + 1);
+                            payCodeStockMapper.updateByPrimaryKeySelective(payCodeStock);
+                        }
+                    }
+                }
+
+
+            }
+
+
             /**
              * 二级分润 开始
              */
@@ -276,7 +302,7 @@ public class PayCodeOrderServiceImpl implements PayCodeOrderService {
                         UserInfo channelManager = userInfoService.getUserInfoById(channelManagerId + "");
                         if (channelManager != null) {
 
-                            fenrun(channelMoney, channelManager, "渠道");
+                            fenrun(channelMoney, channelManager, "代理商", userInfo, payCodeOrder.getMoney().doubleValue());
                         }
 
                     }
@@ -289,7 +315,7 @@ public class PayCodeOrderServiceImpl implements PayCodeOrderService {
                         UserInfo recommender = userInfoService.getUserInfoById(recommenderId + "");
                         if (recommender != null) {
 
-                            fenrun(money, recommender, "一级");
+                            fenrun(money, recommender, "一级招募者", userInfo, payCodeOrder.getMoney().doubleValue());
                             Integer recommenderId2 = recommender.getRecommender();
 
 
@@ -298,14 +324,14 @@ public class PayCodeOrderServiceImpl implements PayCodeOrderService {
                                 UserInfo recommender2 = userInfoService.getUserInfoById(recommenderId2 + "");
                                 if (recommender2 != null) {
 
-                                    fenrun(money2, recommender2, "二级");
+                                    fenrun(money2, recommender2, "二级招募者", userInfo, payCodeOrder.getMoney().doubleValue());
                                 } else {//如果没有二级,则分润给一级
-                                    fenrun(money2, recommender, "二级");
+                                    fenrun(money2, recommender, "二级招募者", userInfo, payCodeOrder.getMoney().doubleValue());
                                 }
 
                             } else {
                                 ////如果没有二级,则分润给一级
-                                fenrun(money2, recommender, "二级");
+                                fenrun(money2, recommender, "二级招募者", userInfo, payCodeOrder.getMoney().doubleValue());
                             }
 
                         }
@@ -338,10 +364,11 @@ public class PayCodeOrderServiceImpl implements PayCodeOrderService {
      * @param money
      * @param recommender
      */
-    private void fenrun(double money, UserInfo recommender, String remark) {
+    private void fenrun(double money, UserInfo recommender, String remark, UserInfo payUserInfo, double payMoney) {
         UserInfo updateUser = new UserInfo();
         updateUser.setId(recommender.getId());
 
+        recommender = userInfoService.getSingleUserInfo(updateUser);
 
         double balance = recommender.getMoneyCoin();
         double moneyCoin = balance + money;
@@ -353,7 +380,7 @@ public class PayCodeOrderServiceImpl implements PayCodeOrderService {
         memberCoin.setMoney(BigDecimal.valueOf(money));
         memberCoin.setBalance(BigDecimal.valueOf(moneyCoin));
         memberCoin.setTypeFlag(AppConstant.CoinType.SONG);
-        memberCoin.setRemark(remark + "成员购买参赛券,赠送:" + money + "积分");
+        memberCoin.setRemark("用户[" + payUserInfo.getNickname() + "]充值[" + payMoney + "]元,您作为" + remark + " 可以获得[" + money + "]积分");
         memberCoinMapper.insertSelective(memberCoin);
 
         updateUser.setMoneyCoin(moneyCoin);
@@ -363,7 +390,7 @@ public class PayCodeOrderServiceImpl implements PayCodeOrderService {
         systemNotice.setUserId(recommender.getId());
         systemNotice.setRemark("分润");
 
-        systemNotice.setContent(remark + "成员购买参赛券,赠送:[" + money + "] 积分");
+        systemNotice.setContent("用户[" + payUserInfo.getNickname() + "]充值[" + payMoney + "]元,您作为" + remark + " 可以获得[" + money + "]积分");
         systemNotice.setTypeFlag(AppConstant.NoticeType.FEN_RUN);
 
         systemNoticeService.createSystemNotice(systemNotice);

+ 5 - 5
src/main/java/com/izouma/awesomeadmin/service/impl/PayCodeStockServiceImpl.java

@@ -78,7 +78,7 @@ public class PayCodeStockServiceImpl implements PayCodeStockService {
         try {
             int updates = payCodeStockMapper.insertSelective(record);
             if (updates > 0) {
-                return true;
+                 return true;
             }
         } catch (Exception e) {
             logger.error("createPayCodeStock", e);
@@ -92,10 +92,10 @@ public class PayCodeStockServiceImpl implements PayCodeStockService {
         try {
             int updates = payCodeStockMapper.delete(record);
             if (updates > 0) {
-                return true;
+                 return true;
             }
         } catch (Exception e) {
-            logger.error("deletePayCodeStock", e);
+             logger.error("deletePayCodeStock", e);
         }
         return false;
     }
@@ -106,10 +106,10 @@ public class PayCodeStockServiceImpl implements PayCodeStockService {
         try {
             int updates = payCodeStockMapper.updateByPrimaryKeySelective(record);
             if (updates > 0) {
-                return true;
+                 return true;
             }
         } catch (Exception e) {
-            logger.error("updatePayCodeStock", e);
+             logger.error("updatePayCodeStock", e);
         }
         return false;
     }

+ 29 - 21
src/main/java/com/izouma/awesomeadmin/web/PayCodeInfoController.java

@@ -53,7 +53,7 @@ public class PayCodeInfoController {
     public Result page(Page page, PayCodeInfo record) {
         Map<String, Object> result = new HashMap<>();
 
-        List<PayCodeInfo> pp =payCodeInfoService.getPayCodeInfoByPage(page, record);
+        List<PayCodeInfo> pp = payCodeInfoService.getPayCodeInfoByPage(page, record);
 
         result.put(AppConstant.PAGE, page);
         result.put("pp", pp);
@@ -65,7 +65,7 @@ public class PayCodeInfoController {
     public Result save(PayCodeInfo record) {
         boolean num = payCodeInfoService.createPayCodeInfo(record);
         if (num) {
-        return new Result(true, record.getId());
+            return new Result(true, record.getId());
         }
         return new Result(false, "保存异常");
     }
@@ -75,7 +75,7 @@ public class PayCodeInfoController {
     public Result updatePayCodeInfo(PayCodeInfo record) {
         boolean num = payCodeInfoService.updatePayCodeInfo(record);
         if (num) {
-        return new Result(true, "保存成功");
+            return new Result(true, "保存成功");
         }
         return new Result(false, "保存异常");
     }
@@ -86,7 +86,7 @@ public class PayCodeInfoController {
 
         boolean num = payCodeInfoService.deletePayCodeInfo(record);
         if (num) {
-        return new Result(true, "删除成功");
+            return new Result(true, "删除成功");
         }
         return new Result(false, "删除异常");
     }
@@ -100,29 +100,37 @@ public class PayCodeInfoController {
         String sheetName = "pay_code_info";
         String titleName = "支付码数据表";
         String fileName = "支付码表";
-        int columnNumber = 12;
-        int[] columnWidth = { 20,  20,  20,  20,  20,  20,  20,  20,  20,  20,  20,  20 };
-        String[] columnName = {  "ID" ,   "删除标识" ,   "更新时间" ,   "更新人" ,   "创建时间" ,   "创建人" ,   "名称" ,   "类型" ,   "二维码" ,   "限制金额" ,   "可用" ,   "备注"  };
-        String[][] dataList = new String[payCodeInfos.size()][12];
+        int columnNumber = 13;
+        int[] columnWidth = {20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20};
+        String[] columnName = {"ID", "删除标识", "更新时间", "更新人", "创建时间", "创建人", "名称", "类型", "二维码", "限制金额", "可用", "备注", "自动过期"};
+        String[][] dataList = new String[payCodeInfos.size()][13];
 
         for (int i = 0; i < payCodeInfos.size(); i++) {
-                        dataList[i][0] = String.valueOf(payCodeInfos.get(i).getId());
-                        dataList[i][1] = String.valueOf(payCodeInfos.get(i).getDelFlag());
-                        dataList[i][2] = String.valueOf(payCodeInfos.get(i).getUpdateTime());
-                        dataList[i][3] = String.valueOf(payCodeInfos.get(i).getUpdateUser());
-                        dataList[i][4] = String.valueOf(payCodeInfos.get(i).getCreateTime());
-                        dataList[i][5] = String.valueOf(payCodeInfos.get(i).getCreateUser());
-                        dataList[i][6] = String.valueOf(payCodeInfos.get(i).getCodeName());
-                        dataList[i][7] = String.valueOf(payCodeInfos.get(i).getPayType());
-                        dataList[i][8] = String.valueOf(payCodeInfos.get(i).getImage());
-                        dataList[i][9] = String.valueOf(payCodeInfos.get(i).getLimitMoney());
-                        dataList[i][10] = String.valueOf(payCodeInfos.get(i).getUseFlag());
-                        dataList[i][11] = String.valueOf(payCodeInfos.get(i).getRemark());
-                    }
+            dataList[i][0] = String.valueOf(payCodeInfos.get(i).getId());
+            dataList[i][1] = String.valueOf(payCodeInfos.get(i).getDelFlag());
+            dataList[i][2] = String.valueOf(payCodeInfos.get(i).getUpdateTime());
+            dataList[i][3] = String.valueOf(payCodeInfos.get(i).getUpdateUser());
+            dataList[i][4] = String.valueOf(payCodeInfos.get(i).getCreateTime());
+            dataList[i][5] = String.valueOf(payCodeInfos.get(i).getCreateUser());
+            dataList[i][6] = String.valueOf(payCodeInfos.get(i).getCodeName());
+            dataList[i][7] = String.valueOf(payCodeInfos.get(i).getPayType());
+            dataList[i][8] = String.valueOf(payCodeInfos.get(i).getImage());
+            dataList[i][9] = String.valueOf(payCodeInfos.get(i).getLimitMoney());
+            dataList[i][10] = String.valueOf(payCodeInfos.get(i).getUseFlag());
+            dataList[i][11] = String.valueOf(payCodeInfos.get(i).getRemark());
+            dataList[i][12] = String.valueOf(payCodeInfos.get(i).getAutoTimeover());
+        }
 
         ExportExcelUtil.ExportWithResponse(sheetName, titleName, fileName,
                 columnNumber, columnWidth, columnName, dataList, response);
     }
     /*generatedEnd*/
+
+    @RequestMapping(value = "/autoOvertime", method = RequestMethod.POST)
+    @ResponseBody
+    public Result autoOvertime() {
+        return payCodeInfoService.autoOvertime(null);
+    }
+
 }
 

+ 23 - 22
src/main/java/com/izouma/awesomeadmin/web/PayCodeStockController.java

@@ -53,7 +53,7 @@ public class PayCodeStockController {
     public Result page(Page page, PayCodeStock record) {
         Map<String, Object> result = new HashMap<>();
 
-        List<PayCodeStock> pp = payCodeStockService.getPayCodeStockByPage(page, record);
+        List<PayCodeStock> pp =payCodeStockService.getPayCodeStockByPage(page, record);
 
         result.put(AppConstant.PAGE, page);
         result.put("pp", pp);
@@ -65,7 +65,7 @@ public class PayCodeStockController {
     public Result save(PayCodeStock record) {
         boolean num = payCodeStockService.createPayCodeStock(record);
         if (num) {
-            return new Result(true, record.getId());
+        return new Result(true, record.getId());
         }
         return new Result(false, "保存异常");
     }
@@ -75,7 +75,7 @@ public class PayCodeStockController {
     public Result updatePayCodeStock(PayCodeStock record) {
         boolean num = payCodeStockService.updatePayCodeStock(record);
         if (num) {
-            return new Result(true, "保存成功");
+        return new Result(true, "保存成功");
         }
         return new Result(false, "保存异常");
     }
@@ -86,7 +86,7 @@ public class PayCodeStockController {
 
         boolean num = payCodeStockService.deletePayCodeStock(record);
         if (num) {
-            return new Result(true, "删除成功");
+        return new Result(true, "删除成功");
         }
         return new Result(false, "删除异常");
     }
@@ -100,26 +100,27 @@ public class PayCodeStockController {
         String sheetName = "pay_code_stock";
         String titleName = "付款码库存数据表";
         String fileName = "付款码库存表";
-        int columnNumber = 13;
-        int[] columnWidth = {20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20};
-        String[] columnName = {"ID", "删除标识", "更新时间", "更新人", "创建时间", "创建人", "付款码Id", "支付类型", "金额", "数量", "可用", "备注", "名称"};
-        String[][] dataList = new String[payCodeStocks.size()][13];
+        int columnNumber = 14;
+        int[] columnWidth = { 20,  20,  20,  20,  20,  20,  20,  20,  20,  20,  20,  20,  20,  20 };
+        String[] columnName = {  "ID" ,   "删除标识" ,   "更新时间" ,   "更新人" ,   "创建时间" ,   "创建人" ,   "付款码Id" ,   "支付类型" ,   "金额" ,   "数量" ,   "可用" ,   "备注" ,   "名称" ,   "再生"  };
+        String[][] dataList = new String[payCodeStocks.size()][14];
 
         for (int i = 0; i < payCodeStocks.size(); i++) {
-            dataList[i][0] = String.valueOf(payCodeStocks.get(i).getId());
-            dataList[i][1] = String.valueOf(payCodeStocks.get(i).getDelFlag());
-            dataList[i][2] = String.valueOf(payCodeStocks.get(i).getUpdateTime());
-            dataList[i][3] = String.valueOf(payCodeStocks.get(i).getUpdateUser());
-            dataList[i][4] = String.valueOf(payCodeStocks.get(i).getCreateTime());
-            dataList[i][5] = String.valueOf(payCodeStocks.get(i).getCreateUser());
-            dataList[i][6] = String.valueOf(payCodeStocks.get(i).getCodeId());
-            dataList[i][7] = String.valueOf(payCodeStocks.get(i).getPayType());
-            dataList[i][8] = String.valueOf(payCodeStocks.get(i).getMoney());
-            dataList[i][9] = String.valueOf(payCodeStocks.get(i).getAmount());
-            dataList[i][10] = String.valueOf(payCodeStocks.get(i).getUseFlag());
-            dataList[i][11] = String.valueOf(payCodeStocks.get(i).getRemark());
-            dataList[i][12] = String.valueOf(payCodeStocks.get(i).getName());
-        }
+                        dataList[i][0] = String.valueOf(payCodeStocks.get(i).getId());
+                        dataList[i][1] = String.valueOf(payCodeStocks.get(i).getDelFlag());
+                        dataList[i][2] = String.valueOf(payCodeStocks.get(i).getUpdateTime());
+                        dataList[i][3] = String.valueOf(payCodeStocks.get(i).getUpdateUser());
+                        dataList[i][4] = String.valueOf(payCodeStocks.get(i).getCreateTime());
+                        dataList[i][5] = String.valueOf(payCodeStocks.get(i).getCreateUser());
+                        dataList[i][6] = String.valueOf(payCodeStocks.get(i).getCodeId());
+                        dataList[i][7] = String.valueOf(payCodeStocks.get(i).getPayType());
+                        dataList[i][8] = String.valueOf(payCodeStocks.get(i).getMoney());
+                        dataList[i][9] = String.valueOf(payCodeStocks.get(i).getAmount());
+                        dataList[i][10] = String.valueOf(payCodeStocks.get(i).getUseFlag());
+                        dataList[i][11] = String.valueOf(payCodeStocks.get(i).getRemark());
+                        dataList[i][12] = String.valueOf(payCodeStocks.get(i).getName());
+                        dataList[i][13] = String.valueOf(payCodeStocks.get(i).getRegenerate());
+                    }
 
         ExportExcelUtil.ExportWithResponse(sheetName, titleName, fileName,
                 columnNumber, columnWidth, columnName, dataList, response);

+ 2 - 0
src/main/resources/spring/appWebService.xml

@@ -30,6 +30,7 @@
     <!--自动开始房间定时任务-->
     <bean id="houseInfoTask" class="com.izouma.awesomeadmin.web.HouseInfoController"></bean>
     <bean id="payCodeOrderTask" class="com.izouma.awesomeadmin.web.PayCodeOrderController"></bean>
+    <bean id="payCodeInfoTask" class="com.izouma.awesomeadmin.web.PayCodeInfoController"></bean>
 
     <task:scheduled-tasks>
         <task:scheduled ref="houseInfoTask" method="autoBegin" cron="0 0/1 * * * ? "/>
@@ -38,6 +39,7 @@
         <task:scheduled ref="houseInfoTask" method="updateToAnalysis" cron="0 0/2 * * * ? "/>
         <task:scheduled ref="houseInfoTask" method="autoSettlement" cron="0 0/3 * * * ? "/>
         <task:scheduled ref="payCodeOrderTask" method="autoCancel" cron="0 0/3 * * * ? "/>
+        <task:scheduled ref="payCodeInfoTask" method="autoOvertime" cron="0 0 0 * * ? "/>
     </task:scheduled-tasks>
 
 

+ 12 - 0
src/main/vue/src/pages/PayCodeInfo.vue

@@ -29,6 +29,12 @@
                            :disabled="'useFlag'==subColumn">
                 </el-switch>
             </el-form-item>
+            <el-form-item prop="autoTimeover" label="自动过期">
+                <el-switch
+                           v-model="formData.autoTimeover"
+                           :disabled="'autoTimeover'==subColumn">
+                </el-switch>
+            </el-form-item>
             <el-form-item prop="remark" label="备注">
                 <el-input v-model="formData.remark" :disabled="'remark'==subColumn"></el-input>
             </el-form-item>
@@ -71,6 +77,8 @@ export default {
 
                         this.formData.useFlag =
                             this.formData.useFlag == 'Y' ? true : false;
+                        this.formData.autoTimeover =
+                            this.formData.autoTimeover == 'Y' ? true : false;
                     }
                 });
         } else {
@@ -90,6 +98,9 @@ export default {
                 payType: [
                     { required: true, message: '请输入 类型', trigger: 'blur' },
                 ],
+                limitMoney: [
+                    { required: true, message: '请输入 限制金额', trigger: 'blur' },
+                ],
                 image: [
                     {
                         required: true,
@@ -189,6 +200,7 @@ export default {
             let data = { ...this.formData };
 
             data.useFlag = this.formData.useFlag ? 'Y' : 'N';
+            data.autoTimeover = this.formData.autoTimeover ? 'Y' : 'N';
 
             this.$http
                 .post({

+ 11 - 0
src/main/vue/src/pages/PayCodeInfos.vue

@@ -94,6 +94,12 @@
                              label="可用"
                              min-width="100">
             </el-table-column>
+            <el-table-column
+                             v-if="isColumnShow('autoTimeover')"
+                             prop="autoTimeover"
+                             label="自动过期"
+                             min-width="100">
+            </el-table-column>
 
             <el-table-column
                              v-if="isColumnShow('remark')"
@@ -277,6 +283,11 @@ export default {
                     value: 'useFlag',
                     show: true,
                 },
+                {
+                    label: '自动过期',
+                    value: 'autoTimeover',
+                    show: true,
+                },
                 {
                     label: '备注',
                     value: 'remark',

+ 9 - 0
src/main/vue/src/pages/PayCodeStock.vue

@@ -29,6 +29,12 @@
                            :disabled="'useFlag'==subColumn">
                 </el-switch>
             </el-form-item>
+            <el-form-item prop="regenerate" label="再生">
+                <el-switch
+                           v-model="formData.regenerate"
+                           :disabled="'regenerate'==subColumn">
+                </el-switch>
+            </el-form-item>
             <el-form-item prop="remark" label="备注">
                 <el-input v-model="formData.remark" :disabled="'remark'==subColumn"></el-input>
             </el-form-item>
@@ -74,6 +80,8 @@ export default {
 
                         this.formData.useFlag =
                             this.formData.useFlag == 'Y' ? true : false;
+                        this.formData.regenerate =
+                            this.formData.regenerate == 'Y' ? true : false;
                     }
                 });
         } else {
@@ -178,6 +186,7 @@ export default {
             let data = { ...this.formData };
 
             data.useFlag = this.formData.useFlag ? 'Y' : 'N';
+            data.regenerate = this.formData.regenerate ? 'Y' : 'N';
 
             this.$http
                 .post({

+ 11 - 0
src/main/vue/src/pages/PayCodeStocks.vue

@@ -94,6 +94,12 @@
                              label="可用"
                              min-width="100">
             </el-table-column>
+            <el-table-column
+                             v-if="isColumnShow('regenerate')"
+                             prop="regenerate"
+                             label="再生"
+                             min-width="100">
+            </el-table-column>
 
             <el-table-column
                              v-if="isColumnShow('remark')"
@@ -292,6 +298,11 @@ export default {
                     value: 'useFlag',
                     show: true,
                 },
+                {
+                    label: '再生',
+                    value: 'regenerate',
+                    show: true,
+                },
                 {
                     label: '备注',
                     value: 'remark',