马宇豪
2025-03-06 71521b48a25f9288b5187b78884feef5d559b2ff
修改
已修改4个文件
153 ■■■■ 文件已修改
src/views/commonMod/examApply/index.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/specialOperationsPay/coalCalculate/index.vue 64 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/specialOperationsPay/notCoalCalculate/index.vue 67 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/specialOperationsPay/singlePage/index.vue 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/commonMod/examApply/index.vue
@@ -181,7 +181,6 @@
  },
  created() {
    this.roles = store.getters && store.getters.roles
    console.log(this.roles,'role')
    // if (roles.includes('mk')) {
    //   this.form.isCm = 1
    // }
src/views/specialOperationsPay/coalCalculate/index.vue
@@ -4,11 +4,11 @@
      <el-date-picker
        v-model="queryParams.year"
        type="year"
        style="width: 300px"
        style="width: 200px"
        value-format="yyyy"
        placeholder="选择年">
      </el-date-picker>
      <el-select v-model="queryParams.quarter" placeholder="请选择季度" style="width: 300px;margin-left: 5px" clearable>
      <el-select v-model="queryParams.quarter" placeholder="请选择季度" style="width: 200px;margin-left: 5px" clearable>
        <el-option
          v-for="item in quarterList"
          :key="item.id"
@@ -16,7 +16,7 @@
          :value="item.id">
        </el-option>
      </el-select>
      <el-cascader v-model="queryParams.deptId" :show-all-levels="false" style="margin-left: 10px" filterable :options="deptOptions"
      <el-cascader v-model="queryParams.deptId" :disabled="isExam" :show-all-levels="false" style="margin-left: 10px" filterable :options="deptOptions"
                   placeholder="组织架构"
                   :props="{ emitPath: false,value:'deptId',label: 'deptName' }"></el-cascader>
      <el-button
@@ -40,7 +40,7 @@
      <!--      </el-select>-->
    </div>
    <el-table v-loading="loading" :data="dataList" style="margin-top: 20px" :row-class-name="tableAddClass">
    <el-table v-loading="loading" :data="dataList" style="margin-top: 20px" :row-class-name="tableAddClass" show-summary :summary-method="getSummaries">
      <el-table-column label="工种类别" align="center" prop="subjectName"></el-table-column>
      <el-table-column label="缴费人次" align="center" prop="num" :show-overflow-tooltip="true"/>
      <el-table-column label="缴费标准" align="center" prop="amount">
@@ -53,13 +53,13 @@
      <el-table-column label="自治区级" align="center" prop="autonomy"/>
      <!--      <el-table-column label="地(州、市级)" align="center" prop="describe" />-->
    </el-table>
    <pagination
      v-show="total>0"
      :total="total"
      :page.sync="queryParams.pageNum"
      :limit.sync="queryParams.pageSize"
      @pagination="getList"
    />
<!--    <pagination-->
<!--      v-show="total>0"-->
<!--      :total="total"-->
<!--      :page.sync="queryParams.pageNum"-->
<!--      :limit.sync="queryParams.pageSize"-->
<!--      @pagination="getList"-->
<!--    />-->
  </div>
</template>
@@ -69,6 +69,7 @@
} from '@/api/specialOperationsPay/coalPay'
import Cookies from 'js-cookie'
import {listDept} from "@/api/system/dept";
import store from "@/store";
export default {
  name: "coalCalculate",
@@ -84,7 +85,7 @@
      deptOptions: [],
      queryParams: {
        pageNum: 1,
        pageSize: 10,
        pageSize: 999,
        year: '',
        quarter: null,
        deptId: null
@@ -107,12 +108,20 @@
          id: 4,
          label: '第四季度'
        }
      ]
      ],
      roles: [],
      isExam: false
    };
  },
  created() {
    this.getList()
    this.getDeptTree()
    this.roles = store.getters && store.getters.roles
    if (this.roles.includes('feimeiexam') || this.roles.includes('mkexam')) {
      const userInfo = store.getters && store.getters.userInfo
      this.queryParams.deptId = userInfo.deptId
      this.isExam = true
    }
    this.getList()
  },
  methods: {
    getList() {
@@ -142,6 +151,33 @@
      }
      return "";
    },
    getSummaries(param) {
      const { columns, data } = param
      const sums = [];
      columns.forEach((column, index) => {
        if (index === 0) {
          sums[index] = '合计';
          return
        }
        const values = data.map(item => Number(item[column.property]))
        if (!values.every(value => isNaN(value))) {
          sums[index] = values.reduce((prev, curr) => {
            const value = Number(curr);
            if (!isNaN(value)) {
              return prev + curr;
            } else {
              return prev;
            }
          }, 0)
          if(index == 2){
            sums[index] += '元/人次';
          }
        } else {
          sums[index] = '--';
        }
      })
      return sums;
    },
    handleQuery() {
      this.getList();
src/views/specialOperationsPay/notCoalCalculate/index.vue
@@ -4,11 +4,11 @@
      <el-date-picker
        v-model="queryParams.year"
        type="year"
        style="width: 300px"
        style="width: 200px"
        value-format="yyyy"
        placeholder="选择年">
      </el-date-picker>
      <el-select v-model="queryParams.quarter" placeholder="请选择季度" style="width: 300px;margin-left: 5px" clearable>
      <el-select v-model="queryParams.quarter" placeholder="请选择季度" style="width: 200px;margin-left: 5px" clearable>
        <el-option
          v-for="item in quarterList"
          :key="item.id"
@@ -16,7 +16,7 @@
          :value="item.id">
        </el-option>
      </el-select>
      <el-select v-model="queryParams.districtCode" placeholder="所辖行政区划" @change="changeDeptList" style="width: 300px;margin-left: 5px">
      <el-select v-model="queryParams.districtCode" :disabled="isExam" placeholder="所辖行政区划" @change="changeDeptList" style="width: 200px;margin-left: 5px">
        <el-option
          v-for="item in areaList"
          :key="item.id"
@@ -24,7 +24,7 @@
          :value="item.code">
        </el-option>
      </el-select>
      <el-cascader v-model="queryParams.deptId" style="margin-left: 10px" :show-all-levels="false" filterable :options="deptList" placeholder="组织架构"
      <el-cascader v-model="queryParams.deptId" :disabled="isExam" style="margin-left: 10px" :show-all-levels="false" filterable :options="deptList" placeholder="组织架构"
                   :props="{ emitPath: false,value:'deptId',label: 'deptName' }"></el-cascader>
      <el-button
        type="primary"
@@ -39,7 +39,7 @@
      </el-button>
    </div>
    <el-table v-loading="loading" :data="dataList" style="margin-top: 20px" :row-class-name="tableAddClass">
    <el-table v-loading="loading" :data="dataList" style="margin-top: 20px" :row-class-name="tableAddClass" show-summary :summary-method="getSummaries">
      <el-table-column label="工种类别" align="center" prop="subjectName"></el-table-column>
      <el-table-column label="缴费人次" align="center" prop="num" :show-overflow-tooltip="true"/>
      <el-table-column label="缴费标准" align="center" prop="amount">
@@ -52,13 +52,13 @@
      <el-table-column label="自治区级" align="center" prop="autonomy"/>
      <el-table-column label="地(州、市级)" align="center" prop="prefecuture"/>
    </el-table>
    <pagination
      v-show="total>0"
      :total="total"
      :page.sync="queryParams.pageNum"
      :limit.sync="queryParams.pageSize"
      @pagination="getList"
    />
<!--    <pagination-->
<!--      v-show="total>0"-->
<!--      :total="total"-->
<!--      :page.sync="queryParams.pageNum"-->
<!--      :limit.sync="queryParams.pageSize"-->
<!--      @pagination="getList"-->
<!--    />-->
  </div>
</template>
@@ -70,6 +70,7 @@
import {getAreaList} from "@/api/coalMine/placeManage/train";
import {deptTreeSelect} from "@/api/system/user";
import {listDept} from "@/api/system/dept";
import store from "@/store";
export default {
  name: "notCoalCalculate",
@@ -87,7 +88,7 @@
      deptList: [],
      queryParams: {
        pageNum: 1,
        pageSize: 10,
        pageSize: 999,
        year: '',
        quarter: null,
        districtCode: '',
@@ -111,13 +112,22 @@
          id: 4,
          label: '第四季度'
        }
      ]
      ],
      roles: [],
      isExam: false
    };
  },
  created() {
    this.getList()
    this.getArea()
    this.getDeptTree()
    this.roles = store.getters && store.getters.roles
    if (this.roles.includes('feimeiexam') || this.roles.includes('mkexam')) {
      const userInfo = store.getters && store.getters.userInfo
      this.queryParams.districtCode = userInfo.district.districtCode
      this.queryParams.deptId = userInfo.deptId
      this.isExam = true
    }
    this.getList()
  },
  methods: {
    getList() {
@@ -190,6 +200,33 @@
        }
      }
      return null
    },
    getSummaries(param) {
      const { columns, data } = param
      const sums = [];
      columns.forEach((column, index) => {
        if (index === 0) {
          sums[index] = '合计';
          return
        }
        const values = data.map(item => Number(item[column.property]))
        if (!values.every(value => isNaN(value))) {
          sums[index] = values.reduce((prev, curr) => {
            const value = Number(curr);
            if (!isNaN(value)) {
              return prev + curr;
            } else {
              return prev;
            }
          }, 0)
          if(index == 2){
            sums[index] += '元/人次';
          }
        } else {
          sums[index] = '--';
        }
      })
      return sums;
    }
  }
};
src/views/specialOperationsPay/singlePage/index.vue
@@ -51,6 +51,7 @@
            <div>批次名称:<span class="cardCont">{{item.batchName }}</span></div>
            <div>所属地区:<span class="cardCont">{{item.districtName }}</span></div>
            <div>填报时间:<span class="cardCont">{{item.createTime}}</span></div>
            <div v-if="item.payCode">财政缴款码:<span class="cardCont">{{item.payCode}}</span><el-button type="text" style="padding: 0;margin-left: 10px" @click="copyCode(item.payCode)">复制</el-button></div>
            <div>状态状态:
              <el-tag v-if="item.payStatus == 0" type="danger" size="small">待缴费</el-tag>
              <el-tag v-if="item.payStatus == 1" type="success" size="small">已缴费</el-tag>
@@ -70,9 +71,10 @@
        </div>
        <div v-else class="feeList">
          <div v-for="(item,index) in info.list" class="infoCard" :key="index">
            <div>批次名称:<span class="cardCont" v-if="item.coalPays">{{item.coalPays.batchName }}</span></div>
            <div>批次名称:<span class="cardCont" v-if="item.coalPays">{{item.coalPays.batchName}}</span></div>
<!--            <div>所属地区:<span class="cardCont">{{item.districtName }}</span></div>-->
            <div>填报时间:<span class="cardCont" v-if="item.coalPays">{{item.coalPays.createTime}}</span></div>
            <div v-if="item.payCode">财政缴款码:<span class="cardCont">{{item.payCode}}</span><el-button type="text" style="padding: 0;margin-left: 10px" @click="copyCode(item.payCode)">复制</el-button></div>
            <div>状态状态:
              <el-tag v-if="item.payStatus == 0" type="danger" size="small">待缴费</el-tag>
              <el-tag v-if="item.payStatus == 1" type="success" size="small">已缴费</el-tag>
@@ -271,7 +273,22 @@
          }
        }
      })
    },
    copyCode(code){
      navigator.clipboard
        .writeText(code)
        .then(() => {
          this.$message({
            type:'success',
            message: '缴款码已复制到剪贴板'
          })
        })
        .catch((error) => {
          this.$message({
            type:'warning',
            message: '缴款码复制失败'
          })
        });
    },
    goPay(item){
      this.detailInfo = item