模板管理列表
This commit is contained in:
parent
3d61bfa9a6
commit
c80d900339
|
|
@ -1,6 +1,8 @@
|
|||
package com.engine.salary.entity.setting.dto;
|
||||
|
||||
import com.cloudstore.eccom.pc.table.WeaTableColumn;
|
||||
import com.engine.hrmelog.annotation.ElogTransform;
|
||||
import com.engine.salary.annotation.TableTitle;
|
||||
import com.engine.salary.enums.common.SharedTypeEnum;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
|
|
@ -8,12 +10,56 @@ import lombok.NoArgsConstructor;
|
|||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* 薪资帐套表
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
//hrsa_page_list_template
|
||||
public class PageListTemplateDTO {
|
||||
private List<WeaTableColumn> setting;
|
||||
private List<WeaTableColumn> checked;
|
||||
|
||||
|
||||
private Long id;
|
||||
|
||||
|
||||
/**
|
||||
* 模板名称
|
||||
*/
|
||||
@TableTitle(title = "模板名称",dataIndex = "name",key = "name")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 页面
|
||||
*/
|
||||
private String page;
|
||||
|
||||
/**
|
||||
* 设置
|
||||
*/
|
||||
private List<String> setting;
|
||||
|
||||
/**
|
||||
* 是否共享,0否,1是
|
||||
* @see SharedTypeEnum
|
||||
*/
|
||||
@TableTitle(title = "可见性",dataIndex = "sharedType",key = "sharedType")
|
||||
private Integer sharedType;
|
||||
|
||||
/**
|
||||
* 是否系统模板
|
||||
*/
|
||||
@TableTitle(title = "是否系统模板",dataIndex = "systemType",key = "systemType")
|
||||
private Integer systemType;
|
||||
|
||||
|
||||
/**
|
||||
* 限制
|
||||
*/
|
||||
@ElogTransform(name = "限制")
|
||||
private List<Long> limitIds;
|
||||
|
||||
private Boolean canEdit;
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
package com.engine.salary.entity.setting.dto;
|
||||
|
||||
import com.cloudstore.eccom.pc.table.WeaTableColumn;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class PageListTemplateDetailDTO {
|
||||
private List<WeaTableColumn> setting;
|
||||
private List<WeaTableColumn> checked;
|
||||
}
|
||||
|
|
@ -1,5 +1,6 @@
|
|||
package com.engine.salary.entity.setting.param;
|
||||
|
||||
import com.engine.salary.common.BaseQueryParam;
|
||||
import com.engine.salary.util.valid.DataCheck;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
|
|
@ -13,7 +14,7 @@ import lombok.NoArgsConstructor;
|
|||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class PageListTemplateQueryParam {
|
||||
public class PageListTemplateQueryParam extends BaseQueryParam {
|
||||
|
||||
private Long id;
|
||||
|
||||
|
|
|
|||
|
|
@ -2,8 +2,10 @@ package com.engine.salary.service;
|
|||
|
||||
import com.cloudstore.eccom.pc.table.WeaTableColumn;
|
||||
import com.engine.salary.entity.setting.dto.PageListTemplateDTO;
|
||||
import com.engine.salary.entity.setting.dto.PageListTemplateDetailDTO;
|
||||
import com.engine.salary.entity.setting.param.*;
|
||||
import com.engine.salary.entity.setting.po.PageListTemplatePO;
|
||||
import com.engine.salary.util.page.PageInfo;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
|
@ -17,7 +19,7 @@ public interface SettingService {
|
|||
* @param param
|
||||
* @return
|
||||
*/
|
||||
PageListTemplateDTO getDefaultPageListSetting(PageListSettingQueryParam param);
|
||||
PageListTemplateDetailDTO getDefaultPageListSetting(PageListSettingQueryParam param);
|
||||
|
||||
@Deprecated
|
||||
void resetPageListSetting(PageListSettingResetParam param);
|
||||
|
|
@ -27,7 +29,7 @@ public interface SettingService {
|
|||
* @param param
|
||||
* @return
|
||||
*/
|
||||
PageListTemplateDTO getPageListTemplate(PageListTemplateQueryParam param);
|
||||
PageListTemplateDetailDTO getPageListTemplate(PageListTemplateQueryParam param);
|
||||
|
||||
/**
|
||||
* 获取可选模板列表
|
||||
|
|
@ -51,4 +53,5 @@ public interface SettingService {
|
|||
|
||||
List<WeaTableColumn> getPageListColumns(String page);
|
||||
|
||||
PageInfo<PageListTemplateDTO> getTemplates(PageListTemplateQueryParam param);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@ import com.engine.common.util.ServiceUtil;
|
|||
import com.engine.core.impl.Service;
|
||||
import com.engine.salary.entity.salaryitem.po.SalaryItemPO;
|
||||
import com.engine.salary.entity.setting.dto.PageListTemplateDTO;
|
||||
import com.engine.salary.entity.setting.dto.PageListTemplateDetailDTO;
|
||||
import com.engine.salary.entity.setting.param.*;
|
||||
import com.engine.salary.entity.setting.po.PageLinkPO;
|
||||
import com.engine.salary.entity.setting.po.PageListSettingPO;
|
||||
|
|
@ -28,6 +29,8 @@ import com.engine.salary.util.SalaryEntityUtil;
|
|||
import com.engine.salary.util.SalaryI18nUtil;
|
||||
import com.engine.salary.util.db.IdGenerator;
|
||||
import com.engine.salary.util.db.MapperProxyFactory;
|
||||
import com.engine.salary.util.page.PageInfo;
|
||||
import com.engine.salary.util.page.SalaryPageUtil;
|
||||
import com.engine.salary.util.valid.ValidUtil;
|
||||
import weaver.hrm.User;
|
||||
|
||||
|
|
@ -94,7 +97,7 @@ public class SettingServiceImpl extends Service implements SettingService {
|
|||
}
|
||||
|
||||
@Override
|
||||
public PageListTemplateDTO getDefaultPageListSetting(PageListSettingQueryParam param) {
|
||||
public PageListTemplateDetailDTO getDefaultPageListSetting(PageListSettingQueryParam param) {
|
||||
String page = param.getPage();
|
||||
if (SALARY_DETAILS_REPORT.getValue().equals(page)) {
|
||||
List<WeaTableColumn> columns = new ArrayList<>();
|
||||
|
|
@ -146,10 +149,10 @@ public class SettingServiceImpl extends Service implements SettingService {
|
|||
} else {
|
||||
checkedList = columns;
|
||||
}
|
||||
return PageListTemplateDTO.builder().setting(columns).checked(checkedList).build();
|
||||
return PageListTemplateDetailDTO.builder().setting(columns).checked(checkedList).build();
|
||||
}
|
||||
|
||||
return PageListTemplateDTO.builder().setting(new ArrayList<>()).checked(new ArrayList<>()).build();
|
||||
return PageListTemplateDetailDTO.builder().setting(new ArrayList<>()).checked(new ArrayList<>()).build();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -167,7 +170,7 @@ public class SettingServiceImpl extends Service implements SettingService {
|
|||
}
|
||||
|
||||
@Override
|
||||
public PageListTemplateDTO getPageListTemplate(PageListTemplateQueryParam param) {
|
||||
public PageListTemplateDetailDTO getPageListTemplate(PageListTemplateQueryParam param) {
|
||||
String page = param.getPage();
|
||||
if (SALARY_DETAILS_REPORT.getValue().equals(page)) {
|
||||
List<WeaTableColumn> columns = new ArrayList<>();
|
||||
|
|
@ -226,10 +229,10 @@ public class SettingServiceImpl extends Service implements SettingService {
|
|||
checkedList = columnList;
|
||||
}
|
||||
}
|
||||
return PageListTemplateDTO.builder().setting(columns).checked(checkedList).build();
|
||||
return PageListTemplateDetailDTO.builder().setting(columns).checked(checkedList).build();
|
||||
}
|
||||
|
||||
return PageListTemplateDTO.builder().build();
|
||||
return PageListTemplateDetailDTO.builder().build();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -248,7 +251,7 @@ public class SettingServiceImpl extends Service implements SettingService {
|
|||
PageListTemplatePO systemTemplate = pos.stream().filter(po -> po.getSystemType() != null && po.getSystemType() == 1).findFirst().orElse(null);
|
||||
if (systemTemplate == null) {
|
||||
//查询系统默认配置
|
||||
PageListTemplateDTO pageListSetting = getDefaultPageListSetting(PageListSettingQueryParam.builder().page(SALARY_DETAILS_REPORT.getValue()).build());
|
||||
PageListTemplateDetailDTO pageListSetting = getDefaultPageListSetting(PageListSettingQueryParam.builder().page(SALARY_DETAILS_REPORT.getValue()).build());
|
||||
|
||||
systemTemplate = PageListTemplatePO.builder()
|
||||
.id(IdGenerator.generate())
|
||||
|
|
@ -306,7 +309,19 @@ public class SettingServiceImpl extends Service implements SettingService {
|
|||
|
||||
PageListTemplatePO po;
|
||||
if (id == null) {
|
||||
po = PageListTemplatePO.builder().id(IdGenerator.generate()).page(param.getPage()).name(param.getName()).sharedType(param.getSharedType()).limitIds(param.getLimitIds()).setting(param.getSetting()).creator((long) user.getUID()).createTime(now).updateTime(now).deleteType(0).tenantKey(DEFAULT_TENANT_KEY).build();
|
||||
po = PageListTemplatePO.builder()
|
||||
.id(IdGenerator.generate())
|
||||
.page(param.getPage())
|
||||
.name(param.getName())
|
||||
.sharedType(param.getSharedType())
|
||||
.systemType(0)
|
||||
.limitIds(param.getLimitIds())
|
||||
.setting(param.getSetting())
|
||||
.creator((long) user.getUID())
|
||||
.createTime(now)
|
||||
.updateTime(now)
|
||||
.deleteType(0)
|
||||
.tenantKey(DEFAULT_TENANT_KEY).build();
|
||||
getPageListTemplateMapper().insertIgnoreNull(po);
|
||||
} else {
|
||||
po = getPageListTemplateMapper().getById(id);
|
||||
|
|
@ -341,7 +356,38 @@ public class SettingServiceImpl extends Service implements SettingService {
|
|||
|
||||
@Override
|
||||
public List<WeaTableColumn> getPageListColumns(String page) {
|
||||
PageListTemplateDTO pageListTemplate = getPageListTemplate((PageListTemplateQueryParam.builder().page(page).build()));
|
||||
PageListTemplateDetailDTO pageListTemplate = getPageListTemplate((PageListTemplateQueryParam.builder().page(page).build()));
|
||||
return pageListTemplate.getChecked();
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageInfo<PageListTemplateDTO> getTemplates(PageListTemplateQueryParam param) {
|
||||
PageListTemplatePO build = PageListTemplatePO.builder().page(param.getPage()).build();
|
||||
List<PageListTemplatePO> pos = getPageListTemplateMapper().listSome(build);
|
||||
|
||||
//权限控制
|
||||
Collection<TaxAgentPO> taxAgentPOS = getTaxAgentService().listAllTaxAgents((long) user.getUID());
|
||||
Boolean chief = getTaxAgentService().isChief((long) user.getUID());
|
||||
List<Long> taxIds = SalaryEntityUtil.properties(taxAgentPOS, TaxAgentPO::getId, Collectors.toList());
|
||||
List<PageListTemplateDTO> templateDTOS = pos.stream()
|
||||
.filter(po -> {
|
||||
if (po.getSharedType() == 1) {
|
||||
List<Long> limitIds = po.getLimitIds();
|
||||
return CollectionUtil.isNotEmpty(limitIds) && CollectionUtil.intersection(limitIds, taxIds).size() != 0;
|
||||
}
|
||||
return true;
|
||||
}).map(po -> PageListTemplateDTO.builder()
|
||||
.id(po.getId())
|
||||
.page(po.getPage())
|
||||
.name(po.getName())
|
||||
.sharedType(po.getSharedType())
|
||||
.systemType(po.getSystemType())
|
||||
.limitIds(po.getLimitIds())
|
||||
.setting(po.getSetting())
|
||||
.canEdit(chief || po.getSystemType() == 0)
|
||||
.build())
|
||||
.collect(Collectors.toList());
|
||||
|
||||
return SalaryPageUtil.buildPage(param.getCurrent(), param.getPageSize(), templateDTOS, PageListTemplateDTO.class);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,11 +2,13 @@ package com.engine.salary.web;
|
|||
|
||||
import com.engine.common.util.ServiceUtil;
|
||||
import com.engine.salary.entity.setting.dto.PageListTemplateDTO;
|
||||
import com.engine.salary.entity.setting.dto.PageListTemplateDetailDTO;
|
||||
import com.engine.salary.entity.setting.param.*;
|
||||
import com.engine.salary.entity.setting.po.PageListSettingPO;
|
||||
import com.engine.salary.entity.setting.po.PageListTemplatePO;
|
||||
import com.engine.salary.util.ResponseResult;
|
||||
import com.engine.salary.util.SalaryEnumUtil;
|
||||
import com.engine.salary.util.page.PageInfo;
|
||||
import com.engine.salary.wrapper.SalaryCommonWrapper;
|
||||
import io.swagger.v3.oas.annotations.parameters.RequestBody;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
|
@ -88,7 +90,7 @@ public class SalaryCommonController {
|
|||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public String getPageListSetting(@Context HttpServletRequest request, @Context HttpServletResponse response,@RequestBody PageListSettingQueryParam param) {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
return new ResponseResult<PageListSettingQueryParam, PageListTemplateDTO>(user).run(getSalaryCommonWrapper(user)::getPageListSetting, param);
|
||||
return new ResponseResult<PageListSettingQueryParam, PageListTemplateDetailDTO>(user).run(getSalaryCommonWrapper(user)::getPageListSetting, param);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -103,7 +105,7 @@ public class SalaryCommonController {
|
|||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public String getPageListTemplate(@Context HttpServletRequest request, @Context HttpServletResponse response,@RequestBody PageListTemplateQueryParam param) {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
return new ResponseResult<PageListTemplateQueryParam, PageListTemplateDTO>(user).run(getSalaryCommonWrapper(user)::getPageListTemplate, param);
|
||||
return new ResponseResult<PageListTemplateQueryParam, PageListTemplateDetailDTO>(user).run(getSalaryCommonWrapper(user)::getPageListTemplate, param);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -121,6 +123,14 @@ public class SalaryCommonController {
|
|||
return new ResponseResult<PageListTemplateQueryParam, List<PageListTemplatePO>>(user).run(getSalaryCommonWrapper(user)::getPageListTemplates, param);
|
||||
}
|
||||
|
||||
@POST
|
||||
@Path("/pageList/template/pageList")
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public String getTemplates(@Context HttpServletRequest request, @Context HttpServletResponse response,@RequestBody PageListTemplateQueryParam param) {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
return new ResponseResult<PageListTemplateQueryParam, PageInfo<PageListTemplateDTO>>(user).run(getSalaryCommonWrapper(user)::getTemplates, param);
|
||||
}
|
||||
|
||||
/**
|
||||
* 页面模板列表
|
||||
* @param request
|
||||
|
|
|
|||
|
|
@ -3,12 +3,14 @@ package com.engine.salary.wrapper;
|
|||
import com.engine.common.util.ServiceUtil;
|
||||
import com.engine.core.impl.Service;
|
||||
import com.engine.salary.entity.setting.dto.PageListTemplateDTO;
|
||||
import com.engine.salary.entity.setting.dto.PageListTemplateDetailDTO;
|
||||
import com.engine.salary.entity.setting.param.*;
|
||||
import com.engine.salary.entity.setting.po.PageListTemplatePO;
|
||||
import com.engine.salary.service.SalaryCacheService;
|
||||
import com.engine.salary.service.SettingService;
|
||||
import com.engine.salary.service.impl.SalaryCacheServiceImpl;
|
||||
import com.engine.salary.service.impl.SettingServiceImpl;
|
||||
import com.engine.salary.util.page.PageInfo;
|
||||
import weaver.hrm.User;
|
||||
|
||||
import java.util.List;
|
||||
|
|
@ -41,12 +43,12 @@ public class SalaryCommonWrapper extends Service {
|
|||
}
|
||||
|
||||
|
||||
public PageListTemplateDTO getPageListSetting(PageListSettingQueryParam param) {
|
||||
public PageListTemplateDetailDTO getPageListSetting(PageListSettingQueryParam param) {
|
||||
return getSettingService(user).getDefaultPageListSetting(param);
|
||||
}
|
||||
|
||||
|
||||
public PageListTemplateDTO getPageListTemplate(PageListTemplateQueryParam param) {
|
||||
public PageListTemplateDetailDTO getPageListTemplate(PageListTemplateQueryParam param) {
|
||||
return getSettingService(user).getPageListTemplate(param);
|
||||
}
|
||||
|
||||
|
|
@ -54,6 +56,10 @@ public class SalaryCommonWrapper extends Service {
|
|||
return getSettingService(user).getPageListTemplates(param);
|
||||
}
|
||||
|
||||
public PageInfo<PageListTemplateDTO> getTemplates(PageListTemplateQueryParam param) {
|
||||
return getSettingService(user).getTemplates(param);
|
||||
}
|
||||
|
||||
public PageListTemplatePO savePageListTemplate(PageListTemplateSaveParam param) {
|
||||
return getSettingService(user).savePageListTemplate(param);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue