新增起草组-修改接口

This commit is contained in:
sunzheng
2024-01-08 15:02:08 +08:00
parent 0b4ab52dce
commit 41b6a03442
13 changed files with 341 additions and 12 deletions
+119
View File
@@ -0,0 +1,119 @@
-- 新增 pay_drafting_group表(起草组表)
CREATE TABLE `pay_drafting_group` (
`id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '主键',
`drafting_group_project` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '起草组项目',
`working_group_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '工作组id',
`year` int NULL DEFAULT NULL COMMENT '运行年份',
`principal_id_a` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '负责人Aid',
`principal_name_a` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '负责人名称A',
`principal_id_b` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '负责人Bid',
`principal_name_b` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '负责人名称B',
`convoke_num` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '每年召开次数',
`operation_cycle` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '运行周期',
`mission_and_objectives` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '任务及目标',
`remarks` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注',
`create_by` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建人',
`create_time` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`update_by` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新人',
`update_time` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '起草组表' ROW_FORMAT = Dynamic;
-- 新增 pay_drafting_group_subitem表 (起草组成员表)
CREATE TABLE `pay_drafting_group_subitem` (
`id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '主键',
`drafting_group_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '起草组id',
`charge_company_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '成员单位id',
`charge_company_temporary_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '临时成员单位id',
`charge_company_temporary_name` varchar(55) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '临时成员单临时成员单位(未审核状态下会多出5位,因此修改成55长度)',
`contacts_id_one` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '企业联系人一id',
`contacts_temporary_id_one` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '临时企业联系人一id',
`contacts_temporary_name_one` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '临时企业联系人一名称',
`remarks_one` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '联系人备注1',
`contacts_id_two` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '企业联系人二id',
`contacts_temporary_id_two` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '临时企业联系人二id',
`contacts_temporary_name_two` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '临时企业联系人二名称',
`remarks_two` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '联系人备注2',
`contacts_id_three` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '企业联系人三id',
`contacts_temporary_id_three` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '临时企业联系人三id',
`contacts_temporary_name_three` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '临时企业联系人三名称',
`remarks_three` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '联系人备注3',
`remarks` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注',
`create_by` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建人',
`create_time` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`update_by` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新人',
`update_time` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `working_drafting_id_and_company_id_index`(`drafting_group_id`, `charge_company_id`) USING BTREE COMMENT '工作组与企业唯一',
INDEX `working_drafting_company_index`(`charge_company_temporary_name`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '起草组成员表' ROW_FORMAT = Dynamic;
-- 新增 pay_drafting_group_subitem_contacts表(起草组成员-企业联系人表)
CREATE TABLE `pay_drafting_group_subitem_contacts` (
`id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
`drafting_group_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '起草组id',
`drafting_group_sub_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '起草组成员id',
`contacts_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '企业联系人id',
`contacts_temporary_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '临时企业联系人id',
`contacts_temporary_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '临时企业联系人名称',
`remarks` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '联系人备注',
`order_num` int NULL DEFAULT NULL COMMENT '序号',
`create_by` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建人',
`create_time` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`update_by` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新人',
`update_time` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE,
INDEX `idx_wg_working_group_id`(`drafting_group_id`) USING BTREE,
INDEX `idx_wg_working_group_sub_id`(`drafting_group_sub_id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '起草组成员-企业联系人表' ROW_FORMAT = Dynamic;
-- 新增 pay_drafting_group_research_project表(起草组-在研项目表)
CREATE TABLE `pay_drafting_group_research_project` (
`id` varchar(32) CHARACTER SET utf16 COLLATE utf16_general_ci NOT NULL COMMENT '主键',
`drafting_group_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '起草组id',
`project_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '项目名称',
`draft_company` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '主要起草单位',
`files` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '过程文件',
`project_schedule` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '项目进度',
`create_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建人',
`create_time` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`update_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新人',
`update_time` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE,
INDEX `committee_name_index`(`project_name`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '起草组-在研项目表' ROW_FORMAT = Dynamic;
-- 新增 pay_drafting_group_research_project_file表(起草组-在研项目-资料文件表)
CREATE TABLE `pay_drafting_group_research_project_file` (
`id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '主键',
`project_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '项目id',
`file_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '文件id',
`create_by` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建人',
`create_time` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`update_by` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新人',
`update_time` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '起草组-在研项目-资料文件表' ROW_FORMAT = Dynamic;
-- 新增 pay_drafting_group_distribution_record表(起草组-分发记录表)
CREATE TABLE `pay_drafting_group_distribution_record` (
`id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '主键',
`data_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '资料id',
`project_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '起草组id或者分标委id',
`sub_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '工作组成员id或者分标委成员id',
`project_type` tinyint(1) NULL DEFAULT NULL COMMENT '类型1:起草组,2:分标委',
`file_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '文件id',
`contacts_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '联系人id',
`contacts_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '联系人名称',
`create_by` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建人',
`create_time` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`update_by` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新人',
`update_time` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '起草组-分发记录表' ROW_FORMAT = Dynamic;
-- pay_meeting表 新增 drafting_group_id(起草组id),drafting_group_name(起草组名称)字段
ALTER TABLE `pay_meeting` ADD COLUMN `drafting_group_id` varchar(50) COMMENT '起草组id';
ALTER TABLE `pay_meeting` ADD COLUMN `drafting_group_name` varchar(50) COMMENT '起草组名称';
@@ -2,6 +2,7 @@ package com.jero.drafting.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jero.common.api.vo.Result;
@@ -187,7 +188,7 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
*/
@AutoLog(value = "起草组项目-复制",operateType = 3)
// @RequiresPermissions("draftingGroupProject:copy")
@ApiOperation(value="起草组项目-复制", notes="起草组项目-复制")
// @ApiOperation(value="起草组项目-复制", notes="起草组项目-复制")
@PostMapping(value = "/copy")
public Result<?> copy(@RequestBody PayDraftingGroup payDraftingGroup) {
if(StringUtils.isBlank(payDraftingGroup.getId())){
@@ -243,4 +244,51 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
}).collect(Collectors.toList());
return Result.OK(mapList);
}
/**
* 编辑
*
* @param payDraftingGroup 起草组项目
* @return
*/
@AutoLog(value = "起草组项目-修改",operateType = 3)
// @RequiresPermissions("draftingGroupProject:edit")
@ApiOperation(value="起草组项目-编辑", notes="起草组项目-编辑")
@PostMapping(value = "/edit")
public Result<?> edit(@RequestBody PayDraftingGroup payDraftingGroup) {
StringBuilder msg = ValidUtil.validateAll(payDraftingGroup);
if(!StringUtils.isBlank(msg)){
return Result.error(msg.toString());
}
if(StringUtils.isEmpty(payDraftingGroup.getId())){
return Result.error("起草组id不能为空!");
}
PayDraftingGroup payDraftingGroupOld = payDraftingGroupService.getById(payDraftingGroup.getId());
if(Objects.isNull(payDraftingGroupOld)){
return Result.error("起草组不存在!");
}
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
if(!rolePermissionService.getRolePermission("draftingGroupProject:edit") && !Objects.equals(payDraftingGroupOld.getPrincipalIdA(),sysUser.getId())){
return Result.error(payDraftingGroupOld.getDraftingGroupProject() + "数据权限不足!");
}
try {
// 编辑保存前再次校验来款项目是否存在
LambdaQueryWrapper<PayDraftingGroup> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(PayDraftingGroup::getDraftingGroupProject,payDraftingGroup.getDraftingGroupProject());
PayDraftingGroup payDraftingGroupNew = payDraftingGroupService.getOne(queryWrapper);
// 来款项目存在,并且编辑id与查询不同,则校验不通过
if(!Objects.isNull(payDraftingGroupNew) && !Objects.equals(payDraftingGroupNew.getId(),payDraftingGroup.getId())) {
return Result.error("起草组项目已存在!");
}
}catch (Exception e){
log.info("工作组项目-编辑异常",e);
return Result.error("起草组项目已存在!");
}
payDraftingGroupService.setPayDraftingGroup(payDraftingGroup);
// LambdaUpdateWrapper<PayDraftingGroup> updatePayDraftingGroup = new LambdaUpdateWrapper<>();
// updatePayDraftingGroup.eq(PayDraftingGroup::getId,payDraftingGroup.getId());
payDraftingGroupService.updateById(payDraftingGroup);
return Result.OK("编辑成功!");
}
}
@@ -28,15 +28,10 @@ import javax.annotation.Resource;
* @author sz
* @since 2024-01-02
*/
@Api(tags = "起草组-分发记录")
//@Api(tags = "起草组-分发记录")
@RestController
@RequestMapping("/drafting/payDraftingGroupDistributionRecord")
@Slf4j
public class PayDraftingGroupDistributionRecordController extends JeroController<PayDraftingGroupDistributionRecord, IPayDraftingGroupDistributionRecordService> {
@Resource
private IOSSFileService iossFileService;
@Value("${jero.path.upload}")
private String upLoadPath;
}
@@ -18,7 +18,7 @@ import org.springframework.web.bind.annotation.RestController;
* @author sz
* @since 2024-01-02
*/
@Api(tags="起草组成员")
@Api(tags="起草组成员 联系人信息")
@RestController
@RequestMapping("/drafting/payDraftingGroupSubitemContacts")
@Slf4j
@@ -71,14 +71,14 @@ public class PayDraftingGroup implements Serializable {
@ApiModelProperty(value = "负责人名称A")
private String principalNameA;
/**负责人Aid*/
/**负责人Bid*/
@Excel(name = "负责人Bid", width = 15)
@ApiModelProperty(value = "负责人Bid")
@NotEmpty(message = "负责人Bid不能为空")
// @NotEmpty(message = "负责人Bid不能为空")
@Size(max = 32,message = "负责人Bid长度不能大于32个字符")
private String principalIdB;
/**负责人名称A*/
/**负责人名称B*/
@Excel(name = "负责人名称N", width = 15)
@ApiModelProperty(value = "负责人名称B")
private String principalNameB;
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.jero.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@@ -405,4 +406,15 @@ public class PayDraftingGroupSubItem implements Serializable {
@Size(max = 50,message = "联系人10备注长度不能大于50个字符")
@TableField(exist = false)
private String remarksTen;
/**已提醒*/
@TableField(exist = false)
@Dict(dicCode = "yn")
private Integer remind;
/**邮件提醒*/
@TableField(exist = false)
@Dict(dicCode = "yn")
private Integer mailRemind;
}
@@ -23,4 +23,14 @@ public interface PayDraftingGroupSubItemMapper extends BaseMapper<PayDraftingGro
* @return
*/
IPage<PayDraftingGroupSubItem> queryPageList(Page<PayDraftingGroupSubItem> page, PayDraftingGroupSubItem payDraftingGroupSubItem, String paymentDate);
/**
* 起草组成员-发布提醒列表查询
*
* @param page
* @param payDraftingGroupSubItem
* @return
*/
IPage<PayDraftingGroupSubItem> publishReminderList(Page<PayDraftingGroupSubItem> page, PayDraftingGroupSubItem payDraftingGroupSubItem);
}
@@ -37,4 +37,32 @@
GROUP BY pdgs.id
ORDER BY pdgs.create_time desc
</select>
<select id="publishReminderList" resultType="com.jero.drafting.entity.PayDraftingGroupSubItem">
select distinct pcm.id as id,pcm.name contactsTemporaryNameOne,pcm.company_name chargeCompanyTemporaryName
,if(pmrr.id,'1','0') remind,
if(pmrmr.id,'1','0') mailRemind
from pay_contacts_management pcm
left join pay_drafting_group_subitem_contacts pdgsc on pcm.id = pdgsc.contacts_id
left join (SELECT * from pay_meeting_remind_record where meeting_id = #{param2.meetingId}) pmrr on pmrr.contact_id = pcm.id
left join (SELECT * from pay_meeting_remind_mail_record where meeting_id = #{param2.meetingId}) pmrmr on pmrmr.contact_id = pcm.id
<where>
pdgsc.drafting_group_id = #{payDraftingGroupSubItem.draftingGroupId}
<if test="payDraftingGroupSubItem.chargeCompanyTemporaryName != null and payDraftingGroupSubItem.chargeCompanyTemporaryName != ''">
and pcm.company_name like concat('%',#{payDraftingGroupSubItem.chargeCompanyTemporaryName},'%')
</if>
<if test="payDraftingGroupSubItem.remind == 1">
and pmrr.id is not null
</if>
<if test="payDraftingGroupSubItem.remind == 0">
and pmrr.id is null
</if>
<if test="payDraftingGroupSubItem.mailRemind == 1">
and pmrmr.id is not null
</if>
<if test="payDraftingGroupSubItem.mailRemind == 0">
and pmrmr.id is null
</if>
</where>
</select>
</mapper>
@@ -56,4 +56,12 @@ public interface IPayDraftingGroupSubItemService extends IService<PayDraftingGro
* @param request
*/
void importExcel(HttpServletRequest request);
/**
* 起草组成员-发布提醒列表查询
* @param page
* @param payDraftingGroupSubItem
* @return
*/
IPage<PayDraftingGroupSubItem> publishReminderList(Page<PayDraftingGroupSubItem> page, PayDraftingGroupSubItem payDraftingGroupSubItem);
}
@@ -642,4 +642,16 @@ public class PayDraftingGroupSubItemServiceImpl extends ServiceImpl<PayDraftingG
}
return payDraftingGroupSubItemContacts;
}
/**
* 起草组成员-发布提醒列表查询
*
* @param page
* @param payDraftingGroupSubItem
* @return
*/
@Override
public IPage<PayDraftingGroupSubItem> publishReminderList(Page<PayDraftingGroupSubItem> page, PayDraftingGroupSubItem payDraftingGroupSubItem) {
return payDraftingGroupSubItemMapper.publishReminderList(page,payDraftingGroupSubItem);
}
}
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jero.common.api.vo.Result;
import com.jero.common.aspect.annotation.AutoLog;
import com.jero.common.enums.CompanyMessageEnums;
import com.jero.common.exception.JeroBootException;
import com.jero.common.system.api.ISysBaseAPI;
import com.jero.common.system.vo.LoginUser;
@@ -17,11 +18,14 @@ import com.jero.meeting.entity.PayMeetingHotelContacts;
import com.jero.meeting.service.IPayMeetingHotelContactsService;
import com.jero.meeting.service.IPayMeetingService;
import com.jero.meeting.vo.PayMeetingVO;
import com.jero.meeting.vo.PublishReminderVO;
import com.jero.meeting.vo.UploadFileVO;
import com.jero.modules.system.volid.group.UpdateGroup;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
@@ -167,6 +171,41 @@ public class DraftGroupMeetingController {
PayDraftingGroup payDraftingGroup = payDraftingGroupService.getById(draftingGroupId);
payMeetingVO.setDirectorName(payDraftingGroup.getDraftingGroupProject());
return Result.OK(payMeetingVO);
}
/**
* 上传文件
*/
@AutoLog(value = "上传文件")
// @RequiresPermissions("draftGroupMeeting:upload")
@ApiOperation(value = "上传资料", notes = "上传文件")
@PostMapping(value = "/uploadFile")
public Result<?> uploadFile(@RequestBody UploadFileVO uploadFileVO) {
List<String> strings = payMeetingService.uploadFileSendMsg(uploadFileVO, MeetingCommon.DRAFTING_GROUP_MEETING_INT, false);
return Result.OK("上传资料成功!",strings);
}
/**
* 上传会议纪要
*/
@AutoLog(value = "上传会议纪要")
// @RequiresPermissions("draftGroupMeeting:uploadCouncil")
@ApiOperation(value = "上传会议纪要", notes = "上传会议纪要")
@PostMapping(value = "/uploadCouncilFile")
public Result<?> uploadCouncilFile(@RequestBody UploadFileVO uploadFileVO) {
payMeetingService.uploadFile(uploadFileVO, MeetingCommon.DRAFTING_GROUP_MEETING_INT);
return Result.OK("上传会议纪要成功!");
}
/**
* 发布提醒
*/
@AutoLog("发布提醒")
@RequiresPermissions("workGroupMeeting:publish")
@ApiOperation(value = "发布提醒", notes = "发布提醒")
@PostMapping(value = "/publishReminder")
public Result<?> publishReminder(@RequestBody PublishReminderVO publishReminderVO) {
List<String> strings = payMeetingService.publishReminder(publishReminderVO, CompanyMessageEnums.MSG1, "C_OPEN_TYPE1");
return Result.OK("发布成功",strings);
}
}
@@ -8,9 +8,16 @@ import com.jero.common.api.vo.Result;
import com.jero.common.aspect.annotation.AutoLog;
import com.jero.common.aspect.annotation.DictPoint;
import com.jero.common.exception.JeroBootException;
import com.jero.common.service.RolePermissionService;
import com.jero.common.system.base.controller.JeroController;
import com.jero.common.system.query.QueryGenerator;
import com.jero.common.system.vo.LoginUser;
import com.jero.common.util.ValidUtil;
import com.jero.common.util.oConvertUtils;
import com.jero.drafting.entity.PayDraftingGroup;
import com.jero.drafting.entity.PayDraftingGroupSubItem;
import com.jero.drafting.service.IPayDraftingGroupService;
import com.jero.drafting.service.IPayDraftingGroupSubItemService;
import com.jero.meeting.common.MeetingCommon;
import com.jero.meeting.entity.PayMeeting;
import com.jero.meeting.entity.PayMeetingSituation;
@@ -19,10 +26,13 @@ import com.jero.meeting.vo.CheckVO;
import com.jero.meeting.vo.PayMeetingSituationVO;
import com.jero.meeting.vo.SetGuestsUploadFileVO;
import com.jero.project.common.PayProjectCommon;
import com.jero.project.entity.PayWorkingGroup;
import com.jero.project.entity.PayWorkingGroupSubItem;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.ModelAndView;
@@ -44,6 +54,12 @@ import java.util.Objects;
public class DraftGroupMeetingSituationController extends JeroController<PayMeetingSituation, IPayMeetingSituationService> {
@Resource
private IPayMeetingSituationService payMeetingSituationService;
@Resource
private IPayDraftingGroupService payDraftingGroupService;
@Resource
private IPayDraftingGroupSubItemService payDraftingGroupSubItemService;
@Resource
private RolePermissionService rolePermissionService;
private final Integer MEETING_TYPE = MeetingCommon.DRAFTING_GROUP_MEETING_INT;
@@ -201,4 +217,44 @@ public class DraftGroupMeetingSituationController extends JeroController<PayMeet
Class<?> aClass = payMeetingSituationService.getaClass(MEETING_TYPE);
return super.exportListXls(objects, aClass, "参会人员信息");
}
/**
* 分页列表查询
*
* @param payDraftingGroupSubItem 起草组成员
* @param pageNo 页数
* @param pageSize 条数
* @param paymentDate 日期
* @return
*/
// @RequiresPermissions("draftingGroupMember:search")
@ApiOperation(value = "起草组成员-发布提醒列表查询")
@GetMapping(value = "/publishReminderList")
public Result<?> publishReminderList(PayDraftingGroupSubItem payDraftingGroupSubItem,
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
@RequestParam(name = "paymentDate", required = false) String paymentDate) {
if (!StringUtils.isBlank(payDraftingGroupSubItem.getChargeCompanyTemporaryName()) && payDraftingGroupSubItem.getChargeCompanyTemporaryName().length() > 50) {
return Result.error("成员单位长度不能大于50个字符");
}
if (StringUtils.isBlank(payDraftingGroupSubItem.getDraftingGroupId())) {
return Result.error("起草组id不能为空!");
}
if(!StringUtils.isBlank(payDraftingGroupSubItem.getChargeCompanyTemporaryName())){
payDraftingGroupSubItem.setChargeCompanyTemporaryName(oConvertUtils.replaceAllPercent(payDraftingGroupSubItem.getChargeCompanyTemporaryName()));
}
PayDraftingGroup payDraftingGroup = payDraftingGroupService.getById(payDraftingGroupSubItem.getDraftingGroupId());
if(Objects.isNull(payDraftingGroup)){
return Result.error("起草组不存在!");
}
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
if(!rolePermissionService.getRolePermission("draftingGroupMember:search")
&& !Objects.equals(payDraftingGroup.getPrincipalIdA(),sysUser.getId())
&& !Objects.equals(payDraftingGroup.getPrincipalIdB(),sysUser.getId())){
return Result.error("数据权限不足!");
}
Page<PayDraftingGroupSubItem> page = new Page<>(pageNo, pageSize);
IPage<PayDraftingGroupSubItem> pageList = payDraftingGroupSubItemService.publishReminderList(page, payDraftingGroupSubItem);
return Result.OK(pageList);
}
}
@@ -19,8 +19,10 @@ public class PublishReminderVO {
private List<String> meetingIds;
@ApiModelProperty(value = "成员id列表")
private List<String> subitemIds;
@ApiModelProperty(value = "项目类型1:工作组2:分标委")
@ApiModelProperty(value = "项目类型1:工作组, 2:分标委, 3:起草组")
private Integer projectType;
@ApiModelProperty(value = "是否发送邮件")
private Integer sendEmailFlag;
@ApiModelProperty(value = "起草组id")
private java.lang.String draftingGroupId;
}