Browse Source

禅道问题

刘湘琪 3 years ago
parent
commit
c50fafa013

+ 9 - 0
src/api/login.js

@@ -67,3 +67,12 @@ export function getCodeImg() {
     timeout: 20000
   })
 }
+//获取企业详细信息
+export function getEntUserById(token, query) {
+  return request({
+    url: '/ent/user/ent',
+    token: token,
+    method: 'get',
+    params: query
+  })
+}

+ 1 - 0
src/router/index.js

@@ -32,6 +32,7 @@ import Layout from '@/layout'
 export const constantRoutes = [
   {
     path: '/registerFirst',
+    name: 'registerFirst',
     component: () => import('@/views/common/registerFirst'),
     hidden: true
   },

+ 8 - 2
src/utils/request.js

@@ -26,9 +26,15 @@ service.interceptors.request.use(config => {
   const isToken = (config.headers || {}).isToken === false
   // 是否需要防止数据重复提交
   const isRepeatSubmit = (config.headers || {}).repeatSubmit === false
-  if (getToken() && !isToken) {
-    config.headers['Authorization'] = 'Bearer ' + getToken() // 让每个请求携带自定义token 请根据实际情况自行修改
+  const token = config.token 
+  if(token) {
+    config.headers['Authorization'] = 'Bearer ' + token
+  }else {
+    if (getToken() && !isToken) {
+      config.headers['Authorization'] = 'Bearer ' + getToken() // 让每个请求携带自定义token 请根据实际情况自行修改
+    }
   }
+  
   // get请求映射params参数
   if (config.method === 'get' && config.params) {
     let url = config.url + '?' + tansParams(config.params);

+ 97 - 55
src/views/common/registerFirst.vue

@@ -3,58 +3,60 @@
     <el-form ref="registerForm" :model="registerForm" :rules="registerRules" class="register-form" label-width="190px">
       <h3 class="title">注册信息</h3>
       <el-collapse v-model="activeName">
-        <el-collapse-item title="账户信息" name="1">
-          <el-row :gutter="40">
-            <el-col :span="12">
-              <el-form-item label="账户名称" prop="userName">
-                <el-input v-model="registerForm.userName" type="text" auto-complete="off" placeholder="账号">
-                </el-input>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="密码" prop="password">
-                <el-input
-                  v-model="registerForm.password"
-                  type="password"
-                  auto-complete="new-password"
-                  placeholder="密码">
-                </el-input>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="确认密码" prop="confirmPassword">
-                <el-input
-                  v-model="registerForm.confirmPassword"
-                  type="password"
-                  auto-complete="new-password"
-                  placeholder="确认密码">
-                </el-input>
-              </el-form-item>
-            </el-col>
-          </el-row>
-        </el-collapse-item>
-        <el-collapse-item title="账户联系人信息" name="2">
-          <el-row :gutter="40">
-            <el-col :span="12">
-              <el-form-item label="姓名" prop="nickName">
-                <el-input v-model="registerForm.nickName" type="text" auto-complete="off" placeholder="姓名">
-                </el-input>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="手机号码" prop="phonenumber">
-                <el-input v-model="registerForm.phonenumber" type="text" auto-complete="off" placeholder="手机号码">
-                </el-input>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="邮箱地址" prop="email">
-                <el-input v-model="registerForm.email" type="text" auto-complete="off" placeholder="邮箱地址">
-                </el-input>
-              </el-form-item>
-            </el-col>
-          </el-row>
-        </el-collapse-item>
+        <template v-if="tokenVisile">
+          <el-collapse-item title="账户信息" name="1">
+            <el-row :gutter="40">
+              <el-col :span="12">
+                <el-form-item label="账户名称" prop="userName">
+                  <el-input v-model="registerForm.userName" type="text" auto-complete="off" placeholder="账号">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="密码" prop="password">
+                  <el-input
+                    v-model="registerForm.password"
+                    type="password"
+                    auto-complete="new-password"
+                    placeholder="密码">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="确认密码" prop="confirmPassword">
+                  <el-input
+                    v-model="registerForm.confirmPassword"
+                    type="password"
+                    auto-complete="new-password"
+                    placeholder="确认密码">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+            </el-row>
+          </el-collapse-item>
+          <el-collapse-item title="账户联系人信息" name="2">
+            <el-row :gutter="40">
+              <el-col :span="12">
+                <el-form-item label="姓名" prop="nickName">
+                  <el-input v-model="registerForm.nickName" type="text" auto-complete="off" placeholder="姓名">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="手机号码" prop="phonenumber">
+                  <el-input v-model="registerForm.phonenumber" type="text" auto-complete="off" placeholder="手机号码">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="邮箱地址" prop="email">
+                  <el-input v-model="registerForm.email" type="text" auto-complete="off" placeholder="邮箱地址">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+            </el-row>
+          </el-collapse-item>
+        </template>    
         <el-collapse-item title="企业信息" name="3">
           <el-row :gutter="40">
             <el-col :span="12">
@@ -333,7 +335,7 @@
 
 <script>
 
-import { getCodeImg, registerEntApi } from "@/api/login";
+import { getCodeImg, registerEntApi,getEntUserById } from "@/api/login";
 import {getProvinceDataApi,getRegionChildrenApi} from "@/api/common/common"
 import { regTypeOptions,mainProductsOptions,yesOrNoOptions } from "@/utils/dataFormat"
 import FileUpload from '@/components/FileUpload'
@@ -354,6 +356,7 @@ export default {
       }
     };
     return {
+      tokenVisile: false,
       limit: 1, //长传图片数量
       fileSize: 1,
       params: {
@@ -362,6 +365,7 @@ export default {
       },
       activeName: '1',
       provinceName: '',
+      token: '',
       cityName: '',
       districtName: '',
       codeUrl: "",
@@ -379,7 +383,7 @@ export default {
         provinceId: '',
         cityId: '',
         districtId: '',
-        mainProductArray: [],
+        mainProductArray: ['电子信息'],
         mainProducts: '',
         userName: "",
         password: "",
@@ -508,9 +512,47 @@ export default {
   },
   created() {
     this.getCode();
-    this.getProvinceData()
+    this.getProvinceData()
+    this.token = this.$route.params.token || ''
+    if(this.token) {
+      this.getData()
+      this.tokenVisile = false
+      this.activeName = '3'
+    }else {
+      this.tokenVisile = true
+      this.activeName = '1'
+    }
   },
   methods: {
+    getData() {
+      this.loading = true
+      getEntUserById(this.token).then(res => {
+        this.loading = false
+        this.registerForm = res.data || {}
+        let mainProductArray = this.registerForm.mainProducts.split(',') || ['电子信息'];
+        this.$set(this.registerForm, 'mainProductArray', mainProductArray);
+        this.registerForm.serviceDate = []
+        if(this.registerForm.startDate) {
+          this.registerForm.serviceDate[0] = this.registerForm.startDate
+          this.registerForm.serviceDate[1] = this.registerForm.endDate
+        }
+        this.registerForm.provinceId = res.data.provinceId
+        if(this.registerForm.provinceId) {
+          getRegionChildrenApi(this.registerForm.provinceId).then(res => {
+            if(res.code == 200) {
+              this.cityDataList = res.data
+            }
+          })
+        }
+        if(this.registerForm.cityId) {
+          getRegionChildrenApi(this.registerForm.cityId).then(res => {
+            if(res.code == 200) {
+              this.districtDataList = res.data
+            }
+          })
+        }
+      })
+    },
     handleSuccess(file) {
       this.registerForm.licensePath = file.url;
       this.registerForm.fileName = file.name;

+ 3 - 3
src/views/enterprise/ent/index.vue

@@ -69,9 +69,9 @@
       <!-- <el-table-column label="市" prop="cityName" align="center" width="120" />
       <el-table-column label="区" prop="districtName" align="center" width="120" /> -->
       <el-table-column label="社会信用代码" prop="license" align="center" width="160"></el-table-column>
-      <el-table-column label="联系人" align="center" prop="linkName" width="150"></el-table-column>
-      <el-table-column label="联系人手机号" prop="linkMobile" align="center" width="160"></el-table-column>
-      <el-table-column label="联系人邮箱" prop="linkEmail" align="center" width="180"></el-table-column>
+      <el-table-column label="联系人" align="center" prop="nickName" width="150"></el-table-column>
+      <el-table-column label="联系人手机号" prop="phonenumber" align="center" width="160"></el-table-column>
+      <el-table-column label="联系人邮箱" prop="email" align="center" width="180"></el-table-column>
       <el-table-column label="创建时间" prop="createTime" align="center" width="160"></el-table-column>
       <el-table-column label="服务时间" align="center" width="180">
         <template slot-scope="scope">

+ 8 - 1
src/views/enterprise/project/components/addProject.vue

@@ -1,6 +1,6 @@
 <template>
   <el-dialog title="新增项目" :visible.sync="open" width="500px" append-to-body>
-    <el-form ref="form" :model="form" :rules="rules" label-width="90px">
+    <el-form ref="form" :model="form" :rules="rules" label-width="100px">
       <el-form-item label="项目编号" prop="projectNo">
         <el-input v-model="form.projectNo"></el-input>
       </el-form-item>
@@ -20,6 +20,11 @@
           <el-option v-for="(item, index) in finUserOptions" :key="index" :value="item.userId" :label="item.userName"></el-option>
         </el-select>
       </el-form-item>
+      <el-form-item label="是否跨年项目" prop="overYearFlag">
+        <el-radio-group v-model="form.overYearFlag">
+          <el-radio v-for="(item, index) in yesOrNoOptions" :key="index" :label="item.dictValue">{{item.dictLabel}}</el-radio>
+        </el-radio-group>
+      </el-form-item>
         <el-form-item label="项目日期" prop="projectTime">
           <el-date-picker v-model="form.projectTime" placeholder="选择日期" type="daterange" value-format="yyyy-MM-dd" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
         </el-form-item>
@@ -34,6 +39,7 @@
 <script>
   import {addProjectApi, listUserListApi} from "@/api/enterprise/project/project"
   import { listUserApi } from "@/api/enterprise/employee/employee"
+  import { yesOrNoOptions } from "@/utils/dataFormat"
   export default {
     data () {
       return {
@@ -42,6 +48,7 @@
         techUserOptions: [],
         finUserOptions: [],
         userType: '',
+        yesOrNoOptions: yesOrNoOptions,
         form: {
           projectNo: '',
           projectName: '',

+ 5 - 1
src/views/enterprise/project/index.vue

@@ -50,7 +50,11 @@
       <el-table-column label="企业名称" prop="entName" align="center" width="120"/>
       <el-table-column label="社会信用代码" prop="license" align="center" width="120" />
       <el-table-column label="项目年份" prop="projectYear" align="center" width="120" />
-      <el-table-column label="项目跨年" prop="overYearFlag" align="center" width="120"></el-table-column>
+      <el-table-column label="项目周期" align="center" width="200">
+        <template slot-scope="scope">
+          <span>{{scope.row.projectStartDate}} - {{scope.row.projectEndDate}}</span>
+        </template>
+      </el-table-column>
       <el-table-column label="创建时间" align="center" prop="createTime" width="160"></el-table-column>
       <el-table-column label="资料完善度" prop="linkEmail" align="center" width="340">
         <template slot-scope="scope">

+ 4 - 6
src/views/login.vue

@@ -183,20 +183,18 @@ export default {
           this.$store.dispatch("Login", this.loginForm).then((res) => {
             this.$router.push({ path: this.redirect || "/" }).catch(()=>{});
           }).catch((err) => {
-            console.log("1111111111111111s")
-            console.log(err)
             this.errMsg = err
             if(err == -2) {
               this.pwdVisible = true
-            }else if(err == -1) {
+            }
+            if(err.code == -1) {
               this.$alert("审核资料已驳回,请重新提交", '系统提示', {
                 dangerouslyUseHTMLString: true,
                 type: 'success'
               }).then(() => {
-                this.$router.push("/login");
+                this.$router.push({name: 'registerFirst', params: {token: err.token}});
               }).catch(() => {});
-            }
-
+            }
             this.loading = false;
             if (this.captchaOnOff) {
               this.getCode();