Compare commits

...
10 Commits
10 changed files with 422 additions and 375 deletions
+1 -1
View File
@@ -44,7 +44,7 @@ INSERT INTO sys_dict_item ( id, dict_id, item_text, item_value, description, sor
-- 菜单按钮权限的增加
-- 2022-07-14 标协会议-会议维护-问题征集 按钮
INSERT INTO `sys_permission`(`id`, `parent_id`, `name`, `url`, `component`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_route`, `is_leaf`, `keep_alive`, `hidden`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`) VALUES ('1547494778165481474', '1443470646404014081', '问题征集', NULL, NULL, NULL, NULL, 2, 'standardsMeeting:problemCollection', '1', 1.00, 0, NULL, 1, 1, 0, 0, NULL, 'LKGLZ', '2022-07-14 16:14:41', NULL, NULL, 0, 0, '1', 0);
INSERT INTO `sys_permission`(`id`, `parent_id`, `name`, `url`, `component`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_route`, `is_leaf`, `keep_alive`, `hidden`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`) VALUES ('1547494778165481474', '1443470646404014081', '问题征集', NULL, NULL, NULL, NULL, 2, 'standardsMeeting:problemCollection:button', '1', 1.00, 0, NULL, 1, 1, 0, 0, NULL, 'LKGLZ', '2022-07-14 16:14:41', NULL, NULL, 0, 0, '1', 0);
alter table tb_member_project_subitem
-1
View File
@@ -192,7 +192,6 @@ INSERT INTO `sys_permission`(`id`, `parent_id`, `name`, `url`, `component`, `com
INSERT INTO `sys_permission`(`id`, `parent_id`, `name`, `url`, `component`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_route`, `is_leaf`, `keep_alive`, `hidden`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`, `external_terminal_show`) VALUES ('1772519030042488833', '1443396211206606850', '批量删除', NULL, NULL, NULL, NULL, 2, 'safeguardStardsMember:batchDel', '1', 1.00, 0, NULL, 1, 1, 0, 0, NULL, 'LKGLZ', '2024-03-26 15:00:43', NULL, NULL, 0, 0, '1', 0, 1);
INSERT INTO `sys_permission`(`id`, `parent_id`, `name`, `url`, `component`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_route`, `is_leaf`, `keep_alive`, `hidden`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`, `external_terminal_show`) VALUES ('1772518931358904321', '1443396211206606850', '新增', NULL, NULL, NULL, NULL, 2, 'safeguardStardsMember:add', '1', 1.00, 0, NULL, 1, 1, 0, 0, NULL, 'LKGLZ', '2024-03-26 15:00:20', NULL, NULL, 0, 0, '1', 0, 1);
INSERT INTO `sys_permission`(`id`, `parent_id`, `name`, `url`, `component`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_route`, `is_leaf`, `keep_alive`, `hidden`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`, `external_terminal_show`) VALUES ('1772517510240628738', '1438395037290192897', '会议报名信息维护', NULL, NULL, NULL, NULL, 2, 'stardsMember:registrationInformationMaintenance', '1', 1.00, 0, NULL, 1, 1, 0, 0, NULL, 'LKGLZ', '2024-03-26 14:54:41', NULL, NULL, 0, 0, '1', 0, 1);
INSERT INTO `sys_permission`(`id`, `parent_id`, `name`, `url`, `component`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_route`, `is_leaf`, `keep_alive`, `hidden`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`, `external_terminal_show`) VALUES ('1772517401784315905', '1438395037290192897', '会议维护', NULL, NULL, NULL, NULL, 2, 'stardsMember:meetingMaintenance', '1', 1.00, 0, NULL, 1, 1, 0, 0, NULL, 'LKGLZ', '2024-03-26 14:54:15', NULL, NULL, 0, 0, '1', 0, 1);
INSERT INTO `sys_permission`(`id`, `parent_id`, `name`, `url`, `component`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_route`, `is_leaf`, `keep_alive`, `hidden`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`, `external_terminal_show`) VALUES ('1772517282057908226', '1438395037290192897', '其他资料', NULL, NULL, NULL, NULL, 2, 'stardsMember:otherDetails', '1', 1.00, 0, NULL, 1, 1, 0, 0, NULL, 'LKGLZ', '2024-03-26 14:53:46', NULL, NULL, 0, 0, '1', 0, 1);
INSERT INTO `sys_permission`(`id`, `parent_id`, `name`, `url`, `component`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_route`, `is_leaf`, `keep_alive`, `hidden`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`, `external_terminal_show`) VALUES ('1772517161345839105', '1438395037290192897', '删除', NULL, NULL, NULL, NULL, 2, 'stardsMember:delete', '1', 1.00, 0, NULL, 1, 1, 0, 0, NULL, 'LKGLZ', '2024-03-26 14:53:18', NULL, NULL, 0, 0, '1', 0, 1);
INSERT INTO `sys_permission`(`id`, `parent_id`, `name`, `url`, `component`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_route`, `is_leaf`, `keep_alive`, `hidden`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`, `external_terminal_show`) VALUES ('1772517036754038785', '1438395037290192897', '编辑', NULL, NULL, NULL, NULL, 2, 'stardsMember:edit', '1', 1.00, 0, NULL, 1, 1, 0, 0, NULL, 'LKGLZ', '2024-03-26 14:52:48', NULL, NULL, 0, 0, '1', 0, 1);
@@ -62,24 +62,23 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
* 分页列表查询
*
* @param payDraftingGroup 起草组项目
* @param pageNo 页数
* @param pageSize 条数
* @param pageNo 页数
* @param pageSize 条数
*/
@RequiresPermissions("draftingGroup:search")
@ApiOperation(value="起草组项目-分页列表查询", notes="起草组项目-分页列表查询")
@ApiOperation(value = "起草组项目-分页列表查询", notes = "起草组项目-分页列表查询")
@GetMapping(value = "/list")
public Result<?> queryPageList(PayDraftingGroup payDraftingGroup,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize) {
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) {
// 校验参数
if(!StringUtils.isBlank(payDraftingGroup.getDraftingGroupProject()) && payDraftingGroup.getDraftingGroupProject().length() > 50){
if (!StringUtils.isBlank(payDraftingGroup.getDraftingGroupProject()) && payDraftingGroup.getDraftingGroupProject().length() > 50) {
return Result.error("起草组项目长度不能大于50个字符");
}
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
if (StringUtils.isNotBlank(sysUser.getRoleCode())){
if (StringUtils.isNotBlank(sysUser.getRoleCode())) {
List<String> roleCodes = new ArrayList<>(Arrays.asList(sysUser.getRoleCode().split(",")));
if(rolePermissionService.getRolePermission("draftingGroup:search") &&
!(roleCodes.contains(constant.ADMIN))){
if (!(roleCodes.contains(constant.ADMIN))) {
payDraftingGroup.setPrincipalA(sysUser.getId());
payDraftingGroup.setPrincipalB(sysUser.getId());
}
@@ -88,21 +87,21 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
}
// 分页条件查询
Page<PayDraftingGroupVo> page = new Page<>(pageNo, pageSize);
if(!StringUtils.isBlank(payDraftingGroup.getDraftingGroupProject())){
if (!StringUtils.isBlank(payDraftingGroup.getDraftingGroupProject())) {
payDraftingGroup.setDraftingGroupProject(oConvertUtils.replaceAllPercent(payDraftingGroup.getDraftingGroupProject()));
}
if(!StringUtils.isBlank(payDraftingGroup.getWorkingGroupName())){
if (!StringUtils.isBlank(payDraftingGroup.getWorkingGroupName())) {
payDraftingGroup.setWorkingGroupName(oConvertUtils.replaceAllPercent(payDraftingGroup.getWorkingGroupName()));
}
IPage<PayDraftingGroupVo> pageList = payDraftingGroupService.queryPageList(page,payDraftingGroup);
IPage<PayDraftingGroupVo> pageList = payDraftingGroupService.queryPageList(page, payDraftingGroup);
if (!Objects.isNull(pageList)) {
List<PayDraftingGroupVo> listPayDraftingGroupVo = pageList.getRecords();
if (!CollectionUtils.isEmpty(listPayDraftingGroupVo)) {
listPayDraftingGroupVo.forEach(p->{
if(!rolePermissionService.getRolePermission("generalProject:search") && Objects.equals(p.getPrincipalIdB(),sysUser.getId())){
listPayDraftingGroupVo.forEach(p -> {
if (!rolePermissionService.getRolePermission("generalProject:search") && Objects.equals(p.getPrincipalIdB(), sysUser.getId())) {
p.setCheckoutOperation(PayProjectCommon.CHECKOUT_OPERATION2);
}else{
} else {
p.setCheckoutOperation(PayProjectCommon.CHECKOUT_OPERATION1);
}
});
@@ -114,30 +113,30 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
}
/**
* 添加
* 添加
*
* @param payDraftingGroup 起草组项目
* @return
*/
@AutoLog(value = "起草组项目-添加",operateType = 1)
@AutoLog(value = "起草组项目-添加", operateType = 1)
@RequiresPermissions("draftingGroup:add")
@ApiOperation(value="起草组项目-添加", notes="起草组项目-添加")
@ApiOperation(value = "起草组项目-添加", notes = "起草组项目-添加")
@PostMapping(value = "/add")
public Result<?> add(@RequestBody PayDraftingGroup payDraftingGroup) {
// 参数校验
StringBuilder msg = ValidUtil.validateAll(payDraftingGroup);
if(!StringUtils.isBlank(msg)){
if (!StringUtils.isBlank(msg)) {
return Result.error(msg.toString());
}
try {
LambdaQueryWrapper<PayDraftingGroup> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(PayDraftingGroup::getDraftingGroupProject,payDraftingGroup.getDraftingGroupProject());
queryWrapper.eq(PayDraftingGroup::getDraftingGroupProject, payDraftingGroup.getDraftingGroupProject());
PayDraftingGroup payDraftingGroupDB = payDraftingGroupService.getOne(queryWrapper);
if(!Objects.isNull(payDraftingGroupDB)) {
if (!Objects.isNull(payDraftingGroupDB)) {
return Result.error("起草组项目已存在!");
}
}catch (Exception e){
log.info("起草组项目-添加",e);
} catch (Exception e) {
log.info("起草组项目-添加", e);
return Result.error("起草组项目已存在!");
}
payDraftingGroupService.setPayDraftingGroup(payDraftingGroup);
@@ -146,17 +145,17 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
}
/**
* 通过id删除
* 通过id删除
*
* @param id 工作组项目id
* @return
*/
@AutoLog(value = "起草组项目-通过id删除",operateType = 2)
@AutoLog(value = "起草组项目-通过id删除", operateType = 2)
@RequiresPermissions("draftingGroup:delete")
@ApiOperation(value="起草组项目-通过id删除", notes="起草组项目-通过id删除")
@ApiOperation(value = "起草组项目-通过id删除", notes = "起草组项目-通过id删除")
@GetMapping(value = "/delete")
public Result<?> delete(@RequestParam(name="id") String id) {
if(StringUtils.isBlank(id)){
public Result<?> delete(@RequestParam(name = "id") String id) {
if (StringUtils.isBlank(id)) {
return Result.error("id不能为空!");
}
payDraftingGroupService.deleteById(id);
@@ -164,21 +163,21 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
}
/**
* 批量删除
* 批量删除
*
* @param ids 起草组项目ids 逗号分隔
* @return
*/
@RequiresPermissions("draftingGroup:batchDel")
@ApiOperation(value="起草组项目-批量删除", notes="起草组项目-批量删除")
@ApiOperation(value = "起草组项目-批量删除", notes = "起草组项目-批量删除")
@GetMapping(value = "/deleteBatch")
public Result<?> deleteBatch(@RequestParam(name="ids") String ids) {
if(StringUtils.isBlank(ids)){
public Result<?> deleteBatch(@RequestParam(name = "ids") String ids) {
if (StringUtils.isBlank(ids)) {
return Result.error("id不能为空!");
}
String[] s = ids.split(",");
for (String s1 : s) {
if(StringUtils.isBlank(s1)){
if (StringUtils.isBlank(s1)) {
return Result.error("id不能为空!");
}
}
@@ -187,25 +186,25 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
}
/**
* 复制
* 复制
*
* @param payDraftingGroup 起草组项目
* @return
*/
@AutoLog(value = "起草组项目-复制",operateType = 3)
@AutoLog(value = "起草组项目-复制", operateType = 3)
@RequiresPermissions("draftingGroup:copy")
@ApiOperation(value="起草组项目-复制", notes="起草组项目-复制")
@ApiOperation(value = "起草组项目-复制", notes = "起草组项目-复制")
@PostMapping(value = "/copy")
public Result<?> copy(@RequestBody PayDraftingGroup payDraftingGroup) {
if(StringUtils.isBlank(payDraftingGroup.getId())){
if (StringUtils.isBlank(payDraftingGroup.getId())) {
return Result.error("起草组id不能为空!");
}
PayDraftingGroup payDraftingGroupOld = payDraftingGroupService.getById(payDraftingGroup.getId());
if(Objects.isNull(payDraftingGroupOld)){
if (Objects.isNull(payDraftingGroupOld)) {
return Result.error("起草组不存在!");
}
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
if(!rolePermissionService.getRolePermission("draftingGroup:copy") && !Objects.equals(payDraftingGroupOld.getPrincipalIdA(),sysUser.getId())){
if (!rolePermissionService.getRolePermission("draftingGroup:copy") && !Objects.equals(payDraftingGroupOld.getPrincipalIdA(), sysUser.getId())) {
return Result.error(payDraftingGroupOld.getDraftingGroupProject() + "数据权限不足!");
}
payDraftingGroupService.copy(payDraftingGroup);
@@ -218,14 +217,14 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
* @param id 起草组项目id
* @return
*/
@ApiOperation(value="起草组项目-通过id查询", notes="起草组项目-通过id查询")
@ApiOperation(value = "起草组项目-通过id查询", notes = "起草组项目-通过id查询")
@GetMapping(value = "/queryById")
public Result<?> queryById(@RequestParam(name="id") String id) {
public Result<?> queryById(@RequestParam(name = "id") String id) {
if (StringUtils.isBlank(id)) {
return Result.error("起草组id不能为空");
}
PayDraftingGroup payDraftingGroup = payDraftingGroupService.getById(id);
if(Objects.isNull(payDraftingGroup)) {
if (Objects.isNull(payDraftingGroup)) {
return Result.error("未找到对应数据");
}
// 根据工作组id查询对应的工作组名称
@@ -240,13 +239,14 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
/**
* 查询所有工作组
*
* @return
*/
@ApiOperation(value="工作组项目-查询所有工作组", notes="工作组项目-查询所有工作组")
@ApiOperation(value = "工作组项目-查询所有工作组", notes = "工作组项目-查询所有工作组")
@GetMapping(value = "/queryAllWorkingGroupsIdAndName")
public Result<?> queryAllWorkingGroupsIdAndName() {
QueryWrapper<PayWorkingGroup> queryWrapper = new QueryWrapper<>();
queryWrapper.select("id","working_group_project");
queryWrapper.select("id", "working_group_project");
queryWrapper.lambda().groupBy(PayWorkingGroup::getWorkingGroupProject);
List<PayWorkingGroup> payWorkingGroups = payWorkingGroupService.list(queryWrapper);
List<HashMap<String, String>> mapList = payWorkingGroups.stream().map(p -> {
@@ -261,11 +261,11 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
/**
* 列表查询
*
* @param payDraftingGroup 起草组项目
* @param payDraftingGroup 起草组项目
* @param req
* @return
*/
@ApiOperation(value="起草组项目-列表查询", notes="起草组项目-列表查询")
@ApiOperation(value = "起草组项目-列表查询", notes = "起草组项目-列表查询")
@GetMapping(value = "/listAll")
public Result<?> queryList(PayDraftingGroup payDraftingGroup, HttpServletRequest req) {
QueryWrapper<PayDraftingGroup> queryWrapper = QueryGenerator.initQueryWrapper(payDraftingGroup, req.getParameterMap());
@@ -274,42 +274,42 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
}
/**
* 编辑
* 编辑
*
* @param payDraftingGroup 起草组项目
* @return
*/
@AutoLog(value = "起草组项目-修改",operateType = 3)
@AutoLog(value = "起草组项目-修改", operateType = 3)
@RequiresPermissions("draftingGroup:edit")
@ApiOperation(value="起草组项目-编辑", notes="起草组项目-编辑")
@ApiOperation(value = "起草组项目-编辑", notes = "起草组项目-编辑")
@PostMapping(value = "/edit")
public Result<?> edit(@RequestBody PayDraftingGroup payDraftingGroup) {
StringBuilder msg = ValidUtil.validateAll(payDraftingGroup);
if(!StringUtils.isBlank(msg)){
if (!StringUtils.isBlank(msg)) {
return Result.error(msg.toString());
}
if(StringUtils.isEmpty(payDraftingGroup.getId())){
if (StringUtils.isEmpty(payDraftingGroup.getId())) {
return Result.error("起草组id不能为空!");
}
PayDraftingGroup payDraftingGroupOld = payDraftingGroupService.getById(payDraftingGroup.getId());
if(Objects.isNull(payDraftingGroupOld)){
if (Objects.isNull(payDraftingGroupOld)) {
return Result.error("起草组不存在!");
}
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
if(!rolePermissionService.getRolePermission("draftingGroup:edit") && !Objects.equals(payDraftingGroupOld.getPrincipalIdA(),sysUser.getId())){
if (!rolePermissionService.getRolePermission("draftingGroup:edit") && !Objects.equals(payDraftingGroupOld.getPrincipalIdA(), sysUser.getId())) {
return Result.error(payDraftingGroupOld.getDraftingGroupProject() + "数据权限不足!");
}
try {
// 编辑保存前再次校验来款项目是否存在
LambdaQueryWrapper<PayDraftingGroup> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(PayDraftingGroup::getDraftingGroupProject,payDraftingGroup.getDraftingGroupProject());
queryWrapper.eq(PayDraftingGroup::getDraftingGroupProject, payDraftingGroup.getDraftingGroupProject());
PayDraftingGroup payDraftingGroupNew = payDraftingGroupService.getOne(queryWrapper);
// 来款项目存在,并且编辑id与查询不同,则校验不通过
if(!Objects.isNull(payDraftingGroupNew) && !Objects.equals(payDraftingGroupNew.getId(),payDraftingGroup.getId())) {
if (!Objects.isNull(payDraftingGroupNew) && !Objects.equals(payDraftingGroupNew.getId(), payDraftingGroup.getId())) {
return Result.error("起草组项目已存在!");
}
}catch (Exception e){
log.info("工作组项目-编辑异常",e);
} catch (Exception e) {
log.info("工作组项目-编辑异常", e);
return Result.error("起草组项目已存在!");
}
payDraftingGroupService.setPayDraftingGroup(payDraftingGroup);
@@ -330,14 +330,14 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
* @param id 起草组项目id
* @return
*/
@ApiOperation(value="报名-起草组项目-通过id查询", notes="报名-起草组项目-通过id查询")
@ApiOperation(value = "报名-起草组项目-通过id查询", notes = "报名-起草组项目-通过id查询")
@GetMapping(value = "/applyQueryById")
public Result<?> applyQueryById(@RequestParam(name="id") String id) {
public Result<?> applyQueryById(@RequestParam(name = "id") String id) {
if (StringUtils.isBlank(id)) {
return Result.error("起草组id不能为空");
}
PayDraftingGroup payDraftingGroup = payDraftingGroupService.getById(id);
if(Objects.isNull(payDraftingGroup)) {
if (Objects.isNull(payDraftingGroup)) {
return Result.error("未找到对应数据");
}
// 根据工作组id查询对应的工作组名称
@@ -163,7 +163,7 @@ public class TbMemberProjectSubitem implements Serializable {
/**
* 实收金额
*/
//@Excel(name = "实收金额", width = 15)
@Excel(name = "实收金额", width = 15)
@ApiModelProperty(value = "实收金额")
@DecimalMax(value = "9999999999.99", message = "实收金额格式错误")
private BigDecimal paidAmount;
@@ -59,4 +59,6 @@ public interface TbMemberProjectSubitemMapper extends BaseMapper<TbMemberProject
TbMemberProjectSubitem getLastByCompanyId(@Param("companyId") String companyId);
IPage<TbMemberProjectSubitem> pageAllMemberName(Page<TbMemberProjectSubitem> page);
List<TbMemberProjectSubitem> getAllYearInfoByCompanyId(@Param("companyId") String companyId);
}
@@ -113,25 +113,26 @@
</select>
<select id="getAllTakeEffect" resultMap="TbMemberProjectSubitemResultMap">
SELECT t1.*
FROM tb_member_project_subitem t1
INNER JOIN (
SELECT max(invalidation_date), id
FROM tb_member_project_subitem
where current_date BETWEEN effective_date and invalidation_date
SELECT *
from (SELECT tmps.*
FROM tb_member_project_subitem tmps
left join tb_member_project tmp on tmps.project_id = tmp.id
where current_date BETWEEN effective_date and invalidation_date
and member_nature is not null
GROUP BY company_id) AS t2 ON t2.id = t1.id
order by tmp.year desc) t1
group by t1.company_id
</select>
<select id="pieChartPage" resultMap="TbMemberProjectSubitemResultMap">
SELECT t1.*
FROM tb_member_project_subitem t1
INNER JOIN (
SELECT max(invalidation_date), id
FROM tb_member_project_subitem
where invalidation_date >= current_date
GROUP BY company_id) AS t2 ON t2.id = t1.id
select * from (SELECT * from (SELECT tmps.*
FROM tb_member_project_subitem tmps
left join tb_member_project tmp on tmps.project_id = tmp.id
where current_date BETWEEN effective_date and invalidation_date
and member_nature is not null
order by tmp.year desc) t1
group by t1.company_id) t2
${ew.customSqlSegment}
</select>
<select id="queryPageListCompany" resultMap="TbMemberProjectSubitemResultMap">
@@ -159,4 +160,13 @@
and member_nature is not null
GROUP BY company_id) AS t2 ON t2.id = t1.id
</select>
<select id="getAllYearInfoByCompanyId" resultMap="TbMemberProjectSubitemResultMap">
select tmps.*,tmp.year
from tb_member_project_subitem tmps
LEFT JOIN tb_member_project tmp on tmp.id = tmps.project_id
<where>
tmps.company_id = #{companyId}
</where>
</select>
</mapper>
@@ -8,6 +8,8 @@ import com.jero.common.system.vo.LoginUser;
import com.jero.contract.entity.PayIncomeContractAssociated;
import com.jero.contract.service.IPayIncomeContractAssociatedService;
import com.jero.contract.service.IPayIncomeContractService;
import com.jero.meeting.entity.PayMeeting;
import com.jero.meeting.service.IPayMeetingService;
import com.jero.member.entity.PayMemberProjectSubitem;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -49,6 +51,8 @@ public class ITbMemberProjectService extends ServiceImpl<TbMemberProjectMapper,
private IPayIncomeContractService payIncomeContractService;
@Resource
private RolePermissionService rolePermissionService;
@Resource
private IPayMeetingService meetingService;
/**
* 保存
*/
@@ -93,6 +97,13 @@ public class ITbMemberProjectService extends ServiceImpl<TbMemberProjectMapper,
if(!CollectionUtils.isEmpty(listTbMemberProjectSubitem)) {
throw new JeroBootException("标协会员项目下存在企业,不可进行删除!");
}
LambdaQueryWrapper<PayMeeting> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(PayMeeting::getStandardsId, id);
List<PayMeeting> payMeetingList = meetingService.list(wrapper);
if(!CollectionUtils.isEmpty(payMeetingList)) {
throw new JeroBootException("标协会员项目下存在会议,不可进行删除!");
}
removeById(id);
}
@@ -288,14 +288,16 @@ public class ITbMemberProjectSubitemService extends ServiceImpl<TbMemberProjectS
if (companyManagement != null && Objects.equals(paymentMethodInt, PayProjectCommon.CHARGE_WAY2)) {
errorMessage.addAll(ValidUtil.validateReturnListWithNum(subitemExcel,errorRowNum, Contract.class));
String contractNum = subitemExcel.getContractNum();
subitem.setContractNum(contractNum);
// 合同编号验证
LambdaQueryWrapper<PayIncomeContract> queryPayIncomeContract = new LambdaQueryWrapper<>();
queryPayIncomeContract.eq(PayIncomeContract::getContractNum,contractNum);
queryPayIncomeContract.eq(PayIncomeContract::getSignedCompanyId,companyManagement.getId());
List<PayIncomeContract> listPayIncomeContract = payIncomeContractService.list(queryPayIncomeContract);
if(CollectionUtils.isEmpty(listPayIncomeContract)){
errorMessage.add("第" + errorRowNum + "行:" + "合同号不存在");
if (StringUtils.isNotBlank(contractNum)){
subitem.setContractNum(contractNum);
// 合同编号验证
LambdaQueryWrapper<PayIncomeContract> queryPayIncomeContract = new LambdaQueryWrapper<>();
queryPayIncomeContract.eq(PayIncomeContract::getContractNum,contractNum);
queryPayIncomeContract.eq(PayIncomeContract::getSignedCompanyId,companyManagement.getId());
List<PayIncomeContract> listPayIncomeContract = payIncomeContractService.list(queryPayIncomeContract);
if(CollectionUtils.isEmpty(listPayIncomeContract)){
errorMessage.add("第" + errorRowNum + "行:" + "合同号不存在");
}
}
}
if (Objects.equals(paymentMethodInt, PayProjectCommon.CHARGE_WAY3)) {
@@ -566,6 +568,24 @@ public class ITbMemberProjectSubitemService extends ServiceImpl<TbMemberProjectS
return projectSubitem;
}
/**
* 获得最新的年份的数据,没有的话会返回null
* @param companyId
* @return
*/
public TbMemberProjectSubitem getLatestYearInfo(String companyId){
//获得所有生效数据
List<TbMemberProjectSubitem> allByCompanyId = tbMemberProjectSubitemMapper.getAllYearInfoByCompanyId(companyId);
//获取list中年份最大的数据
Optional<TbMemberProjectSubitem> max = allByCompanyId.stream().max(Comparator.comparing(TbMemberProjectSubitem::getYear));
//没有的话会返回null
TbMemberProjectSubitem projectSubitem = max.orElse(null);
if(projectSubitem!=null){
processData(projectSubitem);
}
return projectSubitem;
}
public void editMemberBenefits(EditMemberBenefitsVO editMemberBenefitsVO) {
String id = editMemberBenefitsVO.getId();
Date effectiveDate = editMemberBenefitsVO.getEffectiveDate();
@@ -574,9 +594,9 @@ public class ITbMemberProjectSubitemService extends ServiceImpl<TbMemberProjectS
TbMemberProjectSubitem memberProjectSubitem = getById(id);
String companyId = memberProjectSubitem.getCompanyId();
//获得有效数据
TbMemberProjectSubitem takeEffectInfo = getTakeEffectInfo(companyId);
if (takeEffectInfo == null || !Objects.equals(takeEffectInfo.getId(),id)){
throw new JeroBootException("只能修改最新生效会员数据");
TbMemberProjectSubitem latestYearInfo = getLatestYearInfo(companyId);
if (latestYearInfo == null || !Objects.equals(latestYearInfo.getId(),id)){
throw new JeroBootException("只能修改最新年份会员数据");
}
LambdaUpdateWrapper<TbMemberProjectSubitem> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.eq(TbMemberProjectSubitem::getId,id)
@@ -791,7 +811,11 @@ public class ITbMemberProjectSubitemService extends ServiceImpl<TbMemberProjectS
if (ProjectCommon.MEMBER_NATURE1.equals(memberNature)) {
amountReceivable = memberProject.getCouncilChargeStandard();
}else {
amountReceivable = memberProject.getCouncilChargeStandard();
amountReceivable = memberProject.getChargeStandard();
}
//如果两种都没有金额
if (amountReceivable == null){
amountReceivable = memberProjectSubitem.getAmountReceivable();
}
tbMemberProjectSubitem.setAmountReceivable(amountReceivable);
BigDecimal taxRate = memberProjectSubitem.getTaxRate();
@@ -44,303 +44,305 @@ import java.math.BigDecimal;
import java.util.*;
import java.util.stream.Collectors;
/**
/**
* @Description: 打包项目维护
* @Author: jeecg-boot
* @Date: 2021-09-07
* @Date: 2021-09-07
* @Version: V1.0
*/
@Api(tags="打包项目维护")
@Api(tags = "打包项目维护")
@RestController
@RequestMapping("/pack/payPackCompanyProject")
@Slf4j
public class PayPackCompanyProjectController extends JeroController<PayPackCompanyProject, IPayPackCompanyProjectService> {
@Resource
private IPayPackCompanyProjectService payPackCompanyProjectService;
@Resource
private IPayPackCompanyService payPackCompanyService;
@Resource
private ISysBaseAPI sysBaseAPI;
@Resource
private Environment env;
/**
* 分页列表查询
*
* @param payPackCompanyProject
* @param pageNo
* @param pageSize
* @param req
* @return
*/
// @ApiOperation(value="打包项目维护-分页列表查询", notes="打包项目维护-分页列表查询")
// @GetMapping(value = "/list")
public Result<?> queryPageList(PayPackCompanyProject payPackCompanyProject,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<PayPackCompanyProject> queryWrapper = QueryGenerator.initQueryWrapper(payPackCompanyProject, req.getParameterMap());
Page<PayPackCompanyProject> page = new Page<PayPackCompanyProject>(pageNo, pageSize);
IPage<PayPackCompanyProject> pageList = payPackCompanyProjectService.page(page, queryWrapper);
return Result.OK(pageList);
}
/**
* 列表查询
*
* @param input 参数
* @return
*/
@RequiresPermissions("packProject:search")
@ApiOperation(value="打包项目维护-列表查询", notes="打包项目维护-列表查询")
@GetMapping(value = "/listAll")
public Result<?> queryListAll(PayPackCompanyProjectInput input) {
if(Objects.isNull(input.getPackId())){
return Result.error("打包id不能为空");
}
PayPackCompany payPackCompany = payPackCompanyService.getById(input.getPackId());
if(Objects.isNull(payPackCompany)){
return Result.error("打包企业不存在");
}
if(!StringUtils.isBlank(input.getProjectName())){
input.setProjectName(oConvertUtils.replaceAllPercent(input.getProjectName()));
}
input.setCompanyId(payPackCompany.getCompanyId());
input.setPackYear(payPackCompany.getPackYear());
List<PayCommonProject> list = payPackCompanyProjectService.queryListAll(input);
BigDecimal sumOfReceivableAmount = BigDecimal.ZERO;
BigDecimal sumOfPaidAmount = BigDecimal.ZERO;
if(!CollectionUtils.isEmpty(list)){
for (PayCommonProject p : list) {
if(!StringUtils.isBlank(p.getPhone())){
p.setPhone(PasswordUtil.decrypt(p.getPhone()));
}
if(!StringUtils.isBlank(p.getEmail())){
p.setEmail(PasswordUtil.decrypt(p.getEmail()));
}
if(Objects.isNull(p.getReceivableAmount())){
p.setReceivableAmount(new BigDecimal("0.00"));
}
if(Objects.isNull(p.getPaidAmount())){
p.setPaidAmount(new BigDecimal("0.00"));
}
sumOfReceivableAmount = sumOfReceivableAmount.add(p.getReceivableAmount());
sumOfPaidAmount = sumOfPaidAmount.add(p.getPaidAmount());
}
}
HashMap<String, Object> hashMap = new HashMap<>();
hashMap.put("sumOfReceivableAmount", sumOfReceivableAmount.toString());
hashMap.put("sumOfPaidAmount", sumOfPaidAmount.toString());
hashMap.put("list", list);
return Result.OK(hashMap);
}
/**
* 未打包列表查询
*
* @param input 参数
* @return
*/
@ApiOperation(value="打包项目维护-未打包列表查询", notes="打包项目维护-未打包列表查询")
@GetMapping(value = "/queryNotPackListAll")
public Result<?> queryNotPackListAll(PayPackCompanyProjectInput input) {
if(StringUtils.isBlank(input.getPackId())){
return Result.error("打包id不能为空");
}
PayPackCompany payPackCompany = payPackCompanyService.getById(input.getPackId());
if(Objects.isNull(payPackCompany)){
return Result.error("打包企业不存在");
}
input.setPackId(input.getPackId());
input.setCompanyId(payPackCompany.getCompanyId());
input.setPack(PackCommon.PACKAGING0);
List<PayCommonProject> list = payPackCompanyProjectService.queryPackListAll(input);
List<PayCommonProjectOutput> listPayCommonProjectOutput = new ArrayList<>();
if(!CollectionUtils.isEmpty(list)){
String str = JSON.toJSONString(list);
listPayCommonProjectOutput = JSONArray.parseArray(str,PayCommonProjectOutput.class);
listPayCommonProjectOutput.forEach(p->{
if(!Objects.isNull(p.getChargeUse())){
p.setChargeUse_dictText(sysBaseAPI.translateDict("payment_charge_use",String.valueOf(p.getChargeUse())));
}
if (Objects.isNull(p.getPaidAmount())) {
p.setPaidAmount(new BigDecimal("0.00"));
}
});
}
return Result.OK(listPayCommonProjectOutput);
}
/**
* 添加打包
*
* @param payPackCompanyProject
* @return
*/
@AutoLog(value = "打包项目维护-添加",operateType = 2)
@RequiresPermissions("packProject:pack")
@ApiOperation(value="打包项目维护-添加打包", notes="打包项目维护-添加打包")
@PostMapping(value = "/add")
public Result<?> add(@RequestBody PayPackCompanyProject payPackCompanyProject) {
payPackCompanyProjectService.addPayPackCompanyProject(payPackCompanyProject);
return Result.OK("添加成功!");
}
/**
* 取消打包
*
* @param payPackCompanyProject
* @return
*/
@AutoLog(value = "打包项目维护-取消打包",operateType = 4)
@RequiresPermissions("packProject:cancelPack")
@ApiOperation(value="打包项目维护-取消打包", notes="打包项目维护-取消打包")
@PostMapping(value = "/remove")
public Result<?> remove(@RequestBody PayPackCompanyProject payPackCompanyProject) {
if(StringUtils.isBlank(payPackCompanyProject.getId())){
return Result.error("关联id不能为空!");
}
payPackCompanyProjectService.removePayPackCompanyProject(payPackCompanyProject);
return Result.OK("取消打包成功!");
}
/**
* 批量取消打包
*
* @param payPackCompanyProject
* @return
*/
@AutoLog(value = "打包项目维护-批量取消打包",operateType = 4)
@RequiresPermissions("packProject:batchCancelPack")
@ApiOperation(value="打包项目维护-批量取消打包", notes="打包项目维护-批量取消打包")
@PostMapping(value = "/removeBatch")
public Result<?> removeBatch(@RequestBody PayPackCompanyProject payPackCompanyProject) {
if(StringUtils.isBlank(payPackCompanyProject.getPackProjectIds())){
return Result.error("关联id不能为空!");
}
payPackCompanyProjectService.removeBatchPayPackCompanyProject(payPackCompanyProject);
return Result.OK("批量取消打包成功!");
}
/**
* 编辑
*
* @param payPackCompanyProject
* @return
*/
// @ApiOperation(value="pay_pack_company_project-编辑", notes="pay_pack_company_project-编辑")
// @PostMapping(value = "/edit")
public Result<?> edit(@RequestBody PayPackCompanyProject payPackCompanyProject) {
payPackCompanyProjectService.updateById(payPackCompanyProject);
return Result.OK("编辑成功!");
}
/**
* 通过id删除
*
* @param id
* @return
*/
// @ApiOperation(value="pay_pack_company_project-通过id删除", notes="pay_pack_company_project-通过id删除")
// @GetMapping(value = "/delete")
public Result<?> delete(@RequestParam(name="id",required=true) String id) {
payPackCompanyProjectService.removeById(id);
return Result.OK("删除成功!");
}
/**
* 批量删除
*
* @param ids
* @return
*/
// @ApiOperation(value="pay_pack_company_project-批量删除", notes="pay_pack_company_project-批量删除")
// @GetMapping(value = "/deleteBatch")
public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.payPackCompanyProjectService.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
/**
* 通过id查询
*
* @param id
* @return
*/
// @ApiOperation(value="pay_pack_company_project-通过id查询", notes="pay_pack_company_project-通过id查询")
// @GetMapping(value = "/queryById")
public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
PayPackCompanyProject payPackCompanyProject = payPackCompanyProjectService.getById(id);
if(payPackCompanyProject==null) {
return Result.error("未找到对应数据");
}
return Result.OK(payPackCompanyProject);
}
@Resource
private IPayPackCompanyProjectService payPackCompanyProjectService;
@Resource
private IPayPackCompanyService payPackCompanyService;
@Resource
private ISysBaseAPI sysBaseAPI;
@Resource
private Environment env;
/**
* 导出excel
*
* @param request
* @param input
*/
@AutoLog(value = "打包项目维护-导出excel",operateType = 6)
@RequiresPermissions("packProject:export")
@GetMapping(value = "/exportXls")
@ApiOperation(value="打包项目维护-导出excel", notes="打包项目维护-导出excel")
public ModelAndView exportXls(HttpServletRequest request,PayPackCompanyProjectInput input) {
if(Objects.isNull(input.getPackId())){
throw new JeroBootException("打包id不能为空");
}
PayPackCompany payPackCompany = payPackCompanyService.getById(input.getPackId());
if(Objects.isNull(payPackCompany)){
throw new JeroBootException("打包企业不存在");
}
input.setCompanyId(payPackCompany.getCompanyId());
input.setPackYear(payPackCompany.getPackYear());
List<PayCommonProject> pageList = payPackCompanyProjectService.queryListAll(input);
List<PayCommonProject> exportList = null;
// 过滤选中数据
String selections = request.getParameter("selections");
if (oConvertUtils.isNotEmpty(selections)) {
List<String> selectionList = Arrays.asList(selections.split(","));
exportList = pageList.stream().filter(item -> selectionList.contains(item.getId())).collect(Collectors.toList());
} else {
exportList = pageList;
}
if(CollectionUtils.isEmpty(pageList)){
throw new JeroBootException("没有数据可导出!");
}
exportList.forEach(p->{
if(!StringUtils.isBlank(p.getPhone())){
p.setPhone(PasswordUtil.decrypt(p.getPhone()));
}
if(!StringUtils.isBlank(p.getEmail())){
p.setEmail(PasswordUtil.decrypt(p.getEmail()));
}
});
String str = JSON.toJSONString(exportList);
List<PayProjectExcel> list = JSONArray.parseArray(str,PayProjectExcel.class);
// Step.3 AutoPoi 导出Excel
ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
mv.addObject(NormalExcelConstants.FILE_NAME, "打包成员信息"); //此处设置的filename无效 ,前端会重更新设置一下
mv.addObject(NormalExcelConstants.CLASS, PayProjectExcel.class);
//update-begin--Author:liusq Date:20210126 for:图片导出报错,ImageBasePath未设置--------------------
ExportParams exportParams=new ExportParams("打包成员信息", "打包成员信息");
exportParams.setImageBasePath(env.getProperty("jero.path.upload"));
exportParams.setType(ExcelType.XSSF);
//update-end--Author:liusq Date:20210126 for:图片导出报错,ImageBasePath未设置----------------------
mv.addObject(NormalExcelConstants.PARAMS,exportParams);
mv.addObject(NormalExcelConstants.DATA_LIST, list);
return mv;
* 分页列表查询
*
* @param payPackCompanyProject
* @param pageNo
* @param pageSize
* @param req
* @return
*/
// @ApiOperation(value="打包项目维护-分页列表查询", notes="打包项目维护-分页列表查询")
// @GetMapping(value = "/list")
public Result<?> queryPageList(PayPackCompanyProject payPackCompanyProject,
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<PayPackCompanyProject> queryWrapper = QueryGenerator.initQueryWrapper(payPackCompanyProject, req.getParameterMap());
Page<PayPackCompanyProject> page = new Page<PayPackCompanyProject>(pageNo, pageSize);
IPage<PayPackCompanyProject> pageList = payPackCompanyProjectService.page(page, queryWrapper);
return Result.OK(pageList);
}
/**
* 通过excel导入数据
*
* @param request
* @param response
* @return
*/
* 列表查询
*
* @param input 参数
* @return
*/
@RequiresPermissions("packProject:search")
@ApiOperation(value = "打包项目维护-列表查询", notes = "打包项目维护-列表查询")
@GetMapping(value = "/listAll")
public Result<?> queryListAll(PayPackCompanyProjectInput input) {
if (Objects.isNull(input.getPackId())) {
return Result.error("打包id不能为空");
}
PayPackCompany payPackCompany = payPackCompanyService.getById(input.getPackId());
if (Objects.isNull(payPackCompany)) {
return Result.error("打包企业不存在");
}
if (!StringUtils.isBlank(input.getProjectName())) {
input.setProjectName(oConvertUtils.replaceAllPercent(input.getProjectName()));
}
input.setCompanyId(payPackCompany.getCompanyId());
input.setPackYear(payPackCompany.getPackYear());
List<PayCommonProject> list = payPackCompanyProjectService.queryListAll(input);
BigDecimal sumOfReceivableAmount = BigDecimal.ZERO;
BigDecimal sumOfPaidAmount = BigDecimal.ZERO;
if (!CollectionUtils.isEmpty(list)) {
for (PayCommonProject p : list) {
if (!StringUtils.isBlank(p.getPhone())) {
p.setPhone(PasswordUtil.decrypt(p.getPhone()));
}
if (!StringUtils.isBlank(p.getEmail())) {
p.setEmail(PasswordUtil.decrypt(p.getEmail()));
}
if (Objects.isNull(p.getReceivableAmount())) {
p.setReceivableAmount(new BigDecimal("0.00"));
}
if (Objects.isNull(p.getPaidAmount())) {
p.setPaidAmount(new BigDecimal("0.00"));
}
sumOfReceivableAmount = sumOfReceivableAmount.add(p.getReceivableAmount());
sumOfPaidAmount = sumOfPaidAmount.add(p.getPaidAmount());
}
}
HashMap<String, Object> hashMap = new HashMap<>();
hashMap.put("sumOfReceivableAmount", sumOfReceivableAmount.toString());
hashMap.put("sumOfPaidAmount", sumOfPaidAmount.toString());
hashMap.put("list", list);
return Result.OK(hashMap);
}
/**
* 未打包列表查询
*
* @param input 参数
* @return
*/
@ApiOperation(value = "打包项目维护-未打包列表查询", notes = "打包项目维护-未打包列表查询")
@GetMapping(value = "/queryNotPackListAll")
public Result<?> queryNotPackListAll(PayPackCompanyProjectInput input) {
if (StringUtils.isBlank(input.getPackId())) {
return Result.error("打包id不能为空");
}
PayPackCompany payPackCompany = payPackCompanyService.getById(input.getPackId());
if (Objects.isNull(payPackCompany)) {
return Result.error("打包企业不存在");
}
input.setPackId(input.getPackId());
input.setCompanyId(payPackCompany.getCompanyId());
input.setPack(PackCommon.PACKAGING0);
List<PayCommonProject> list = payPackCompanyProjectService.queryPackListAll(input);
List<PayCommonProjectOutput> listPayCommonProjectOutput = new ArrayList<>();
if (!CollectionUtils.isEmpty(list)) {
String str = JSON.toJSONString(list);
listPayCommonProjectOutput = JSONArray.parseArray(str, PayCommonProjectOutput.class);
listPayCommonProjectOutput.forEach(p -> {
if (!Objects.isNull(p.getChargeUse())) {
p.setChargeUse_dictText(sysBaseAPI.translateDict("payment_charge_use", String.valueOf(p.getChargeUse())));
}
if (Objects.isNull(p.getPaidAmount())) {
p.setPaidAmount(new BigDecimal("0.00"));
}
});
}
return Result.OK(listPayCommonProjectOutput);
}
/**
* 添加打包
*
* @param payPackCompanyProject
* @return
*/
@AutoLog(value = "打包项目维护-添加", operateType = 2)
@RequiresPermissions("packProject:pack")
@ApiOperation(value = "打包项目维护-添加打包", notes = "打包项目维护-添加打包")
@PostMapping(value = "/add")
public Result<?> add(@RequestBody PayPackCompanyProject payPackCompanyProject) {
payPackCompanyProjectService.addPayPackCompanyProject(payPackCompanyProject);
return Result.OK("添加成功!");
}
/**
* 取消打包
*
* @param payPackCompanyProject
* @return
*/
@AutoLog(value = "打包项目维护-取消打包", operateType = 4)
@RequiresPermissions("packProject:cancelPack")
@ApiOperation(value = "打包项目维护-取消打包", notes = "打包项目维护-取消打包")
@PostMapping(value = "/remove")
public Result<?> remove(@RequestBody PayPackCompanyProject payPackCompanyProject) {
if (StringUtils.isBlank(payPackCompanyProject.getId())) {
return Result.error("关联id不能为空!");
}
payPackCompanyProjectService.removePayPackCompanyProject(payPackCompanyProject);
return Result.OK("取消打包成功!");
}
/**
* 批量取消打包
*
* @param payPackCompanyProject
* @return
*/
@AutoLog(value = "打包项目维护-批量取消打包", operateType = 4)
@RequiresPermissions("packProject:batchCancelPack")
@ApiOperation(value = "打包项目维护-批量取消打包", notes = "打包项目维护-批量取消打包")
@PostMapping(value = "/removeBatch")
public Result<?> removeBatch(@RequestBody PayPackCompanyProject payPackCompanyProject) {
if (StringUtils.isBlank(payPackCompanyProject.getPackProjectIds())) {
return Result.error("关联id不能为空!");
}
payPackCompanyProjectService.removeBatchPayPackCompanyProject(payPackCompanyProject);
return Result.OK("批量取消打包成功!");
}
/**
* 编辑
*
* @param payPackCompanyProject
* @return
*/
// @ApiOperation(value="pay_pack_company_project-编辑", notes="pay_pack_company_project-编辑")
// @PostMapping(value = "/edit")
public Result<?> edit(@RequestBody PayPackCompanyProject payPackCompanyProject) {
payPackCompanyProjectService.updateById(payPackCompanyProject);
return Result.OK("编辑成功!");
}
/**
* 通过id删除
*
* @param id
* @return
*/
// @ApiOperation(value="pay_pack_company_project-通过id删除", notes="pay_pack_company_project-通过id删除")
// @GetMapping(value = "/delete")
public Result<?> delete(@RequestParam(name = "id", required = true) String id) {
payPackCompanyProjectService.removeById(id);
return Result.OK("删除成功!");
}
/**
* 批量删除
*
* @param ids
* @return
*/
// @ApiOperation(value="pay_pack_company_project-批量删除", notes="pay_pack_company_project-批量删除")
// @GetMapping(value = "/deleteBatch")
public Result<?> deleteBatch(@RequestParam(name = "ids", required = true) String ids) {
this.payPackCompanyProjectService.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
/**
* 通过id查询
*
* @param id
* @return
*/
// @ApiOperation(value="pay_pack_company_project-通过id查询", notes="pay_pack_company_project-通过id查询")
// @GetMapping(value = "/queryById")
public Result<?> queryById(@RequestParam(name = "id", required = true) String id) {
PayPackCompanyProject payPackCompanyProject = payPackCompanyProjectService.getById(id);
if (payPackCompanyProject == null) {
return Result.error("未找到对应数据");
}
return Result.OK(payPackCompanyProject);
}
/**
* 导出excel
*
* @param request
* @param input
*/
@AutoLog(value = "打包项目维护-导出excel", operateType = 6)
@RequiresPermissions("packProject:export")
@GetMapping(value = "/exportXls")
@ApiOperation(value = "打包项目维护-导出excel", notes = "打包项目维护-导出excel")
public ModelAndView exportXls(HttpServletRequest request, PayPackCompanyProjectInput input) {
if (Objects.isNull(input.getPackId())) {
throw new JeroBootException("打包id不能为空");
}
PayPackCompany payPackCompany = payPackCompanyService.getById(input.getPackId());
if (Objects.isNull(payPackCompany)) {
throw new JeroBootException("打包企业不存在");
}
input.setCompanyId(payPackCompany.getCompanyId());
input.setPackYear(payPackCompany.getPackYear());
List<PayCommonProject> pageList = payPackCompanyProjectService.queryListAll(input);
List<PayCommonProject> exportList = null;
// 过滤选中数据
String selections = request.getParameter("selections");
if (oConvertUtils.isNotEmpty(selections)) {
List<String> selectionList = Arrays.asList(selections.split(","));
exportList = pageList.stream().filter(item -> selectionList.contains(item.getId())).collect(Collectors.toList());
} else {
exportList = pageList;
}
if (CollectionUtils.isEmpty(pageList)) {
throw new JeroBootException("没有数据可导出!");
}
exportList.forEach(p -> {
if (!StringUtils.isBlank(p.getPhone())) {
p.setPhone(PasswordUtil.decrypt(p.getPhone()));
}
if (!StringUtils.isBlank(p.getEmail())) {
p.setEmail(PasswordUtil.decrypt(p.getEmail()));
}
});
String str = JSON.toJSONString(exportList);
List<PayProjectExcel> list = JSONArray.parseArray(str, PayProjectExcel.class);
// Step.3 AutoPoi 导出Excel
ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
mv.addObject(NormalExcelConstants.FILE_NAME, "打包成员信息"); //此处设置的filename无效 ,前端会重更新设置一下
mv.addObject(NormalExcelConstants.CLASS, PayProjectExcel.class);
//update-begin--Author:liusq Date:20210126 for:图片导出报错,ImageBasePath未设置--------------------
ExportParams exportParams = new ExportParams("打包成员信息", "打包成员信息");
exportParams.setImageBasePath(env.getProperty("jero.path.upload"));
exportParams.setType(ExcelType.XSSF);
//update-end--Author:liusq Date:20210126 for:图片导出报错,ImageBasePath未设置----------------------
mv.addObject(NormalExcelConstants.PARAMS, exportParams);
mv.addObject(NormalExcelConstants.DATA_LIST, list);
return mv;
}
/**
* 通过excel导入数据
*
* @param request
* @param response
* @return
*/
// @PostMapping(value = "/importExcel")
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, PayPackCompanyProject.class);
@@ -85,8 +85,7 @@ public class PayWorkingGroupController extends JeroController<PayWorkingGroup, I
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
if (StringUtils.isNotBlank(sysUser.getRoleCode())){
List<String> roleCodes = new ArrayList<>(Arrays.asList(sysUser.getRoleCode().split(",")));
if(rolePermissionService.getRolePermission("workingGroupProject:search") &&
!(roleCodes.contains(constant.ADMIN))){
if(!roleCodes.contains(constant.ADMIN)){
payWorkingGroup.setPrincipalA(sysUser.getId());
payWorkingGroup.setPrincipalB(sysUser.getId());
}