新增起草组-修改接口
This commit is contained in:
@@ -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 '起草组名称';
|
||||||
|
|
||||||
|
|
||||||
+49
-1
@@ -2,6 +2,7 @@ package com.jero.drafting.controller;
|
|||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
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.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.jero.common.api.vo.Result;
|
import com.jero.common.api.vo.Result;
|
||||||
@@ -187,7 +188,7 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
|
|||||||
*/
|
*/
|
||||||
@AutoLog(value = "起草组项目-复制",operateType = 3)
|
@AutoLog(value = "起草组项目-复制",operateType = 3)
|
||||||
// @RequiresPermissions("draftingGroupProject:copy")
|
// @RequiresPermissions("draftingGroupProject:copy")
|
||||||
@ApiOperation(value="起草组项目-复制", notes="起草组项目-复制")
|
// @ApiOperation(value="起草组项目-复制", notes="起草组项目-复制")
|
||||||
@PostMapping(value = "/copy")
|
@PostMapping(value = "/copy")
|
||||||
public Result<?> copy(@RequestBody PayDraftingGroup payDraftingGroup) {
|
public Result<?> copy(@RequestBody PayDraftingGroup payDraftingGroup) {
|
||||||
if(StringUtils.isBlank(payDraftingGroup.getId())){
|
if(StringUtils.isBlank(payDraftingGroup.getId())){
|
||||||
@@ -243,4 +244,51 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
|
|||||||
}).collect(Collectors.toList());
|
}).collect(Collectors.toList());
|
||||||
return Result.OK(mapList);
|
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("编辑成功!");
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
+1
-6
@@ -28,15 +28,10 @@ import javax.annotation.Resource;
|
|||||||
* @author sz
|
* @author sz
|
||||||
* @since 2024-01-02
|
* @since 2024-01-02
|
||||||
*/
|
*/
|
||||||
@Api(tags = "起草组-分发记录")
|
//@Api(tags = "起草组-分发记录")
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/drafting/payDraftingGroupDistributionRecord")
|
@RequestMapping("/drafting/payDraftingGroupDistributionRecord")
|
||||||
@Slf4j
|
@Slf4j
|
||||||
public class PayDraftingGroupDistributionRecordController extends JeroController<PayDraftingGroupDistributionRecord, IPayDraftingGroupDistributionRecordService> {
|
public class PayDraftingGroupDistributionRecordController extends JeroController<PayDraftingGroupDistributionRecord, IPayDraftingGroupDistributionRecordService> {
|
||||||
@Resource
|
|
||||||
private IOSSFileService iossFileService;
|
|
||||||
@Value("${jero.path.upload}")
|
|
||||||
private String upLoadPath;
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -18,7 +18,7 @@ import org.springframework.web.bind.annotation.RestController;
|
|||||||
* @author sz
|
* @author sz
|
||||||
* @since 2024-01-02
|
* @since 2024-01-02
|
||||||
*/
|
*/
|
||||||
@Api(tags="起草组成员")
|
@Api(tags="起草组成员 联系人信息")
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/drafting/payDraftingGroupSubitemContacts")
|
@RequestMapping("/drafting/payDraftingGroupSubitemContacts")
|
||||||
@Slf4j
|
@Slf4j
|
||||||
|
|||||||
+3
-3
@@ -71,14 +71,14 @@ public class PayDraftingGroup implements Serializable {
|
|||||||
@ApiModelProperty(value = "负责人名称A")
|
@ApiModelProperty(value = "负责人名称A")
|
||||||
private String principalNameA;
|
private String principalNameA;
|
||||||
|
|
||||||
/**负责人Aid*/
|
/**负责人Bid*/
|
||||||
@Excel(name = "负责人Bid", width = 15)
|
@Excel(name = "负责人Bid", width = 15)
|
||||||
@ApiModelProperty(value = "负责人Bid")
|
@ApiModelProperty(value = "负责人Bid")
|
||||||
@NotEmpty(message = "负责人Bid不能为空")
|
// @NotEmpty(message = "负责人Bid不能为空")
|
||||||
@Size(max = 32,message = "负责人Bid长度不能大于32个字符")
|
@Size(max = 32,message = "负责人Bid长度不能大于32个字符")
|
||||||
private String principalIdB;
|
private String principalIdB;
|
||||||
|
|
||||||
/**负责人名称A*/
|
/**负责人名称B*/
|
||||||
@Excel(name = "负责人名称N", width = 15)
|
@Excel(name = "负责人名称N", width = 15)
|
||||||
@ApiModelProperty(value = "负责人名称B")
|
@ApiModelProperty(value = "负责人名称B")
|
||||||
private String principalNameB;
|
private String principalNameB;
|
||||||
|
|||||||
+12
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
|
|||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import com.jero.common.aspect.annotation.Dict;
|
||||||
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModel;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
@@ -405,4 +406,15 @@ public class PayDraftingGroupSubItem implements Serializable {
|
|||||||
@Size(max = 50,message = "联系人10备注长度不能大于50个字符")
|
@Size(max = 50,message = "联系人10备注长度不能大于50个字符")
|
||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
private String remarksTen;
|
private String remarksTen;
|
||||||
|
|
||||||
|
|
||||||
|
/**已提醒*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
@Dict(dicCode = "yn")
|
||||||
|
private Integer remind;
|
||||||
|
|
||||||
|
/**邮件提醒*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
@Dict(dicCode = "yn")
|
||||||
|
private Integer mailRemind;
|
||||||
}
|
}
|
||||||
|
|||||||
+10
@@ -23,4 +23,14 @@ public interface PayDraftingGroupSubItemMapper extends BaseMapper<PayDraftingGro
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
IPage<PayDraftingGroupSubItem> queryPageList(Page<PayDraftingGroupSubItem> page, PayDraftingGroupSubItem payDraftingGroupSubItem, String paymentDate);
|
IPage<PayDraftingGroupSubItem> queryPageList(Page<PayDraftingGroupSubItem> page, PayDraftingGroupSubItem payDraftingGroupSubItem, String paymentDate);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 起草组成员-发布提醒列表查询
|
||||||
|
*
|
||||||
|
* @param page
|
||||||
|
* @param payDraftingGroupSubItem
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
IPage<PayDraftingGroupSubItem> publishReminderList(Page<PayDraftingGroupSubItem> page, PayDraftingGroupSubItem payDraftingGroupSubItem);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+28
@@ -37,4 +37,32 @@
|
|||||||
GROUP BY pdgs.id
|
GROUP BY pdgs.id
|
||||||
ORDER BY pdgs.create_time desc
|
ORDER BY pdgs.create_time desc
|
||||||
</select>
|
</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>
|
</mapper>
|
||||||
|
|||||||
+8
@@ -56,4 +56,12 @@ public interface IPayDraftingGroupSubItemService extends IService<PayDraftingGro
|
|||||||
* @param request
|
* @param request
|
||||||
*/
|
*/
|
||||||
void importExcel(HttpServletRequest request);
|
void importExcel(HttpServletRequest request);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 起草组成员-发布提醒列表查询
|
||||||
|
* @param page
|
||||||
|
* @param payDraftingGroupSubItem
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
IPage<PayDraftingGroupSubItem> publishReminderList(Page<PayDraftingGroupSubItem> page, PayDraftingGroupSubItem payDraftingGroupSubItem);
|
||||||
}
|
}
|
||||||
|
|||||||
+12
@@ -642,4 +642,16 @@ public class PayDraftingGroupSubItemServiceImpl extends ServiceImpl<PayDraftingG
|
|||||||
}
|
}
|
||||||
return payDraftingGroupSubItemContacts;
|
return payDraftingGroupSubItemContacts;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 起草组成员-发布提醒列表查询
|
||||||
|
*
|
||||||
|
* @param page
|
||||||
|
* @param payDraftingGroupSubItem
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public IPage<PayDraftingGroupSubItem> publishReminderList(Page<PayDraftingGroupSubItem> page, PayDraftingGroupSubItem payDraftingGroupSubItem) {
|
||||||
|
return payDraftingGroupSubItemMapper.publishReminderList(page,payDraftingGroupSubItem);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
+39
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.jero.common.api.vo.Result;
|
import com.jero.common.api.vo.Result;
|
||||||
import com.jero.common.aspect.annotation.AutoLog;
|
import com.jero.common.aspect.annotation.AutoLog;
|
||||||
|
import com.jero.common.enums.CompanyMessageEnums;
|
||||||
import com.jero.common.exception.JeroBootException;
|
import com.jero.common.exception.JeroBootException;
|
||||||
import com.jero.common.system.api.ISysBaseAPI;
|
import com.jero.common.system.api.ISysBaseAPI;
|
||||||
import com.jero.common.system.vo.LoginUser;
|
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.IPayMeetingHotelContactsService;
|
||||||
import com.jero.meeting.service.IPayMeetingService;
|
import com.jero.meeting.service.IPayMeetingService;
|
||||||
import com.jero.meeting.vo.PayMeetingVO;
|
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 com.jero.modules.system.volid.group.UpdateGroup;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
||||||
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.BeanUtils;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
@@ -167,6 +171,41 @@ public class DraftGroupMeetingController {
|
|||||||
PayDraftingGroup payDraftingGroup = payDraftingGroupService.getById(draftingGroupId);
|
PayDraftingGroup payDraftingGroup = payDraftingGroupService.getById(draftingGroupId);
|
||||||
payMeetingVO.setDirectorName(payDraftingGroup.getDraftingGroupProject());
|
payMeetingVO.setDirectorName(payDraftingGroup.getDraftingGroupProject());
|
||||||
return Result.OK(payMeetingVO);
|
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);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+56
@@ -8,9 +8,16 @@ import com.jero.common.api.vo.Result;
|
|||||||
import com.jero.common.aspect.annotation.AutoLog;
|
import com.jero.common.aspect.annotation.AutoLog;
|
||||||
import com.jero.common.aspect.annotation.DictPoint;
|
import com.jero.common.aspect.annotation.DictPoint;
|
||||||
import com.jero.common.exception.JeroBootException;
|
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.base.controller.JeroController;
|
||||||
import com.jero.common.system.query.QueryGenerator;
|
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.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.common.MeetingCommon;
|
||||||
import com.jero.meeting.entity.PayMeeting;
|
import com.jero.meeting.entity.PayMeeting;
|
||||||
import com.jero.meeting.entity.PayMeetingSituation;
|
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.PayMeetingSituationVO;
|
||||||
import com.jero.meeting.vo.SetGuestsUploadFileVO;
|
import com.jero.meeting.vo.SetGuestsUploadFileVO;
|
||||||
import com.jero.project.common.PayProjectCommon;
|
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.Api;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
import org.apache.shiro.SecurityUtils;
|
||||||
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.web.servlet.ModelAndView;
|
import org.springframework.web.servlet.ModelAndView;
|
||||||
@@ -44,6 +54,12 @@ import java.util.Objects;
|
|||||||
public class DraftGroupMeetingSituationController extends JeroController<PayMeetingSituation, IPayMeetingSituationService> {
|
public class DraftGroupMeetingSituationController extends JeroController<PayMeetingSituation, IPayMeetingSituationService> {
|
||||||
@Resource
|
@Resource
|
||||||
private IPayMeetingSituationService payMeetingSituationService;
|
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;
|
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);
|
Class<?> aClass = payMeetingSituationService.getaClass(MEETING_TYPE);
|
||||||
return super.exportListXls(objects, aClass, "参会人员信息");
|
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;
|
private List<String> meetingIds;
|
||||||
@ApiModelProperty(value = "成员id列表")
|
@ApiModelProperty(value = "成员id列表")
|
||||||
private List<String> subitemIds;
|
private List<String> subitemIds;
|
||||||
@ApiModelProperty(value = "项目类型1:工作组,2:分标委")
|
@ApiModelProperty(value = "项目类型1:工作组, 2:分标委, 3:起草组")
|
||||||
private Integer projectType;
|
private Integer projectType;
|
||||||
@ApiModelProperty(value = "是否发送邮件")
|
@ApiModelProperty(value = "是否发送邮件")
|
||||||
private Integer sendEmailFlag;
|
private Integer sendEmailFlag;
|
||||||
|
@ApiModelProperty(value = "起草组id")
|
||||||
|
private java.lang.String draftingGroupId;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user