Sanakey
2021-06-05 61abc9b654f78019a974c68916eb5718bc1c2992
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __generator = (this && this.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (_) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
Object.defineProperty(exports, "__esModule", { value: true });
Page({
    data: {
        selectedStoreIdList: [],
        selectedStoreList: [],
        storeList: []
    },
    onLoad: function () {
        return __awaiter(this, void 0, void 0, function () {
            var isVip, eventChannel;
            var _this = this;
            return __generator(this, function (_a) {
                switch (_a.label) {
                    case 0:
                        isVip = !wx.globalData.loginData.isExpired;
                        this.setData({
                            isVip: isVip
                        });
                        return [4, this.getStoreList()];
                    case 1:
                        _a.sent();
                        eventChannel = this.getOpenerEventChannel();
                        eventChannel.on('getStoreListFromPromotionsPage', function (data) {
                            console.log('获取新建活动时选中的门店', data);
                            _this.handleSelectedStoreList(data.selectedStoreIdList);
                        });
                        return [2];
                }
            });
        });
    },
    onShow: function () {
        return __awaiter(this, void 0, void 0, function () {
            return __generator(this, function (_a) {
                return [2];
            });
        });
    },
    handleSelectedStoreList: function (list) {
        var storeList = this.data.storeList;
        console.log('handleSelectedStoreList', storeList);
        var selectedStoreIdList = [];
        list.forEach(function (id) {
            storeList.forEach(function (item) {
                if (item.docCode == id) {
                    selectedStoreIdList.push(id);
                }
            });
        });
        console.log(selectedStoreIdList);
        this.setData({
            selectedStoreIdList: selectedStoreIdList
        });
    },
    selectStore: function (event) {
        console.log(event);
        this.setData({
            selectedStoreIdList: event.detail
        });
    },
    toggle: function (event) {
        var index = event.currentTarget.dataset.index;
        var checkbox = this.selectComponent(".checkboxes-" + index);
        checkbox.toggle();
        console.log(index);
    },
    toggle2: function (event) {
        console.log(event);
    },
    goStoreEdit: function (event) {
        var _this = this;
        var doccode = event.currentTarget.dataset.doccode || '';
        wx.navigateTo({
            url: "../storeEdit/storeEdit?doccode=" + doccode,
            success: function (res) {
                var selectedStoreIdList = _this.data.selectedStoreIdList;
                res.eventChannel.emit('getStoreListFromStoreListPage', {
                    selectedStoreIdList: selectedStoreIdList
                });
            },
            events: {
                getSelectedStoreIdListFromStoreEditPage: function (data) { return __awaiter(_this, void 0, void 0, function () {
                    return __generator(this, function (_a) {
                        switch (_a.label) {
                            case 0:
                                console.log('获取门店删除或编辑后选中的data', data);
                                return [4, this.getStoreList()];
                            case 1:
                                _a.sent();
                                this.setData({
                                    selectedStoreIdList: data.selectedStoreIdList,
                                });
                                return [2];
                        }
                    });
                }); }
            }
        });
    },
    onSubmit: function () {
        var selectedStoreIdList = this.data.selectedStoreIdList;
        console.log('选中的门店id与列表', selectedStoreIdList);
        var eventChannel = this.getOpenerEventChannel();
        eventChannel.emit('getSelectedStoreList', {
            selectedStoreIdList: selectedStoreIdList,
        });
        wx.navigateBack();
    },
    getStoreList: function () {
        return __awaiter(this, void 0, void 0, function () {
            var _a, error, result;
            return __generator(this, function (_b) {
                switch (_b.label) {
                    case 0: return [4, wx.$utils.to(wx.$http.request({
                            url: "/shopping/customerStore.do?m=getCustomerStoreList",
                        }))];
                    case 1:
                        _a = _b.sent(), error = _a[0], result = _a[1];
                        if (error) {
                            console.log(error);
                            return [2];
                        }
                        console.log(result);
                        this.setData({
                            storeList: result.list,
                        });
                        wx.globalData.storeList = result.list;
                        return [2];
                }
            });
        });
    }
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmVMaXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic3RvcmVMaXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxJQUFJLENBQUM7SUFDSCxJQUFJLEVBQUU7UUFDSixtQkFBbUIsRUFBQyxFQUFFO1FBQ3RCLGlCQUFpQixFQUFDLEVBQVM7UUFDM0IsU0FBUyxFQUFDLEVBQVM7S0FDcEI7SUFDTSxNQUFNOzs7Ozs7O3dCQUNQLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQzt3QkFDL0MsSUFBSSxDQUFDLE9BQU8sQ0FBQzs0QkFDWCxLQUFLLE9BQUE7eUJBQ04sQ0FBQyxDQUFBO3dCQUVELFdBQU0sSUFBSSxDQUFDLFlBQVksRUFBRSxFQUFBOzt3QkFBekIsU0FBeUIsQ0FBQzt3QkFFckIsWUFBWSxHQUFHLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO3dCQUNsRCxZQUFZLENBQUMsRUFBRSxDQUFDLGdDQUFnQyxFQUFFLFVBQUMsSUFBUTs0QkFDekQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUMsSUFBSSxDQUFDLENBQUE7NEJBQ2hDLEtBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQzt3QkFDekQsQ0FBQyxDQUFDLENBQUE7Ozs7O0tBQ0g7SUFDSyxNQUFNOzs7Ozs7S0FDWDtJQUNELHVCQUF1QixZQUFDLElBQU87UUFDeEIsSUFBQSwrQkFBUyxDQUFjO1FBQzVCLE9BQU8sQ0FBQyxHQUFHLENBQUMseUJBQXlCLEVBQUMsU0FBUyxDQUFDLENBQUM7UUFDakQsSUFBSSxtQkFBbUIsR0FBRyxFQUFTLENBQUM7UUFDcEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFDLEVBQUU7WUFDZCxTQUFTLENBQUMsT0FBTyxDQUFDLFVBQUMsSUFBUTtnQkFDekIsSUFBSSxJQUFJ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LENBQUMsT0FBTyxDQUFDOzRCQUNYLFNBQVMsRUFBQyxNQUFNLENBQUMsSUFBSTt5QkFDdEIsQ0FBQyxDQUFBO3dCQUNGLEVBQUUsQ0FBQyxVQUFVLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7Ozs7O0tBQ3ZDO0NBQ0YsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiUGFnZSh7XHJcbiAgZGF0YToge1xyXG4gICAgc2VsZWN0ZWRTdG9yZUlkTGlzdDpbXSxcclxuICAgIHNlbGVjdGVkU3RvcmVMaXN0OltdIGFzIGFueSxcclxuICAgIHN0b3JlTGlzdDpbXSBhcyBhbnlcclxuICB9LFxyXG4gICBhc3luYyBvbkxvYWQoKSB7XHJcbiAgICBsZXQgaXNWaXAgPSAhd3guZ2xvYmFsRGF0YS5sb2dpbkRhdGEuaXNFeHBpcmVkO1xyXG4gICAgdGhpcy5zZXREYXRhKHtcclxuICAgICAgaXNWaXBcclxuICAgIH0pXHJcblxyXG4gICAgIGF3YWl0IHRoaXMuZ2V0U3RvcmVMaXN0KCk7XHJcbiAgICAvLyB0aGlzLmdldFN0b3JlTGlzdCgpO1xyXG4gICAgY29uc3QgZXZlbnRDaGFubmVsID0gdGhpcy5nZXRPcGVuZXJFdmVudENoYW5uZWwoKTtcclxuICAgIGV2ZW50Q2hhbm5lbC5vbignZ2V0U3RvcmVMaXN0RnJvbVByb21vdGlvbnNQYWdlJywgKGRhdGE6YW55KT0+IHtcclxuICAgICAgY29uc29sZS5sb2coJ+iOt+WPluaWsOW7uua0u+WKqOaXtumAieS4reeahOmXqOW6lycsZGF0YSlcclxuICAgICAgdGhpcy5oYW5kbGVTZWxlY3RlZFN0b3JlTGlzdChkYXRhLnNlbGVjdGVkU3RvcmVJZExpc3QpO1xyXG4gICAgfSlcclxuICB9LFxyXG4gIGFzeW5jIG9uU2hvdygpIHtcclxuICB9LFxyXG4gIGhhbmRsZVNlbGVjdGVkU3RvcmVMaXN0KGxpc3Q6W10pe1xyXG4gICAgbGV0IHtzdG9yZUxpc3R9ID0gdGhpcy5kYXRhO1xyXG4gICAgY29uc29sZS5sb2coJ2hhbmRsZVNlbGVjdGVkU3RvcmVMaXN0JyxzdG9yZUxpc3QpO1xyXG4gICAgbGV0IHNlbGVjdGVkU3RvcmVJZExpc3QgPSBbXSBhcyBhbnk7XHJcbiAgICBsaXN0LmZvckVhY2goKGlkKT0+e1xyXG4gICAgICBzdG9yZUxpc3QuZm9yRWFjaCgoaXRlbTphbnkpPT57XHJcbiAgICAgICAgaWYgKGl0ZW0uZG9jQ29kZSA9PSBpZCkge1xyXG4gICAgICAgICAgc2VsZWN0ZWRTdG9yZUlkTGlzdC5wdXNoKGlkKVxyXG4gICAgICAgIH1cclxuICAgICAgfSlcclxuICAgIH0pXHJcbiAgICBjb25zb2xlLmxvZyhzZWxlY3RlZFN0b3JlSWRMaXN0KTtcclxuICAgIHRoaXMuc2V0RGF0YSh7XHJcbiAgICAgIHNlbGVjdGVkU3RvcmVJZExpc3RcclxuICAgIH0pXHJcblxyXG4gIH0sXHJcblxyXG4gIC8vIGdldFNlbGVjdGVkU3RvcmVMaXN0KCl7XHJcbiAgLy8gICBsZXQge3N0b3JlTGlzdCwgc2VsZWN0ZWRTdG9yZUlkTGlzdCxzZWxlY3RlZFN0b3JlTGlzdH0gPSB0aGlzLmRhdGE7XHJcbiAgLy8gICBzZWxlY3RlZFN0b3JlSWRMaXN0LmZvckVhY2goKGlkKT0+e1xyXG4gIC8vICAgICBzdG9yZUxpc3QuZm9yRWFjaCgoaXRlbTphbnkpPT57XHJcbiAgLy8gICAgICAgaWYgKGl0ZW0uU3RvcmVJZCA9PSBOdW1iZXIoaWQpKSB7XHJcbiAgLy8gICAgICAgICBzZWxlY3RlZFN0b3JlTGlzdC5wdXNoKGl0ZW0pXHJcbiAgLy8gICAgICAgfVxyXG4gIC8vICAgICB9KVxyXG4gIC8vICAgfSlcclxuICAvLyAgIHJldHVybiBzZWxlY3RlZFN0b3JlTGlzdDtcclxuICAvLyB9LFxyXG4gIHNlbGVjdFN0b3JlKGV2ZW50OmFueSkge1xyXG4gICAgY29uc29sZS5sb2coZXZlbnQpXHJcbiAgICB0aGlzLnNldERhdGEoe1xyXG4gICAgICBzZWxlY3RlZFN0b3JlSWRMaXN0OiBldmVudC5kZXRhaWxcclxuICAgIH0pO1xyXG4gICAgLy8gd3guZ2xvYmFsRGF0YS5zdG9yZURhdGEgPSB7XHJcbiAgICAvLyAgIHNlbGVjdGVkU3RvcmVJZExpc3Q6ZXZlbnQuZGV0YWlsLFxyXG4gICAgLy8gfVxyXG4gIH0sXHJcbiAgdG9nZ2xlKGV2ZW50OmFueSkge1xyXG4gICAgY29uc3QgeyBpbmRleCB9ID0gZXZlbnQuY3VycmVudFRhcmdldC5kYXRhc2V0O1xyXG4gICAgY29uc3QgY2hlY2tib3ggPSB0aGlzLnNlbGVjdENvbXBvbmVudChgLmNoZWNrYm94ZXMtJHtpbmRleH1gKTtcclxuICAgIGNoZWNrYm94LnRvZ2dsZSgpO1xyXG4gICAgY29uc29sZS5sb2coaW5kZXgpO1xyXG4gIH0sXHJcbiAgdG9nZ2xlMihldmVudDphbnkpe1xyXG4gICAgY29uc29sZS5sb2coZXZlbnQpO1xyXG4gIH0sXHJcbiAgZ29TdG9yZUVkaXQoZXZlbnQ6YW55KXtcclxuICAgIGxldCBkb2Njb2RlID0gZXZlbnQuY3VycmVudFRhcmdldC5kYXRhc2V0LmRvY2NvZGUgfHwgJyc7XHJcbiAgICB3eC5uYXZpZ2F0ZVRvKHtcclxuICAgICAgdXJsOmAuLi9zdG9yZUVkaXQvc3RvcmVFZGl0P2RvY2NvZGU9JHtkb2Njb2RlfWAsXHJcbiAgICAgIHN1Y2Nlc3M6IChyZXMpPT4ge1xyXG4gICAgICAgIGxldCBzZWxlY3RlZFN0b3JlSWRMaXN0ID0gdGhpcy5kYXRhLnNlbGVjdGVkU3RvcmVJZExpc3Q7XHJcbiAgICAgICAgLy8g6YCa6L+HZXZlbnRDaGFubmVs5ZCR6KKr5omT5byA6aG16Z2i5Lyg6YCB5pWw5o2uXHJcbiAgICAgICAgcmVzLmV2ZW50Q2hhbm5lbC5lbWl0KCdnZXRTdG9yZUxpc3RGcm9tU3RvcmVMaXN0UGFnZScsIHtcclxuICAgICAgICAgIHNlbGVjdGVkU3RvcmVJZExpc3RcclxuICAgICAgICB9KVxyXG4gICAgICB9LFxyXG4gICAgICBldmVudHM6IHtcclxuICAgICAgICAvLyDkuLrmjIflrprkuovku7bmt7vliqDkuIDkuKrnm5HlkKzlmajvvIzojrflj5booqvmiZPlvIDpobXpnaLkvKDpgIHliLDlvZPliY3pobXpnaLnmoTmlbDmja5cclxuICAgICAgICBnZXRTZWxlY3RlZFN0b3JlSWRMaXN0RnJvbVN0b3JlRWRpdFBhZ2U6IGFzeW5jIChkYXRhOiBhbnkpPT4ge1xyXG4gICAgICAgICAgY29uc29sZS5sb2coJ+iOt+WPlumXqOW6l+WIoOmZpOaIlue8lui+keWQjumAieS4reeahGRhdGEnLGRhdGEpXHJcbiAgICAgICAgICBhd2FpdCB0aGlzLmdldFN0b3JlTGlzdCgpO1xyXG4gICAgICAgICAgdGhpcy5zZXREYXRhKHtcclxuICAgICAgICAgICAgc2VsZWN0ZWRTdG9yZUlkTGlzdDpkYXRhLnNlbGVjdGVkU3RvcmVJZExpc3QsXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSlcclxuICB9LFxyXG5cclxuICBvblN1Ym1pdCgpe1xyXG4gICAgbGV0IHtzZWxlY3RlZFN0b3JlSWRMaXN0fSA9IHRoaXMuZGF0YTtcclxuICAgIC8vIGxldCBzZWxlY3RlZFN0b3JlTGlzdCA9IHRoaXMuZ2V0U2VsZWN0ZWRTdG9yZUxpc3QoKTtcclxuICAgIGNvbnNvbGUubG9nKCfpgInkuK3nmoTpl6jlupdpZOS4juWIl+ihqCcsc2VsZWN0ZWRTdG9yZUlkTGlzdCxcclxuICAgICAgLy8gc2VsZWN0ZWRTdG9yZUxpc3RcclxuICAgICk7XHJcbiAgICBsZXQgZXZlbnRDaGFubmVsID0gdGhpcy5nZXRPcGVuZXJFdmVudENoYW5uZWwoKTtcclxuICAgIGV2ZW50Q2hhbm5lbC5lbWl0KCdnZXRTZWxlY3RlZFN0b3JlTGlzdCcsIHtcclxuICAgICAgc2VsZWN0ZWRTdG9yZUlkTGlzdCxcclxuICAgICAgLy8gc2VsZWN0ZWRTdG9yZUxpc3RcclxuICAgIH0pO1xyXG4gICAgLy8gd3guZ2xvYmFsRGF0YS5zdG9yZURhdGEgPSB7XHJcbiAgICAvLyAgIHNlbGVjdGVkU3RvcmVJZExpc3QsXHJcbiAgICAvLyAgIHNlbGVjdGVkU3RvcmVMaXN0XHJcbiAgICAvLyB9XHJcbiAgICB3eC5uYXZpZ2F0ZUJhY2soKTtcclxuICB9LFxyXG4gIC8vIG9uVW5sb2FkKCkge1xyXG4gIC8vICAgc2V0VGltZW91dCgoKSA9PiB7Y29uc29sZS5sb2coNzc3KTt9LDEwMDApXHJcbiAgLy8gICBjb25zb2xlLmxvZyg2NjYpO1xyXG4gIC8vIH0sXHJcblxyXG4gIGFzeW5jIGdldFN0b3JlTGlzdCgpIHtcclxuICAgIGxldCBbZXJyb3IsIHJlc3VsdF0gPSBhd2FpdCB3eC4kdXRpbHMudG8oXHJcbiAgICAgIHd4LiRodHRwLnJlcXVlc3Qoe1xyXG4gICAgICAgIHVybDpgL3Nob3BwaW5nL2N1c3RvbWVyU3RvcmUuZG8/bT1nZXRDdXN0b21lclN0b3JlTGlzdGAsXHJcbiAgICAgIH0pXHJcbiAgICApXHJcbiAgICBpZiAoZXJyb3Ipe1xyXG4gICAgICBjb25zb2xlLmxvZyhlcnJvcik7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XHJcbiAgICB0aGlzLnNldERhdGEoe1xyXG4gICAgICBzdG9yZUxpc3Q6cmVzdWx0Lmxpc3QsXHJcbiAgICB9KVxyXG4gICAgd3guZ2xvYmFsRGF0YS5zdG9yZUxpc3QgPSByZXN1bHQubGlzdDtcclxuICB9XHJcbn0pXHJcbmV4cG9ydCB7fVxyXG4iXX0=