lchao 10 月之前
父节点
当前提交
321b678914

+ 8 - 0
zhsq_qk-admin/src/main/java/zhsq_qk/web/controller/system/QkJczlDiscountController.java

@@ -95,4 +95,12 @@ public class QkJczlDiscountController extends BaseController {
     public AjaxResult remove(@PathVariable Long[] ids) {
         return toAjax(qkJczlDiscountService.deleteQkJczlDiscountByIds(ids));
     }
+
+    /**
+     * 查询优惠活动可视化
+     */
+    @GetMapping("/discountList")
+    public AjaxResult discountList() {
+        return success(qkJczlDiscountService.discountList());
+    }
 }

+ 3 - 0
zhsq_qk-system/src/main/java/zhsq_qk/system/mapper/QkJczlDiscountMapper.java

@@ -3,6 +3,7 @@ package zhsq_qk.system.mapper;
 import java.util.List;
 
 import zhsq_qk.system.domain.QkJczlDiscount;
+import zhsq_qk.system.domain.vo.QkJczlRecruitVO;
 
 /**
  * 优惠活动Mapper接口
@@ -58,4 +59,6 @@ public interface QkJczlDiscountMapper {
      * @return 结果
      */
     public int deleteQkJczlDiscountByIds(Long[] ids);
+
+    List<QkJczlRecruitVO> discountList();
 }

+ 3 - 0
zhsq_qk-system/src/main/java/zhsq_qk/system/service/IQkJczlDiscountService.java

@@ -1,6 +1,7 @@
 package zhsq_qk.system.service;
 
 import java.util.List;
+import java.util.Map;
 
 import zhsq_qk.system.domain .QkJczlDiscount;
 
@@ -58,4 +59,6 @@ public interface IQkJczlDiscountService {
      * @return 结果
      */
     public int deleteQkJczlDiscountById(Long id);
+
+    Map<String,List<String>> discountList();
 }

+ 18 - 1
zhsq_qk-system/src/main/java/zhsq_qk/system/service/impl/QkJczlDiscountServiceImpl.java

@@ -1,9 +1,14 @@
 package zhsq_qk.system.service.impl;
 
+import java.util.HashMap;
 import java.util.List;
-        import zhsq_qk.common.utils.DateUtils;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+import zhsq_qk.common.utils.DateUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import zhsq_qk.system.domain.vo.QkJczlRecruitVO;
 import zhsq_qk.system.mapper.QkJczlDiscountMapper;
 import zhsq_qk.system.domain.QkJczlDiscount;
 import zhsq_qk.system.service.IQkJczlDiscountService;
@@ -86,4 +91,16 @@ public class QkJczlDiscountServiceImpl implements IQkJczlDiscountService {
     public int deleteQkJczlDiscountById(Long id) {
         return qkJczlDiscountMapper.deleteQkJczlDiscountById(id);
     }
+
+    @Override
+    public Map<String, List<String>> discountList(){
+        Map<String, List<String>> resultMap = new HashMap<>();
+        List<QkJczlRecruitVO> list = qkJczlDiscountMapper.discountList();
+        List<String> months = list.stream().map(QkJczlRecruitVO::getMc).collect(Collectors.toList());
+        List<String> counts = list.stream().map(QkJczlRecruitVO::getCm).collect(Collectors.toList());
+        // 将结果放入 map 中
+        resultMap.put("labelData", months);
+        resultMap.put("recruitData", counts);
+        return resultMap;
+    }
 }

+ 52 - 33
zhsq_qk-system/src/main/resources/mapper/system/QkJczlDiscountMapper.xml

@@ -20,6 +20,11 @@
         <result property="merchantName" column="merchant_name"/>
     </resultMap>
 
+    <resultMap type="QkJczlRecruitVO" id="QkJczlRecruitVOResult">
+        <result property="cm" column="cm"/>
+        <result property="mc" column="mc"/>
+    </resultMap>
+
 
     <sql id="selectQkJczlDiscountVo">
         select id, activity_type, product_type, activity_title, business, details, address, create_by, create_time, update_by, update_time, merchant_id
@@ -138,39 +143,39 @@
     <update id="updateQkJczlDiscount" parameterType="QkJczlDiscount">
         update qk_jczl_discount
         <trim prefix="SET" suffixOverrides=",">
-                    <if test="activityType != null">activity_type =
-                        #{activityType},
-                    </if>
-                    <if test="productType != null">product_type =
-                        #{productType},
-                    </if>
-                    <if test="activityTitle != null">activity_title =
-                        #{activityTitle},
-                    </if>
-                    <if test="business != null">business =
-                        #{business},
-                    </if>
-                    <if test="details != null">details =
-                        #{details},
-                    </if>
-                    <if test="address != null">address =
-                        #{address},
-                    </if>
-                    <if test="createBy != null">create_by =
-                        #{createBy},
-                    </if>
-                    <if test="createTime != null">create_time =
-                        #{createTime},
-                    </if>
-                    <if test="updateBy != null">update_by =
-                        #{updateBy},
-                    </if>
-                    <if test="updateTime != null">update_time =
-                        #{updateTime},
-                    </if>
-                    <if test="merchantId != null">merchant_id =
-                        #{merchantId},
-                    </if>
+            <if test="activityType != null">activity_type =
+                #{activityType},
+            </if>
+            <if test="productType != null">product_type =
+                #{productType},
+            </if>
+            <if test="activityTitle != null">activity_title =
+                #{activityTitle},
+            </if>
+            <if test="business != null">business =
+                #{business},
+            </if>
+            <if test="details != null">details =
+                #{details},
+            </if>
+            <if test="address != null">address =
+                #{address},
+            </if>
+            <if test="createBy != null">create_by =
+                #{createBy},
+            </if>
+            <if test="createTime != null">create_time =
+                #{createTime},
+            </if>
+            <if test="updateBy != null">update_by =
+                #{updateBy},
+            </if>
+            <if test="updateTime != null">update_time =
+                #{updateTime},
+            </if>
+            <if test="merchantId != null">merchant_id =
+                #{merchantId},
+            </if>
         </trim>
         where id = #{id}
     </update>
@@ -186,4 +191,18 @@
             #{id}
         </foreach>
     </delete>
+
+    <select id="discountList" parameterType="QkJczlRecruitVO" resultMap="QkJczlRecruitVOResult">
+        SELECT SUM(1) as cm,
+            MONTH (
+            create_time) as mc
+        FROM
+            qk_jczl_discount
+        WHERE
+            YEAR ( create_time ) = YEAR (
+            CURDATE())
+        GROUP BY
+            MONTH (
+            create_time)
+    </select>
 </mapper>

+ 6 - 1
zhsq_qk-ui/src/views/system/discount/index.vue

@@ -175,6 +175,7 @@
 <script>
 import {addDiscount, delDiscount, updateDiscount, getDiscount, listDiscount} from "@/api/system/discount";
 import {listAllMerchant} from "@/api/system/merchant";
+import {checkNonnegativeInteger} from "@/api/system/rules";
 
 export default {
   name: "Discount",
@@ -215,7 +216,11 @@ export default {
       // 表单参数
       form: {},
       // 表单校验
-      rules: {}
+      rules: {
+        activityTitle: [
+          { required: true, message: "标题不能为空", trigger: "change" },
+        ],
+      }
     };
   },
   created() {

+ 5 - 1
zhsq_qk-ui/src/views/system/merchant/index.vue

@@ -167,7 +167,11 @@ export default {
       // 表单参数
       form: {},
       // 表单校验
-      rules: {}
+      rules: {
+        merchantName: [
+          { required: true, message: "商户名称不能为空", trigger: "change" },
+        ],
+      }
     };
   },
   created() {

+ 5 - 1
zhsq_qk-ui/src/views/system/recruit/index.vue

@@ -190,7 +190,11 @@ export default {
       // 表单参数
       form: {},
       // 表单校验
-      rules: {}
+      rules: {
+        recruitmentTitle: [
+          { required: true, message: "标题不能为空", trigger: "change" },
+        ],
+      }
     };
   },
   created() {