Browse Source

无形资产明细表接口联调

ljb 10 months ago
parent
commit
03065293cb

+ 12 - 4
src/api/yfCostManage/basicDataSetting/wxzcDetail.js

@@ -2,7 +2,7 @@ import request from '@/router/axios';
 
 export const getList = (current, size, params) => {
   return request({
-    url: '/api/kd-scientific/asset/wxzc/page',
+    url: '/api/kd-scientific/asset/intangible/page',
     method: 'get',
     params: {
       ...params,
@@ -14,7 +14,15 @@ export const getList = (current, size, params) => {
 
 export const add = data => {
   return request({
-    url: '/kd-scientific/asset/wxzc/save',
+    url: '/api/kd-scientific/asset/intangible/save',
+    method: 'post',
+    data
+  })
+}
+
+export const update = data => {
+  return request({
+    url: '/api/kd-scientific/asset/intangible/update',
     method: 'post',
     data
   })
@@ -22,7 +30,7 @@ export const add = data => {
 
 export const remove = (ids) => {
   return request({
-    url: '/api/kd-scientific/asset/wxzc/remove',
+    url: '/api/kd-scientific/asset/intangible/remove',
     method: 'post',
     params: {
       ids
@@ -32,7 +40,7 @@ export const remove = (ids) => {
 
 export const fetchDeviceData = params => {
   return request({
-    url: '/api/kd-scientific/asset/wxzc/fetchData',
+    url: '/api/kd-scientific/asset/intangible/fetchData',
     method: 'get',
     params
   })

+ 14 - 4
src/components/project-select/index.vue

@@ -35,6 +35,11 @@ export default {
     multiple: {
       type: Boolean,
       default: false
+    },
+    // 不通过接口获取项目详情
+    noDetail: {
+      type: Boolean,
+      default: false
     }
   },
   data() {
@@ -79,10 +84,15 @@ export default {
     },
     handleProjectChange(val) {
       this.$emit('input', val);
-      if (!this.multiple) {
-        this.findProjectObj(val, proData => {
-          this.$emit('change', proData);
-        });
+      if (this.noDetail) {
+        let currObj = this.projectList.find(item => item.id === val);
+        this.$emit('change', currObj);
+      } else {
+        if (!this.multiple) {
+          this.findProjectObj(val, proData => {
+            this.$emit('change', proData);
+          });
+        }
       }
     },
   }

+ 1 - 1
src/option/projectManage/zjfyycqdtfyCost.js

@@ -25,7 +25,7 @@ export default {
       span: 24,
       dicUrl: '/api/kd-scientific/asset/simple/list',
       dicFormatter:(res)=>{
-        return res.data
+        return res.data.filter(item => "仪器设备,房屋建筑物".indexOf(item.zclb) > -1)
       },
       props: {
         label: 'zcmc',

+ 1 - 1
src/option/techPerson/cyPersonSumList.js

@@ -17,7 +17,7 @@ export default {
   column: [
     {
       label: '研发项目名称',
-      prop: 'projectName',
+      prop: 'xmmc',
       span: 12,
       search: true,
       align: 'center',

+ 9 - 3
src/option/yfCostManage/basicDataSetting/wxzcDetail.js

@@ -8,8 +8,6 @@ export default {
   searchMenuSpan: 6,
   border: true,
   index: true,
-  delBtn: false,
-  menu: false,
   selection: true,
   labelWidth: 120,
   menuWidth: 220,
@@ -196,12 +194,20 @@ export default {
     },
     {
       label: '使用人',
-      prop: 'syr',
+      prop: 'userUnicode',
       type: 'select',
       span: 24,
+      align: 'center',
+      showOverflowTooltip: true,
+      hide: true,
+    },
+    {
+      label: '使用人',
+      prop: 'userName',
       width: 80,
       align: 'center',
       showOverflowTooltip: true,
+      display: false,
     },
     {
       label: '状态',

+ 4 - 3
src/views/tech-person/cy-person-sum-list.vue

@@ -70,7 +70,7 @@ export default window.$crudCommon({
   },
   methods: {
     spanMethod({ row, column, rowIndex, columnIndex }) {
-      let fields = ["projectName"];
+      let fields = ["xmmc"];
       let cellValue = row[column.property];
       if (cellValue && fields.includes(column.property)) {
         let prevRow = this.data[rowIndex - 1];
@@ -119,11 +119,12 @@ export default window.$crudCommon({
     data.records.forEach(item => {
       item.technicianList.forEach(techItem => {
         newList.push({
-          projectName: item.xmmc,
-          ...techItem
+          ...techItem,
+          xmmc: item.xmmc,
         });
       });
     });
+    console.log(newList)
     data.records = newList;
     return data;
   }

+ 42 - 8
src/views/yf-cost-manage/basic-data-setting/wxzc-details.vue

@@ -89,7 +89,7 @@
       </template>
 
       <template slot="xmIdForm">
-        <project-select v-model="form.xmId" :params="{ yearAndMonth: params.yearAndMonth }"></project-select>
+        <project-select v-model="form.xmId" :params="{ yearAndMonth: params.yearAndMonth }" :noDetail="true" @change="handleProjectChange"></project-select>
       </template>
 
       <template slot="assetIdForm">
@@ -99,6 +99,22 @@
           @change="handleAssetChange"
         ></asset-select>
       </template>
+
+      <template slot="userUnicodeForm">
+        <el-select
+          v-model="form.userUnicode"
+          filterable
+          placeholder="请选择 使用人"
+          style="width: 100%;"
+        >
+          <el-option
+            v-for="item in cyPersonList"
+            :key="item.unicode"
+            :label="item.name"
+            :value="item.unicode">
+          </el-option>
+        </el-select>
+      </template>
       
     </avue-crud>
 
@@ -116,7 +132,8 @@
 </template>
 
 <script>
-import { fetchDeviceData } from "@/api/yfCostManage/basicDataSetting/wxzcDetail"
+import { fetchDeviceData } from "@/api/yfCostManage/basicDataSetting/wxzcDetail";
+import { getList as getCyPersonList } from "@/api/techPerson/cyPersonSumList"
 import YearMonthSelect from "@/components/year-month-select";
 import UploadExcelDialog from "@/components/upload-excel-dialog";
 import projectSelect from "@/components/project-select";
@@ -138,6 +155,8 @@ export default window.$crudCommon({
       },
       isSelAnnual: false,
 
+      cyPersonList: [],
+
       wideTableColumns: [],
       printTitle: "",
     };
@@ -152,7 +171,7 @@ export default window.$crudCommon({
       }
       this.page.currentPage = 1;
       this.getList(this.page);
-    }
+    },
   },
   computed: {
     permissionList() {
@@ -164,17 +183,16 @@ export default window.$crudCommon({
     },
   },
   methods: {
-    loadData() {},
     handleImport() {
       let excelParams = { yearAndMonth: this.params.yearAndMonth };
-      this.$refs.uploadExcelDialog.open('/api/kd-scientific/asset/wxzc/import', excelParams);
+      this.$refs.uploadExcelDialog.open('/api/kd-scientific/asset/intangible/import', excelParams);
     },
     uploadAfter() {
       this.page.currentPage = 1;
       this.getList(this.page);
     },
     handleExport() {
-      exportBloByPost(`/api/kd-scientific/asset/wxzc/export?${this.website.tokenHeader}=${getToken()}`, this.params).then(res => {
+      exportBloByPost(`/api/kd-scientific/asset/intangible/export?${this.website.tokenHeader}=${getToken()}`, this.params).then(res => {
         downloadXls(res.data, `科研无形资产明细表${this.params.yearAndMonth}.xlsx`);
       });
     },
@@ -204,9 +222,25 @@ export default window.$crudCommon({
       this.form = { ...this.form, zcbm };
     },
     getFormData() {
-      const { xmId, assetId, zcbm } = this.form;
-      return { xmId, assetId, zcbm, yearAndMonth: this.params.yearAndMonth };
+      const { id, xmId, assetId, zcbm, userUnicode } = this.form;
+      let userName;
+      if (!!userUnicode) {
+        let personObj = this.cyPersonList.find(item => item.unicode === userUnicode);
+        userName = personObj ? personObj.name : undefined;
+      }
+      return { id, xmId, assetId, zcbm, userUnicode, userName, yearAndMonth: this.params.yearAndMonth };
+    },
+    handleProjectChange(data) {
+      this.getCyPersonListFunc(data.xmmc);
     },
+    // 获取项目参研人员列表
+    getCyPersonListFunc(xmmc) {
+      getCyPersonList(1, 99999, { xmmc, yearAndMonth: this.params.yearAndMonth }).then(({ data }) => {
+        if (data.code == 200) {
+          this.cyPersonList = data.data.records && data.data.records.length ? data.data.records[0].technicianList : [];
+        }
+      });
+    }
   },
 }, {
   // 模块路径