Browse Source

107-1和高企年报联调

ljb 9 months ago
parent
commit
8eb56aefdd

+ 9 - 1
src/api/externalReports/107-1.js

@@ -2,10 +2,18 @@ import request from '@/router/axios';
 
 
 export const getList = (params) => {
 export const getList = (params) => {
   return request({
   return request({
-    url: '/api/kd-scientific/',
+    url: '/api/kd-scientific/qyyjkfxmqk',
     method: 'get',
     method: 'get',
     params: {
     params: {
       ...params,
       ...params,
     }
     }
   })
   })
 }
 }
+
+export const update = (row) => {
+  return request({
+    url: '/api/kd-scientific/qyyjkfxmqk',
+    method: 'post',
+    data: row
+  })
+}

+ 19 - 0
src/api/externalReports/highCompAnnualReport.js

@@ -0,0 +1,19 @@
+import request from '@/router/axios';
+
+export const getList = (params) => {
+  return request({
+    url: '/api/kd-scientific/gqnb',
+    method: 'get',
+    params: {
+      ...params,
+    }
+  })
+}
+
+export const update = (row) => {
+  return request({
+    url: '/api/kd-scientific/gqnb',
+    method: 'post',
+    data: row
+  })
+}

+ 50 - 19
src/option/externalReports/107-1.js

@@ -46,6 +46,12 @@ export default {
       children: [{
       children: [{
         label: '1',
         label: '1',
         prop: 'xmly',
         prop: 'xmly',
+        type: 'select',
+        dicUrl: '/api/kd-system/dict/dictionary?code=project_source',
+        props: {
+          label: 'dictValue',
+          value: 'dictKey',
+        },
         width: 100,
         width: 100,
         align: 'center',
         align: 'center',
         display: false,
         display: false,
@@ -57,7 +63,13 @@ export default {
       align: 'center',
       align: 'center',
       children: [{
       children: [{
         label: '2',
         label: '2',
-        prop: 'xmkzxs',
+        prop: 'kzxs',
+        type: 'select',
+        dicUrl: '/api/kd-system/dict/dictionary?code=implementation_format',
+        props: {
+          label: 'dictValue',
+          value: 'dictKey',
+        },
         width: 100,
         width: 100,
         align: 'center',
         align: 'center',
         display: false,
         display: false,
@@ -69,7 +81,13 @@ export default {
       align: 'center',
       align: 'center',
       children: [{
       children: [{
         label: '3',
         label: '3',
-        prop: 'xmcgxs',
+        prop: 'cgxs',
+        type: 'select',
+        dicUrl: '/api/kd-system/dict/dictionary?code=expected_outcome_form',
+        props: {
+          label: 'dictValue',
+          value: 'dictKey',
+        },
         width: 100,
         width: 100,
         align: 'center',
         align: 'center',
         display: false,
         display: false,
@@ -81,7 +99,13 @@ export default {
       align: 'center',
       align: 'center',
       children: [{
       children: [{
         label: '4',
         label: '4',
-        prop: 'xmjsjjmb',
+        prop: 'jsjjmb',
+        type: 'select',
+        dicUrl: '/api/kd-system/dict/dictionary?code=economic_objectives',
+        props: {
+          label: 'dictValue',
+          value: 'dictKey',
+        },
         width: 100,
         width: 100,
         align: 'center',
         align: 'center',
         display: false,
         display: false,
@@ -93,7 +117,7 @@ export default {
       align: 'center',
       align: 'center',
       children: [{
       children: [{
         label: '5',
         label: '5',
-        prop: 'xmkssj',
+        prop: 'kssj',
         width: 95,
         width: 95,
         align: 'center',
         align: 'center',
         display: false,
         display: false,
@@ -105,7 +129,7 @@ export default {
       align: 'center',
       align: 'center',
       children: [{
       children: [{
         label: '6',
         label: '6',
-        prop: 'xmjssj',
+        prop: 'jssj',
         width: 95,
         width: 95,
         align: 'center',
         align: 'center',
         display: false,
         display: false,
@@ -117,19 +141,26 @@ export default {
       align: 'center',
       align: 'center',
       children: [{
       children: [{
         label: '7',
         label: '7',
-        prop: 'xmjd',
+        prop: 'xmStage',
         width: 110,
         width: 110,
         align: 'center',
         align: 'center',
-        type: 'select',
-        span: 24,
         display: false,
         display: false,
         showOverflowTooltip: true,
         showOverflowTooltip: true,
       }, {
       }, {
         label: '跨年项目当年所处主要进阶段',
         label: '跨年项目当年所处主要进阶段',
-        prop: 'xmjdField',
-        width: 110,
+        prop: 'xmStageField',
         align: 'center',
         align: 'center',
         type: 'select',
         type: 'select',
+        dicData: [{
+          label: '1.研究',
+          value: 1
+        }, {
+          label: '2.小试',
+          value: 2
+        }, {
+          label: '3.中试',
+          value: 3
+        }],
         span: 24,
         span: 24,
         hide: true,
         hide: true,
         showOverflowTooltip: true,
         showOverflowTooltip: true,
@@ -140,7 +171,7 @@ export default {
       align: 'center',
       align: 'center',
       children: [{
       children: [{
         label: '8',
         label: '8',
-        prop: 'xmyjkfry',
+        prop: 'technicianCount',
         width: 100,
         width: 100,
         align: 'center',
         align: 'center',
         display: false,
         display: false,
@@ -152,7 +183,7 @@ export default {
       align: 'center',
       align: 'center',
       children: [{
       children: [{
         label: '9',
         label: '9',
-        prop: 'gzsj',
+        prop: 'workTime',
         width: 110,
         width: 110,
         align: 'center',
         align: 'center',
         display: false,
         display: false,
@@ -164,7 +195,7 @@ export default {
       align: 'center',
       align: 'center',
       children: [{
       children: [{
         label: '10',
         label: '10',
-        prop: 'jfzc',
+        prop: 'cost',
         width: 90,
         width: 90,
         align: 'center',
         align: 'center',
         display: false,
         display: false,
@@ -176,7 +207,7 @@ export default {
       align: 'center',
       align: 'center',
       children: [{
       children: [{
         label: '11',
         label: '11',
-        prop: '11',
+        prop: 'govBonus',
         width: 80,
         width: 80,
         align: 'center',
         align: 'center',
         type: 'number',
         type: 'number',
@@ -187,7 +218,7 @@ export default {
         showOverflowTooltip: true,
         showOverflowTooltip: true,
       }, {
       }, {
         label: '其中:政府奖金',
         label: '其中:政府奖金',
-        prop: '11Field',
+        prop: 'govBonusField',
         width: 80,
         width: 80,
         align: 'center',
         align: 'center',
         type: 'number',
         type: 'number',
@@ -203,7 +234,7 @@ export default {
       align: 'center',
       align: 'center',
       children: [{
       children: [{
         label: '12',
         label: '12',
-        prop: '12',
+        prop: 'cost1',
         width: 120,
         width: 120,
         align: 'center',
         align: 'center',
         display: false,
         display: false,
@@ -215,7 +246,7 @@ export default {
       align: 'center',
       align: 'center',
       children: [{
       children: [{
         label: '13',
         label: '13',
-        prop: '13',
+        prop: 'cost2',
         width: 110,
         width: 110,
         align: 'center',
         align: 'center',
         display: false,
         display: false,
@@ -227,7 +258,7 @@ export default {
       align: 'center',
       align: 'center',
       children: [{
       children: [{
         label: '14',
         label: '14',
-        prop: '14',
+        prop: 'wwfy',
         width: 90,
         width: 90,
         align: 'center',
         align: 'center',
         display: false,
         display: false,
@@ -239,7 +270,7 @@ export default {
       align: 'center',
       align: 'center',
       children: [{
       children: [{
         label: '15',
         label: '15',
-        prop: '15',
+        prop: 'yjlx',
         width: 80,
         width: 80,
         align: 'center',
         align: 'center',
         display: false,
         display: false,

+ 7 - 9
src/views/external-reports/external-manage/107-1.vue

@@ -48,27 +48,25 @@ export default window.$crudCommon({
     };
     };
   },
   },
   watch: {
   watch: {
-    "params.yearAndMonth"(newVal) {
-      if (newVal.length > 4) {
-        this.page.currentPage = 1;
-        this.getList(this.page);
-      }
+    "params.yearAndMonth"() {
+      this.page.currentPage = 1;
+      this.getList(this.page);
     },
     },
   },
   },
   methods: {
   methods: {
-    loadData() {
-      console.log(1234)
+    getFormData() {
+      return { ...this.form, xmStage: this.form.xmStageField, govBonus: this.form.govBonusField };
     },
     },
     handleExport() {
     handleExport() {
       exportBlob(
       exportBlob(
-        `/api/kd-scientific/technician/export?${
+        `/api/kd-scientific/qyyjkfxmqk/export?${
           this.website.tokenHeader
           this.website.tokenHeader
         }=${getToken()}`,
         }=${getToken()}`,
         this.params
         this.params
       ).then((res) => {
       ).then((res) => {
         downloadXls(
         downloadXls(
           res.data,
           res.data,
-          `研发资产费用分摊表${this.params.yearAndMonth}.xlsx`
+          `${this.params.yearAndMonth}企业研究开发项目情况.xlsx`
         );
         );
       });
       });
     },
     },

+ 63 - 36
src/views/external-reports/external-manage/high-comp-annual-report.vue

@@ -1,12 +1,12 @@
 <template>
 <template>
-  <basic-container>
+  <basic-container v-loading="loading">
     <div class="btn-wrap">
     <div class="btn-wrap">
-      <el-button type="primary" icon="el-icon-edit">保存</el-button>
+      <el-button type="primary" icon="el-icon-edit" @click="handleSaveBtn">保存</el-button>
     </div>
     </div>
     <div class="doc-page">
     <div class="doc-page">
       <h3 class="page-title" style="margin: 24px 0 16px">高企年报</h3>
       <h3 class="page-title" style="margin: 24px 0 16px">高企年报</h3>
       <div style="display: flex; justify-content: space-between; margin: 12px 0;">
       <div style="display: flex; justify-content: space-between; margin: 12px 0;">
-        <year-month-select v-model="yearAndMonth" :showMonth="false" style="margin: 0;"></year-month-select>
+        <year-month-select v-model="year" :showMonth="false" style="margin: 0;"></year-month-select>
         <el-button
         <el-button
           type="warning"
           type="warning"
           size="small"
           size="small"
@@ -21,8 +21,8 @@
           <tr>
           <tr>
             <td width="70%">一、本年度获得的知识产权数</td>
             <td width="70%">一、本年度获得的知识产权数</td>
             <td>
             <td>
-              <div style="display: flex;">
-                <input style="width: 100%" />
+              <div style="display: flex; align-items: center;">
+                <div style="width: 100%; text-align: right;">{{ formData.d1 }}</div>
                 <span style="padding: 0 5px;">件</span>
                 <span style="padding: 0 5px;">件</span>
               </div>
               </div>
             </td>
             </td>
@@ -30,8 +30,8 @@
           <tr>
           <tr>
             <td width="70%">当年获得发明专利数</td>
             <td width="70%">当年获得发明专利数</td>
             <td>
             <td>
-              <div style="display: flex;">
-                <input style="width: 100%" />
+              <div style="display: flex; align-items: center;">
+                <div style="width: 100%; text-align: right;">{{ formData.d2 }}</div>
                 <span style="padding: 0 5px;">件</span>
                 <span style="padding: 0 5px;">件</span>
               </div>
               </div>
             </td>
             </td>
@@ -39,8 +39,8 @@
           <tr>
           <tr>
             <td width="70%" style="padding-left: 30px;">其中:国防专利</td>
             <td width="70%" style="padding-left: 30px;">其中:国防专利</td>
             <td>
             <td>
-              <div style="display: flex;">
-                <input style="width: 100%" />
+              <div style="display: flex; align-items: center;">
+                <div style="width: 100%; text-align: right;">{{ formData.d3 }}</div>
                 <span style="padding: 0 5px;">件</span>
                 <span style="padding: 0 5px;">件</span>
               </div>
               </div>
             </td>
             </td>
@@ -48,8 +48,8 @@
           <tr>
           <tr>
             <td width="70%">当年获得植物新品种</td>
             <td width="70%">当年获得植物新品种</td>
             <td>
             <td>
-              <div style="display: flex;">
-                <input style="width: 100%" />
+              <div style="display: flex; align-items: center;">
+                <div style="width: 100%; text-align: right;">{{ formData.d4 }}</div>
                 <span style="padding: 0 5px;">件</span>
                 <span style="padding: 0 5px;">件</span>
               </div>
               </div>
             </td>
             </td>
@@ -57,8 +57,8 @@
           <tr>
           <tr>
             <td width="70%">当年获得国家级农作物品种</td>
             <td width="70%">当年获得国家级农作物品种</td>
             <td>
             <td>
-              <div style="display: flex;">
-                <input style="width: 100%" />
+              <div style="display: flex; align-items: center;">
+                <div style="width: 100%; text-align: right;">{{ formData.d5 }}</div>
                 <span style="padding: 0 5px;">件</span>
                 <span style="padding: 0 5px;">件</span>
               </div>
               </div>
             </td>
             </td>
@@ -66,8 +66,8 @@
           <tr>
           <tr>
             <td width="70%">当年获得国家新药</td>
             <td width="70%">当年获得国家新药</td>
             <td>
             <td>
-              <div style="display: flex;">
-                <input style="width: 100%" />
+              <div style="display: flex; align-items: center;">
+                <div style="width: 100%; text-align: right;">{{ formData.d6 }}</div>
                 <span style="padding: 0 5px;">件</span>
                 <span style="padding: 0 5px;">件</span>
               </div>
               </div>
             </td>
             </td>
@@ -75,8 +75,8 @@
           <tr>
           <tr>
             <td width="70%">当年获得国家一级中药保护品种</td>
             <td width="70%">当年获得国家一级中药保护品种</td>
             <td>
             <td>
-              <div style="display: flex;">
-                <input style="width: 100%" />
+              <div style="display: flex; align-items: center;">
+                <div style="width: 100%; text-align: right;">{{ formData.d7 }}</div>
                 <span style="padding: 0 5px;">件</span>
                 <span style="padding: 0 5px;">件</span>
               </div>
               </div>
             </td>
             </td>
@@ -84,8 +84,8 @@
           <tr>
           <tr>
             <td width="70%">当年获得集成电路布图设计专有权</td>
             <td width="70%">当年获得集成电路布图设计专有权</td>
             <td>
             <td>
-              <div style="display: flex;">
-                <input style="width: 100%" />
+              <div style="display: flex; align-items: center;">
+                <div style="width: 100%; text-align: right;">{{ formData.d8 }}</div>
                 <span style="padding: 0 5px;">件</span>
                 <span style="padding: 0 5px;">件</span>
               </div>
               </div>
             </td>
             </td>
@@ -93,8 +93,8 @@
           <tr>
           <tr>
             <td width="70%">当年获得实用新型专利</td>
             <td width="70%">当年获得实用新型专利</td>
             <td>
             <td>
-              <div style="display: flex;">
-                <input style="width: 100%" />
+              <div style="display: flex; align-items: center;">
+                <div style="width: 100%; text-align: right;">{{ formData.d9 }}</div>
                 <span style="padding: 0 5px;">件</span>
                 <span style="padding: 0 5px;">件</span>
               </div>
               </div>
             </td>
             </td>
@@ -102,8 +102,8 @@
           <tr>
           <tr>
             <td width="70%">当年获得外观设计专利</td>
             <td width="70%">当年获得外观设计专利</td>
             <td>
             <td>
-              <div style="display: flex;">
-                <input style="width: 100%" />
+              <div style="display: flex; align-items: center;">
+                <div style="width: 100%; text-align: right;">{{ formData.d10 }}</div>
                 <span style="padding: 0 5px;">件</span>
                 <span style="padding: 0 5px;">件</span>
               </div>
               </div>
             </td>
             </td>
@@ -111,8 +111,8 @@
           <tr>
           <tr>
             <td width="70%">当年获得软件著作权</td>
             <td width="70%">当年获得软件著作权</td>
             <td>
             <td>
-              <div style="display: flex;">
-                <input style="width: 100%" />
+              <div style="display: flex; align-items: center;">
+                <div style="width: 100%; text-align: right;">{{ formData.d11 }}</div>
                 <span style="padding: 0 5px;">件</span>
                 <span style="padding: 0 5px;">件</span>
               </div>
               </div>
             </td>
             </td>
@@ -125,8 +125,8 @@
           <tr>
           <tr>
             <td width="70%">职工总数</td>
             <td width="70%">职工总数</td>
             <td>
             <td>
-              <div style="display: flex;">
-                <input style="width: 100%" />
+              <div style="display: flex; align-items: center;">
+                <input type="number" v-model="formData.d13" style="width: 100%; text-align: right;" />
                 <span style="padding: 0 5px;">人</span>
                 <span style="padding: 0 5px;">人</span>
               </div>
               </div>
             </td>
             </td>
@@ -134,8 +134,8 @@
           <tr>
           <tr>
             <td width="70%">科技人员数</td>
             <td width="70%">科技人员数</td>
             <td>
             <td>
-              <div style="display: flex;">
-                <input style="width: 100%" />
+              <div style="display: flex; align-items: center;">
+                <div style="width: 100%; text-align: right;">{{ formData.d14 }}</div>
                 <span style="padding: 0 5px;">人</span>
                 <span style="padding: 0 5px;">人</span>
               </div>
               </div>
             </td>
             </td>
@@ -143,8 +143,8 @@
           <tr>
           <tr>
             <td width="70%">新增就业人员数</td>
             <td width="70%">新增就业人员数</td>
             <td>
             <td>
-              <div style="display: flex;">
-                <input style="width: 100%" />
+              <div style="display: flex; align-items: center;">
+                <input type="number" v-model="formData.d15" style="width: 100%; text-align: right;" />
                 <span style="padding: 0 5px;">人</span>
                 <span style="padding: 0 5px;">人</span>
               </div>
               </div>
             </td>
             </td>
@@ -152,8 +152,8 @@
           <tr>
           <tr>
             <td width="70%" style="padding-left: 30px;">其中:吸纳高校应届毕业生人数</td>
             <td width="70%" style="padding-left: 30px;">其中:吸纳高校应届毕业生人数</td>
             <td>
             <td>
-              <div style="display: flex;">
-                <input style="width: 100%" />
+              <div style="display: flex; align-items: center;">
+                <input type="number" v-model="formData.d16" style="width: 100%; text-align: right;" />
                 <span style="padding: 0 5px;">人</span>
                 <span style="padding: 0 5px;">人</span>
               </div>
               </div>
             </td>
             </td>
@@ -165,6 +165,7 @@
 </template>
 </template>
 
 
 <script>
 <script>
+import { getList, update } from "@/api/externalReports/highCompAnnualReport";
 import moment from "moment";
 import moment from "moment";
 import yearMonthSelect from "@/components/year-month-select";
 import yearMonthSelect from "@/components/year-month-select";
 
 
@@ -174,17 +175,43 @@ export default {
   },
   },
   data() {
   data() {
     return {
     return {
-      yearAndMonth: moment(new Date()).format('YYYY'),
+      loading: false,
+      year: moment(new Date()).format('YYYY'),
+      formData: {},
     };
     };
   },
   },
   watch: {
   watch: {
-    "yearAndMonth"(newVal) {
-      console.log(newVal)
+    "year"() {
+      this.getData();
     },
     },
   },
   },
   mounted() {
   mounted() {
+    this.getData();
   },
   },
   methods: {
   methods: {
+    getData() {
+      this.loading = true;
+      getList({ year: this.year }).then(({ data }) => {
+        this.loading = false;
+        if (data.code == 200) {
+          this.formData = data.data;
+        }
+      });
+    },
+    handleSaveBtn() {
+      let params = {
+        yearAndMonth: this.year,
+        d13: this.formData.d13,
+        d15: this.formData.d15,
+        d16: this.formData.d16,
+      };
+      update(params).then(({ data }) => {
+        if (data.code == 200) {
+          this.$message.success('保存成功!');
+          this.getData();
+        }
+      });
+    }
   },
   },
 };
 };
 </script>
 </script>