jiangping
2024-02-02 4ac55b3e4ccd35aad6ce395222683fd80b1aab79
Merge remote-tracking branch 'origin/master'
已添加1个文件
已修改4个文件
151 ■■■■ 文件已修改
company/src/api/business/notices.js 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/views/index.vue 109 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/dao/business/model/Notices.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/service/business/impl/NoticesServiceImpl.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/api/business/notices.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
import request from '../../utils/request'
// æŸ¥è¯¢
export function fetchList (data) {
    return request.post('/business/notices/page', data, {
        trim: true
    })
}
company/src/views/index.vue
@@ -22,14 +22,14 @@
        </el-tabs>
        <div v-if="activeName === '0'"  v-permissions="['business:notice:insurance']" >
          <div class="home_content_right_list">
            <div class="list_item" v-for="(item, index) in 1" :key="index">
            <div class="list_item" v-for="(item, index) in tableData0" :key="index">
              <div class="list_item_left">
                <span>投保申请(待签署)</span>
                <span>保险方案(雇主责任险A)</span>
                <span>{{item.title}}({{ item.typeDetail }})</span>
                <span>{{item.info}}({{item.content}})</span>
              </div>
              <div class="list_item_center">
                <span>安徽平安人力资源有限公司</span>
                <span>提交时间  2023-09-11 00:00:00</span>
                <span>{{item.companyName}}</span>
                <span>提交时间  {{item.createDate}}</span>
              </div>
              <div class="list_item_right">
                <span>查看详情</span>
@@ -38,24 +38,24 @@
          </div>
          <div class="home_content_right_page">
            <el-pagination
                @current-change="handleCurrentChange"
                :current-page="page"
                @current-change="handleCurrentChange0"
                :current-page="page0"
                :page-size="5"
                layout="total, prev, pager, next, jumper"
                :total="0">
                :total="totalPage0">
            </el-pagination>
          </div>
        </div>
        <div v-if="activeName === '1'"  v-permissions="['business:notice:tax']">
          <div class="home_content_right_list">
            <div class="list_item" v-for="(item, index) in 1" :key="index">
            <div class="list_item" v-for="(item, index) in tableData1" :key="index">
              <div class="list_item_left">
                <span>投保申请(待签署1)</span>
                <span>保险方案(雇主责任险A)</span>
                <span>{{item.title}}({{ item.typeDetail }})</span>
                <span>{{item.info}}({{item.content}})</span>
              </div>
              <div class="list_item_center">
                <span>安徽平安人力资源有限公司</span>
                <span>提交时间  2023-09-11 00:00:00</span>
                <span>{{item.companyName}}</span>
                <span>提交时间  {{item.createDate}}</span>
              </div>
              <div class="list_item_right">
                <span>查看详情</span>
@@ -64,24 +64,24 @@
          </div>
          <div class="home_content_right_page">
            <el-pagination
                @current-change="handleCurrentChange"
                :current-page="page"
                @current-change="handleCurrentChange1"
                :current-page="page1"
                :page-size="5"
                layout="total, prev, pager, next, jumper"
                :total="0">
                :total="totalPage1">
            </el-pagination>
          </div>
        </div>
        <div v-if="activeName === '2'"  v-permissions="['business:notice:settle']">
          <div class="home_content_right_list">
            <div class="list_item" v-for="(item, index) in 1" :key="index">
            <div class="list_item" v-for="(item, index) in tableData2" :key="index">
              <div class="list_item_left">
                <span>投保申请(待签署2)</span>
                <span>保险方案(雇主责任险A)</span>
                <span>{{item.title}}({{ item.typeDetail }})</span>
                <span>{{item.info}}({{item.content}})</span>
              </div>
              <div class="list_item_center">
                <span>安徽平安人力资源有限公司</span>
                <span>提交时间  2023-09-11 00:00:00</span>
                <span>{{item.companyName}}</span>
                <span>提交时间  {{item.createDate}}</span>
              </div>
              <div class="list_item_right">
                <span>查看详情</span>
@@ -90,11 +90,11 @@
          </div>
          <div class="home_content_right_page">
            <el-pagination
                @current-change="handleCurrentChange"
                :current-page="page"
                @current-change="handleCurrentChange2"
                :current-page="page2"
                :page-size="5"
                layout="total, prev, pager, next, jumper"
                :total="0">
                :total="totalPage2">
            </el-pagination>
          </div>
        </div>
@@ -106,14 +106,22 @@
<script>
import * as echarts from 'echarts';
import {mapState} from "vuex";
import { fetchList as noticeList } from '@/api/business/notices'
export default {
  name: 'Index',
  data () {
    return {
      activeName: '0',
      tabs:[],
      page: 1,
      table:null,
      page0: 1,
      page1: 1,
      page2: 1,
      totalPage2: 0,
      totalPage1: 0,
      totalPage0: 0,
      tableData0:[],
      tableData1:[],
      tableData2:[],
      cate: [
        {
          name: '投保申请',
@@ -153,8 +161,33 @@
    this.initPanel()
  },
  methods: {
    getNoticeList(type,page){
      noticeList({
            page: page,
            capacity: 5,
            model: { queryType:type},
            sorts: []
          })
          .then(response => {
            if(type ===0){
              this.tableData0 = response.records
              this.totalPage0 = response.total
            }
            if(type ===1){
              this.tableData1 = response.records
              this.totalPage1 = response.total
            } if(type ===2){
              this.tableData2 = response.records
              this.totalPage2 = response.total
            }
          })
          .catch(e => {
            this.$tip.apiFailed(e)
          })
    },
    initPanel(){
      var pemissons = this.userInfo.permissions;
      var pemissons = this.userInfo.permissions
      if(pemissons.includes("business:notice:insurance")){
        this.tabs.push( {name:"0",label:"投保代办"})
      }
@@ -164,12 +197,30 @@
      if(pemissons.includes("business:notice:settle")){
        this.tabs.push( {name:"2",label:"理赔代办"})
      }
      if(pemissons.includes("business:notice:insurance")){
        this.getNoticeList(0,this.page0 )
      }
      if(pemissons.includes("business:notice:tax")){
        this.getNoticeList(1,this.page1 )
      }
      if(pemissons.includes("business:notice:settle")){
        this.getNoticeList(2,this.page2 )
      }
    },
    handleClick(e) {
      this.activeName = e.name
    },
    handleCurrentChange(page) {
      this.page = page
    handleCurrentChange0(page) {
      this.page0 = page
      this.getNoticeList(0,this.page0 )
    },
    handleCurrentChange1(page) {
      this.page1 = page
      this.getNoticeList(1,this.page1 )
    },
    handleCurrentChange2(page) {
      this.page2 = page
      this.getNoticeList(2,this.page2)
    },
    jump(url) {
      if (!url) return;
server/service/src/main/java/com/doumee/dao/business/model/Notices.java
@@ -130,6 +130,9 @@
    @ApiModelProperty(value = "是否已读 0未读 1已读", example = "1")
    @ExcelColumn(name="是否已读 0未读 1已读")
    private Integer readed;
    @ApiModelProperty(value = "查詢类型 0投保 1发票 2理赔", example = "1")
    @TableField(exist = false)
    private Integer queryType;
    public Notices(){
server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java
@@ -1099,7 +1099,6 @@
  
    @Override
    public PageData<InsuranceApply> findPage(PageWrap<InsuranceApplyQueryDTO> pageWrap) {
        LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
        IPage<InsuranceApply> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
        MPJLambdaWrapper<InsuranceApply> queryWrapper = new MPJLambdaWrapper<>();
        Utils.MP.blankToNull(pageWrap.getModel());
@@ -1122,6 +1121,8 @@
            queryWrapper.eq(InsuranceApply::getStatus,Constants.InsuranceApplyStatus.UPLOAD_INSURANCE.getKey());
            queryWrapper.lt(InsuranceApply::getEndTime, Utils.Date.getStart(new Date()));
        }
        LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
        //企业人员查看本企业数据
        if(loginUserInfo.getType().equals(Constants.ONE)){
            queryWrapper.eq(InsuranceApply::getCompanyId, loginUserInfo.getCompanyId());
server/service/src/main/java/com/doumee/service/business/impl/NoticesServiceImpl.java
@@ -1,5 +1,6 @@
package com.doumee.service.business.impl;
import com.doumee.core.model.LoginUserInfo;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.core.utils.Constants;
@@ -17,6 +18,7 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.xiaoymin.knife4j.core.util.CollectionUtils;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@@ -94,6 +96,19 @@
        IPage<Notices> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
        MPJLambdaWrapper<Notices> queryWrapper = new MPJLambdaWrapper<>();
        Utils.MP.blankToNull(pageWrap.getModel());
        LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
        //企业人员查看本企业数据
        if(loginUserInfo.getType().equals(Constants.ONE)){
            queryWrapper.eq(Notices::getCompanyId, loginUserInfo.getCompanyId());
        }else{
            if(loginUserInfo.getCompanyIdList()!=null && loginUserInfo.getCompanyIdList().size()>0){
                queryWrapper.in(Notices::getCompanyId, loginUserInfo.getCompanyIdList());
            }else{
                queryWrapper.eq(Notices::getCompanyId, -1);
            }
        }
        queryWrapper.selectAll(Notices.class);
        queryWrapper.selectAs(Company::getName,Notices::getCompanyName);
        queryWrapper.leftJoin(Company.class,Company::getId,Notices::getCompanyId);
@@ -118,6 +133,19 @@
        if (pageWrap.getModel().getReaded() != null) {
            queryWrapper.eq(Notices::getReaded, pageWrap.getModel().getReaded());
        }
        if(pageWrap.getModel().getQueryType()!=null){
            if(pageWrap.getModel().getQueryType().equals(Constants.ZERO)){
                queryWrapper.in(Notices::getObjType,new Integer[]{Constants.NoticeObjectType.INSURANCE_APPLY.getKey(),
                        Constants.NoticeObjectType.APPLY_CHANGE.getKey(),
                        Constants.NoticeObjectType.DISPATCH_UNIT.getKey(),
                        Constants.NoticeObjectType.CHANGE_FACTORY.getKey()});
            } else if(pageWrap.getModel().getQueryType().equals(Constants.ONE)){
                queryWrapper.in(Notices::getObjType,new Integer[]{Constants.NoticeObjectType.TAXES.getKey() });
            } else if(pageWrap.getModel().getQueryType().equals(Constants.TWO)){
                queryWrapper.in(Notices::getObjType,new Integer[]{Constants.NoticeObjectType.SETTLE_CLAIMS.getKey() });
            }
        }
        if(CollectionUtils.isNotEmpty(pageWrap.getSorts())){
            for(PageWrap.SortData sortData: pageWrap.getSorts()) {
                if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {