Blame view

src/views/mycar/index.vue 5.87 KB
613d2a9c   Andy   add icon
1
  <template>
ec35bad6   Andy   add 账户设置 前端页面
2
    <div>
613d2a9c   Andy   add icon
3
  
ec35bad6   Andy   add 账户设置 前端页面
4
5
6
7
      <div class="search-wrap">
        <el-row :gutter="20">
          <el-form ref="form" :model="form" label-width="60px" label-position="left">
            <el-col :xs="8" :sm="6" :md="7" :lg="7" :xl="1">
ea291b39   王富生   提交登陆
8
9
10
11
12
13
14
              <el-form-item label="账户ID">
                <el-input v-model="form.custId" maxlength="20" :disabled="true"/>
              </el-form-item>
            </el-col>
            <el-col :xs="8" :sm="6" :md="7" :lg="7" :xl="1" :offset="8">
              <el-form-item label="手机号">
                <el-input v-model="form.phone" maxlength="20" :disabled="true"/>
ec35bad6   Andy   add 账户设置 前端页面
15
16
17
18
19
              </el-form-item>
            </el-col>
          </el-form>
        </el-row>
      </div>
ea291b39   王富生   提交登陆
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
      <el-row :gutter="20" style="margin-top: 8px">
        <el-col :span="12">
          <el-card class="box-card" style="height: 300px">
            <div slot="header" class="clearfix">
              <span>车牌绑定</span>
            </div>
            <el-form ref="bondform" :model="bondform" label-width="60px" label-position="left" :rules="rules">
              <el-row :gutter="20">
                <el-col :span="12">
                  <el-form-item label="车牌号" prop="carNum">
                    <el-input type="text" v-model="bondform.carNum"/>
                  </el-form-item>
                </el-col>
                <el-col :span="12">
                  <el-button type="primary" :loading="bondformBtnVisible" @click="bondCarNum('bondform')">绑定车牌</el-button>
                </el-col>
              </el-row>
  
            </el-form>
  
          </el-card>
        </el-col>
        <el-col :span="12">
          <el-card class="box-card" style="height: 300px">
            <div slot="header" class="clearfix">
              <span>解绑车牌</span>
            </div>
            <el-form ref="form" :model="form" label-width="60px" label-position="left">
              <el-row :gutter="20" v-for="item in alredyBoundCar" style="margin-top: 4px">
                <el-col :span="12">
                  <el-form-item label="已绑车牌">
                    <el-input  :value="item.carNumber"/>
                  </el-form-item>
                </el-col>
                <el-col :span="12">
                  <el-button type="primary" @click="alredyBoundCarBtn(item.carNumber)">解绑车牌</el-button>
                </el-col>
              </el-row>
  
            </el-form>
  
          </el-card>
        </el-col>
      </el-row>
  
613d2a9c   Andy   add icon
65
  
613d2a9c   Andy   add icon
66
67
68
69
    </div>
  </template>
  
  <script>
249594b5   王富生   提交登陆
70
    import {getPersonCarNumPC,boundCarNum,unboundCarNum} from '@/api/mycar.js';
613d2a9c   Andy   add icon
71
    export default {
613d2a9c   Andy   add icon
72
      data() {
ea291b39   王富生   提交登陆
73
74
75
76
77
        var carNumValidator = (rule, value, callback) => {
          if (value === '') {
            callback(new Error('请输入车牌号'));
          }
  
249594b5   王富生   提交登陆
78
          if (!/^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9挂学警港澳]{1}$/.test(this.bondform.carNum)||this.bondform.carNum.length<7) {
ea291b39   王富生   提交登陆
79
80
81
82
83
            callback(new Error('请输入正确的车牌号'));
          }
          callback();
  
        };
613d2a9c   Andy   add icon
84
        return {
ec35bad6   Andy   add 账户设置 前端页面
85
          form: {
ea291b39   王富生   提交登陆
86
            custId: '',
249594b5   王富生   提交登陆
87
            phone: '',
ec35bad6   Andy   add 账户设置 前端页面
88
          },
ea291b39   王富生   提交登陆
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
          /**绑定车牌.*/
          bondform: {
            carNum: ''
          },
  
          /**已绑定车牌.*/
          alredyBoundCar:[],
          bondformBtnVisible: false,
          dialogFormVisible: false,
          problemform: {
            carnum: '',
          },
          rules:{
            carNum:[{ validator: carNumValidator, trigger: 'blur' }]
            }
613d2a9c   Andy   add icon
104
        }
ea291b39   王富生   提交登陆
105
106
  
  
613d2a9c   Andy   add icon
107
      },
613d2a9c   Andy   add icon
108
      methods: {
ea291b39   王富生   提交登陆
109
110
        /**绑定车牌*/
        bondCarNum:function(formName){
249594b5   王富生   提交登陆
111
112
113
          let that = this;
          let custId = this.form.custId;
          let carNum = this.bondform.carNum;
ea291b39   王富生   提交登陆
114
115
          this.$refs[formName].validate((valid) => {
            if (valid) {
249594b5   王富生   提交登陆
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
              let req ={
                custId:custId,
                carNumber:carNum,
                sysCode:'1001',
                carBindingStatus:1, //绑定
              };
              boundCarNum(req).then(response =>{
                 if(response.code='8888'){
                   that.bondform.carNum='';
                   this.$message({
                     type: 'success',
                     message: '车牌绑定成功!'
                   });
  
                 }
              });
ea291b39   王富生   提交登陆
132
133
134
135
            } else {
              console.log('error submit!!');
              return false;
            }
ec35bad6   Andy   add 账户设置 前端页面
136
137
          });
        },
ea291b39   王富生   提交登陆
138
139
140
141
142
143
144
145
146
        /**获取车牌.*/
        getPersonCarNumPC:function () {
          let that =this;
          getPersonCarNumPC().then(response =>{
  
            if(response.code ='8888'){
              that.alredyBoundCar=response.data;
            }
          });
ec35bad6   Andy   add 账户设置 前端页面
147
        },
ea291b39   王富生   提交登陆
148
149
        /**解绑车牌.*/
        alredyBoundCarBtn:function (carNum) {
249594b5   王富生   提交登陆
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
          if("" == carNum || null ==carNum || undefined == carNum){
            this.$message({
              type: 'error',
              message: '解绑的车牌不能为空'
            });
          }
          let that =this;
          let custId = this.form.custId;
          let req ={
            custId:custId,
            carNumber:carNum,
            sysCode:'1001',
            carBindingStatus:2, //解绑
          };
          unboundCarNum(req).then(response =>{
            if(response.code ='8888'){
              this.$message({
                type: 'success',
                message: '车牌解绑成功!'
              });
              this.getPersonCarNumPC();
            }else{
              this.$message({
                type: 'error',
                message: '车牌解绑失败!'
              });
            }
          });
ea291b39   王富生   提交登陆
178
179
180
181
182
183
184
185
186
        }
      },
      mounted:function(){
        let userInfo = this.$store.state.user.userInfo;
        this.form={
          custId: userInfo.custId,
            phone: userInfo.userPhone
        };
        this.getPersonCarNumPC();
613d2a9c   Andy   add icon
187
188
189
190
      }
    }
  </script>
  
ec35bad6   Andy   add 账户设置 前端页面
191
  <style lang="scss">
ea291b39   王富生   提交登陆
192
    .search-wrap {
ec35bad6   Andy   add 账户设置 前端页面
193
194
195
      background-color: #FFF;
      padding: 15px;
    }
ea291b39   王富生   提交登陆
196
197
  
    .card-second-top {
ec35bad6   Andy   add 账户设置 前端页面
198
199
      margin-top: 15px;
    }
ea291b39   王富生   提交登陆
200
201
  
    .el-card__header {
ec35bad6   Andy   add 账户设置 前端页面
202
203
      padding: 10px 20px;
    }
ea291b39   王富生   提交登陆
204
205
  
    .el-radio {
ec35bad6   Andy   add 账户设置 前端页面
206
207
      margin-right: 80px;
    }
ea291b39   王富生   提交登陆
208
209
  
    .el-radio.is-bordered + .el-radio.is-bordered {
ec35bad6   Andy   add 账户设置 前端页面
210
211
212
213
      margin-left: 0px;
      margin-top: 15px;
    }
  </style>