Blame view

web/src/js/order/submit-controller.js 5.9 KB
cf6f0119   xu   app-wx(v0.1.0 bui...
1
2
3
4
5
6
7
8
9
10
/**
 * 录入维修单
 */
define(
    "order/submit-controller",
    [
        'mk7/controller',
        'mk7/url',
        'mk7/utils',
        'mk7/uploadjs',
3a892ee0   xu   app-wx(v0.1.0 bui...
11
    ],
cf6f0119   xu   app-wx(v0.1.0 bui...
12
13

    function(ctrl, url, utils, uploadjs) {
3a892ee0   xu   app-wx(v0.1.0 bui...
14

cf6f0119   xu   app-wx(v0.1.0 bui...
15
16
17
18
19
20
21
        var $$ = Dom7;
        var t7 = Template7;
        var ctrl = new ctrl();

        var uploadURL = '/user/default/upload-file';
        var submitURL = '/order/default/submit';
        var canSubmit = true;
da06162f   xu   app-wx(v0.1.0 bui...
22
        ctrl.run = function () {
cf6f0119   xu   app-wx(v0.1.0 bui...
23
            var me = this;
3a892ee0   xu   app-wx(v0.1.0 bui...
24
            me.setPageTitle("录入维修单");
cf6f0119   xu   app-wx(v0.1.0 bui...
25
26
27
28
29
            me.imgLimit = 9;
            me.render();
        }
        ctrl.bindEvents = function () {
            var me = this;
da06162f   xu   app-wx(v0.1.0 bui...
30
            console.log("bindEvents");
cf6f0119   xu   app-wx(v0.1.0 bui...
31
32
33
34
35
36
            me.uploadImgEvent();
            me.submitEvent();
        }
        ctrl.uploadImgEvent = function() {
            var me = this;

3a892ee0   xu   app-wx(v0.1.0 bui...
37
            $$('#submit #upload-btn').change(function () {
32926e46   xu   app-wx(v0.1.0 bui...
38
39
40
41
                if ('' == $$(this).val() || null == $$(this).val()) {
                    return;
                }
                var uploadParent = $$(this).parents('li');
cf6f0119   xu   app-wx(v0.1.0 bui...
42

da06162f   xu   app-wx(v0.1.0 bui...
43
44
45
                uploadjs.uploadFile({
                    selector: '#upload-btn',
                    url: url.to(uploadURL),
1de3211f   xu   app-wx(v0.1.0 bui...
46
                    processAppendTo: '#submit',
da06162f   xu   app-wx(v0.1.0 bui...
47
                    success: function (response, e) {
cf6f0119   xu   app-wx(v0.1.0 bui...
48
49
                        try {
                            if (response.success) {
cf6f0119   xu   app-wx(v0.1.0 bui...
50
51
52
53
54
55
56
57
58
59
60
61
62
63
                                var imgUrl = response.tmpUrl;

                                $$('<li class="upload-li up-img"><div data="' + response.tmpFile + '" data-url="' + imgUrl + '" class="upload-item" style="background-image:url(' + response.tmpMinUrl + ')">'  + '</div><span class="del-img"></span></li>').insertBefore(uploadParent);
                                if (me.imgLimit == $$('#submit #image-list').find('.up-img').length) {
                                    $$('#submit .upload-btn-li').hide();
                                }
                            } else {
                                utils.toast({content: response.message, closeDelay: 5000});
                            }
                        } catch (ex) {
                            console.log(ex)
                            utils.toast({content: '出错', closeDelay: 5000});
                        }
                    }
cf6f0119   xu   app-wx(v0.1.0 bui...
64
65
66
67
68
69
70
71
                });
            })

            $$('#submit #image-list').on('click', '.del-img', function(e){
                $$(this).parent().remove();
                if (me.imgLimit >= $$('#submit #image-list').find('.up-img').length) {
                    $$('#submit .upload-btn-li').show();
                }
afd2f743   xu   app-ht(v0.0.1 bui...
72
            })
cf6f0119   xu   app-wx(v0.1.0 bui...
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
        }
        ctrl.submitEvent = function() {
            var me = this;
            $$('#submit .submit-btn-cls').click(function(e) {

                var carNo = utils.trim($$('#submit .carNo').val());
                var carModel = utils.trim($$('#submit .carModel').val());
                var customer = utils.trim($$('#submit .customer').val());
                var phone = utils.trim($$('#submit .phone').val());
                var preRepair = utils.trim($$('#submit .preRepair').val());
                var repairPrice = utils.trim($$('#submit .repairPrice').val());
                var finishDate = utils.trim($$('#submit .finishDate').val());
                if (false == canSubmit) {
                    return false;
                }
                if ('' == carNo) {
                    utils.toast({content:'车牌号必填'});
                    return false;
                }
                if ('' == carModel) {
                    utils.toast({content:'车辆型号必填'});
                    return false;
                }
                if ('' == customer) {
1de3211f   xu   app-wx(v0.1.0 bui...
97
                    utils.toast({content:'客户名称必填'});
cf6f0119   xu   app-wx(v0.1.0 bui...
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
                    return false;
                }
                if ('' == phone) {
                    utils.toast({content:'客联系电话必填'});
                    return false;
                }
                if (!utils.isMobile(phone) && !uitls.isTelephone(phone)) {
                    utils.toast({content:'客联系电话有误'});
                    return false;
                }
                if ('' == preRepair) {
                    utils.toast({content:'预估维修内容必填'});
                    return false;
                }
                if ('' == repairPrice) {
                    utils.toast({content:'预估维修费用必填'});
                    return false;
                }
                if ('' == finishDate) {
d11ff394   xu   app-ht(v0.0.1 bui...
117
                    utils.toast({content:'预估完成时间必填'});
cf6f0119   xu   app-wx(v0.1.0 bui...
118
119
120
                    return false;
                }
                var imgs = me.getUploadImgs();
1de3211f   xu   app-wx(v0.1.0 bui...
121
                if (0 == imgs.length) {
cf6f0119   xu   app-wx(v0.1.0 bui...
122
123
124
125
126
127
128
129
                    utils.toast({content:'请上传车损照'});
                    return false;
                }
                canSubmit = false;
                var sData = me.csrf({
                    carNo:carNo, carModel:carModel,customer:customer,phone:phone,
                    preRepair:preRepair, repairPrice:repairPrice,finishDate:finishDate, images:imgs
                })
1de3211f   xu   app-wx(v0.1.0 bui...
130
                utils.httpPost(submitURL, sData, function(res) {
cf6f0119   xu   app-wx(v0.1.0 bui...
131
132
133
134
                    canSubmit = true;
                    if (!res.success) {
                        utils.toast({content:message});
                        return false;
1de3211f   xu   app-wx(v0.1.0 bui...
135
                    } else {
cf6f0119   xu   app-wx(v0.1.0 bui...
136
137
138
139
140
141
142
143
                        window.location.href = url.to('/');
                    }
                }, true);

            })
        }
        ctrl.getUploadImgs = function() {
            var images = $$('#submit #image-list').find('.up-img');
1de3211f   xu   app-wx(v0.1.0 bui...
144
            var returnImg = [];
cf6f0119   xu   app-wx(v0.1.0 bui...
145
            if (images.length == 0 ) {
da06162f   xu   app-wx(v0.1.0 bui...
146
                return [];
cf6f0119   xu   app-wx(v0.1.0 bui...
147
148
            }
            $$.each(images, function(i, n){
da06162f   xu   app-wx(v0.1.0 bui...
149
                var img = $$(n).find('.upload-item');
cf6f0119   xu   app-wx(v0.1.0 bui...
150
151
                returnImg.push(img.attr('data'))
            })
c6779489   xu   app-wx(v0.1.0 bui...
152

cf6f0119   xu   app-wx(v0.1.0 bui...
153
154
155
156
157
            return returnImg;
        }
        return ctrl;
    }
);
3a892ee0   xu   app-wx(v0.1.0 bui...

32926e46   xu   app-wx(v0.1.0 bui...

1de3211f   xu   app-wx(v0.1.0 bui...

3a892ee0   xu   app-wx(v0.1.0 bui...

32926e46   xu   app-wx(v0.1.0 bui...

afd2f743   xu   app-ht(v0.0.1 bui...

32926e46   xu   app-wx(v0.1.0 bui...

32926e46   xu   app-wx(v0.1.0 bui...

cf6f0119   xu   app-wx(v0.1.0 bui...