liuxiangqi пре 1 година
родитељ
комит
cb7cffd0e1

+ 19 - 9
src/layout/components/Navbar.vue

@@ -43,7 +43,8 @@ import Breadcrumb from '@/components/Breadcrumb'
 import TopNav from '@/components/TopNav'
 import Hamburger from '@/components/Hamburger'
 import Screenfull from '@/components/Screenfull'
-import SizeSelect from '@/components/SizeSelect'
+import SizeSelect from '@/components/SizeSelect'
+import {userAllListOptions, getLabel} from '@/utils/dataFormat'
 export default {
   components: {
     Breadcrumb,
@@ -79,16 +80,25 @@ export default {
     },
     userType() {
       let userType = this.$store.state.user.userType
-      if (userType == 'ADMIN') {
-        return '科德用户'
-      } else if(userType == 'GOV_PROV' || userType == 'GOV_CITY' || userType == 'GOV_DISTRI') {
-        return '政务用户'
-      } else if(userType == 'ENT_ADMIN' || userType == 'ENT_TECH' || userType == 'ENT_ADMIN_TECH' || userType == 'ENT_FIN' || userType == 'ENT_ADMIN_FIN') {
-        return '企业用户'
-      }
+      // if (userType == 'ADMIN') {
+      //   return '科德用户'
+      // } else if(userType == 'GOV_PROV' || userType == 'GOV_CITY' || userType == 'GOV_DISTRI') {
+      //   return '政务用户'
+      // } else if(userType == 'ENT_ADMIN' || userType == 'ENT_TECH' || userType == 'ENT_ADMIN_TECH' || userType == 'ENT_FIN' || userType == 'ENT_ADMIN_FIN') {
+      //   return '企业用户'
+      // } else if(user)
+      return getLabel(userAllListOptions, userType)
     }
+  },
+  data() {
+    return {
+      userAllListOptions: userAllListOptions
+    }
   },
-  methods: {
+  methods: {
+    // reportStateFormat(row, col, val, index) {
+    //   return getLabel(userAllListOptions, val)
+    // },
     toggleSideBar() {
       this.$store.dispatch('app/toggleSideBar')
     },

+ 30 - 5
src/utils/dataFormat.js

@@ -36,7 +36,7 @@ export const techScopeOptions = [
   { dictLabel: '资源与环境', dictValue: '7'},
   { dictLabel: '先进制造与自动化', dictValue: '8'},
   { dictLabel: '其他', dictValue: '9'},
-  { dictLabel: '高新技术改造传统产业', dictValue: '9'}
+  { dictLabel: '高新技术改造传统产业', dictValue: '10'}
 ]
 
 export const userListOptions = [
@@ -47,12 +47,19 @@ export const userListOptions = [
 ]
 
 export const userAllListOptions = [
+  { dictLabel: '科德管理员', dictValue: 'ADMIN'},
   { dictLabel: '企业管理员', dictValue: 'ENT_ADMIN'},
-  { dictLabel: '技术员', dictValue: 'ENT_TECH'},
-  { dictLabel: '技术负责人', dictValue: 'ENT_ADMIN_TECH'},
-  { dictLabel: '财务员', dictValue: 'ENT_FIN'},
-  { dictLabel: '财务负责人', dictValue: 'ENT_ADMIN_FIN'}
+  { dictLabel: '企业技术人员', dictValue: 'ENT_TECH'},
+  { dictLabel: '企业技术负责人', dictValue: 'ENT_ADMIN_TECH'},
+  { dictLabel: '企业财务人员', dictValue: 'ENT_FIN'},
+  { dictLabel: '企业财务负责人', dictValue: 'ENT_ADMIN_FIN'},
+  { dictLabel: '政务用户', dictValue: 'GOV_PROV'},
+  { dictLabel: '政务用户', dictValue: 'GOV_CITY'},
+  { dictLabel: '政务用户', dictValue: 'GOV_DISTRI'},
 ]
+// ADMIN,
+// GOV_PROV  GOV_CITY  GOV_DISTRI,
+// ENT_ADMIN  ENT_TECH  ENT_ADMIN_TECH  ENT_FIN  ENT_ADMIN_FIN;
 /**
  * 服务状态 1:待审核 2:服务中 3:已过期 4:冻结
  */
@@ -349,6 +356,24 @@ export const projectTypeOptions = [
   { dictLabel: '合作研发', dictValue: '3'},
   { dictLabel: '自主研发(含委托研发)', dictValue: '4'},
 ]
+
+export const industryTypeOptions = [
+  { dictLabel: '激光', dictValue: 1},
+  { dictLabel: '新型显示', dictValue: 2},
+  { dictLabel: '新一代移动通信', dictValue: 3},
+  { dictLabel: '数控机床', dictValue: 4},
+  { dictLabel: '地球空间信息', dictValue: 5},
+  { dictLabel: '半导体及规模集成电路', dictValue: 6},
+  { dictLabel: '软件及服务外包', dictValue: 7},
+  { dictLabel: '新能源', dictValue: 8},
+  { dictLabel: '新材料', dictValue: 9},
+  { dictLabel: '新动力汽车', dictValue: 10},
+  { dictLabel: '生物医药', dictValue: 11},
+  { dictLabel: '现代物流', dictValue: 12},
+  { dictLabel: '动漫', dictValue: 13},
+  { dictLabel: '节能环保装备', dictValue: 14},
+  { dictLabel: '金融服务', dictValue: 15},
+]
 export function getLabel(list, val) {
   for (let i = 0; i < list.length; i++) {
     if (val == list[i].dictValue) {

+ 2 - 2
src/views/admin/project/index.vue

@@ -31,9 +31,9 @@
           <el-input v-model="queryParams.license" style="width: 200px;" placeholder="请输入社会信用代码" clearable></el-input>
         </el-form-item>
       </template>
-      <el-form-item label="项目编号" prop="projectNo">
+      <!-- <el-form-item label="项目编号" prop="projectNo">
         <el-input v-model="queryParams.projectNo" style="width: 200px;" placeholder="请输入项目编号" clearable></el-input>
-      </el-form-item>
+      </el-form-item> -->
       <el-form-item label="项目名称" prop="projectName">
         <el-input v-model="queryParams.projectName" style="width: 200px;" placeholder="请输入项目名称" clearable></el-input>
       </el-form-item>

+ 1 - 1
src/views/common/registerFirst.vue

@@ -423,7 +423,7 @@ export default {
         ],
         address: [
           { required: true, trigger: "blur", message: "请输入通信地址" },
-          {max: 200, message: '最多输入50个字符', trigger: 'blur' }
+          {max: 200, message: '最多输入200个字符', trigger: 'blur' }
         ],
         zipCode: [
           { required: true, trigger: "blur", message: "请输入邮政编码" },

+ 29 - 8
src/views/enterprise/declare/index.vue

@@ -46,13 +46,25 @@
     </h3>
     <el-table v-loading="loading" :data="list" border @selection-change="handleSelectionChange" style="width: 100%">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="项目编号" prop="projectNo" align="center" />
-      <el-table-column label="项目名称" prop="projectName" align="center"></el-table-column>
-      <el-table-column label="企业名称" prop="entName" align="center"/>
-      <el-table-column label="社会信用代码" prop="creditCode" align="center"/>
-      <el-table-column label="项目年份" prop="projectYear" align="center"/>
-      <el-table-column label="项目跨年" prop="overYearFlag" align="center" :formatter="fmtOverYear"></el-table-column>
-      <el-table-column label="创建时间" align="center" prop="createTime" width="160"></el-table-column>
+      <el-table-column type="index" width="80" label="序号" align="center"></el-table-column>
+      <el-table-column label="加计扣除年度" prop="projectYear" align="center" width="120"></el-table-column>
+      <el-table-column label="项目名称" prop="projectName" align="center" width="180"></el-table-column>
+      <el-table-column label="企业名称" prop="entName" align="center" width="180"/>
+      <el-table-column label="统一社会信用代码" prop="creditCode" align="center" width="180" />
+      <el-table-column label="是否跨年项目" prop="overYearFlag" :formatter="overYearFormat" align="center"></el-table-column>
+      <!-- <el-table-column label="跨年申报"></el-table-column> -->
+      <el-table-column label="是否追溯项目" prop="backFlag" :formatter="flagFormat" align="center"></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="资料完善度" prop="linkEmail" align="center" width="220">
+        <template slot-scope="scope">
+          <span>技术 {{scope.row.techRate}} 财务 {{scope.row.finRate}}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="申报状态" prop="reportState" align="center" width="100" :formatter="reportStateFormat"></el-table-column>
       <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="180" fixed="right">
         <template slot-scope="scope">
           <el-button type="text" @click="handleView(scope.row)">查看</el-button>
@@ -76,7 +88,7 @@
 <script>
   import {getProvinceDataApi,getRegionChildrenApi} from "@/api/common/common"
   import {listDeclareApi,listDeclareCommonApi,projectBackApi} from '@/api/enterprise/declare/declare'
-  import {entStateOptions, getLabel, authStateOptions,yesOrNoOptions} from '@/utils/dataFormat'
+  import {entStateOptions, getLabel, authStateOptions,yesOrNoOptions,reportStateOptions,booleanOptions} from '@/utils/dataFormat'
   import { downLoadZip } from "@/utils/zipdownload";
   import { checkRole } from "@/utils/permission"; // 权限判断函数
   import {listProjectApi} from "@/api/enterprise/project/project";
@@ -225,6 +237,15 @@
       },
       fmtOverYear(row, col, val, index) {
         return getLabel(yesOrNoOptions, val)
+      },
+      reportStateFormat(row, col, val, index) {
+        return getLabel(reportStateOptions, val)
+      },
+      flagFormat(row, col, val, index) {
+        return getLabel(booleanOptions, val)
+      },
+      overYearFormat(row, col, val, index) {
+        return getLabel(booleanOptions, val)
       }
     }
   }

+ 1 - 1
src/views/enterprise/ent/edit.vue

@@ -480,7 +480,7 @@ export default {
         address: [
           { required: true, trigger: "blur", message: "请输入通信地址" },
           { validator: validAdress, trigger: 'blur'},
-          {max: 200, message: '最多输入50个字符', trigger: 'blur' }
+          {max: 200, message: '最多输入200个字符', trigger: 'blur' }
         ],
         zipCode: [
           { required: true, trigger: "blur", message: "请输入邮政编码" },

+ 4 - 4
src/views/enterprise/project/components/addProject.vue

@@ -77,10 +77,10 @@
           projectEndDate: ''
         },
         rules: {
-          projectNo: [
-            {required: true, message: '请输入项目编号', trigger: 'blur'},
-            {max: 100, message: '最多输入100个字符', trigger: 'blur' }
-          ],
+          // projectNo: [
+          //   {required: true, message: '请输入项目编号', trigger: 'blur'},
+          //   {max: 100, message: '最多输入100个字符', trigger: 'blur' }
+          // ],
           projectName: [
             {required: true, message: '请输入项目名称', trigger: 'blur'},
             {max: 100, message: '最多输入100个字符', trigger: 'blur' }

+ 32 - 21
src/views/enterprise/project/components/ent-edit.vue

@@ -254,6 +254,17 @@
                </el-radio-group>
              </el-form-item>
            </td>
+           <template v-if="form.industry">
+             <th><span style="color: red;">*</span>所属新兴产业领域</th>
+             <td>
+               <el-form-item prop="industryType" label-width="0">
+                 <el-select v-model="form.industryType" filterable :disabled="disabledVisible">
+                   <el-option v-for="(item, index) in industryTypeOptions" :key="index" :value="item.dictValue" :label="item.dictLabel"></el-option>
+                 </el-select>
+               </el-form-item>
+             </td>
+           </template>
+
         </tr>
       </table>
       <template v-if="type == 'update'">
@@ -272,7 +283,7 @@
 
 <script>
 import { editProjectApi,getProjectInfoApi,synTechApi,draftApi,yearApi,declareUpdateApi,devProjectApi } from "@/api/enterprise/project/project"
-import { techScopeOptions,yesOrNoOptions,businessIndustryOptions,techSourceOptions,devOptions,successOptions,projectTypeOptions,booleanOptions } from "@/utils/dataFormat"
+import { techScopeOptions,yesOrNoOptions,businessIndustryOptions,techSourceOptions,devOptions,successOptions,projectTypeOptions,booleanOptions,industryTypeOptions } from "@/utils/dataFormat"
 import FileUpload from '@/components/FileUpload'
 import { listEntUserApi } from "@/api/ent/ent"
 import { validAmount,validNumber,validPercentage} from '@/utils/validate'
@@ -330,6 +341,7 @@ export default {
       cityName: '',
       districtName: '',
       codeUrl: "",
+      industryTypeOptions: industryTypeOptions,
       techScopeOptions: techScopeOptions,
       techSourceOptions: techSourceOptions,
       devOptions: devOptions,
@@ -351,7 +363,6 @@ export default {
         projectOwner: 2,
         projectStartDate: '',
         projectEndDate: '',
-        industryArray: [],
         industry: '',
         headAddVOList: [],
         projectYear: '',
@@ -540,30 +551,30 @@ export default {
     info: {
       immediate: true,
       handler (obj) {
-        let infoObj = Object.assign({}, obj)
-        if(infoObj) {
-          this.form.projectDate = infoObj.projectDate
-          this.form.projectType = infoObj.projectType + ''
-          this.form.projectYear = infoObj.projectYear
-          this.form.projectName = infoObj.projectName
-          this.form.developFlag = infoObj.developFlag
-          this.form.headAddVOList = infoObj.headAddVOList || []
-          this.form.industry = infoObj.industry
+        if(obj) {
+          this.form = Object.assign({}, this.form, obj)
+          // this.form.projectDate = infoObj.projectDate
+          // this.form.projectType = infoObj.projectType + ''
+          // this.form.projectYear = infoObj.projectYear
+          // this.form.projectName = infoObj.projectName
+          // this.form.developFlag = infoObj.developFlag
+          // this.form.headAddVOList = infoObj.headAddVOList || []
+          // this.form.industry = infoObj.industry
           this.form.fileName = '高新证书'
-          let arr = ['电子信息']
-          this.$set(this.form, 'techScopeArray', arr)
+          // let arr = ['电子信息']
+          // this.$set(this.form, 'techScopeArray', arr)
 
-          if(infoObj.technicalField) {
-            this.form.technicalFieldArray = infoObj.technicalField.split(',') || []
+          if(obj.technicalField) {
+            this.form.technicalFieldArray = obj.technicalField.split(',') || []
           }
-          if(infoObj.technicalSource) {
-            this.form.technicalSourceArray = infoObj.technicalSource.split(',') || []
+          if(obj.technicalSource) {
+            this.form.technicalSourceArray = obj.technicalSource.split(',') || []
           }
-          if(infoObj.technicalForm) {
-            this.form.technicalFormArray = infoObj.technicalForm.split(',') || []
+          if(obj.technicalForm) {
+            this.form.technicalFormArray = obj.technicalForm.split(',') || []
           }
-          if(infoObj.projectStartDate && infoObj.projectEndDate) {
-            this.form.projectTime = infoObj.projectStartDate + ' 至 ' + infoObj.projectEndDate
+          if(obj.projectStartDate && obj.projectEndDate) {
+            this.form.projectTime = obj.projectStartDate + ' 至 ' + obj.projectEndDate
           }
 
         }

+ 18 - 23
src/views/enterprise/project/components/year-edit.vue

@@ -441,12 +441,6 @@ export default {
           this.$set(this.form, 'linkPhone', res.data.linkPhone)
           this.$set(this.form, 'linkMobile', res.data.linkMobile)
           this.$set(this.form, 'address', res.data.address)
-          // this.form.entName = res.data.entName
-          // this.form.linkName = res.data.linkName
-          // this.form.linkPhone = res.data.linkPhone
-          // this.form.linkMobile = res.data.linkMobile
-          // this.form.address = res.data.address
-          // this.form = res.data
         }
       })
     },
@@ -454,7 +448,7 @@ export default {
     handleYear(e) {
       getYearApi(e).then(res => {
         if(res.data) {
-          this.form = res.data
+          this.form = Object.assign({}, this.form, res.data)
           this.form.fileName = '高新证书'
           if(this.form.techStartDate && this.form.techEndDate) {
             this.form.licenseTime = this.form.techStartDate + ' 至 ' + this.form.techEndDate
@@ -475,24 +469,26 @@ export default {
     //根据企业id获取年度信息
     getYearData(projectYear) {
       getYearDataApi(projectYear, this.entId).then(res => {
-        // this.form = res.data
-        this.form = Object.assign({}, this.form, res.data)
-        this.$set(this.form, 'projectYear', res.data.projectYear)
-        this.form.fileName = '高新证书'
-        if(this.form.techStartDate && this.form.techEndDate) {
-          this.form.licenseTime = this.form.techStartDate + ' 至 ' + this.form.techEndDate
-        }
-        if(this.form.techScope) {
-          let techScope = this.form.techScope.split(',') || []
-          this.$set(this.form, 'techScopeArray', techScope)
-        }
-        if(this.form.industry) {
-          let industryArray = this.form.industry.split(',') || [];
-          this.$set(this.form, 'industryArray', industryArray);
+        if(res.data) {
+          this.form = Object.assign({}, this.form, res.data)
+          this.form.fileName = '高新证书'
+          if(this.form.techStartDate && this.form.techEndDate) {
+            this.form.licenseTime = this.form.techStartDate + ' 至 ' + this.form.techEndDate
+          }
+          if(this.form.techScope) {
+            let techScope = this.form.techScope.split(',') || []
+            this.$set(this.form, 'techScopeArray', techScope)
+          }
+          if(this.form.industry) {
+            let industryArray = this.form.industry.split(',') || [];
+            this.$set(this.form, 'industryArray', industryArray);
+          }
+        }else {
+          this.$set(this.form, 'projectYear', projectYear)
         }
+
       })
     },
-
     getList(year) {
       this.tableLoading = true;
       let params = {
@@ -501,7 +497,6 @@ export default {
       }
       listProjectApi(params).then(response => {
         this.list = response.data.records;
-        this.total = response.data.total;
         this.tableLoading = false;
       });
     },

+ 2 - 2
src/views/enterprise/project/index.vue

@@ -1,9 +1,9 @@
 <template>
   <div class="app-container">
     <el-form :model="queryParams" ref="queryForm" :inline="true" size="small">
-      <el-form-item label="项目编号" prop="projectNo">
+      <!-- <el-form-item label="项目编号" prop="projectNo">
         <el-input v-model="queryParams.projectNo" style="width: 200px;" placeholder="请输入项目编号" clearable></el-input>
-      </el-form-item>
+      </el-form-item> -->
       <el-form-item label="项目名称" prop="projectName">
         <el-input v-model="queryParams.projectName" style="width: 200px;" placeholder="请输入项目名称" clearable></el-input>
       </el-form-item>