Procházet zdrojové kódy

提交无形资产摊销费用分配表

ljb před 10 měsíci
rodič
revize
640cb226b4

+ 41 - 0
src/api/yfCostManage/yfCostStatistics/amortizeCostSummaryList.js

@@ -0,0 +1,41 @@
+import request from '@/router/axios';
+
+export const getList = (current, size, params) => {
+  return request({
+    url: '/api/kd-scientific/lease/page',
+    method: 'get',
+    params: {
+      ...params,
+      current,
+      size,
+    }
+  })
+}
+
+export const add = (row) => {
+  return request({
+    url: '/api/kd-scientific/lease/submit',
+    method: 'post',
+    data: row
+  })
+}
+
+
+export const update = (row) => {
+  return request({
+    url: '/api/kd-scientific/lease/submit',
+    method: 'post',
+    data: row
+  })
+}
+
+
+export const remove = (ids) => {
+  return request({
+    url: '/api/kd-scientific/lease/remove',
+    method: 'post',
+    params: {
+      ids
+    }
+  })
+}

+ 170 - 0
src/option/yfCostManage/yfCostStatistics/amortizeCostSummaryList.js

@@ -0,0 +1,170 @@
+export default {
+  height: 'auto',
+  calcHeight: 30,
+  tip: false,
+  searchShow: true,
+  searchMenuSpan: 6,
+  border: true,
+  index: true,
+  addBtn: false,
+  menu: false,
+  selection: true,
+  searchLabelWidth: 140,
+  labelWidth: 140,
+  menuWidth: 290,
+  dialogClickModal: false,
+  dialogWidth: 500,
+  dialogType: "drawer",
+  column: [
+    {
+      label: '月份',
+      prop: 'yearAndMonth',
+      span: 24,
+      width: 60,
+      align: 'center',
+      showOverflowTooltip: true,
+    },
+    {
+      label: '研发项目编号',
+      prop: 'xmbh',
+      span: 24,
+      width: 100,
+      align: 'center',
+      showOverflowTooltip: true,
+    },
+    {
+      label: '研发项目名称',
+      prop: 'xmbh',
+      span: 24,
+      width: 120,
+      search: true,
+      showOverflowTooltip: true,
+    },
+    {
+      label: '资产编号',
+      prop: 'zcbm',
+      type: 'input',
+      span: 24,
+      width: 100,
+      align: 'center',
+      showOverflowTooltip: true,
+    },
+    {
+      label: '无形资产名称',
+      prop: 'zcmc',
+      type: 'input',
+      span: 24,
+      minWidth: 120,
+      search: true,
+      showOverflowTooltip: true,
+    },
+    {
+      label: '资产类别',
+      prop: 'zclb',
+      type: 'select',
+      dicUrl: '/api/kd-system/dict-biz/dictionary?code=zclb',
+      props: {
+        label: 'dictValue',
+        value: 'dictKey',
+      },
+      span: 24,
+      width: 90,
+      align: 'center',
+      showOverflowTooltip: true,
+      search: true,
+    },
+    {
+      label: '功率',
+      prop: 'gl',
+      type: 'number',
+      span: 24,
+      width: 60,
+      align: 'center',
+      showOverflowTooltip: true,
+      display: true
+    },
+    {
+      label: '用途',
+      prop: 'yt',
+      type: 'select',
+      dicUrl: '/api/kd-system/dict-biz/dictionary?code=zcyt',
+      props: {
+        label: 'dictValue',
+        value: 'dictKey',
+      },
+      search: true,
+      span: 24,
+      width: 65,
+      align: 'center',
+      showOverflowTooltip: true,
+    },
+    {
+      label: '资产原值(元)',
+      prop: 'zcyz',
+      type: 'number',
+      span: 24,
+      width: 90,
+      align: 'center',
+      search: true,
+      showOverflowTooltip: true,
+    },
+    {
+      label: '净残值(%)',
+      prop: 'jcz',
+      type: 'number',
+      span: 24,
+      width: 70,
+      align: 'center',
+      search: true,
+      showOverflowTooltip: true,
+    },
+    {
+      label: '月摊销额(每节点/套)(K)',
+      prop: 'ytxe',
+      type: 'number',
+      span: 24,
+      minWidth: 110,
+      align: 'center',
+      search: true,
+      showOverflowTooltip: true,
+    },
+    {
+      label: '月使用工时(L)',
+      prop: 'ysygs',
+      type: 'number',
+      span: 24,
+      minWidth: 90,
+      align: 'center',
+      search: true,
+      showOverflowTooltip: true,
+    },
+    {
+      label: '月研发工时(M)',
+      prop: 'yyfgs',
+      type: 'number',
+      span: 24,
+      minWidth: 90,
+      align: 'center',
+      search: true,
+      showOverflowTooltip: true,
+    },
+    {
+      label: '研发分摊率(%)(N)',
+      prop: 'yzje',
+      type: 'number',
+      span: 24,
+      minWidth: 90,
+      align: 'center',
+      showOverflowTooltip: true,
+    },
+    {
+      label: '研发摊销',
+      prop: 'yzje',
+      type: 'number',
+      span: 24,
+      minWidth: 90,
+      align: 'center',
+      showOverflowTooltip: true,
+    },
+  ],
+};

+ 155 - 0
src/views/yf-cost-manage/yf-cost-statistics/wxzc-cost-statistics/amortize-cost-summary-list.vue

@@ -0,0 +1,155 @@
+<template>
+  <basic-container>
+    <avue-crud
+      v-bind="bindVal"
+      v-on="onEvent"
+      v-model="form"
+      :page.sync="page"
+    >
+      <template slot="menuLeft">
+        <el-button
+          type="warning"
+          size="small"
+          plain
+          icon="el-icon-download"
+          @click="handleExport"
+        >
+          导出
+        </el-button>
+        <print-table-btn @click="printTable" />
+        
+        <div style="display: flex; align-items: center;">
+          <year-month-select v-model="params.yearAndMonth" :showAllYear="false"></year-month-select>
+        </div>
+      </template>
+
+      <template slot="rqSearch">
+        <el-date-picker
+          v-model="params.rq"
+          type="daterange"
+          range-separator="至"
+          start-placeholder="开始日期"
+          end-placeholder="结束日期"
+          value-format="yyyy-MM-dd"
+          style="width: 220px !important;"
+        >
+        </el-date-picker>
+      </template>
+
+      <template slot="jczSearch">
+        <div style="display: flex; align-items: center;">
+          <span>净残值:</span>
+          <avue-input-number v-model="params.jczStart" :min="0" style="width: 100px !important;"></avue-input-number>
+          <span style="width: 20px; text-align: center;">至</span>
+          <avue-input-number v-model="params.jczEnd" :min="0" style="width: 100px !important;"></avue-input-number>
+        </div>
+      </template>
+
+      <template slot="zcyzSearch">
+        <div style="display: flex; align-items: center;">
+          <span>资产原值:</span>
+          <avue-input-number v-model="params.zcyzStart" :min="0" style="width: 100px !important;"></avue-input-number>
+          <span style="width: 20px; text-align: center;">至</span>
+          <avue-input-number v-model="params.zcyzEnd" :min="0" style="width: 100px !important;"></avue-input-number>
+        </div>
+      </template>
+
+      <template slot="ytxeSearch">
+        <div style="display: flex; align-items: center;">
+          <span>月摊销额:</span>
+          <avue-input-number v-model="params.ytxeStart" :min="0" style="width: 100px !important;"></avue-input-number>
+          <span style="width: 20px; text-align: center;">至</span>
+          <avue-input-number v-model="params.ytxeEnd" :min="0" style="width: 100px !important;"></avue-input-number>
+        </div>
+      </template>
+
+      <template slot="ysygsSearch">
+        <div style="display: flex; align-items: center;">
+          <span>月使用工时:</span>
+          <avue-input-number v-model="params.ysygsStart" :min="0" style="width: 100px !important;"></avue-input-number>
+          <span style="width: 20px; text-align: center;">至</span>
+          <avue-input-number v-model="params.ysygsEnd" :min="0" style="width: 100px !important;"></avue-input-number>
+        </div>
+      </template>
+
+      <template slot="yyfgsSearch">
+        <div style="display: flex; align-items: center;">
+          <span>已研发工时:</span>
+          <avue-input-number v-model="params.yyfgsStart" :min="0" style="width: 100px !important;"></avue-input-number>
+          <span style="width: 20px; text-align: center;">至</span>
+          <avue-input-number v-model="params.yyfgsEnd" :min="0" style="width: 100px !important;"></avue-input-number>
+        </div>
+      </template>
+      
+    </avue-crud>
+
+    <upload-excel-dialog ref="uploadExcelDialog" :uploadAfter="uploadAfter"/>
+
+    <WideTablePrinter
+      ref="printWideTable"
+      :columns="wideTableColumns"
+      :data="data"
+      :print-title="printTitle"
+      :rows-per-page="30"
+      :default-landscape="true"
+    />
+  </basic-container>
+</template>
+
+<script>
+import YearMonthSelect from "@/components/year-month-select";
+import {exportBlob} from "@/api/common";
+import {getToken} from "@/util/auth";
+import {downloadXls} from "@/util/util";
+import moment from "moment";
+import Decimal from "decimal.js";
+
+
+export default window.$crudCommon({
+  components: {
+    YearMonthSelect,
+  },
+  data() {
+    return {
+      params: {
+        yearAndMonth: moment(new Date()).format('YYYYMM'),
+      },
+      defaultColumns: [],
+
+      wideTableColumns: [],
+      printTitle: "",
+    };
+  },
+  watch: {
+    'params.yearAndMonth'(newVal) {
+      this.page.currentPage = 1;
+      this.getList(this.page);
+    }
+  },
+  methods: {
+    loadData() {},
+    handleExport() {
+      exportBlob(`/api/kd-scientific/lease/export?${this.website.tokenHeader}=${getToken()}`, this.params).then(res => {
+        downloadXls(res.data, `研发费用汇总表${this.params.yearAndMonth}.xlsx`);
+      });
+    },
+    /**
+     * 打印表格
+     * @param isLandscape 是否横向打印
+     */
+    printTable(isLandscape) {
+      this.wideTableColumns = this.$refs.crud.columnOption;
+      this.printTitle = `研发费用汇总表${this.params.yearAndMonth}`;
+      this.$nextTick(() => {
+        this.$refs.printWideTable.printTable(isLandscape);
+      })
+    },
+  },
+}, {
+  // 模块路径
+  name: 'yfCostManage/yfCostStatistics/amortizeCostSummaryList',
+  res: ({ data }) => {
+    return data;
+  },
+});
+</script>

+ 1 - 0
src/views/yf-cost-manage/yf-cost-statistics/wxzc-cost-statistics/other-cost-summary-list.vue

@@ -82,6 +82,7 @@ export default window.$crudCommon({
     }
   },
   methods: {
+    loadData() {},
     handleExport() {
       exportBlob(`/api/kd-scientific/lease/export?${this.website.tokenHeader}=${getToken()}`, this.params).then(res => {
         downloadXls(res.data, `其他费用汇总表${this.params.yearAndMonth}.xlsx`);

+ 4 - 3
src/views/yf-cost-manage/yf-cost-statistics/wxzc-cost-statistics/yf-cost-summary-list.vue

@@ -19,7 +19,7 @@
         <print-table-btn @click="printTable" />
         
         <div style="display: flex; align-items: center;">
-          <year-month-select v-model="params.yearAndMonth"></year-month-select>
+          <year-month-select v-model="params.yearAndMonth" :showAllYear="false"></year-month-select>
         </div>
       </template>
 
@@ -91,9 +91,10 @@ export default window.$crudCommon({
     }
   },
   methods: {
+    loadData() {},
     handleExport() {
       exportBlob(`/api/kd-scientific/lease/export?${this.website.tokenHeader}=${getToken()}`, this.params).then(res => {
-        downloadXls(res.data, `其他费用汇总表${this.params.yearAndMonth}.xlsx`);
+        downloadXls(res.data, `研发费用汇总表${this.params.yearAndMonth}.xlsx`);
       });
     },
     /**
@@ -102,7 +103,7 @@ export default window.$crudCommon({
      */
     printTable(isLandscape) {
       this.wideTableColumns = this.$refs.crud.columnOption;
-      this.printTitle = `其他费用汇总表${this.params.yearAndMonth}`;
+      this.printTitle = `研发费用汇总表${this.params.yearAndMonth}`;
       this.$nextTick(() => {
         this.$refs.printWideTable.printTable(isLandscape);
       })