lrf402788946 4 éve
szülő
commit
26ccae3a86

+ 0 - 24
src/router/index.js

@@ -289,30 +289,6 @@ const web = [
         meta: { title: '高企申报-查看审核' },
         component: () => import('../views/adminCenter/company/cognizance/info.vue'),
       },
-      {
-        path: '/adminCenter/company/subsidy',
-        name: 'company_subsidy_index',
-        meta: { title: '研发补贴' },
-        component: () => import('../views/adminCenter/company/subsidy/index.vue'),
-      },
-      {
-        path: '/adminCenter/company/subsidy/detail',
-        name: 'company_subsidy_detail',
-        meta: { title: '研发补贴-信息管理' },
-        component: () => import('../views/adminCenter/company/subsidy/detail.vue'),
-      },
-      {
-        path: '/adminCenter/company/reward',
-        name: 'company_reward_index',
-        meta: { title: '奖励兑现' },
-        component: () => import('../views/adminCenter/company/reward/index.vue'),
-      },
-      {
-        path: '/adminCenter/company/reward/detail',
-        name: 'company_reward_detail',
-        meta: { title: '奖励兑现-信息管理' },
-        component: () => import('../views/adminCenter/company/reward/detail.vue'),
-      },
       {
         path: '/adminCenter/company/coupons',
         name: 'company_coupons_index',

+ 2 - 0
src/store/index.js

@@ -17,6 +17,7 @@ import statistics from '@common/src/store/statistics';
 import adminLogin from './live/adminLogin';
 import organization from './live/organization';
 import policy from './live/policy';
+import policyApply from './live/policy_apply';
 import ticket from './live/ticket';
 
 Vue.use(Vuex);
@@ -42,5 +43,6 @@ export default new Vuex.Store({
     organization,
     policy,
     ticket,
+    policyApply,
   },
 });

+ 53 - 0
src/store/live/policy_apply.js

@@ -0,0 +1,53 @@
+import Vue from 'vue';
+import Vuex from 'vuex';
+import _ from 'lodash';
+Vue.use(Vuex);
+const api = {
+  interface: `/api/live/v0/cysci/policyApply`,
+};
+const state = () => ({});
+const mutations = {};
+
+const actions = {
+  async query({ commit }, { skip = 0, limit, ...info } = {}) {
+    const res = await this.$axios.$get(`${api.interface}`, {
+      skip,
+      limit,
+      ...info,
+    });
+    return res;
+  },
+  async create({ commit }, payload) {
+    const res = await this.$axios.$post(`${api.interface}`, payload);
+    return res;
+  },
+  async fetch({ commit }, payload) {
+    const res = await this.$axios.$get(`${api.interface}/${payload}`);
+    return res;
+  },
+  async update({ commit }, { id, ...data }) {
+    const res = await this.$axios.$post(`${api.interface}/update/${id}`, data);
+    return res;
+  },
+
+  async delete({ commit }, payload) {
+    const res = await this.$axios.$delete(`${api.interface}/${payload}`);
+    return res;
+  },
+  // 获取行政区划
+  async xzqh({ commit }, payload) {
+    const res = await this.$axios.$get(`${api.interface}/xzqh`, payload);
+    return res;
+  },
+  // 用code换该项
+  async getItemByCode({ commit }, payload) {
+    const res = await this.$axios.$post(`${api.interface}/name`, payload);
+    return res;
+  },
+};
+export default {
+  namespaced: true,
+  state,
+  mutations,
+  actions,
+};

+ 9 - 72
src/views/adminCenter/company/coupons/detail.vue

@@ -10,7 +10,8 @@
             <el-form :model="form" :rules="rules" ref="form" label-width="100px">
               <el-col :span="24" class="text">
                 <el-form-item label="申请单位" prop="company">
-                  <el-input v-model="form.company" placeholder="请输入申请单位"></el-input>
+                  {{ form.company }}
+                  <!-- <el-input v-model="form.company" placeholder="请输入申请单位"></el-input> -->
                 </el-form-item>
               </el-col>
               <el-col :span="24" class="text">
@@ -38,69 +39,6 @@
                   <e-upload url="/files/cysci/qylr_file/upload" :limit="1" v-model="form.qylr" type="text"></e-upload>
                 </el-form-item>
               </el-col>
-              <el-col :span="24" class="text">
-                <el-form-item label="申领状态" prop="status">
-                  <el-radio-group v-model="form.status" disabled>
-                    <el-radio v-for="(i, index) in statusList" :key="index" :label="i.value">{{ i.label }}</el-radio>
-                  </el-radio-group>
-                </el-form-item>
-              </el-col>
-              <el-col :span="24" class="text">
-                <el-form-item label="申领意见" prop="desc">
-                  <el-input v-model="form.desc" type="textarea" :autosize="{ minRows: 4, maxRows: 6 }" show-word-limit disabled></el-input>
-                </el-form-item>
-              </el-col>
-              <el-col :span="24" class="text" v-if="form.status == '1'">
-                <el-form-item label="创新券">
-                  <el-col :span="10" class="coupons">
-                    <el-col :span="18" class="coupons_1">
-                      <el-col :span="24" class="coupons_1one">
-                        <el-col :span="3" class="image">
-                          <el-image :src="logo"></el-image>
-                        </el-col>
-                        <el-col :span="21" class="title"> 环南湖科创先导区双创服务平台 </el-col>
-                      </el-col>
-                      <el-col :span="24" class="coupons_1two"> 科技创新券 </el-col>
-                      <el-col :span="24" class="coupons_1thr">
-                        <p>
-                          有效期:
-                          <span>{{ getDate(form.create_time, '1') }}</span>
-                          -<span>{{ getDate('2021', '2') }}</span>
-                        </p>
-                        <p>
-                          NO.<span>{{ getDate(form.create_time, '3') }}</span>
-                        </p>
-                      </el-col>
-                    </el-col>
-                    <el-col :span="6" class="coupons_2">
-                      <p>科技创新券</p>
-                      <p><span>伍万圆</span></p>
-                    </el-col>
-                  </el-col>
-                  <!-- <el-col :span="10" class="coupons">
-                    <el-col :span="24" class="coupons_1">
-                      <el-col :span="3" class="image">
-                        <el-image :src="logo"></el-image>
-                      </el-col>
-                      <el-col :span="21" class="title"> 环南湖科创先导区双创服务平台 </el-col>
-                    </el-col>
-                    <el-col :span="24" class="coupons_2">
-                      <p>科技创新券</p>
-                      <p>伍万圆</p>
-                    </el-col>
-                    <el-col :span="24" class="coupons_3">
-                      <p>
-                        有效期:
-                        <span>{{ getDate(form.create_time, '1') }}</span>
-                        -<span>{{ getDate('2021', '2') }}</span>
-                      </p>
-                      <p>
-                        NO.<span>{{ getDate(form.create_time, '3') }}</span>
-                      </p>
-                    </el-col>
-                  </el-col> -->
-                </el-form-item>
-              </el-col>
               <el-col :span="24" class="formBtn" v-if="form.status == ''">
                 <el-button type="danger" size="mini" @click="back">取消申领</el-button>
                 <el-button type="primary" size="mini" @click="onSubmit('form')">提交资料</el-button>
@@ -118,7 +56,7 @@ const _ = require('lodash');
 const moment = require('moment');
 const { policyType, policyStatus } = require('@common/dict/index');
 import { mapState, createNamespacedHelpers } from 'vuex';
-const { mapActions: policy } = createNamespacedHelpers('policy');
+const { mapActions: policyApply } = createNamespacedHelpers('policyApply');
 moment.locale('zh-cn');
 export default {
   name: 'detail',
@@ -139,16 +77,12 @@ export default {
     };
   },
   created() {
+    if (this.user && this.user.name) this.form.company = this.user.name;
+    if (this.policy_id) this.form.policy_id = this.policy_id;
     if (this.id) this.search();
   },
   methods: {
-    ...policy(['fetch', 'create']),
-    async search() {
-      const res = await this.fetch(this.id);
-      if (this.$checkRes(res)) {
-        this.$set(this, `form`, res.data);
-      }
-    },
+    ...policyApply(['create']),
     onSubmit(formName) {
       this.$refs[formName].validate(async (valid) => {
         if (valid) {
@@ -191,6 +125,9 @@ export default {
     id() {
       return this.$route.query.id;
     },
+    policy_id() {
+      return this.$route.query.policy_id;
+    },
   },
   metaInfo() {
     return { title: this.$route.meta.title };

+ 31 - 22
src/views/adminCenter/company/coupons/index.vue

@@ -3,56 +3,57 @@
     <el-row>
       <el-col :span="24" class="main">
         <el-col :span="24" class="one">
-          <data-table :fields="fields" :opera="opera" :data="list" :total="total" @query="search" @view="toView">
-            <template #selfbtn>
-              <el-button type="primary" size="mini" @click="toAdd">申请创新券服务</el-button>
-            </template>
+          <data-table :fields="fields" :opera="opera" :data="list" :total="total" @query="search" @apply="toView">
             <template #options="{ item }">
               <template v-if="item.prop === 'type'">
                 <el-option v-for="(i, index) in typeList" :key="`type-${index}`" :label="i" :value="i"></el-option>
               </template>
             </template>
+            <template #custom="{ item, row }">
+              <template v-if="item.prop === 'name'">
+                <el-link type="primary" @click="dialogDetail(row)">{{ row[item.prop] }}</el-link>
+              </template>
+            </template>
           </data-table>
         </el-col>
       </el-col>
     </el-row>
+    <el-dialog :title="detail.name" center :visible.sync="dialog" width="80%" :destroy-on-close="true" @close="toClose">
+      <info :form="detail" />
+    </el-dialog>
   </div>
 </template>
 
 <script>
+import info from './info.vue';
 const { policyType, policyStatus } = require('@common/dict/index');
 import { mapState, createNamespacedHelpers } from 'vuex';
 const { mapActions: policy } = createNamespacedHelpers('policy');
 export default {
   name: 'index',
   props: {},
-  components: {},
+  components: { info },
   data: function () {
     return {
       list: [],
       total: 0,
       opera: [
         {
-          label: '查看',
-          method: 'view',
+          label: '申请',
+          method: 'apply',
         },
       ],
       fields: [
-        { label: '申请单位', prop: 'company', filter: 'input' },
-        { label: '申请类型', prop: 'type' },
-        { label: '申请人', prop: 'apply_personal', filter: 'input' },
-        { label: '联系电话', prop: 'phone' },
-        {
-          label: '审核状态',
-          prop: 'status',
-          format: (i) => {
-            const r = policyStatus.find((f) => f.value === i);
-            if (r) return r.label;
-            else return '';
-          },
-        },
+        { label: '服务政策', prop: 'name', filter: 'input', custom: true },
+        { label: '折扣类型', prop: 'discount_type' },
+        { label: '使用服务类型', prop: 'use_type' },
+        { label: '期限', prop: 'limit_time' },
+        { label: '补贴比例', prop: 'scale' },
+        { label: '券总额度', prop: 'total_allowance' },
       ],
       typeList: policyType,
+      detail: {},
+      dialog: false,
     };
   },
   created() {
@@ -61,7 +62,7 @@ export default {
   methods: {
     ...policy(['query', 'delete']),
     async search({ skip = 0, limit = 10, ...info } = {}) {
-      info.type = '创新券';
+      // info.status = '1';
       const res = await this.query({ skip, limit, ...info });
       if (this.$checkRes(res)) {
         this.$set(this, `list`, res.data);
@@ -74,7 +75,15 @@ export default {
     },
     // 查看创新券
     toView({ data }) {
-      this.$router.push({ path: '/adminCenter/company/coupons/detail', query: { id: data._id } });
+      this.$router.push({ path: '/adminCenter/company/coupons/detail', query: { policy_id: data._id } });
+    },
+    dialogDetail(row) {
+      this.$set(this, 'detail', row);
+      this.dialog = true;
+    },
+    toClose() {
+      this.dialog = false;
+      this.detail = {};
     },
   },
   computed: {

+ 139 - 0
src/views/adminCenter/company/coupons/info.vue

@@ -0,0 +1,139 @@
+<template>
+  <div id="info">
+    <el-row>
+      <el-col :span="24" class="main">
+        <el-col :span="24" class="one">
+          <el-col :span="12" class="text">
+            <el-col :span="4" class="left">创新券名称</el-col>
+            <el-col :span="20" class="left">{{ form.name || '暂无' }} </el-col>
+          </el-col>
+
+          <el-col :span="12" class="text">
+            <el-col :span="4" class="left">创新券类型</el-col>
+            <el-col :span="20" class="left">{{ form.type || '暂无' }} </el-col>
+          </el-col>
+
+          <el-col :span="12" class="text">
+            <el-col :span="4" class="left">折扣类型</el-col>
+            <el-col :span="20" class="left">{{ form.discount_type || '暂无' }} </el-col>
+          </el-col>
+
+          <el-col :span="12" class="text">
+            <el-col :span="4" class="left">使用服务类型</el-col>
+            <el-col :span="20" class="left">{{ form.use_type || '暂无' }} </el-col>
+          </el-col>
+
+          <el-col :span="12" class="text">
+            <el-col :span="4" class="left">所属分类</el-col>
+            <el-col :span="20" class="left">{{ form.classify || '暂无' }} </el-col>
+          </el-col>
+
+          <el-col :span="12" class="text">
+            <el-col :span="4" class="left">期限</el-col>
+            <el-col :span="20" class="left">{{ form.limit_time || '暂无' }} 个/月 </el-col>
+          </el-col>
+
+          <el-col :span="12" class="text">
+            <el-col :span="4" class="left">补贴比例</el-col>
+            <el-col :span="20" class="left">{{ form.scale || '暂无' }} %</el-col>
+          </el-col>
+
+          <el-col :span="12" class="text">
+            <el-col :span="4" class="left">面额</el-col>
+            <el-col :span="20" class="left">{{ form.allowance || '暂无' }} 元</el-col>
+          </el-col>
+
+          <el-col :span="12" class="text">
+            <el-col :span="4" class="left">券总额度</el-col>
+            <el-col :span="20" class="left">{{ form.total_allowance || '暂无' }} 元</el-col>
+          </el-col>
+
+          <el-col :span="12" class="text">
+            <el-col :span="4" class="left">最大额度</el-col>
+            <el-col :span="20" class="left">{{ form.unit_allowance || '暂无' }} 元</el-col>
+          </el-col>
+
+          <el-col :span="24" class="langText">
+            <el-col :span="2" class="left">描述</el-col>
+            <el-col :span="22" class="left">{{ form.desc || '暂无' }} </el-col>
+          </el-col>
+        </el-col>
+      </el-col>
+    </el-row>
+  </div>
+</template>
+
+<script>
+import { mapState, createNamespacedHelpers } from 'vuex';
+export default {
+  name: 'info',
+  props: ['form'],
+  components: {},
+  data: function () {
+    return {};
+  },
+  created() {},
+  methods: {},
+  computed: {
+    ...mapState(['user', 'menuParams']),
+    pageTitle() {
+      return `${this.$route.meta.title}`;
+    },
+  },
+  metaInfo() {
+    return { title: this.$route.meta.title };
+  },
+};
+</script>
+
+<style lang="less" scoped>
+.main {
+  .one {
+    border: 1px solid #ccc;
+    border-radius: 10px;
+    padding: 20px;
+    .text {
+      .left {
+        padding: 10px;
+        border: 1px solid #333;
+      }
+      .left:nth-child(1) {
+        text-align: center;
+      }
+    }
+    .langText {
+      .left {
+        height: 106px;
+        overflow: hidden;
+        padding: 10px;
+        border: 1px solid #333;
+      }
+      .left:nth-child(1) {
+        text-align: center;
+        line-height: 75px;
+      }
+    }
+    .image {
+      .left {
+        padding: 10px;
+        border: 1px solid #333;
+        .el-image {
+          width: 150px;
+          height: 124px;
+          margin: 0 10px 0 0;
+        }
+      }
+      .left:nth-child(1) {
+        height: 150px;
+        overflow: hidden;
+        text-align: center;
+        line-height: 130px;
+      }
+    }
+    .btn {
+      text-align: center;
+      padding: 15px 0;
+    }
+  }
+}
+</style>

+ 0 - 172
src/views/adminCenter/company/reward/detail.vue

@@ -1,172 +0,0 @@
-<template>
-  <div id="detail">
-    <el-row>
-      <el-col :span="24" class="main">
-        <el-col :span="24" class="one">
-          <el-col :span="24" class="top">
-            <el-button type="primary" size="mini" @click="back">返回</el-button>
-          </el-col>
-          <el-col :span="24" class="down">
-            <el-form :model="form" :rules="rules" ref="form" label-width="100px">
-              <el-col :span="24" class="text">
-                <el-form-item label="申请单位" prop="company">
-                  <el-input v-model="form.company" placeholder="请输入申请单位"></el-input>
-                </el-form-item>
-              </el-col>
-              <el-col :span="24" class="text">
-                <el-form-item label="申请人" prop="apply_personal">
-                  <el-input v-model="form.apply_personal" placeholder="请输入申请人"></el-input>
-                </el-form-item>
-              </el-col>
-              <el-col :span="24" class="text">
-                <el-form-item label="联系电话" prop="phone">
-                  <el-input v-model="form.phone" placeholder="请输入联系电话"></el-input>
-                </el-form-item>
-              </el-col>
-              <el-col :span="24" class="text">
-                <el-form-item label="法人复印件" prop="qyfr">
-                  <e-upload url="/files/cysci/qyfr_file/upload" :limit="1" v-model="form.qyfr" type="text"></e-upload>
-                </el-form-item>
-              </el-col>
-              <el-col :span="24" class="text">
-                <el-form-item label="企业营业执照" prop="yyzz">
-                  <e-upload url="/files/cysci/yyzz_file/upload" :limit="1" v-model="form.yyzz" type="text"></e-upload>
-                </el-form-item>
-              </el-col>
-              <el-col :span="24" class="text">
-                <el-form-item label="企业利润表" prop="qylr">
-                  <e-upload url="/files/cysci/qylr_file/upload" :limit="1" v-model="form.qylr" type="text"></e-upload>
-                </el-form-item>
-              </el-col>
-              <el-col :span="24" class="text">
-                <el-form-item label="申领状态" prop="status">
-                  <el-radio-group v-model="form.status" disabled>
-                    <el-radio v-for="(i, index) in statusList" :key="index" :label="i.value">{{ i.label }}</el-radio>
-                  </el-radio-group>
-                </el-form-item>
-              </el-col>
-              <el-col :span="24" class="text">
-                <el-form-item label="申领意见" prop="desc">
-                  <el-input v-model="form.desc" type="textarea" :autosize="{ minRows: 4, maxRows: 6 }" show-word-limit disabled></el-input>
-                </el-form-item>
-              </el-col>
-              <el-col :span="24" class="formBtn" v-if="form.status == ''">
-                <el-button type="danger" size="mini" @click="back">取消申领</el-button>
-                <el-button type="primary" size="mini" @click="onSubmit('form')">提交资料</el-button>
-              </el-col>
-            </el-form>
-          </el-col>
-        </el-col>
-      </el-col>
-    </el-row>
-  </div>
-</template>
-
-<script>
-const _ = require('lodash');
-const { policyType, policyStatus } = require('@common/dict/index');
-import { mapState, createNamespacedHelpers } from 'vuex';
-const { mapActions: policy } = createNamespacedHelpers('policy');
-export default {
-  name: 'detail',
-  props: {},
-  components: {},
-  data: function () {
-    return {
-      form: {
-        qyfr: [],
-        yyzz: [],
-        qylr: [],
-        status: '',
-      },
-      rules: {},
-      typeList: policyType,
-      statusList: policyStatus,
-    };
-  },
-  created() {
-    if (this.id) this.search();
-  },
-  methods: {
-    ...policy(['fetch', 'create']),
-    async search() {
-      const res = await this.fetch(this.id);
-      if (this.$checkRes(res)) {
-        this.$set(this, `form`, res.data);
-      }
-    },
-    onSubmit(formName) {
-      this.$refs[formName].validate(async (valid) => {
-        if (valid) {
-          let data = this.form;
-          data.status = '0';
-          data.type = '奖励兑现';
-          let res = await this.create(data);
-          if (this.$checkRes(res)) {
-            this.$message({
-              message: '奖励兑现政策服务申报成功,请耐心等待结果',
-              type: 'success',
-            });
-            this.back();
-          }
-        } else {
-          console.log('error submit!!');
-          return false;
-        }
-      });
-    },
-    back() {
-      this.$router.push({ path: '/adminCenter/company/reward' });
-    },
-  },
-  computed: {
-    ...mapState(['user']),
-    id() {
-      return this.$route.query.id;
-    },
-  },
-  metaInfo() {
-    return { title: this.$route.meta.title };
-  },
-  watch: {
-    test: {
-      deep: true,
-      immediate: true,
-      handler(val) {},
-    },
-  },
-};
-</script>
-
-<style lang="less" scoped>
-.main {
-  border-radius: 10px;
-  box-shadow: 0 0 5px #cccccc;
-  padding: 20px;
-  .one {
-    .top {
-      text-align: right;
-      margin: 0 0 15px 0;
-    }
-    .down {
-      .text {
-        border-bottom: 1px dashed #333;
-      }
-      /deep/.el-form-item {
-        padding: 20px 10px;
-        margin: 0;
-      }
-      /deep/.el-input__inner {
-        border: 1px solid #333;
-      }
-      .formBtn {
-        text-align: center;
-        padding: 15px 0;
-      }
-    }
-  }
-}
-.main:hover {
-  box-shadow: 0 0 5px #409eff;
-}
-</style>

+ 0 - 105
src/views/adminCenter/company/reward/index.vue

@@ -1,105 +0,0 @@
-<template>
-  <div id="index">
-    <el-row>
-      <el-col :span="24" class="main">
-        <el-col :span="24" class="one">
-          <data-table :fields="fields" :opera="opera" :data="list" :total="total" @query="search" @view="toView">
-            <template #selfbtn>
-              <el-button type="primary" size="mini" @click="toAdd">申请奖励兑现服务</el-button>
-            </template>
-            <template #options="{ item }">
-              <template v-if="item.prop === 'type'">
-                <el-option v-for="(i, index) in typeList" :key="`type-${index}`" :label="i" :value="i"></el-option>
-              </template>
-            </template>
-          </data-table>
-        </el-col>
-      </el-col>
-    </el-row>
-  </div>
-</template>
-
-<script>
-const { policyType, policyStatus } = require('@common/dict/index');
-import { mapState, createNamespacedHelpers } from 'vuex';
-const { mapActions: policy } = createNamespacedHelpers('policy');
-export default {
-  name: 'index',
-  props: {},
-  components: {},
-  data: function () {
-    return {
-      list: [],
-      total: 0,
-      opera: [
-        {
-          label: '查看',
-          method: 'view',
-        },
-      ],
-      fields: [
-        { label: '申请单位', prop: 'company', filter: 'input' },
-        { label: '申请类型', prop: 'type' },
-        { label: '申请人', prop: 'apply_personal', filter: 'input' },
-        { label: '联系电话', prop: 'phone' },
-        {
-          label: '审核状态',
-          prop: 'status',
-          format: (i) => {
-            const r = policyStatus.find((f) => f.value === i);
-            if (r) return r.label;
-            else return '';
-          },
-        },
-      ],
-      typeList: policyType,
-    };
-  },
-  created() {
-    this.search();
-  },
-  methods: {
-    ...policy(['query', 'delete']),
-    async search({ skip = 0, limit = 10, ...info } = {}) {
-      info.type = '奖励兑现';
-      const res = await this.query({ skip, limit, ...info });
-      if (this.$checkRes(res)) {
-        this.$set(this, `list`, res.data);
-        this.$set(this, `total`, res.total);
-      }
-    },
-    // 申请政策服务
-    toAdd() {
-      this.$router.push({ path: '/adminCenter/company/reward/detail' });
-    },
-    // 查看政策服务
-    toView({ data }) {
-      this.$router.push({ path: '/adminCenter/company/reward/detail', query: { id: data._id } });
-    },
-  },
-  computed: {
-    ...mapState(['user']),
-  },
-  metaInfo() {
-    return { title: this.$route.meta.title };
-  },
-  watch: {
-    test: {
-      deep: true,
-      immediate: true,
-      handler(val) {},
-    },
-  },
-};
-</script>
-
-<style lang="less" scoped>
-.main {
-  border-radius: 10px;
-  box-shadow: 0 0 5px #cccccc;
-  padding: 20px;
-}
-.main:hover {
-  box-shadow: 0 0 5px #409eff;
-}
-</style>

+ 0 - 172
src/views/adminCenter/company/subsidy/detail.vue

@@ -1,172 +0,0 @@
-<template>
-  <div id="detail">
-    <el-row>
-      <el-col :span="24" class="main">
-        <el-col :span="24" class="one">
-          <el-col :span="24" class="top">
-            <el-button type="primary" size="mini" @click="back">返回</el-button>
-          </el-col>
-          <el-col :span="24" class="down">
-            <el-form :model="form" :rules="rules" ref="form" label-width="100px">
-              <el-col :span="24" class="text">
-                <el-form-item label="申请单位" prop="company">
-                  <el-input v-model="form.company" placeholder="请输入申请单位"></el-input>
-                </el-form-item>
-              </el-col>
-              <el-col :span="24" class="text">
-                <el-form-item label="申请人" prop="apply_personal">
-                  <el-input v-model="form.apply_personal" placeholder="请输入申请人"></el-input>
-                </el-form-item>
-              </el-col>
-              <el-col :span="24" class="text">
-                <el-form-item label="联系电话" prop="phone">
-                  <el-input v-model="form.phone" placeholder="请输入联系电话"></el-input>
-                </el-form-item>
-              </el-col>
-              <el-col :span="24" class="text">
-                <el-form-item label="法人复印件" prop="qyfr">
-                  <e-upload url="/files/cysci/qyfr_file/upload" :limit="1" v-model="form.qyfr" type="text"></e-upload>
-                </el-form-item>
-              </el-col>
-              <el-col :span="24" class="text">
-                <el-form-item label="企业营业执照" prop="yyzz">
-                  <e-upload url="/files/cysci/yyzz_file/upload" :limit="1" v-model="form.yyzz" type="text"></e-upload>
-                </el-form-item>
-              </el-col>
-              <el-col :span="24" class="text">
-                <el-form-item label="企业利润表" prop="qylr">
-                  <e-upload url="/files/cysci/qylr_file/upload" :limit="1" v-model="form.qylr" type="text"></e-upload>
-                </el-form-item>
-              </el-col>
-              <el-col :span="24" class="text">
-                <el-form-item label="申领状态" prop="status">
-                  <el-radio-group v-model="form.status" disabled>
-                    <el-radio v-for="(i, index) in statusList" :key="index" :label="i.value">{{ i.label }}</el-radio>
-                  </el-radio-group>
-                </el-form-item>
-              </el-col>
-              <el-col :span="24" class="text">
-                <el-form-item label="申领意见" prop="desc">
-                  <el-input v-model="form.desc" type="textarea" :autosize="{ minRows: 4, maxRows: 6 }" show-word-limit disabled></el-input>
-                </el-form-item>
-              </el-col>
-              <el-col :span="24" class="formBtn" v-if="form.status == ''">
-                <el-button type="danger" size="mini" @click="back">取消申领</el-button>
-                <el-button type="primary" size="mini" @click="onSubmit('form')">提交资料</el-button>
-              </el-col>
-            </el-form>
-          </el-col>
-        </el-col>
-      </el-col>
-    </el-row>
-  </div>
-</template>
-
-<script>
-const _ = require('lodash');
-const { policyType, policyStatus } = require('@common/dict/index');
-import { mapState, createNamespacedHelpers } from 'vuex';
-const { mapActions: policy } = createNamespacedHelpers('policy');
-export default {
-  name: 'detail',
-  props: {},
-  components: {},
-  data: function () {
-    return {
-      form: {
-        qyfr: [],
-        yyzz: [],
-        qylr: [],
-        status: '',
-      },
-      rules: {},
-      typeList: policyType,
-      statusList: policyStatus,
-    };
-  },
-  created() {
-    if (this.id) this.search();
-  },
-  methods: {
-    ...policy(['fetch', 'create']),
-    async search() {
-      const res = await this.fetch(this.id);
-      if (this.$checkRes(res)) {
-        this.$set(this, `form`, res.data);
-      }
-    },
-    onSubmit(formName) {
-      this.$refs[formName].validate(async (valid) => {
-        if (valid) {
-          let data = this.form;
-          data.status = '0';
-          data.type = '研发补贴';
-          let res = await this.create(data);
-          if (this.$checkRes(res)) {
-            this.$message({
-              message: '研发补贴政策服务申报成功,请耐心等待结果',
-              type: 'success',
-            });
-            this.back();
-          }
-        } else {
-          console.log('error submit!!');
-          return false;
-        }
-      });
-    },
-    back() {
-      this.$router.push({ path: '/adminCenter/company/subsidy' });
-    },
-  },
-  computed: {
-    ...mapState(['user']),
-    id() {
-      return this.$route.query.id;
-    },
-  },
-  metaInfo() {
-    return { title: this.$route.meta.title };
-  },
-  watch: {
-    test: {
-      deep: true,
-      immediate: true,
-      handler(val) {},
-    },
-  },
-};
-</script>
-
-<style lang="less" scoped>
-.main {
-  border-radius: 10px;
-  box-shadow: 0 0 5px #cccccc;
-  padding: 20px;
-  .one {
-    .top {
-      text-align: right;
-      margin: 0 0 15px 0;
-    }
-    .down {
-      .text {
-        border-bottom: 1px dashed #333;
-      }
-      /deep/.el-form-item {
-        padding: 20px 10px;
-        margin: 0;
-      }
-      /deep/.el-input__inner {
-        border: 1px solid #333;
-      }
-      .formBtn {
-        text-align: center;
-        padding: 15px 0;
-      }
-    }
-  }
-}
-.main:hover {
-  box-shadow: 0 0 5px #409eff;
-}
-</style>

+ 0 - 105
src/views/adminCenter/company/subsidy/index.vue

@@ -1,105 +0,0 @@
-<template>
-  <div id="index">
-    <el-row>
-      <el-col :span="24" class="main">
-        <el-col :span="24" class="one">
-          <data-table :fields="fields" :opera="opera" :data="list" :total="total" @query="search" @view="toView">
-            <template #selfbtn>
-              <el-button type="primary" size="mini" @click="toAdd">申请研发补贴服务</el-button>
-            </template>
-            <template #options="{ item }">
-              <template v-if="item.prop === 'type'">
-                <el-option v-for="(i, index) in typeList" :key="`type-${index}`" :label="i" :value="i"></el-option>
-              </template>
-            </template>
-          </data-table>
-        </el-col>
-      </el-col>
-    </el-row>
-  </div>
-</template>
-
-<script>
-const { policyType, policyStatus } = require('@common/dict/index');
-import { mapState, createNamespacedHelpers } from 'vuex';
-const { mapActions: policy } = createNamespacedHelpers('policy');
-export default {
-  name: 'index',
-  props: {},
-  components: {},
-  data: function () {
-    return {
-      list: [],
-      total: 0,
-      opera: [
-        {
-          label: '查看',
-          method: 'view',
-        },
-      ],
-      fields: [
-        { label: '申请单位', prop: 'company', filter: 'input' },
-        { label: '申请类型', prop: 'type' },
-        { label: '申请人', prop: 'apply_personal', filter: 'input' },
-        { label: '联系电话', prop: 'phone' },
-        {
-          label: '审核状态',
-          prop: 'status',
-          format: (i) => {
-            const r = policyStatus.find((f) => f.value === i);
-            if (r) return r.label;
-            else return '';
-          },
-        },
-      ],
-      typeList: policyType,
-    };
-  },
-  created() {
-    this.search();
-  },
-  methods: {
-    ...policy(['query', 'delete']),
-    async search({ skip = 0, limit = 10, ...info } = {}) {
-      info.type = '研发补贴';
-      const res = await this.query({ skip, limit, ...info });
-      if (this.$checkRes(res)) {
-        this.$set(this, `list`, res.data);
-        this.$set(this, `total`, res.total);
-      }
-    },
-    // 申请政策服务
-    toAdd() {
-      this.$router.push({ path: '/adminCenter/company/subsidy/detail' });
-    },
-    // 查看政策服务
-    toView({ data }) {
-      this.$router.push({ path: '/adminCenter/company/subsidy/detail', query: { id: data._id } });
-    },
-  },
-  computed: {
-    ...mapState(['user']),
-  },
-  metaInfo() {
-    return { title: this.$route.meta.title };
-  },
-  watch: {
-    test: {
-      deep: true,
-      immediate: true,
-      handler(val) {},
-    },
-  },
-};
-</script>
-
-<style lang="less" scoped>
-.main {
-  border-radius: 10px;
-  box-shadow: 0 0 5px #cccccc;
-  padding: 20px;
-}
-.main:hover {
-  box-shadow: 0 0 5px #409eff;
-}
-</style>