company/src/api/business/notices.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
company/src/views/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
server/service/src/main/java/com/doumee/dao/business/model/Notices.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
server/service/src/main/java/com/doumee/service/business/impl/NoticesServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | 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)) {