mrzcc
2020-03-06 ecdac8a738f254db2b2ea28cbe3248f7a6a7eb2b
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
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
(function(vc) {
 
    vc.extends({
        data: {
            parkingSpaceCreateFeeAddInfo: {
                feeTypeCds:[],
                feeConfigs:[],
                parkingAreas:[],
                locationTypeCd: '',
                locationObjId: '',
                psId: '',
                feeTypeCd:'',
                configId:'',
                billType:'',
                parkingSpaceState:'',
                isMore:false,
                locationTypeCdName:'',
            }
        },
        _initMethod: function() {
            vc.getDict('pay_fee_config',"fee_type_cd",function(_data){
                vc.component.parkingSpaceCreateFeeAddInfo.feeTypeCds = _data;
            });
 
            vc.component._loadParkingAreas();
 
        },
        _initEvent: function() {
            vc.on('parkingSpaceCreateFeeAdd', 'openParkingSpaceCreateFeeAddModal',
            function(_parkingSpace) {
                vc.component.parkingSpaceCreateFeeAddInfo.isMore =_parkingSpace.isMore;
                if(!_parkingSpace.isMore){
                    vc.component.parkingSpaceCreateFeeAddInfo.locationTypeCd = '3000';
                    vc.component.parkingSpaceCreateFeeAddInfo.locationObjId = _parkingSpace.parkingSpace.psId;
                    vc.component.parkingSpaceCreateFeeAddInfo.psId = _parkingSpace.parkingSpace.psId;
                    var parkingSpace =  _parkingSpace.parkingSpace;
                    vc.component.parkingSpaceCreateFeeAddInfo.locationTypeCdName = parkingSpace.areaNum +'号停车场'+parkingSpace.num+'号车位';
                }
                $('#parkingSpaceCreateFeeAddModel').modal('show');
 
            });
        },
        methods: {
 
            parkingSpaceCreateFeeAddValidate() {
                return vc.validate.validate({
                    parkingSpaceCreateFeeAddInfo: vc.component.parkingSpaceCreateFeeAddInfo
                },
                {
                    'parkingSpaceCreateFeeAddInfo.locationTypeCd': [{
                        limit: "required",
                        param: "",
                        errInfo: "收费范围不能为空"
                    },
                    {
                        limit: "num",
                        param: "",
                        errInfo: "收费范围格式错误"
                    },
                    ],
                    'parkingSpaceCreateFeeAddInfo.locationObjId': [{
                        limit: "required",
                        param: "",
                        errInfo: "收费对象不能为空"
                    }
                    ],
                    'parkingSpaceCreateFeeAddInfo.feeTypeCd': [{
                        limit: "required",
                        param: "",
                        errInfo: "费用类型不能为空"
                    }
                    ],
                    'parkingSpaceCreateFeeAddInfo.configId': [{
                        limit: "required",
                        param: "",
                        errInfo: "费用项目不能为空"
                    }
                    ],
                    'parkingSpaceCreateFeeAddInfo.billType': [{
                        limit: "required",
                        param: "",
                        errInfo: "出账类型不能为空"
                    }
                    ],
                     'parkingSpaceCreateFeeAddInfo.parkingSpaceState': [{
                         limit: "required",
                         param: "",
                         errInfo: "出账类型不能为空"
                     }
                     ]
                });
            },
            saveParkingSpaceCreateFeeInfo: function() {
 
                vc.component.parkingSpaceCreateFeeAddInfo.communityId = vc.getCurrentCommunity().communityId;
                if (vc.component.parkingSpaceCreateFeeAddInfo.locationTypeCd == '1000') { // 小区ID
                    vc.component.parkingSpaceCreateFeeAddInfo.locationObjId = vc.component.parkingSpaceCreateFeeAddInfo.communityId;
                } else if (vc.component.parkingSpaceCreateFeeAddInfo.locationTypeCd == '2000') {
                } else if (vc.component.parkingSpaceCreateFeeAddInfo.locationTypeCd == '3000') {
                    vc.component.parkingSpaceCreateFeeAddInfo.locationObjId = vc.component.parkingSpaceCreateFeeAddInfo.psId;
                } else {
                    vc.toast("收费范围错误");
                    return;
                }
 
                if (!vc.component.parkingSpaceCreateFeeAddValidate()) {
                    vc.toast(vc.validate.errInfo);
                    return;
                }
 
                vc.component.parkingSpaceCreateFeeAddInfo.communityId = vc.getCurrentCommunity().communityId;
 
                vc.http.post('parkingSpaceCreateFeeAdd', 'save', JSON.stringify(vc.component.parkingSpaceCreateFeeAddInfo), {
                    emulateJSON: true
                },
                function(json, res) {
                    //vm.menus = vm.refreshMenuActive(JSON.parse(json),0);
                    if (res.status == 200) {
                        //关闭model
                        var _json = JSON.parse(json);
                        $('#parkingSpaceCreateFeeAddModel').modal('hide');
                        vc.component.clearAddFeeConfigInfo();
                        vc.toast("创建收费成功,总共["+_json.totalParkingSpace+"]车位,成功["+_json.successParkingSpace+"],失败["+_json.errorParkingSpace+"]",8000);
                        return;
                    }
                    vc.message(json);
 
                },
                function(errInfo, error) {
                    console.log('请求失败处理');
 
                    vc.message(errInfo);
 
                });
            },
            clearAddFeeConfigInfo: function() {
                var _feeTypeCds = vc.component.parkingSpaceCreateFeeAddInfo.feeTypeCds;
                var _parkingAreas = vc.component.parkingSpaceCreateFeeAddInfo.parkingAreas;
                vc.component.parkingSpaceCreateFeeAddInfo = {
                     feeTypeCds:[],
                    feeConfigs:[],
                    parkingAreas:[],
                    locationTypeCd: '',
                    locationObjId: '',
                    psId: '',
                    feeTypeCd:'',
                    configId:'',
                    billType:'',
                    parkingSpaceState:'',
                    isMore:false,
                    locationTypeCdName:'',
                };
 
                vc.component.parkingSpaceCreateFeeAddInfo.feeTypeCds = _feeTypeCds;
                vc.component.parkingSpaceCreateFeeAddInfo.parkingAreas = _parkingAreas;
            },
            _changeFeeTypeCd:function(_feeTypeCd){
 
                var param = {
                    params: {
                        page:1,
                        row:20,
                        communityId:vc.getCurrentCommunity().communityId,
                        feeTypeCd:_feeTypeCd,
                        isDefault:'F'
                    }
                };
 
                //发送get请求
                vc.http.get('parkingSpaceCreateFeeAdd', 'list', param,
                function(json, res) {
                    var _feeConfigManageInfo = JSON.parse(json);
                    vc.component.parkingSpaceCreateFeeAddInfo.feeConfigs = _feeConfigManageInfo.feeConfigs;
                },
                function(errInfo, error) {
                    console.log('请求失败处理');
                });
            },
            _loadParkingAreas:function(_feeTypeCd){
 
                var param = {
                    params: {
                        page:1,
                        row:20,
                        communityId:vc.getCurrentCommunity().communityId,
                    }
                };
 
                //发送get请求
                vc.http.get('parkingSpaceCreateFeeAdd', 'listParkingArea', param,
                function(json, res) {
                    if(res.status == 200){
                        var _parkingAreaInfo = JSON.parse(json);
                        vc.component.parkingSpaceCreateFeeAddInfo.parkingAreas = _parkingAreaInfo.parkingAreas;
                    }
                },
                function(errInfo, error) {
                    console.log('请求失败处理');
                });
            }
        }
    });
 
})(window.vc);