From 7e389247b3b2877c12f1eaae6e33c9c33e91d2dd Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期五, 08 一月 2021 18:41:59 +0800
Subject: [PATCH] 活动添加后台完善

---
 service-daylucky/src/main/resources/static/activity-add.html |  455 ++++++++++++++++++++++++++++++++++----------------------
 1 files changed, 273 insertions(+), 182 deletions(-)

diff --git a/service-daylucky/src/main/resources/static/activity-add.html b/service-daylucky/src/main/resources/static/activity-add.html
index 812f8fc..5bad625 100644
--- a/service-daylucky/src/main/resources/static/activity-add.html
+++ b/service-daylucky/src/main/resources/static/activity-add.html
@@ -20,6 +20,8 @@
     <!--[if lt IE 9]>
     <script src="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>
     <script src="https://cdn.staticfile.org/respond.js/1.4.2/respond.min.js"></script>
+    <script src="js/http.js"></script>
+
     <![endif]-->
 
     <style>
@@ -137,7 +139,7 @@
 
                             </div>
                         </div>
-                        <button class="layui-btn layui-btn-radius layui-btn-normal"
+                        <button class="layui-btn layui-btn-radius layui-btn-normal hidden"
                                 id="saveActivityInfo" lay-submit="">淇濆瓨
                         </button>
 
@@ -192,7 +194,7 @@
                             </div>
                         </div>
                     </div>
-                    <button class="layui-btn layui-btn-radius layui-btn-normal" id="saveAwardInfo" lay-submit="">淇濆瓨
+                    <button class="layui-btn layui-btn-radius layui-btn-normal hidden" id="saveAwardInfo" lay-submit="">淇濆瓨
                     </button>
 
 
@@ -259,7 +261,7 @@
                               autocomplete="off" class="layui-textarea" maxlength="256"></textarea></div>
                     </div>
 
-                    <button class="layui-btn layui-btn-radius layui-btn-normal" id="saveJoinInfo"
+                    <button class="layui-btn layui-btn-radius layui-btn-normal hidden" id="saveJoinInfo"
                             lay-filter="save-activity" lay-submit="">淇濆瓨
                     </button>
                 </form>
@@ -307,8 +309,7 @@
                         </div>
                     </div>
 
-                    <button class="layui-btn layui-btn-radius layui-btn-normal" id="saveOpenInfo"
-                            lay-filter="save-activity" lay-submit="">淇濆瓨
+                    <button class="layui-btn layui-btn-radius layui-btn-normal hidden" id="saveOpenInfo" lay-submit="">淇濆瓨
                     </button>
                 </form>
             </div>
@@ -316,133 +317,148 @@
 
         <button class="layui-btn layui-btn-warm layui-btn-lg" v-on:click="submit">绔嬪嵆鎻愪氦</button>
     </div>
-
-
 </div>
+
+<script src="js/lodash.js"></script>
 <script src="js/common.js"></script>
 
-<script>
-    //楠岃瘉绠$悊鍣�
-    var validManager = {
-        //楠岃瘉鎶藉淇℃伅
-        verifyActivityInfo() {
-            const field = common.layuiForm.val('form-activity-info');
-            if (!$("#poster").attr("src")) {
-                common.notify.error("璇烽�夋嫨灏侀潰鍥剧墖");
-                return false;
-            }
-
-            //鍒ゆ柇鏉′欢
-            if (field.showBanner == 1 && $(".banner").find("img").length == 0) {
-                common.notify.error("璇烽�夋嫨banner鍥剧墖");
-                return false;
-            }
-
-            if (field.showBanner == 1 && $(".banner").find("img").length > 3) {
-                common.notify.error("banner鍥炬渶澶�3寮�");
-                return false;
-            }
-            return true;
-        },
-        //楠岃瘉濂栧搧淇℃伅
-        verifyAwardInfo() {
-            console.log("verifyAwardInfo");
-            if (app.tempAwardsList == null || app.tempAwardsList.length == 0) {
-                common.notify.error("璇锋坊鍔犲椤�");
-                return false;
-            }
-            var hasAward = false;
-            for (var i = 0; i < app.tempAwardsList.length; i++) {
-                if (app.tempAwardsList[i].data && app.tempAwardsList[i].data.type) {
-                    hasAward = true;
-                    break;
-                }
-            }
-
-            if (!hasAward) {
-                common.notify.error("璇烽�夋嫨濂栭」绫诲瀷");
-                return false;
-            }
-
-            const field = common.layuiForm.val('form-award-info');
-
-            return true;
-        },
-        //楠岃瘉鍙備笌淇℃伅
-        verifyJoinInfo() {
-            const field = common.layuiForm.val('form-join-info');
-            console.log(field);
-            if (!app.joinInfo.adInfo.data) {
-                common.notify.error("璇烽�夋嫨鍙備笌鏉′欢-璺宠浆閾捐矾");
-                return false;
-            }
-
-
-            return true;
-        },
-        //楠岃瘉寮�濂栨潯浠�
-        verifyOpenInfo() {
-            const field = common.layuiForm.val('form-open-info');
-            console.log(field);
-            if (parseInt(field.minPersonCount) < 1000 || parseInt(field.minPersonCount) > 10000) {
-                common.notify.error("鑷冲皯鍙備笌浜烘暟鐨勮寖鍥翠负锛�1000-10000");
-                return false;
-            }
-
-            if (parseInt(field.day) < 1 || parseInt(field.day) > 7) {
-                common.notify.error("娲诲姩鏈夋晥鏈熺殑鑼冨洿涓猴細1-7");
-                return false;
-            }
-
-            return true;
-        },
-        verify(es) {
-
-            for (var i = 0; i < es.length; i++) {
-                if (!es[i]()) {
-                    return false;
-                }
-            }
-            return true;
-        },
-        verifyAll() {
-            return this.verify([this.verifyActivityInfo, this.verifyAwardInfo, this.verifyJoinInfo, this.verifyOpenInfo]);
-        }
-    };
-
-    var formManager = {
-
-        //淇濆瓨鍒颁复鏃跺彉閲�
-        saveActivityInfoToTemp() {
-            app.temp.activity = app.activity;
-        },
-        saveAwardInfoToTemp() {
-            app.temp.awardInfo = app.tempAwardsList;
-        },
-        saveJoinInfoToTemp() {
-            //璧嬪��
-            const field = common.layuiForm.val('form-join-info');
-            var joinInfo = app.joinInfo;
-            joinInfo.must = field.must;
-            joinInfo.desc = field.desc;
-            app.temp.joinInfo = joinInfo;
-        },
-        saveOpenInfoToTemp() {
-            const field = common.layuiForm.val('form-open-info');
-            var openInfo = app.openInfo;
-            for (key in field) {
-                openInfo[key] = field[key];
-            }
-            app.temp.openInfo = openInfo;
-        },
-        saveToTemp() {
-            this.saveActivityInfoToTemp();
-            this.saveAwardInfoToTemp();
-            this.saveJoinInfoToTemp();
-            this.saveOpenInfoToTemp();
+<script>;
+//楠岃瘉绠$悊鍣�
+var validManager = {
+    //楠岃瘉鎶藉淇℃伅
+    verifyActivityInfo() {
+        console.log("楠岃瘉鎶藉淇℃伅");
+        const field = common.layuiForm.val('form-activity-info');
+        if (!$("#poster").attr("src")) {
+            common.notify.error("璇烽�夋嫨灏侀潰鍥剧墖");
+            return false;
         }
 
-    };
+        //鍒ゆ柇鏉′欢
+        if (field.showBanner == 1 && $(".banner").find("img").length == 0) {
+            common.notify.error("璇烽�夋嫨banner鍥剧墖");
+            return false;
+        }
+
+        if (field.showBanner == 1 && $(".banner").find("img").length > 3) {
+            common.notify.error("banner鍥炬渶澶�3寮�");
+            return false;
+        }
+        return true;
+    },
+    //楠岃瘉濂栧搧淇℃伅
+    verifyAwardInfo() {
+        console.log("楠岃瘉濂栧搧淇℃伅");
+        if (app.tempAwardsList == null || app.tempAwardsList.length == 0) {
+            common.notify.error("璇锋坊鍔犲椤�");
+            return false;
+        }
+        var hasAward = false;
+        for (var i = 0; i < app.tempAwardsList.length; i++) {
+            if (app.tempAwardsList[i].data && app.tempAwardsList[i].data.type) {
+                hasAward = true;
+                break;
+            }
+        }
+
+        if (!hasAward) {
+            common.notify.error("璇烽�夋嫨濂栭」绫诲瀷");
+            return false;
+        }
+
+        const field = common.layuiForm.val('form-award-info');
+
+        return true;
+    },
+    //楠岃瘉鍙備笌淇℃伅
+    verifyJoinInfo() {
+        console.log("楠岃瘉鍙備笌鏉′欢");
+        const field = common.layuiForm.val('form-join-info');
+        console.log(field);
+        if (!app.joinInfo.adInfo.data) {
+            common.notify.error("璇烽�夋嫨鍙備笌鏉′欢-璺宠浆閾捐矾");
+            return false;
+        }
+
+
+        return true;
+    },
+    //楠岃瘉寮�濂栨潯浠�
+    verifyOpenInfo() {
+        console.log("楠岃瘉寮�濂栨潯浠�");
+        const field = common.layuiForm.val('form-open-info');
+        console.log(field);
+        alert(parseInt(field.minPersonCount));
+        alert(parseInt(field.day));
+
+        if (!parseInt(field.minPersonCount)) {
+            common.notify.error("璇峰~鍐欐纭殑鍙備笌浜烘暟");
+            return false;
+        }
+
+        if (!parseInt(field.day)) {
+            common.notify.error("璇峰~鍐欐纭殑澶╂暟");
+            return false;
+        }
+
+        if (parseInt(field.minPersonCount) < 1000 || parseInt(field.minPersonCount) > 10000) {
+            common.notify.error("鑷冲皯鍙備笌浜烘暟鐨勮寖鍥翠负锛�1000-10000");
+            return false;
+        }
+
+        if (parseInt(field.day) < 1 || parseInt(field.day) > 7) {
+            common.notify.error("娲诲姩鏈夋晥鏈熺殑鑼冨洿涓猴細1-7");
+            return false;
+        }
+
+        return true;
+    },
+    verify(es) {
+
+        for (var i = 0; i < es.length; i++) {
+            if (!es[i]()) {
+                return false;
+            }
+        }
+        return true;
+    },
+    verifyAll() {
+        return this.verify([this.verifyActivityInfo, this.verifyAwardInfo, this.verifyJoinInfo, this.verifyOpenInfo]);
+    }
+};
+
+var formManager = {
+
+    //淇濆瓨鍒颁复鏃跺彉閲�
+    saveActivityInfoToTemp() {
+        app.temp.activity = app.activity;
+    },
+    saveAwardInfoToTemp() {
+        app.temp.awardInfo = app.tempAwardsList;
+    },
+    saveJoinInfoToTemp() {
+        //璧嬪��
+        const field = common.layuiForm.val('form-join-info');
+        var joinInfo = app.joinInfo;
+        joinInfo.must = field.must;
+        joinInfo.desc = field.desc;
+        app.temp.joinInfo = joinInfo;
+    },
+    saveOpenInfoToTemp() {
+        const field = common.layuiForm.val('form-open-info');
+        var openInfo = app.openInfo;
+        for (key in field) {
+            openInfo[key] = field[key];
+        }
+        app.temp.openInfo = openInfo;
+    },
+    saveToTemp() {
+        this.saveActivityInfoToTemp();
+        this.saveAwardInfoToTemp();
+        this.saveJoinInfoToTemp();
+        this.saveOpenInfoToTemp();
+    }
+};
 
 </script>
 
@@ -450,25 +466,40 @@
     //鏂囦欢涓婁紶鍒濆鍖�
     var uploadPoster;
     var uploadBanner;
+    var posterFileList;
     var bannerFileList;
     common.initLayui(function () {
         //layui鐩稿叧鍒濆鍖栨垚鍔�
         app.initData();
 
-        uploadPoster = common.initUploadImagePlugin({
+
+        const uploadPosterParams = {
             elem: "#choicePoster",
             showElem: "#poster",
             uploadUrl: "/admin/upload/image?from=activity",
             dir: 'poster',
             field: "image",
+            choose(obj) {
+                var files = posterFileList = obj.pushFile();
+                obj.preview(function (index, file, result) {
+                    $("#poster").attr("src", result);
+                });
+            },
             uploadSuccess: function (res) {
                 app.posterUploadSuccess(res.data);
+                //閲嶇疆鏂囦欢浼犺緭
+                for (key in posterFileList) {
+                    delete posterFileList[key];
+                }
             }
-        });
+        };
+
+
+        uploadPoster = common.initUploadImagePlugin(uploadPosterParams);
 
         var bannerUrlList = new Array();
 
-        uploadBanner = common.initUploadImagePlugin({
+        var uploadBannerParams = {
             elem: "#choiceBanner",
             uploadUrl: "/admin/upload/image?from=activity",
             dir: 'banner',
@@ -496,12 +527,18 @@
                     count++;
                 }
                 bannerUrlList.push(res.data);
+            },
+            allDone: function (res) {
                 //鏂囦欢涓婁紶瀹屾瘯
-                if (bannerUrlList.length == count) {
-                    app.bannerUploadSuccess(bannerUrlList);
+                app.bannerUploadSuccess(bannerUrlList);
+                for (key in bannerFileList) {
+                    delete bannerFileList[key];
                 }
             }
-        });
+        }
+
+        uploadBanner = common.initUploadImagePlugin(uploadBannerParams);
+        console.log(uploadBanner);
 
     });
 
@@ -520,8 +557,10 @@
         data: {
             activity: {},
             tempAwardsList: [],
-            openInfo: {},
-            joinInfo: {adInfo: {}},
+            openInfo: {
+            },
+            joinInfo: {
+                adInfo: {}},
             temp: {//涓存椂鏁版嵁锛岀敤浜庢彁浜ゅ埌鏈嶅姟绔�
 
             },
@@ -547,26 +586,35 @@
             this.addAward();
         },
         methods: {
+            //璁剧疆鏁版嵁
+            setTempData(temp) {
+                //娲诲姩淇℃伅璧嬪��(娣辨嫹璐�)
+                this.activity = _.cloneDeep(temp.activity);
+                this.tempAwardsList = _.cloneDeep(temp.awardInfo);
+                this.openInfo = _.cloneDeep(temp.openInfo);
+                this.joinInfo = _.cloneDeep(temp.joinInfo);
+            },
             //鍒濆鍖栨暟鎹�
             initData() {
                 $this = this;
                 /**************鍒濆鍖栨娊濂栦俊鎭�************/
-                if (this.activity.poster)
-                    $("#poster").attr("src", this.activity.poster);
-                if (this.activity.banner && this.activity.banner.length > 0) {
-                    for (var i = 0; i < this.activity.banner.length; i++) {
-                        var url = this.activity.banner[i].img;
-                        var item = getBannerItemHtml(url);
-                        item.find("i").on('click', function () {
-                            //鍒犻櫎褰撳墠鏁版嵁
-                            app.activity.banner.splice(i, 1);
-                            item.remove();
-                        });
-                        $(".banner").append(item);
-                    }
+
+                //鍒犻櫎鎵�鏈夐�夋嫨鐨勬枃浠�
+                for (key in posterFileList) {
+                    delete posterFileList[key];
                 }
 
-                //閫夋嫨banner
+                for (key in bannerFileList) {
+                    delete bannerFileList[key];
+                }
+
+
+                $(".banner").empty();
+                if (this.activity.poster)
+                    $("#poster").attr("src", this.activity.poster);
+
+
+                //閫夋嫨banner鐩戝惉
                 common.layuiForm.on('radio(banner)', function (data) {
                     if (data.value == 1) {
                         $(".banner-container").css("display", "block");
@@ -575,11 +623,31 @@
                     }
                 });
 
+                if (this.activity.bannerList && this.activity.bannerList.length > 0) {
+                    for (var i = 0; i < this.activity.bannerList.length; i++) {
+                        var url = this.activity.bannerList[i].url;
+                        var item = getBannerItemHtml(url);
+                        item.find("i").on('click', function () {
+                            //鍒犻櫎褰撳墠鏁版嵁
+                            app.activity.bannerList.splice(i, 1);
+                            item.remove();
+                        });
+                        $(".banner").append(item);
+                    }
+                    //璁剧疆閫夐」
+                    $("input[name=showBanner][value=1]").prop("checked", "true");
+                } else {
+                    console.log("閫夋嫨banner");
+                    $("input[name=showBanner][value=0]").prop("checked", "true");
+                }
+
                 common.layuiForm.on('submit(form-activity-info)',
                     function (data) {
                         field = common.layuiForm.val('form-activity-info');
-                        if (!validManager.verifyActivityInfo())
+                        if (!validManager.verifyActivityInfo()) {
+                            app.finishSubmit();
                             return false;
+                        }
                         // 鏁版嵁鏆傚瓨
                         app.tempField.activity = field;
                         //鏈夊皝闈㈠浘
@@ -595,8 +663,14 @@
                 common.layuiForm.on('submit(form-award-info)',
                     function (data) {
                         console.log("鎻愪氦濂栧搧淇℃伅");
-                        if (!validManager.verifyAwardInfo())
+                        if (!validManager.verifyAwardInfo()) {
+                            app.finishSubmit();
                             return false;
+                        }
+
+                        //鏆傚瓨
+                        formManager.saveAwardInfoToTemp()
+
                         //璧嬪��
                         $("#saveJoinInfo").click();
 
@@ -607,28 +681,46 @@
                 common.layuiForm.on('submit(form-join-info)',
                     function (data) {
                         console.log("鎻愪氦鍙備笌鏉′欢");
-                        if (!validManager.verifyJoinInfo())
+                        if (!validManager.verifyJoinInfo()) {
+                            app.finishSubmit();
                             return false;
-                        $("#saveOpenInfo").click();
+                        }
+                        //鏆傚瓨
+                        formManager.saveJoinInfoToTemp();
+                        $("form[lay-filter=form-open-info]").submit()
                         return false;
                     });
+
+                //鍒濆鍖栬〃鍗曠殑鍊�
+                common.layuiForm.val("form-join-info", this.joinInfo);
+
 
                 /**************鍒濆鍖栧紑濂栨潯浠�************/
                 common.layuiForm.on('submit(form-open-info)',
                     function (data) {
                         console.log("鎻愪氦寮�濂栨潯浠�");
-                        if (!validManager.verifyOpenInfo())
+                        if (!validManager.verifyOpenInfo()) {
+                            app.finishSubmit();
                             return false;
-
-
+                        }
+                        //鏆傚瓨
+                        formManager.saveOpenInfoToTemp();
+                        app.finishSubmit(true);
                         return false;
                     });
+                common.layuiForm.val("form-open-info", this.openInfo);
+
+                common.layuiForm.render();
             },
 
             //灏侀潰鍥句笂浼犳垚鍔�
             posterUploadSuccess(res) {
                 console.log("灏侀潰鍥句笂浼犳垚鍔�");
                 console.log(res);
+                if (res) {//涓婁紶浜嗘枃浠�
+                    $("#poster").attr("src", res);
+                    this.activity.poster = res;
+                }
                 //涓婁紶鏂囦欢
                 var bannerEmpty = true;
                 for (key in bannerFileList) {
@@ -657,32 +749,23 @@
                         this.activity.bannerList.push(banner);
                     }
                 }
+
+                //鏆傚瓨娲诲姩淇℃伅
+                formManager.saveActivityInfoToTemp();
+
                 //鎻愪氦濂栭」
                 $("#saveAwardInfo").click();
 
             },
 
             //娣诲姞
-            requestAdd: function () {
-                //缁勮鏁版嵁
-                if (this.data.awardsList.length == 0) {
-                    return;
-                }
-                if (this.data.poster == null || this.data.poster.length == 0) {
-                    return;
-                }
-
+            requestAdd: function (data) {
                 var params = {
-                    activity: this.data.activity,
-                    awardsList: this.data.awardsList,
-                    openInfo: this.data.openInfo,
-                    adInfo: this.data.adInfo,
+                    data: data,
                 }
 
-
-                this.activity.poster = this.data.poster;
                 //鍙戝紓姝ワ紝鎶婃暟鎹彁浜ょ粰php
-                ksapp.post('/admin/api/app/add', params, function (res) {
+                ksapp.post('/admin/activity/addActivity', params, function (res) {
                     if (res.code == 0) {
                         layer.alert("澧炲姞鎴愬姛", {
                                 icon: 6
@@ -706,17 +789,24 @@
                 if (!validManager.verifyAll()) {
                     return;
                 }
+                var loading = layer.load(0, {shade: false});
+                app.submitLoading = loading;
                 //瑙﹀彂琛ㄥ崟鎻愪氦
                 $("#saveActivityInfo").click();
-                //淇濆瓨涓存椂鍙橀噺
-                formManager.saveToTemp();
-                console.log("涓存椂鍙橀噺")
-                //灏嗘暟鎹彁浜ゅ埌鏈嶅姟鍣�
-                var temp = this.temp;
-
-
-
-                console.log(this.temp);
+            },
+            finishSubmit: function (finish) {
+                console.log(JSON.stringify(this.temp));
+                if (app.submitLoading) {
+                    layer.close(app.submitLoading)
+                }
+                //鎵�鏈夋暟鎹凡缁忓彇瀹�
+                if (finish) {
+                    console.log("鑾峰彇鍒扮殑缁撴灉");
+                    console.log(this.temp);
+                    app.setTempData(this.temp);
+                    app.initData();
+                    //this.requestAdd(JSON.stringify(this.temp));
+                }
             },
 
             /**
@@ -837,9 +927,10 @@
                     title: params.title,
                     width: 500,
                     height: 400,
-                    content: params.url + "?data=" + encodeURIComponent(JSON.stringify(award)),
+                    content: params.url + "?data=" + escape(JSON.stringify(award)),
                     submit(res) {
                         var award = app.tempAwardsList[index];
+                        award.type = "alipayRedPackage";
                         var data = award.data;
                         data.total = res.total;
                         data.count = res.count;

--
Gitblit v1.8.0