add 小程序企业端会议下载资料
This commit is contained in:
+70
@@ -666,5 +666,75 @@ public class PayMeetingController extends JeroController<PayMeeting, IPayMeeting
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 预览图片&下载文件
|
||||||
|
*
|
||||||
|
* @param id 传入文件id
|
||||||
|
*/
|
||||||
|
@ApiOperation(value = "小程序企业端会议下载资料", notes = "企业端会议下载资料")
|
||||||
|
@GetMapping(value = "/userDownloadByApplet/{id}/{meetingId}")
|
||||||
|
public void userDownloadByApplet(@PathVariable String id, @PathVariable String meetingId, HttpServletResponse response, String type) {
|
||||||
|
LoginUser sysUser =(LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||||
|
String sysUserId = sysUser.getId();
|
||||||
|
PayMeeting payMeeting = payMeetingService.getById(meetingId);
|
||||||
|
if(ObjectUtils.isEmpty(payMeeting)){
|
||||||
|
throw new JeroBootException("会议不存在..");
|
||||||
|
}
|
||||||
|
Integer meetingType = payMeeting.getMeetingType();
|
||||||
|
//如果是分标委会议或理事会会议,判断是否为成员
|
||||||
|
boolean isSubItem = false;
|
||||||
|
if (meetingType.equals(MeetingCommon.COMMITTEE_MEETING_INT)) {
|
||||||
|
LambdaQueryWrapper<PayCaseCommitteeSubitem> wrapper = new LambdaQueryWrapper<>();
|
||||||
|
wrapper.eq(PayCaseCommitteeSubitem::getCommitteeId, payMeeting.getCaseCommitteeId());
|
||||||
|
wrapper.eq(PayCaseCommitteeSubitem::getContactsId, sysUserId);
|
||||||
|
|
||||||
|
int count = payCaseCommitteeSubitemService.count(wrapper);
|
||||||
|
if (count > 0) {
|
||||||
|
isSubItem = true;
|
||||||
|
}
|
||||||
|
} else if (meetingType.equals(MeetingCommon.COUNCIL_MEETING_INT)) {
|
||||||
|
LambdaQueryWrapper<PayCaseCouncilSubitem> wrapper = new LambdaQueryWrapper<>();
|
||||||
|
wrapper.eq(PayCaseCouncilSubitem::getCouncilId, payMeeting.getCouncilId());
|
||||||
|
wrapper.eq(PayCaseCouncilSubitem::getContactsId, sysUserId);
|
||||||
|
int count = payCaseCouncilSubitemService.count(wrapper);
|
||||||
|
if (count > 0) {
|
||||||
|
isSubItem = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
String meetingMinute = payMeeting.getMeetingMinute();
|
||||||
|
String meetingData = payMeeting.getMeetingData();
|
||||||
|
List<String> fileList = new ArrayList<>();
|
||||||
|
if(StringUtils.isNotBlank(meetingMinute)) {
|
||||||
|
fileList.addAll(Arrays.asList(meetingMinute.split(",")));
|
||||||
|
}
|
||||||
|
if(StringUtils.isNotBlank(meetingData)) {
|
||||||
|
fileList.addAll(Arrays.asList(meetingData.split(",")));
|
||||||
|
}
|
||||||
|
if(!fileList.contains(id)){
|
||||||
|
throw new JeroBootException("会议无此文件..");
|
||||||
|
}
|
||||||
|
BigDecimal meetingCosts = payMeeting.getMeetingCosts();
|
||||||
|
//先判断非成员
|
||||||
|
if (!isSubItem){
|
||||||
|
//会议金额等于0并且是工作组会议(工作组会议金额为0时可以下载)
|
||||||
|
if (meetingCosts.compareTo(BigDecimal.ZERO) == 0 && meetingType.equals(MeetingCommon.WORKING_GROUP_MEETING_INT)){
|
||||||
|
|
||||||
|
}else
|
||||||
|
|
||||||
|
//在判断会议金额是否大于0
|
||||||
|
if (meetingCosts.compareTo(BigDecimal.ZERO) > 0){
|
||||||
|
QueryWrapper<PayMeetingSituation> queryWrapper1 = new QueryWrapper<>();
|
||||||
|
queryWrapper1.eq("meeting_id", meetingId);
|
||||||
|
queryWrapper1.eq("company_contact_id", sysUserId);
|
||||||
|
PayMeetingSituation meetingSituation = payMeetingSituationService.getOne(queryWrapper1);
|
||||||
|
if (ObjectUtils.isEmpty(meetingSituation)) {
|
||||||
|
throw new JeroBootException("未报名会议。");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user