zhangjiaqing
8 天以前 1cef3adee31c6934c0da4b4f0b8a6f5ac03b364f
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
(function(vc) {
    var DEFAULT_PAGE = 1;
    var DEFAULT_ROWS = 10;
    vc.extends({
        data: {
            createFeeByComboInfo: {
                feeConfigs: [],
                selectConfigIds: [],
                communityId: vc.getCurrentCommunity().communityId,
                payerObjId: '',
                payerObjName: '',
                payerObjType: '',
                comboId: ''
            }
        },
        _initMethod: function() {
            let _payerObjId = vc.getParam('payerObjId');
            let _payerObjType = vc.getParam('payerObjType');
            let _payerObjName = vc.getParam('payerObjName');
            $that.createFeeByComboInfo.payerObjId = _payerObjId;
            $that.createFeeByComboInfo.payerObjType = _payerObjType;
            $that.createFeeByComboInfo.payerObjName = _payerObjName;
        },
        _initEvent: function() {
            vc.on('createFeeByCombo', 'chooseFeeCombo', function(_feeCombo) {
                $that.createFeeByComboInfo.comboId = _feeCombo.comboId;
                $that._listFeeComboMembers(_feeCombo);
            })
        },
        methods: {
            _chooseFeeCombo: function() {
                vc.emit('chooseFeeCombo', 'openChooseFeeComboModel', {});
            },
            _listFeeComboMembers: function(_feeCombo) {
                let param = {
                    params: {
                        page: 1,
                        row: 100,
                        comboId: _feeCombo.comboId
                    }
                };
                //发送get请求
                vc.http.apiGet('/feeComboMember.listFeeComboMember',
                    param,
                    function(json, res) {
                        let _feeComboMemberManageInfo = JSON.parse(json);
                        $that.createFeeByComboInfo.selectConfigIds = [];
                        _feeComboMemberManageInfo.data.forEach(config => {
                            config.startTime = '';
                            config.endTime = '';
                            $that.createFeeByComboInfo.selectConfigIds.push(config.configId);
                        })
                        vc.component.createFeeByComboInfo.feeConfigs = _feeComboMemberManageInfo.data;
                        $that.$forceUpdate();
                        setTimeout(() => {
                            _feeComboMemberManageInfo.data.forEach(config => {
                                vc.initDate('startTime' + config.configId, function(_value) {
                                    config.startTime = _value;
                                })
                                vc.initDate('endTime' + config.configId, function(_value) {
                                    config.endTime = _value;
                                    let start = Date.parse(new Date(config.startTime));
                                    let end = Date.parse(new Date(config.endTime));
                                    if (start - end >= 0) {
                                        vc.toast("结束时间必须大于开始时间");
                                        config.endTime = '';
                                    }
                                })
                            })
                        }, 1000)
                    },
                    function(errInfo, error) {
                        console.log('请求失败处理');
                    }
                );
            },
            _createFee: function() {
                let _fees = [];
                $that.createFeeByComboInfo.selectConfigIds.forEach(function(_item) {
                    $that.createFeeByComboInfo.feeConfigs.forEach(function(_batchFeeItem) {
                        if (_item == _batchFeeItem.configId) {
                            _fees.push(_batchFeeItem);
                        }
                    })
                })
                if (_fees.length < 1) {
                    vc.toast('未选中要创建的费用套餐');
                    return;
                }
                for (let i = 0; i < _fees.length; i++) {
                    let fee = _fees[i];
                    if (fee != null && fee != "" && fee != undefined) {
                        if (fee.startTime == null || fee.startTime == "" || fee.startTime == undefined) {
                            vc.toast(_fees[i].feeName + "开始时间不能为空!");
                            return;
                        }
                        if (fee.feeFlag != "1003006" && (fee.endTime == null || fee.endTime == "" || fee.endTime == undefined)) { //1003006 为周期性费用 2006012 为一次性费用
                            vc.toast(_fees[i].feeName + "结束时间不能为空!");
                            return;
                        }
                    }
                }
                console.log("到这了")
                let _data = {
                    communityId: vc.getCurrentCommunity().communityId,
                    configs: _fees,
                    payerObjId: $that.createFeeByComboInfo.payerObjId,
                    payerObjName: $that.createFeeByComboInfo.payerObjName,
                    payerObjType: $that.createFeeByComboInfo.payerObjType,
                    comboId: $that.createFeeByComboInfo.comboId
                }
                vc.http.apiPost(
                    '/fee.createFeeByCombo',
                    JSON.stringify(_data), {
                        emulateJSON: true
                    },
                    function(json, res) {
                        //vm.menus = vm.refreshMenuActive(JSON.parse(json),0);
                        let _json = JSON.parse(json);
                        vc.toast(_json.msg);
                        if (_json.code == 0) {
                            vc.goBack();
                            return;
                        }
                    },
                    function(errInfo, error) {
                        console.log('请求失败处理');
                        vc.toast(errInfo);
                    });
            },
            _back: function() {
                $('#payFeeResult').modal("hide");
                vc.getBack();
            },
            checkAll: function(e) {
                var checkObj = document.querySelectorAll('.checkItem'); // 获取所有checkbox项
                if (e.target.checked) { // 判定全选checkbox的勾选状态
                    for (var i = 0; i < checkObj.length; i++) {
                        if (!checkObj[i].checked) { // 将未勾选的checkbox选项push到绑定数组中
                            vc.component.createFeeByComboInfo.selectConfigIds.push(checkObj[i].value);
                        }
                    }
                } else { // 如果是去掉全选则清空checkbox选项绑定数组
                    vc.component.createFeeByComboInfo.selectConfigIds = [];
                }
            },
            _goBack: function() {
                vc.goBack();
            }
        }
    });
})(window.vc);