Compare commits

...
10 Commits
20 changed files with 172 additions and 77 deletions
+23 -1
View File
@@ -2109,4 +2109,26 @@ from (
) pp
where pp.allMoney is not null
and pp.allMoney != 0
order by pp.createTime;
order by pp.createTime;
-- 20240705 标协会员的视图创建
drop view if exists v_member_project_subitem;
CREATE VIEW v_member_project_subitem AS
select t1.id,
t1.member_no AS member_no,
t1.company_id AS company_id,
t1.company_name AS company_name,
t1.liaison_man_id AS liaison_man_id,
t1.member_status AS member_status,
t1.effective_date AS effective_date,
t1.invalidation_date AS invalidation_date,
t1.create_time AS create_time,
t1.project_id AS project_id
from tb_member_project_subitem t1
join
(select tb_member_project_subitem.company_id AS company_id,
max(tb_member_project_subitem.create_time) AS max_create_time
from tb_member_project_subitem
group by tb_member_project_subitem.company_id) t2 on t1.company_id = t2.company_id
and t1.create_time = t2.max_create_time
where t1.member_status is not null;
@@ -143,7 +143,7 @@ public class ShiroConfig {
filterChainDefinitionMap.put("/meeting/internalMeeting/getLinkTopics","anon");//查询关联会议
filterChainDefinitionMap.put("/pack/payPackCompany/judgeCompanyIsPackaged","anon");//判断当前企业是否是打包企业
filterChainDefinitionMap.put("/company/payCompanyManagement/judgeCompanyIsPackaged","anon");//判断当前企业是否是打包企业
filterChainDefinitionMap.put("/drafting/payDraftingGroupSubitem/queryInfoByDraftIdAndContactId","anon");//通过起草组id和参会人id查询企业信息和所有联系人信息
filterChainDefinitionMap.put("/drafting/payDraftingGroupSubitem/queryInfoByDraftIdAndCompanyId","anon");//通过起草组id和参会人id查询企业信息和所有联系人信息
//通过单位名称查询该单位是否可用
filterChainDefinitionMap.put("/member/tbMemberProjectSubitem/enableMemberByCompanyName", "anon");
//门户端-分页查询所有会员名称
@@ -487,7 +487,7 @@ public class SendMessageServiceImpl implements SendMessageService {
// 中汽中心标准院-企业端-会议通知-24-中汽中心标准院_国际研讨会_WASIC会议报名提醒
sender = "8823103134217";
signature = "中汽中心标准院";
templateId = "1eafad16964f4b629ec961f5fb72fe81";
templateId = "4e1249086d1a44a8811d68a6e78201b4";
break;
default:
throw new JeroBootException("codeType flase.");
@@ -1,15 +1,14 @@
package com.jero.data.controller;
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.io.*;
import java.util.*;
import javax.activation.MimetypesFileTypeMap;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid;
import cn.hutool.core.io.FileUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -31,6 +30,7 @@ import com.jero.modules.oss.entity.OSSFile;
import com.jero.modules.oss.service.IOSSFileService;
import com.jero.modules.system.entity.SysUser;
import com.jero.modules.system.service.ISysUserService;
import com.jero.modules.system.util.SysWaterMarkUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
@@ -76,7 +76,8 @@ public class PayCaseCommitteeController extends JeroController<PayCaseCommittee,
@Resource
private IPayMeetingService payMeetingService;
@Resource
private SysWaterMarkUtil sysWaterMarkUtil;
/**
* 分标委表-企业端分页列表查询
*
@@ -118,7 +119,7 @@ public class PayCaseCommitteeController extends JeroController<PayCaseCommittee,
@ApiOperation(value="分标委表-企业端资料下载", notes="分标委表-企业端资料下载")
@GetMapping(value = "download")
public void download(
@RequestParam(name = "fileId",required = true) String fileId
@RequestParam(name = "fileId",required = true) String fileId, HttpServletRequest request
) throws IOException {
ServletRequestAttributes requestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
HttpServletResponse response = requestAttributes.getResponse();
@@ -135,17 +136,22 @@ public class PayCaseCommitteeController extends JeroController<PayCaseCommittee,
String hehe = new String(fileName.getBytes("utf-8"), "iso-8859-1");
// 设置扩展头,当Content-Type 的类型为要下载的类型时 , 这个信息头会告诉浏览器这个文件的名字和类型。
response.setHeader("Content-Disposition", "attachment;filename=" + hehe);
download(url, response);
download(url, response,request);
}
public void download(String url, HttpServletResponse res) throws IOException {
public void download(String url, HttpServletResponse res, HttpServletRequest request) throws IOException {
// 发送给客户端的数据
OutputStream outputStream = res.getOutputStream();
byte[] buff = new byte[1024];
BufferedInputStream bis = null;
// 读取filename
bis = new BufferedInputStream(new FileInputStream(new File(upLoadPath+File.separator+url)));
InputStream fileInputStream = new BufferedInputStream(new FileInputStream(upLoadPath + File.separator + url));
//pdf加水印
if ("pdf".equalsIgnoreCase(FileUtil.extName(url))) {
fileInputStream = sysWaterMarkUtil.addWatermarkToPdf(fileInputStream, request);
}
bis = new BufferedInputStream(fileInputStream);
int i = bis.read(buff);
while (i != -1) {
outputStream.write(buff, 0, buff.length);
@@ -11,8 +11,10 @@ import com.jero.common.dto.PaySendContactsMessageDTO;
import com.jero.common.exception.JeroBootException;
import com.jero.common.service.ContractCreateProjectSendMessageService;
import com.jero.common.service.RolePermissionService;
import com.jero.common.system.api.ISysBaseAPI;
import com.jero.common.system.vo.LoginUser;
import com.jero.common.util.ImportExcelUtil;
import com.jero.common.util.PasswordUtil;
import com.jero.common.util.ValidUtil;
import com.jero.company.entity.PayCompanyManagement;
import com.jero.company.entity.PayContactsManagement;
@@ -91,6 +93,8 @@ public class PayDraftingGroupSubItemServiceImpl extends ServiceImpl<PayDraftingG
private PayDraftingGroupSubItemContactsMapper payDraftingGroupSubItemContactsMapper;
@Resource
private ContractCreateProjectSendMessageService contractCreateProjectSendMessageService;
@Resource
private ISysBaseAPI sysBaseAPI;
/**
* 分页查询
@@ -225,6 +229,7 @@ public class PayDraftingGroupSubItemServiceImpl extends ServiceImpl<PayDraftingG
//查询企业信息
String draftingGroupSubId = one.getId();
PayCompanyManagement companyManagement = payCompanyManagementService.getById(companyId);
companyManagement.setCompanyPhone(PasswordUtil.decrypt(companyManagement.getCompanyPhone()));
companyInfoVO.setCompanyManagement(companyManagement);
//查询联系人信息
LambdaQueryWrapper<PayDraftingGroupSubItemContacts> wrapper1 = new LambdaQueryWrapper<>();
@@ -233,7 +238,22 @@ public class PayDraftingGroupSubItemServiceImpl extends ServiceImpl<PayDraftingG
List<PayDraftingGroupSubItemContacts> subItemContactsList = payDraftingGroupSubItemContactsService.list(wrapper1);
List<String> contactIdList = subItemContactsList.stream().map(PayDraftingGroupSubItemContacts::getContactsId).collect(Collectors.toList());
List<PayContactsManagement> contactsManagementList = payContactsManagementService.listByIds(contactIdList);
for (PayContactsManagement contactsManagement : contactsManagementList) {
String phone = contactsManagement.getPhone();
if (StringUtils.isNotBlank(phone)){
contactsManagement.setPhone(PasswordUtil.decrypt(phone));
}
String email = contactsManagement.getEmail();
if (StringUtils.isNotBlank(email)){
contactsManagement.setEmail(PasswordUtil.decrypt(email));
}
String gender = contactsManagement.getGender();
if (StringUtils.isNotBlank(gender)){
contactsManagement.setGender(sysBaseAPI.translateDict("sex", gender));
}
}
companyInfoVO.setContactsManagementList(contactsManagementList);
return companyInfoVO;
}
/**
@@ -917,36 +937,39 @@ public class PayDraftingGroupSubItemServiceImpl extends ServiceImpl<PayDraftingG
*/
@Override
public void checkRegister(CheckVo checkVO) {
String payDraftingGroupSubItemId = checkVO.getId();
String payDraftingGroupSubItemIds = checkVO.getId();
String checkRemark = checkVO.getCheckRemark();
Integer checkResult = checkVO.getCheckResult();
PayDraftingGroupSubItem payDraftingGroupSubItem = payDraftingGroupSubItemService.getById(payDraftingGroupSubItemId);
PayDraftingGroup payDraftingGroup = payDraftingGroupService.getById(payDraftingGroupSubItem.getDraftingGroupId());
//判断是否有权限审核
verificationGuests(payDraftingGroupSubItem);
if(Objects.equals(checkVO.getCheckResult(),DraftingConstant.CHECK_PASS)) {
// 审核通过,将状态改为2 发送消息
LambdaUpdateWrapper<PayDraftingGroupSubItem> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.eq(PayDraftingGroupSubItem::getId,payDraftingGroupSubItemId);
updateWrapper.set(StringUtils.isNotBlank(checkRemark),PayDraftingGroupSubItem::getCheckRemark,checkRemark);
updateWrapper.set(!Objects.isNull(checkResult),PayDraftingGroupSubItem::getCheckResult,checkResult);
payDraftingGroupSubItemService.update(updateWrapper);
for (String payDraftingGroupSubItemId : payDraftingGroupSubItemIds.split(",")) {
PayDraftingGroupSubItem payDraftingGroupSubItem = payDraftingGroupSubItemService.getById(payDraftingGroupSubItemId);
PayDraftingGroup payDraftingGroup = payDraftingGroupService.getById(payDraftingGroupSubItem.getDraftingGroupId());
//判断是否有权限审核
verificationGuests(payDraftingGroupSubItem);
if(Objects.equals(checkVO.getCheckResult(),DraftingConstant.CHECK_PASS)) {
// 审核通过,将状态改为2 发送消息
LambdaUpdateWrapper<PayDraftingGroupSubItem> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.eq(PayDraftingGroupSubItem::getId,payDraftingGroupSubItemId);
updateWrapper.set(StringUtils.isNotBlank(checkRemark),PayDraftingGroupSubItem::getCheckRemark,checkRemark);
updateWrapper.set(!Objects.isNull(checkResult),PayDraftingGroupSubItem::getCheckResult,checkResult);
payDraftingGroupSubItemService.update(updateWrapper);
LambdaQueryWrapper<PayDraftingGroupSubItemContacts> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(PayDraftingGroupSubItemContacts::getDraftingGroupId,payDraftingGroupSubItem.getDraftingGroupId());
queryWrapper.eq(PayDraftingGroupSubItemContacts::getDraftingGroupSubId,payDraftingGroupSubItem.getId());
List<PayDraftingGroupSubItemContacts> payDraftingGroupSubItemContactsList = payDraftingGroupSubItemContactsService.list(queryWrapper);
sendMessage(payDraftingGroupSubItem,payDraftingGroup,payDraftingGroupSubItemContactsList);
}
if(Objects.equals(checkVO.getCheckResult(),DraftingConstant.CHECK_REJECTION)) {
// 直接将数据删除
payDraftingGroupSubItemService.removeById(payDraftingGroupSubItemId);
// 删除对应的联系表
LambdaQueryWrapper<PayDraftingGroupSubItemContacts> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(PayDraftingGroupSubItemContacts::getDraftingGroupId,payDraftingGroupSubItem.getDraftingGroupId());
queryWrapper.eq(PayDraftingGroupSubItemContacts::getDraftingGroupSubId,payDraftingGroupSubItem.getId());
payDraftingGroupSubItemContactsService.remove(queryWrapper);
LambdaQueryWrapper<PayDraftingGroupSubItemContacts> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(PayDraftingGroupSubItemContacts::getDraftingGroupId,payDraftingGroupSubItem.getDraftingGroupId());
queryWrapper.eq(PayDraftingGroupSubItemContacts::getDraftingGroupSubId,payDraftingGroupSubItem.getId());
List<PayDraftingGroupSubItemContacts> payDraftingGroupSubItemContactsList = payDraftingGroupSubItemContactsService.list(queryWrapper);
sendMessage(payDraftingGroupSubItem,payDraftingGroup,payDraftingGroupSubItemContactsList);
}
if(Objects.equals(checkVO.getCheckResult(),DraftingConstant.CHECK_REJECTION)) {
// 直接将数据删除
payDraftingGroupSubItemService.removeById(payDraftingGroupSubItemId);
// 删除对应的联系表
LambdaQueryWrapper<PayDraftingGroupSubItemContacts> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(PayDraftingGroupSubItemContacts::getDraftingGroupId,payDraftingGroupSubItem.getDraftingGroupId());
queryWrapper.eq(PayDraftingGroupSubItemContacts::getDraftingGroupSubId,payDraftingGroupSubItem.getId());
payDraftingGroupSubItemContactsService.remove(queryWrapper);
}
}
}
/**
@@ -32,6 +32,7 @@ import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.Objects;
@@ -73,7 +74,9 @@ public class CommitteeMeetingSituationController extends JeroController<PayMeeti
if (StringUtils.isBlank(meetingId)) {
throw new JeroBootException("会议id不能为空");
}
QueryWrapper<PayMeetingSituation> queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, req.getParameterMap());
Map<String, String[]> parameterMap = req.getParameterMap();
parameterMap.remove("column");
QueryWrapper<PayMeetingSituation> queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, parameterMap);
String particularYear = req.getParameter("particularYear");
if (StringUtils.isNotBlank(particularYear)) {
queryWrapper.eq("DATE_FORMAT( ppr.payment_date, '%Y' )", particularYear);
@@ -30,10 +30,7 @@ import org.springframework.web.servlet.ModelAndView;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.Objects;
import java.util.*;
/**
@@ -66,7 +63,9 @@ public class CouncilMeetingSituationController extends JeroController<PayMeeting
if (StringUtils.isBlank(meetingId)) {
throw new JeroBootException("会议id不能为空");
}
QueryWrapper<PayMeetingSituation> queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, req.getParameterMap());
Map<String, String[]> parameterMap = req.getParameterMap();
parameterMap.remove("column");
QueryWrapper<PayMeetingSituation> queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, parameterMap);
String particularYear = req.getParameter("particularYear");
if (StringUtils.isNotBlank(particularYear)) {
queryWrapper.eq("DATE_FORMAT( ppr.payment_date, '%Y' )", particularYear);
@@ -39,6 +39,7 @@ import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors;
@@ -77,7 +78,9 @@ public class DraftGroupMeetingSituationController extends JeroController<PayMeet
if (StringUtils.isBlank(meetingId)) {
throw new JeroBootException("会议id不能为空");
}
QueryWrapper<PayMeetingSituation> queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, req.getParameterMap());
Map<String, String[]> parameterMap = req.getParameterMap();
parameterMap.remove("column");
QueryWrapper<PayMeetingSituation> queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, parameterMap);
String particularYear = req.getParameter("particularYear");
if (StringUtils.isNotBlank(particularYear)) {
queryWrapper.eq("DATE_FORMAT( ppr.payment_date, '%Y' )", particularYear);
@@ -32,6 +32,7 @@ import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.Objects;
@@ -73,7 +74,9 @@ public class InternalMeetingSituationController extends JeroController<PayMeetin
if (StringUtils.isBlank(meetingId)) {
throw new JeroBootException("会议id不能为空");
}
QueryWrapper<PayMeetingSituation> queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, request.getParameterMap());
Map<String, String[]> parameterMap = request.getParameterMap();
parameterMap.remove("column");
QueryWrapper<PayMeetingSituation> queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, parameterMap);
String particularYear = request.getParameter("particularYear");
if (StringUtils.isNotBlank(particularYear)){
queryWrapper.eq("DATE_FORMAT( ppr.payment_date, '%Y' )",particularYear);
@@ -31,6 +31,7 @@ import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.Objects;
@@ -70,7 +71,9 @@ public class OtherMeetingSituationController extends JeroController<PayMeetingSi
if (StringUtils.isBlank(meetingId)) {
throw new JeroBootException("会议id不能为空");
}
QueryWrapper<PayMeetingSituation> queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, req.getParameterMap());
Map<String, String[]> parameterMap = req.getParameterMap();
parameterMap.remove("column");
QueryWrapper<PayMeetingSituation> queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, parameterMap);
String particularYear = req.getParameter("particularYear");
if (StringUtils.isNotBlank(particularYear)){
queryWrapper.eq("DATE_FORMAT( ppr.payment_date, '%Y' )",particularYear);
@@ -9,6 +9,7 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.io.FileUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.jero.common.api.vo.Result;
import com.jero.common.constant.CommonConstant;
@@ -41,6 +42,7 @@ import com.jero.meeting.vo.UploadFileVO;
import com.jero.meeting.vo.excel.*;
import com.jero.modules.oss.entity.OSSFile;
import com.jero.modules.oss.service.IOSSFileService;
import com.jero.modules.system.util.SysWaterMarkUtil;
import com.jero.modules.system.volid.group.UpdateGroup;
import com.jero.project.entity.PayWorkingGroup;
import com.jero.project.service.IPayWorkingGroupService;
@@ -112,6 +114,8 @@ public class PayMeetingController extends JeroController<PayMeeting, IPayMeeting
private PayMeetingGuestsFileMapper meetingGuestsFileMapper;
@Resource
private PayMeetingStandardProjectService meetingStandardProjectService;
@Resource
private SysWaterMarkUtil sysWaterMarkUtil;
/**
* 分页列表查询
@@ -518,7 +522,7 @@ public class PayMeetingController extends JeroController<PayMeeting, IPayMeeting
*/
@ApiOperation(value = "企业端会议下载资料", notes = "企业端会议下载资料")
@GetMapping(value = "/userDownload/{id}/{meetingId}")
public void download(@PathVariable String id, @PathVariable String meetingId, HttpServletResponse response, String type) {
public void download(@PathVariable String id, @PathVariable String meetingId, HttpServletResponse response, HttpServletRequest request, String type) {
LoginUser sysUser =(LoginUser) SecurityUtils.getSubject().getPrincipal();
String sysUserId = sysUser.getId();
PayMeeting payMeeting = payMeetingService.getById(meetingId);
@@ -621,7 +625,10 @@ public class PayMeetingController extends JeroController<PayMeeting, IPayMeeting
fileName = ossFile.getFileName();
inputStream = MinioUtil.getMinioFile(MinioUtil.getBucketName(), url);
}
//pdf加水印
if ("pdf".equalsIgnoreCase(FileUtil.extName(fileName))) {
inputStream = sysWaterMarkUtil.addWatermarkToPdf(inputStream, request);
}
ossFileService.updateById(ossFile);
//LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
//if (loginUser.getIsCompanyUser()) {
@@ -1,9 +1,6 @@
package com.jero.meeting.controller;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Objects;
import java.util.*;
import java.util.stream.Collectors;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
@@ -96,7 +93,9 @@ public class PayMeetingSituationController extends JeroController<PayMeetingSitu
String publicKey = req.getParameter("publicKey");
String token = req.getParameter("token");
authenticationUtils.check(token, publicKey);
QueryWrapper<PayMeetingSituation> queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, req.getParameterMap());
Map<String, String[]> parameterMap = req.getParameterMap();
parameterMap.remove("column");
QueryWrapper<PayMeetingSituation> queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, parameterMap);
Page<PayMeetingSituation> page = new Page<>(pageNo, pageSize);
IPage<PayMeetingSituation> pageList = payMeetingSituationService.page(page, queryWrapper);
pageList.getRecords().forEach(
@@ -253,7 +252,9 @@ public class PayMeetingSituationController extends JeroController<PayMeetingSitu
@RequiresPermissions("meetingSituation:export")
@GetMapping(value = "/exportXls")
public ModelAndView exportXls(HttpServletRequest request, PayMeetingSituation payMeetingSituation) {
QueryWrapper<PayMeetingSituation> queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, request.getParameterMap());
Map<String, String[]> parameterMap = request.getParameterMap();
parameterMap.remove("column");
QueryWrapper<PayMeetingSituation> queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, parameterMap);
List<PayMeetingSituation> pageList = payMeetingSituationService.list(queryWrapper);
// 过滤选中数据
String selections = request.getParameter("selections");
@@ -34,6 +34,7 @@ import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.Objects;
@@ -73,7 +74,9 @@ public class SafetyCenterMeetingSituationController extends JeroController<PayMe
if (StringUtils.isBlank(meetingId)) {
throw new JeroBootException("会议id不能为空");
}
QueryWrapper<PayMeetingSituation> queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, req.getParameterMap());
Map<String, String[]> parameterMap = req.getParameterMap();
parameterMap.remove("column");
QueryWrapper<PayMeetingSituation> queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, parameterMap);
String particularYear = req.getParameter("particularYear");
if (StringUtils.isNotBlank(particularYear)){
queryWrapper.eq("DATE_FORMAT( ppr.payment_date, '%Y' )",particularYear);
@@ -32,6 +32,7 @@ import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.Objects;
@@ -71,7 +72,9 @@ public class StandardsMeetingSituationController extends JeroController<PayMeeti
if (StringUtils.isBlank(meetingId)) {
throw new JeroBootException("会议id不能为空");
}
QueryWrapper<PayMeetingSituation> queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, req.getParameterMap());
Map<String, String[]> parameterMap = req.getParameterMap();
parameterMap.remove("column");
QueryWrapper<PayMeetingSituation> queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, parameterMap);
String particularYear = req.getParameter("particularYear");
if (StringUtils.isNotBlank(particularYear)){
queryWrapper.eq("DATE_FORMAT( ppr.payment_date, '%Y' )",particularYear);
@@ -30,10 +30,7 @@ import org.springframework.web.servlet.ModelAndView;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.Objects;
import java.util.*;
import java.util.stream.Collectors;
@@ -73,7 +70,9 @@ public class WorkGroupMeetingSituationController extends JeroController<PayMeeti
if (StringUtils.isBlank(meetingId)) {
throw new JeroBootException("会议id不能为空");
}
QueryWrapper<PayMeetingSituation> queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, req.getParameterMap());
Map<String, String[]> parameterMap = req.getParameterMap();
parameterMap.remove("column");
QueryWrapper<PayMeetingSituation> queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, parameterMap);
String particularYear = req.getParameter("particularYear");
if (StringUtils.isNotBlank(particularYear)){
queryWrapper.eq("DATE_FORMAT( ppr.payment_date, '%Y' )",particularYear);
@@ -997,6 +997,7 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl<PayMeetingSituat
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
String userId = loginUser.getId();
queryWrapper.eq("pm.meeting_type", meetingType);
queryWrapper.orderByAsc("pms.company_name");
LambdaQueryWrapper<PayMeetingContacts> queryWrapper1 = new LambdaQueryWrapper<>();
queryWrapper1.eq(PayMeetingContacts::getMeetingId, meetingId);
@@ -1032,7 +1033,9 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl<PayMeetingSituat
@Override
public IPage<PayMeetingSituation> queryStandardPage(Page<PayMeetingSituation> page, PayMeetingSituation payMeetingSituation, HttpServletRequest req) {
QueryWrapper<PayMeetingSituation> queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, req.getParameterMap());
Map<String, String[]> parameterMap = req.getParameterMap();
parameterMap.remove("column");
QueryWrapper<PayMeetingSituation> queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, parameterMap);
String standardsId = req.getParameter("standardsId");
if (StringUtils.isNotBlank(standardsId)){
@@ -1801,7 +1804,9 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl<PayMeetingSituat
if (!Objects.equals(payMeeting.getMeetingType(),meetingType)){
throw new JeroBootException("数据权限不足");
}
QueryWrapper<PayMeetingSituation> queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, request.getParameterMap());
Map<String, String[]> parameterMap = request.getParameterMap();
parameterMap.remove("column");
QueryWrapper<PayMeetingSituation> queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, parameterMap);
String particularYear = request.getParameter("particularYear");
if (StringUtils.isNotBlank(particularYear)){
queryWrapper.eq("DATE_FORMAT( ppr.payment_date, '%Y' )",particularYear);
@@ -123,7 +123,12 @@ public class PayWorkingGroupController extends JeroController<PayWorkingGroup, I
@ApiOperation(value="工作组项目-列表查询", notes="工作组项目-列表查询")
@GetMapping(value = "/listAll")
public Result<?> queryList(PayWorkingGroup payWorkingGroup,HttpServletRequest req) {
QueryWrapper<PayWorkingGroup> queryWrapper = QueryGenerator.initQueryWrapper(payWorkingGroup, req.getParameterMap());
Map<String, String[]> parameterMap = req.getParameterMap();
parameterMap.remove("column");
QueryWrapper<PayWorkingGroup> queryWrapper = QueryGenerator.initQueryWrapper(payWorkingGroup, parameterMap);
queryWrapper.orderByAsc("CASE WHEN sort_no IS NULL THEN 1 ELSE 0 END");
queryWrapper.orderByAsc("sort_no");
queryWrapper.orderByDesc("create_time");
List<PayWorkingGroup> list = payWorkingGroupService.list(queryWrapper);
return Result.OK(list);
}
@@ -2556,7 +2556,7 @@
left join v_statistical v on pcpr.project_id = v.projectId
</if>
<where>
DATE_FORMAT (payment_date,'%Y') like concat(#{year}, '%')
year = #{year}
</where>
group by departCode) a
on sd.depart_name = a.departName
@@ -24,7 +24,6 @@ import org.springframework.http.HttpMethod;
import org.springframework.http.ResponseEntity;
import org.springframework.http.server.ServletServerHttpRequest;
import org.springframework.util.AntPathMatcher;
import org.springframework.util.FileCopyUtils;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
@@ -233,7 +232,7 @@ public class CommonController {
}
//pdf加水印
if ("pdf".equalsIgnoreCase(FileUtil.extName(fileName))) {
inputStream = sysWaterMarkUtil.addWatermarkToPdf(inputStream);
inputStream = sysWaterMarkUtil.addWatermarkToPdf(inputStream,request);
}
response.addHeader("Content-Disposition", "attachment;fileName=" + new String(fileName.getBytes("UTF-8"),"iso-8859-1"));
response.setContentType("application/force-download");// 设置强制下载不打开
@@ -411,7 +410,7 @@ public class CommonController {
}
//pdf加水印
if ("pdf".equalsIgnoreCase(FileUtil.extName(fileName))) {
inputStream = sysWaterMarkUtil.addWatermarkToPdf(inputStream);
inputStream = sysWaterMarkUtil.addWatermarkToPdf(inputStream, request);
}
ossFileService.updateById(ossFile);
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
@@ -1,8 +1,12 @@
package com.jero.modules.system.util;
import com.jero.common.constant.CommonConstant;
import com.jero.common.system.api.ISysBaseAPI;
import com.jero.common.system.util.JwtUtil;
import com.jero.common.system.vo.LoginUser;
import com.jero.common.util.DateUtils;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.PDPage;
import org.apache.pdfbox.pdmodel.PDPageContentStream;
@@ -11,11 +15,13 @@ import org.apache.pdfbox.pdmodel.font.PDType0Font;
import org.apache.pdfbox.pdmodel.graphics.state.PDExtendedGraphicsState;
import org.apache.pdfbox.pdmodel.graphics.state.RenderingMode;
import org.apache.pdfbox.util.Matrix;
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.io.ClassPathResource;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.awt.*;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
@@ -66,11 +72,16 @@ public class SysWaterMarkUtil {
private float marginTop;
@Value("${watermark.dateFormat}")
private String dateFormat;
@Resource
private ISysBaseAPI sysBaseAPI;
public List<String> getWaterMarkConfig() {
LoginUser loginUser = UserUtils.getLoginUser();
public List<String> getWaterMarkConfig(HttpServletRequest request) {
String token = request.getHeader(CommonConstant.X_ACCESS_TOKEN);
LoginUser loginUser = null;
if (StringUtils.isNotBlank(token)){
String username = JwtUtil.getUsername(token);
loginUser = sysBaseAPI.getUserByName(username);
}
Date curDate = new Date();
String cudDateStr = DateUtils.date2Str(curDate, new SimpleDateFormat(dateFormat));
List<String> result = new ArrayList<>();
@@ -84,8 +95,8 @@ public class SysWaterMarkUtil {
return result;
}
public synchronized InputStream addWatermarkToPdf(InputStream inputStream) throws IOException {
List<String> watermarkText = getWaterMarkConfig();
public synchronized InputStream addWatermarkToPdf(InputStream inputStream, HttpServletRequest request) throws IOException {
List<String> watermarkText = getWaterMarkConfig(request);
PDDocument document = PDDocument.load(inputStream);
document.setAllSecurityToBeRemoved(true);
// 加载水印字体