sunjh 6 年 前
コミット
fc2a4e8e68
2 ファイル変更54 行追加27 行削除
  1. 52 27
      src/components/cheat/AgencyAdd.vue
  2. 2 0
      src/main.js

+ 52 - 27
src/components/cheat/AgencyAdd.vue

@@ -2,7 +2,7 @@
   <div class="create-container">
     <div class="create-body">
       <div class="title">添加机构</div>
-      <el-form :model="agency" :rules="rules" ref="agency" label-width="12%" class="demo-report">
+      <el-form v-loading="loading" :model="agency" :rules="rules" ref="agency" label-width="12%" class="demo-report">
         <!--<el-form-item prop="file" label="头像">-->
         <!--<el-row class="demo-avatar demo-basic">-->
         <!--<el-col :span="12">-->
@@ -18,33 +18,35 @@
           <el-input v-if="isModifyMode" v-model="agency.name"></el-input>
           <!--<span v-if="!isModifyMode">{{agency.name}}</span>-->
         </el-form-item>
-        <el-form-item label="机构电话" prop="name">
+        <el-form-item label="机构电话" prop="phone">
           <el-input v-if="isModifyMode" v-model="agency.mobile"></el-input>
           <!--<span v-if="!isModifyMode">{{agency.name}}</span>-->
         </el-form-item>
-        <el-form-item label="机构邮箱" prop="name">
+        <el-form-item label="机构邮箱" prop="email">
           <el-input v-if="isModifyMode" v-model="agency.email"></el-input>
           <!--<span v-if="!isModifyMode">{{agency.name}}</span>-->
         </el-form-item>
-        <el-form-item label="银行卡账户" prop="name">
+        <el-form-item label="银行卡账户" prop="bankAccount">
           <el-input v-if="isModifyMode" v-model="agency.bankAccount"></el-input>
           <!--<span v-if="!isModifyMode">{{agency.bankAccount}}</span>-->
         </el-form-item>
-        <el-form-item label="地址" prop="name">
+        <el-form-item label="地址" prop="address">
           <el-input v-if="isModifyMode" v-model="agency.address"></el-input>
           <!--<span v-if="!isModifyMode">{{agency.address}}</span>-->
         </el-form-item>
-        <el-form-item label="测评机构能力" prop="name">
+        <el-form-item label="测评机构能力" prop="evaluationAgencyAbilityList">
           <el-checkbox-group v-if="isModifyMode" v-model="agency.evaluationAgencyAbilityList">
             <span v-for="(item,index) in serviceTypes" :key="index">
-              <el-checkbox :label="item" name="type">{{item}}&nbsp;&nbsp;&nbsp;&nbsp;</el-checkbox>
+              <el-checkbox :label="item"
+                           name="evaluationAgencyAbilityList">{{item}}&nbsp;&nbsp;&nbsp;&nbsp;</el-checkbox>
             </span>
           </el-checkbox-group>
           <!--<span v-if="!isModifyMode">{{agency.ability}}</span>-->
         </el-form-item>
-        <el-form-item label="测评机构资源" prop="name">
+        <el-form-item label="测评机构资源" prop="resource">
           <span v-for="item in agency.evaluationAgencyResourceList" :key="item.id">
-            资源类型:&nbsp;<el-select  v-model="item.type" placeholder="请选择" style="width: 150px;margin-bottom: 10px" :value="item.type">
+            资源类型:&nbsp;<el-select v-model="item.type" placeholder="请选择" style="width: 150px;margin-bottom: 10px"
+                                  :value="item.type">
               <el-option
                 v-for="item in resourceTypes"
                 :key="item"
@@ -176,14 +178,15 @@
 import Http from '@/js/http'
 import Apis from '@/js/api'
 import {notify} from '@/constants/index'
-import {getAllAbilities, getAllAgencyResourceTypes,storageGet} from '@/js/index'
+import {getAllAbilities, getAllAgencyResourceTypes, storageGet} from '@/js/index'
 
 export default {
   name: 'AgencyAdd',
   data () {
     return {
-      user:{},
+      user: {},
       userId: 0,
+      loading: false,
       isModifyMode: true,
       dialogVisible: false,
       serviceTypes: [],
@@ -216,23 +219,34 @@ export default {
         username: '',
       },
       rules: {
-        // name: [
-        //   {required: true, message: '请输入报告名称', trigger: 'blur'}
+        name: [
+          {required: true, message: '请输入测评机构名称', trigger: 'blur'}
+          // { min: 3, max: 5, message: "长度在 3 到 5 个字符", trigger: "blur" }
+        ],
+        phone: [
+          {required: true, message: '请输入手机号', trigger: 'blur'}
+          // { min: 3, max: 5, message: "长度在 3 到 5 个字符", trigger: "blur" }
+        ],
+        email: [
+          {required: true, message: '请输入邮箱地址', trigger: 'blur'}
+          // { min: 3, max: 5, message: "长度在 3 到 5 个字符", trigger: "blur" }
+        ],
+        bankAccount: [
+          {required: true, message: '请输入银行卡号', trigger: 'blur'}
+          // { min: 3, max: 5, message: "长度在 3 到 5 个字符", trigger: "blur" }
+        ],
+        address: [
+          {required: true, message: '请输入机构地址', trigger: 'blur'}
+          // { min: 3, max: 5, message: "长度在 3 到 5 个字符", trigger: "blur" }
+        ],
+        evaluationAgencyAbilityList: [
+          {type: 'array', required: true, message: '请至少选择一个活动性质', trigger: 'change'}
+          // { min: 3, max: 5, message: "长度在 3 到 5 个字符", trigger: "blur" }
+        ],
+        // resource: [
+        //   {required: true, message: '请输入测评机构资源', trigger: 'blur'}
         //   // { min: 3, max: 5, message: "长度在 3 到 5 个字符", trigger: "blur" }
         // ],
-        // abstract: [
-        //   {
-        //     required: true,
-        //     message: '请输入摘要信息',
-        //     trigger: 'change'
-        //   }
-        // ],
-        // type: [
-        //   {required: true, message: '请选择报告类型', trigger: 'change'}
-        // ],
-        // conclusion: [
-        //   {required: true, message: '请输入报告结论', trigger: 'blur'}
-        // ]
       },
       tableData: [{
         date: '2016-05-02',
@@ -275,6 +289,7 @@ export default {
     //提交表单
     submitInfo () {
       //this.showDialog()
+      this.showLoading()
       const newAgency = {
         mobile: this.agency.mobile,
         evaluationAgencyName: this.agency.name,
@@ -286,6 +301,7 @@ export default {
         email: this.agency.email
       }
       Http.post(Apis.USER.ADD_AGENCY, newAgency).then((res) => {
+        this.hideLoading()
         console.log(res)
         // console.log(res.data)
         res = res.data
@@ -294,6 +310,7 @@ export default {
         this.agency.mobile = res.userVO.mobile
         this.showDialog()
       }).catch(error => {
+        this.hideLoading()
         notify('error', error.data)
       })
     },
@@ -429,8 +446,16 @@ export default {
       return true
     },
     //获取用户信息
-    setUserInfo(){
+    setUserInfo () {
       this.user = storageGet('user')
+    },
+    //显示loading
+    showLoading () {
+      this.loading = true
+    },
+    //隐藏loading
+    hideLoading () {
+      this.loading = false
     }
   },
   created: function () {

+ 2 - 0
src/main.js

@@ -26,6 +26,7 @@ import {
   Input,
   InputNumber,
   Link,
+  Loading,
   Menu,
   MenuItem,
   MenuItemGroup,
@@ -115,6 +116,7 @@ Vue.use(Tag)
 Vue.use(Avatar)
 Vue.use(Pagination)
 Vue.use(Link)
+Vue.use(Loading)
 
 Vue.prototype.$msgbox = MessageBox
 Vue.prototype.$alert = MessageBox.alert