编制表接口 表结构更新
parent
b212122007
commit
b18133f790
@ -0,0 +1,13 @@
|
||||
package com.api.organization.web;
|
||||
|
||||
import javax.ws.rs.Path;
|
||||
|
||||
/**
|
||||
* @description: TODO
|
||||
* @author:dxfeng
|
||||
* @createTime: 2022/05/25
|
||||
* @version: 1.0
|
||||
*/
|
||||
@Path("/bs/hrmorganization/staff")
|
||||
public class StaffController extends com.engine.organization.web.StaffController {
|
||||
}
|
@ -0,0 +1,38 @@
|
||||
package com.engine.organization.entity.staff.bo;
|
||||
|
||||
import com.engine.organization.entity.staff.param.StaffSearchParam;
|
||||
import com.engine.organization.entity.staff.po.StaffPO;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @description: TODO
|
||||
* @author:dxfeng
|
||||
* @createTime: 2022/05/25
|
||||
* @version: 1.0
|
||||
*/
|
||||
public class StaffBO {
|
||||
public static StaffPO convertParamToPO(StaffSearchParam param, Long employeeId) {
|
||||
if (param == null) {
|
||||
return null;
|
||||
}
|
||||
return StaffPO.builder()
|
||||
.id(param.getId())
|
||||
.planId(param.getPlanId())
|
||||
.compId(param.getCompId())
|
||||
.deptId(param.getDeptId())
|
||||
.jobId(param.getJobId())
|
||||
.staffNum(param.getStaffNum())
|
||||
.controlPolicy(param.getControlPolicy())
|
||||
.permanentNum(param.getPermanentNum())
|
||||
.freezeNum(param.getFreezeNum())
|
||||
.lackStatus(param.getLackStatus())
|
||||
.staffDesc(param.getStaffDesc())
|
||||
.description(param.getDescription())
|
||||
.deleteType(0)
|
||||
.createTime(new Date())
|
||||
.updateTime(new Date())
|
||||
.creator(employeeId)
|
||||
.build();
|
||||
}
|
||||
}
|
@ -0,0 +1,68 @@
|
||||
package com.engine.organization.entity.staff.param;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* @description: TODO
|
||||
* @author:dxfeng
|
||||
* @createTime: 2022/05/25
|
||||
* @version: 1.0
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class StaffSearchParam {
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
private Long id;
|
||||
/**
|
||||
* 方案id
|
||||
*/
|
||||
private Long planId;
|
||||
/**
|
||||
* 分部
|
||||
*/
|
||||
private Long compId;
|
||||
/**
|
||||
* 部门
|
||||
*/
|
||||
private Long deptId;
|
||||
/**
|
||||
* 岗位
|
||||
*/
|
||||
private Long jobId;
|
||||
/**
|
||||
* 编制数
|
||||
*/
|
||||
private Integer staffNum;
|
||||
/**
|
||||
* 控制策略
|
||||
*/
|
||||
private Integer controlPolicy;
|
||||
/**
|
||||
* 在编
|
||||
*/
|
||||
private Integer permanentNum;
|
||||
/**
|
||||
* 冻结数
|
||||
*/
|
||||
private Integer freezeNum;
|
||||
/**
|
||||
* 缺编状态
|
||||
*/
|
||||
private Integer lackStatus;
|
||||
/**
|
||||
* 编制描述
|
||||
*/
|
||||
private String staffDesc;
|
||||
|
||||
/**
|
||||
* 说明
|
||||
*/
|
||||
private String description;
|
||||
}
|
@ -0,0 +1,75 @@
|
||||
package com.engine.organization.entity.staff.po;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @description: TODO
|
||||
* @author:dxfeng
|
||||
* @createTime: 2022/05/25
|
||||
* @version: 1.0
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class StaffPO {
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
private Long id;
|
||||
/**
|
||||
* 方案id
|
||||
*/
|
||||
private Long planId;
|
||||
/**
|
||||
* 分部
|
||||
*/
|
||||
private Long compId;
|
||||
/**
|
||||
* 部门
|
||||
*/
|
||||
private Long deptId;
|
||||
/**
|
||||
* 岗位
|
||||
*/
|
||||
private Long jobId;
|
||||
/**
|
||||
* 编制数
|
||||
*/
|
||||
private Integer staffNum;
|
||||
/**
|
||||
* 控制策略
|
||||
*/
|
||||
private Integer controlPolicy;
|
||||
/**
|
||||
* 在编
|
||||
*/
|
||||
private Integer permanentNum;
|
||||
/**
|
||||
* 冻结数
|
||||
*/
|
||||
private Integer freezeNum;
|
||||
/**
|
||||
* 缺编状态
|
||||
*/
|
||||
private Integer lackStatus;
|
||||
/**
|
||||
* 编制描述
|
||||
*/
|
||||
private String staffDesc;
|
||||
/**
|
||||
* 说明
|
||||
*/
|
||||
private String description;
|
||||
|
||||
private Long creator;
|
||||
private int deleteType;
|
||||
private Date createTime;
|
||||
private Date updateTime;
|
||||
|
||||
}
|
@ -0,0 +1,83 @@
|
||||
package com.engine.organization.entity.staff.vo;
|
||||
|
||||
import com.engine.organization.annotation.OrganizationTable;
|
||||
import com.engine.organization.annotation.OrganizationTableColumn;
|
||||
import com.engine.organization.annotation.OrganizationTableOperate;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* @description: TODO
|
||||
* @author:dxfeng
|
||||
* @createTime: 2022/05/25
|
||||
* @version: 1.0
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@OrganizationTable(pageId = "0cdfd5bb-dc09-11ec-b69e-00ffcbed7508",
|
||||
fields = "id,plan_id,comp_id,dept_id,job_id,staff_num,permanent_num,freeze_num,lack_status,staff_desc",
|
||||
fromSql = "FROM jcl_org_staff t ",
|
||||
orderby = "id desc",
|
||||
primarykey = "id",
|
||||
operates = {
|
||||
@OrganizationTableOperate(index = "0", text = "编辑"),
|
||||
@OrganizationTableOperate(index = "1", text = "删除"),
|
||||
@OrganizationTableOperate(index = "2", text = "变更")
|
||||
}
|
||||
)
|
||||
public class StaffTableVO {
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
private Long id;
|
||||
/**
|
||||
* 方案id
|
||||
*/
|
||||
@OrganizationTableColumn(text = "方案", width = "10%", column = "plan_id", transmethod = "com.engine.organization.transmethod.StaffPlanTransMethod.getSpanById")
|
||||
private String planId;
|
||||
/**
|
||||
* 分部
|
||||
*/
|
||||
@OrganizationTableColumn(text = "分部", width = "10%", column = "comp_id", transmethod = "com.engine.organization.transmethod.CompTransMethod.getSpanById")
|
||||
private String compId;
|
||||
/**
|
||||
* 部门
|
||||
*/
|
||||
@OrganizationTableColumn(text = "部门", width = "10%", column = "dept_id", transmethod = "com.engine.organization.transmethod.DepartmentTransMethod.getSpanById")
|
||||
private String deptId;
|
||||
/**
|
||||
* 岗位
|
||||
*/
|
||||
@OrganizationTableColumn(text = "岗位", width = "10%", column = "job_id", transmethod = "com.engine.organization.transmethod.JobTransMethod.getSpanById")
|
||||
private String jobId;
|
||||
/**
|
||||
* 编制数
|
||||
*/
|
||||
@OrganizationTableColumn(text = "编制数", width = "10%", column = "staff_num")
|
||||
private Integer staffNum;
|
||||
/**
|
||||
* 在编
|
||||
*/
|
||||
@OrganizationTableColumn(text = "在编", width = "10%", column = "permanent_num")
|
||||
private Integer permanentNum;
|
||||
/**
|
||||
* 冻结数
|
||||
*/
|
||||
@OrganizationTableColumn(text = "冻结数", width = "10%", column = "freeze_num")
|
||||
private Integer freezeNum;
|
||||
/**
|
||||
* 缺编状态
|
||||
*/
|
||||
@OrganizationTableColumn(text = "缺编状态", width = "10%", column = "lack_status")
|
||||
private Integer lackStatus;
|
||||
/**
|
||||
* 编制描述
|
||||
*/
|
||||
@OrganizationTableColumn(text = "编制描述", width = "10%", column = "staff_desc")
|
||||
private String staffDesc;
|
||||
|
||||
}
|
@ -0,0 +1,177 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
|
||||
<mapper namespace="com.engine.organization.mapper.staff.StaffMapper">
|
||||
<resultMap id="BaseResultMap" type="com.engine.organization.entity.staff.po.StaffPO">
|
||||
<result column="id" property="id"/>
|
||||
<result column="plan_id" property="planId"/>
|
||||
<result column="comp_id" property="compId"/>
|
||||
<result column="dept_id" property="deptId"/>
|
||||
<result column="job_id" property="jobId"/>
|
||||
<result column="staff_num" property="staffNum"/>
|
||||
<result column="control_policy" property="controlPolicy"/>
|
||||
<result column="permanent_num" property="permanentNum"/>
|
||||
<result column="freeze_num" property="freezeNum"/>
|
||||
<result column="lack_status" property="lackStatus"/>
|
||||
<result column="staff_desc" property="staffDesc"/>
|
||||
<result column="description" property="description"/>
|
||||
<result column="creator" property="creator"/>
|
||||
<result column="delete_type" property="deleteType"/>
|
||||
<result column="create_time" property="createTime"/>
|
||||
<result column="update_time" property="updateTime"/>
|
||||
</resultMap>
|
||||
|
||||
<!-- 表字段 -->
|
||||
<sql id="baseColumns">
|
||||
t
|
||||
.
|
||||
id
|
||||
, t.plan_id
|
||||
, t.comp_id
|
||||
, t.dept_id
|
||||
, t.job_id
|
||||
, t.staff_num
|
||||
, t.control_policy
|
||||
, t.permanent_num
|
||||
, t.freeze_num
|
||||
, t.lack_status
|
||||
, t.staff_desc
|
||||
, t.description
|
||||
</sql>
|
||||
<select id="getStaffByID" parameterType="com.engine.organization.entity.staff.po.StaffPO"
|
||||
resultMap="BaseResultMap">
|
||||
select
|
||||
<include refid="baseColumns"/>
|
||||
from jcl_org_staff t where id = #{id} AND delete_type = 0
|
||||
</select>
|
||||
|
||||
<update id="updateStaff" parameterType="com.engine.organization.entity.staff.po.StaffPO">
|
||||
update jcl_org_staff
|
||||
<set>
|
||||
creator=#{creator},
|
||||
update_time=#{updateTime},
|
||||
plan_id=#{planId},
|
||||
comp_id=#{compId},
|
||||
dept_id=#{deptId},
|
||||
job_id=#{jobId},
|
||||
staff_num=#{staffNum},
|
||||
control_policy=#{controlPolicy},
|
||||
permanent_num=#{permanentNum},
|
||||
freeze_num=#{freezeNum},
|
||||
lack_status=#{lackStatus},
|
||||
staff_desc=#{staffDesc},
|
||||
description=#{description},
|
||||
</set>
|
||||
WHERE id = #{id} AND delete_type = 0
|
||||
</update>
|
||||
|
||||
<insert id="insertIgnoreNull" parameterType="com.engine.organization.entity.staff.po.StaffPO" keyProperty="id"
|
||||
keyColumn="id" useGeneratedKeys="true">
|
||||
INSERT INTO jcl_org_staff
|
||||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||
<if test="creator != null">
|
||||
creator,
|
||||
</if>
|
||||
<if test="deleteType != null">
|
||||
delete_type,
|
||||
</if>
|
||||
<if test="createTime != null">
|
||||
create_time,
|
||||
</if>
|
||||
<if test="updateTime != null">
|
||||
update_time,
|
||||
</if>
|
||||
<if test="planId != null ">
|
||||
plan_id,
|
||||
</if>
|
||||
<if test="compId != null ">
|
||||
comp_id,
|
||||
</if>
|
||||
<if test="deptId != null ">
|
||||
dept_id,
|
||||
</if>
|
||||
<if test="jobId != null ">
|
||||
job_id,
|
||||
</if>
|
||||
<if test="staffNum != null ">
|
||||
staff_num,
|
||||
</if>
|
||||
<if test="controlPolicy != null ">
|
||||
control_policy,
|
||||
</if>
|
||||
<if test="permanentNum != null ">
|
||||
permanent_num,
|
||||
</if>
|
||||
<if test="freezeNum != null ">
|
||||
freeze_num,
|
||||
</if>
|
||||
<if test="lackStatus != null ">
|
||||
lack_status,
|
||||
</if>
|
||||
<if test="staffDesc != null ">
|
||||
staff_desc,
|
||||
</if>
|
||||
<if test="description != null ">
|
||||
description,
|
||||
</if>
|
||||
</trim>
|
||||
<trim prefix="VALUES (" suffix=")" suffixOverrides=",">
|
||||
<if test="creator != null">
|
||||
#{creator},
|
||||
</if>
|
||||
<if test="deleteType != null">
|
||||
#{deleteType},
|
||||
</if>
|
||||
<if test="createTime != null">
|
||||
#{createTime},
|
||||
</if>
|
||||
<if test="updateTime != null">
|
||||
#{updateTime},
|
||||
</if>
|
||||
|
||||
<if test="planId != null ">
|
||||
#{planId},
|
||||
</if>
|
||||
<if test="compId != null ">
|
||||
#{compId},
|
||||
</if>
|
||||
<if test="deptId != null ">
|
||||
#{deptId},
|
||||
</if>
|
||||
<if test="jobId != null ">
|
||||
#{jobId},
|
||||
</if>
|
||||
<if test="staffNum != null ">
|
||||
#{staffNum},
|
||||
</if>
|
||||
<if test="controlPolicy != null ">
|
||||
#{controlPolicy},
|
||||
</if>
|
||||
<if test="permanentNum != null ">
|
||||
#{permanentNum},
|
||||
</if>
|
||||
<if test="freezeNum != null ">
|
||||
#{freezeNum},
|
||||
</if>
|
||||
<if test="lackStatus != null ">
|
||||
#{lackStatus},
|
||||
</if>
|
||||
<if test="staffDesc != null ">
|
||||
#{staffDesc},
|
||||
</if>
|
||||
<if test="description != null ">
|
||||
#{description},
|
||||
</if>
|
||||
</trim>
|
||||
</insert>
|
||||
|
||||
<update id="deleteByIds">
|
||||
UPDATE jcl_org_staff
|
||||
SET delete_type = 1
|
||||
WHERE delete_type = 0
|
||||
AND id IN
|
||||
<foreach collection="ids" open="(" item="id" separator="," close=")">
|
||||
#{id}
|
||||
</foreach>
|
||||
</update>
|
||||
|
||||
</mapper>
|
@ -0,0 +1,67 @@
|
||||
package com.engine.organization.service;
|
||||
|
||||
import com.engine.organization.entity.staff.param.StaffSearchParam;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @description: TODO
|
||||
* @author:dxfeng
|
||||
* @createTime: 2022/05/25
|
||||
* @version: 1.0
|
||||
*/
|
||||
public interface StaffService {
|
||||
/**
|
||||
* 编制列表
|
||||
*
|
||||
* @param params
|
||||
* @return
|
||||
*/
|
||||
Map<String, Object> listPage(StaffSearchParam params);
|
||||
|
||||
/**
|
||||
* 新增编制
|
||||
* @param param
|
||||
* @return
|
||||
*/
|
||||
int saveStaff(StaffSearchParam param);
|
||||
|
||||
/**
|
||||
* 更新编制信息
|
||||
*
|
||||
* @param param
|
||||
* @return
|
||||
*/
|
||||
int updateStaff(StaffSearchParam param);
|
||||
|
||||
/**
|
||||
* 根据ID批量删除编制
|
||||
*
|
||||
* @param ids
|
||||
*/
|
||||
int deleteByIds(Collection<Long> ids);
|
||||
|
||||
/**
|
||||
* 获取搜索条件
|
||||
*
|
||||
* @param params
|
||||
* @return
|
||||
*/
|
||||
Map<String, Object> getSearchCondition(Map<String, Object> params);
|
||||
|
||||
|
||||
/**
|
||||
* 获取新增、编辑表单
|
||||
*
|
||||
* @param params
|
||||
* @return
|
||||
*/
|
||||
Map<String, Object> getForm(Map<String, Object> params);
|
||||
|
||||
/**
|
||||
* 获取列表页面按钮信息
|
||||
* @return
|
||||
*/
|
||||
Map<String, Object> getHasRight();
|
||||
}
|
@ -0,0 +1,249 @@
|
||||
package com.engine.organization.service.impl;
|
||||
|
||||
import com.api.browser.bean.BrowserBean;
|
||||
import com.api.browser.bean.SearchConditionGroup;
|
||||
import com.api.browser.bean.SearchConditionItem;
|
||||
import com.api.browser.bean.SearchConditionOption;
|
||||
import com.cloudstore.eccom.result.WeaResultMsg;
|
||||
import com.engine.core.impl.Service;
|
||||
import com.engine.organization.component.OrganizationWeaTable;
|
||||
import com.engine.organization.entity.QueryParam;
|
||||
import com.engine.organization.entity.staff.bo.StaffBO;
|
||||
import com.engine.organization.entity.staff.param.StaffSearchParam;
|
||||
import com.engine.organization.entity.staff.po.StaffPO;
|
||||
import com.engine.organization.entity.staff.vo.StaffTableVO;
|
||||
import com.engine.organization.mapper.comp.CompMapper;
|
||||
import com.engine.organization.mapper.department.DepartmentMapper;
|
||||
import com.engine.organization.mapper.staff.StaffMapper;
|
||||
import com.engine.organization.mapper.staff.StaffPlanMapper;
|
||||
import com.engine.organization.service.StaffService;
|
||||
import com.engine.organization.util.MenuBtn;
|
||||
import com.engine.organization.util.OrganizationAssert;
|
||||
import com.engine.organization.util.OrganizationFormItemUtil;
|
||||
import com.engine.organization.util.db.DBType;
|
||||
import com.engine.organization.util.db.MapperProxyFactory;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import weaver.conn.RecordSet;
|
||||
import weaver.general.StringUtil;
|
||||
import weaver.general.Util;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* @description: TODO
|
||||
* @author:dxfeng
|
||||
* @createTime: 2022/05/25
|
||||
* @version: 1.0
|
||||
*/
|
||||
public class StaffServiceImpl extends Service implements StaffService {
|
||||
private StaffMapper getStaffMapper() {
|
||||
return MapperProxyFactory.getProxy(StaffMapper.class);
|
||||
}
|
||||
|
||||
private StaffPlanMapper getStaffPlanMapper() {
|
||||
return MapperProxyFactory.getProxy(StaffPlanMapper.class);
|
||||
}
|
||||
|
||||
private CompMapper getCompMapper() {
|
||||
return MapperProxyFactory.getProxy(CompMapper.class);
|
||||
}
|
||||
|
||||
private DepartmentMapper getDepartmentMapper() {
|
||||
return MapperProxyFactory.getProxy(DepartmentMapper.class);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public Map<String, Object> listPage(StaffSearchParam params) {
|
||||
OrganizationWeaTable<StaffTableVO> table = new OrganizationWeaTable<>(user, StaffTableVO.class);
|
||||
StaffPO staffPO = StaffBO.convertParamToPO(params, (long) user.getUID());
|
||||
String sqlWhere = buildSqlWhere(staffPO);
|
||||
table.setSqlwhere(sqlWhere);
|
||||
WeaResultMsg result = new WeaResultMsg(false);
|
||||
result.putAll(table.makeDataResult());
|
||||
result.success();
|
||||
return result.getResultMap();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int saveStaff(StaffSearchParam param) {
|
||||
StaffPO staffPO = StaffBO.convertParamToPO(param, (long) user.getUID());
|
||||
return getStaffMapper().insertIgnoreNull(staffPO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int updateStaff(StaffSearchParam param) {
|
||||
StaffPO staffPlanPO = StaffBO.convertParamToPO(param, (long) user.getUID());
|
||||
return getStaffMapper().updateStaff(staffPlanPO);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public int deleteByIds(Collection<Long> ids) {
|
||||
OrganizationAssert.notEmpty(ids, "请选择要删除的数据");
|
||||
return getStaffMapper().deleteByIds(ids);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> getSearchCondition(Map<String, Object> params) {
|
||||
Map<String, Object> apiDatas = new HashMap<>();
|
||||
List<SearchConditionGroup> addGroups = new ArrayList<>();
|
||||
List<SearchConditionItem> conditionItems = new ArrayList<>();
|
||||
|
||||
// 方案
|
||||
SearchConditionItem planIdtItem = OrganizationFormItemUtil.browserItem(user, 2, 16, 2, false, "方案", "161", "planId", "staffPlanBrowser");
|
||||
// 分部
|
||||
SearchConditionItem compIdtItem = OrganizationFormItemUtil.browserItem(user, 2, 16, 2, false, "分部", "161", "compId", "compBrowser");
|
||||
// 部门
|
||||
SearchConditionItem deptIdtItem = OrganizationFormItemUtil.browserItem(user, 2, 16, 2, false, "部门", "161", "deptId", "deptBrowser");
|
||||
// 岗位
|
||||
SearchConditionItem jobIdtItem = OrganizationFormItemUtil.browserItem(user, 2, 16, 2, false, "岗位", "161", "jobId", "jobBrowser");
|
||||
// 编制数
|
||||
SearchConditionItem staffNumItem = OrganizationFormItemUtil.inputNumberItem(user, 2, 16, 2, "编制数", "staffNum");
|
||||
// 在编
|
||||
SearchConditionItem permanentNumItem = OrganizationFormItemUtil.inputNumberItem(user, 2, 16, 2, "在编", "permanentNum");
|
||||
// 冻结数
|
||||
SearchConditionItem freezeNumItem = OrganizationFormItemUtil.inputNumberItem(user, 2, 16, 2, "冻结数", "freezeNum");
|
||||
// 缺编状态
|
||||
List<SearchConditionOption> selectOptions = new ArrayList<>();
|
||||
SearchConditionOption lackOption = new SearchConditionOption("1", "缺编");
|
||||
SearchConditionOption fullOption = new SearchConditionOption("2", "满员");
|
||||
SearchConditionOption overOption = new SearchConditionOption("3", "超编");
|
||||
selectOptions.add(lackOption);
|
||||
selectOptions.add(fullOption);
|
||||
selectOptions.add(overOption);
|
||||
SearchConditionItem lackStatusItem = OrganizationFormItemUtil.selectItem(user, selectOptions, 2, 16, 6, false, "缺编状态", "lackStatus");
|
||||
// 编制描述
|
||||
SearchConditionItem staffDescItem = OrganizationFormItemUtil.inputItem(user, 2, 16, 2, 50, "编制描述", "staffDesc");
|
||||
// 说明
|
||||
SearchConditionItem descriptionItem = OrganizationFormItemUtil.inputItem(user, 2, 16, 2, 50, "说明", "description");
|
||||
conditionItems.add(planIdtItem);
|
||||
conditionItems.add(compIdtItem);
|
||||
conditionItems.add(deptIdtItem);
|
||||
conditionItems.add(jobIdtItem);
|
||||
conditionItems.add(staffNumItem);
|
||||
conditionItems.add(permanentNumItem);
|
||||
conditionItems.add(freezeNumItem);
|
||||
conditionItems.add(lackStatusItem);
|
||||
conditionItems.add(staffDescItem);
|
||||
conditionItems.add(descriptionItem);
|
||||
|
||||
addGroups.add(new SearchConditionGroup("高级搜索条件", true, conditionItems));
|
||||
apiDatas.put("conditions", addGroups);
|
||||
return apiDatas;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> getForm(Map<String, Object> params) {
|
||||
Map<String, Object> apiDatas = new HashMap<>();
|
||||
List<SearchConditionItem> selectItems = new ArrayList<>();
|
||||
List<SearchConditionGroup> addGroups = new ArrayList<>();
|
||||
// 方案
|
||||
SearchConditionItem planIdItem = OrganizationFormItemUtil.browserItem(user, 2, 16, 3, false, "方案", "161", "planId", "staffPlanBrowser");
|
||||
planIdItem.setRules("required|string");
|
||||
// 分部
|
||||
SearchConditionItem compIdItem = OrganizationFormItemUtil.browserItem(user, 2, 16, 3, false, "分部", "161", "compId", "compBrowser");
|
||||
compIdItem.setRules("required|string");
|
||||
// 部门
|
||||
SearchConditionItem deptIdItem = OrganizationFormItemUtil.browserItem(user, 2, 16, 3, false, "部门", "161", "deptId", "deptBrowser");
|
||||
deptIdItem.setRules("required|string");
|
||||
// 岗位
|
||||
SearchConditionItem jobIdItem = OrganizationFormItemUtil.browserItem(user, 2, 16, 3, false, "岗位", "161", "jobId", "jobBrowser");
|
||||
jobIdItem.setRules("required|string");
|
||||
// 编制数
|
||||
SearchConditionItem staffNumItem = OrganizationFormItemUtil.inputNumberItem(user, 2, 16, 3, "编制数", "staffNum");
|
||||
staffNumItem.setRules("required|string");
|
||||
// 控制策略
|
||||
List<SearchConditionOption> selectOptions = new ArrayList<>();
|
||||
SearchConditionOption option1 = new SearchConditionOption("1", "弱控");
|
||||
SearchConditionOption option2 = new SearchConditionOption("2", "强控");
|
||||
SearchConditionOption option3 = new SearchConditionOption("3", "不控");
|
||||
selectOptions.add(option1);
|
||||
selectOptions.add(option2);
|
||||
selectOptions.add(option3);
|
||||
SearchConditionItem controlPolicyItem = OrganizationFormItemUtil.selectItem(user, selectOptions, 2, 16, 6, false, "控制策略", "controlPolicy");
|
||||
controlPolicyItem.setViewAttr(3);
|
||||
controlPolicyItem.setRules("required|string");
|
||||
|
||||
// 编辑状态下赋值操作
|
||||
String id = Util.null2String(params.get("id"));
|
||||
if (!StringUtil.isEmpty(id)) {
|
||||
StaffPO staffPO = getStaffMapper().getStaffByID(Integer.parseInt(id));
|
||||
OrganizationAssert.notNull(staffPO, "选择的数据不存在,或数据已删除");
|
||||
|
||||
BrowserBean planIdItemBean = planIdItem.getBrowserConditionParam();
|
||||
List<Map<String, Object>> maps = getStaffPlanMapper().listPlansByIds(QueryParam.builder().ids(staffPO.getPlanId().toString()).build().getIds());
|
||||
planIdItemBean.setReplaceDatas(maps);
|
||||
planIdItem.setBrowserConditionParam(planIdItemBean);
|
||||
|
||||
|
||||
}
|
||||
|
||||
addGroups.add(new SearchConditionGroup("基本信息", true, selectItems));
|
||||
apiDatas.put("condition", addGroups);
|
||||
return apiDatas;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> getHasRight() {
|
||||
return MenuBtn.getCommonBtnDatas();
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询条件
|
||||
*
|
||||
* @param staffPO
|
||||
* @return
|
||||
*/
|
||||
private String buildSqlWhere(StaffPO staffPO) {
|
||||
DBType dbType = DBType.get(new RecordSet().getDBType());
|
||||
String sqlWhere = " where t.delete_type ='0' ";
|
||||
|
||||
Long planId = staffPO.getPlanId();
|
||||
if (null != planId) {
|
||||
sqlWhere += " AND t.plan_id = '" + planId + "'";
|
||||
}
|
||||
Long compId = staffPO.getCompId();
|
||||
if (null != compId) {
|
||||
sqlWhere += " AND t.comp_id = '" + compId + "'";
|
||||
}
|
||||
Long deptId = staffPO.getDeptId();
|
||||
if (null != deptId) {
|
||||
sqlWhere += " AND t.dept_id = '" + deptId + "'";
|
||||
}
|
||||
Long jobId = staffPO.getJobId();
|
||||
if (null != jobId) {
|
||||
sqlWhere += " AND t.job_id = '" + jobId + "'";
|
||||
}
|
||||
Integer staffNum = staffPO.getStaffNum();
|
||||
if (null != staffNum) {
|
||||
sqlWhere += " AND t.staff_num = '" + staffNum + "'";
|
||||
}
|
||||
Integer controlPolicy = staffPO.getControlPolicy();
|
||||
if (null != controlPolicy) {
|
||||
sqlWhere += " AND t.control_policy = '" + controlPolicy + "'";
|
||||
}
|
||||
Integer permanentNum = staffPO.getPermanentNum();
|
||||
if (null != permanentNum) {
|
||||
sqlWhere += " AND t.permanent_num = '" + permanentNum + "'";
|
||||
}
|
||||
Integer freezeNum = staffPO.getFreezeNum();
|
||||
if (null != freezeNum) {
|
||||
sqlWhere += " AND t.freeze_num = '" + freezeNum + "'";
|
||||
}
|
||||
Integer lackStatus = staffPO.getLackStatus();
|
||||
if (null != lackStatus) {
|
||||
sqlWhere += " AND t.lack_status = '" + lackStatus + "'";
|
||||
}
|
||||
String staffDesc = staffPO.getStaffDesc();
|
||||
if (StringUtils.isNotBlank(staffDesc)) {
|
||||
sqlWhere += " AND t.staff_desc " + dbType.like(staffDesc);
|
||||
}
|
||||
String description = staffPO.getDescription();
|
||||
if (StringUtils.isNotBlank(description)) {
|
||||
sqlWhere += " AND t.description " + dbType.like(description);
|
||||
}
|
||||
|
||||
return sqlWhere;
|
||||
}
|
||||
}
|
@ -0,0 +1,25 @@
|
||||
package com.engine.organization.transmethod;
|
||||
|
||||
import com.engine.organization.entity.QueryParam;
|
||||
import com.engine.organization.mapper.comp.CompMapper;
|
||||
import com.engine.organization.util.db.MapperProxyFactory;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @description: TODO
|
||||
* @author:dxfeng
|
||||
* @createTime: 2022/05/25
|
||||
* @version: 1.0
|
||||
*/
|
||||
public class CompTransMethod {
|
||||
|
||||
public static String getSpanById(String planId) {
|
||||
CompMapper compMapper = MapperProxyFactory.getProxy(CompMapper.class);
|
||||
List<Map<String, Object>> maps = compMapper.listCompsByIds(QueryParam.builder().ids(planId).build().getIds());
|
||||
String names = maps.stream().map(item -> (String) item.get("name")).collect(Collectors.joining(","));
|
||||
return names;
|
||||
}
|
||||
}
|
@ -0,0 +1,25 @@
|
||||
package com.engine.organization.transmethod;
|
||||
|
||||
import com.engine.organization.entity.QueryParam;
|
||||
import com.engine.organization.mapper.department.DepartmentMapper;
|
||||
import com.engine.organization.util.db.MapperProxyFactory;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @description: TODO
|
||||
* @author:dxfeng
|
||||
* @createTime: 2022/05/25
|
||||
* @version: 1.0
|
||||
*/
|
||||
public class DepartmentTransMethod {
|
||||
|
||||
public static String getSpanById(String planId) {
|
||||
DepartmentMapper departmentMapper = MapperProxyFactory.getProxy(DepartmentMapper.class);
|
||||
List<Map<String, Object>> maps = departmentMapper.listDeptsByIds(QueryParam.builder().ids(planId).build().getIds());
|
||||
String names = maps.stream().map(item -> (String) item.get("name")).collect(Collectors.joining(","));
|
||||
return names;
|
||||
}
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
package com.engine.organization.transmethod;
|
||||
|
||||
/**
|
||||
* @description: TODO
|
||||
* @author:dxfeng
|
||||
* @createTime: 2022/05/25
|
||||
* @version: 1.0
|
||||
*/
|
||||
public class JobTransMethod {
|
||||
|
||||
public static String getSpanById(String planId) {
|
||||
//JobMapper compMapper = MapperProxyFactory.getProxy(CompMapper.class);
|
||||
//List<Map<String, Object>> maps = compMapper.listCompsByIds(QueryParam.builder().ids(planId).build().getIds());
|
||||
//String names = maps.stream().map(item -> (String) item.get("name")).collect(Collectors.joining(","));
|
||||
//return names;
|
||||
return "";
|
||||
}
|
||||
}
|
@ -0,0 +1,25 @@
|
||||
package com.engine.organization.transmethod;
|
||||
|
||||
import com.engine.organization.entity.QueryParam;
|
||||
import com.engine.organization.mapper.staff.StaffPlanMapper;
|
||||
import com.engine.organization.util.db.MapperProxyFactory;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @description: TODO
|
||||
* @author:dxfeng
|
||||
* @createTime: 2022/05/25
|
||||
* @version: 1.0
|
||||
*/
|
||||
public class StaffPlanTransMethod {
|
||||
|
||||
public static String getSpanById(String planId) {
|
||||
StaffPlanMapper planMapper = MapperProxyFactory.getProxy(StaffPlanMapper.class);
|
||||
List<Map<String, Object>> maps = planMapper.listPlansByIds(QueryParam.builder().ids(planId).build().getIds());
|
||||
String names = maps.stream().map(item -> (String) item.get("name")).collect(Collectors.joining(","));
|
||||
return names;
|
||||
}
|
||||
}
|
@ -0,0 +1,93 @@
|
||||
package com.engine.organization.wrapper;
|
||||
|
||||
import com.engine.common.util.ServiceUtil;
|
||||
import com.engine.core.impl.Service;
|
||||
import com.engine.organization.entity.staff.param.StaffSearchParam;
|
||||
import com.engine.organization.service.StaffService;
|
||||
import com.engine.organization.service.impl.StaffServiceImpl;
|
||||
import weaver.hrm.User;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @description: TODO
|
||||
* @author:dxfeng
|
||||
* @createTime: 2022/05/25
|
||||
* @version: 1.0
|
||||
*/
|
||||
public class StaffWrapper extends Service {
|
||||
private StaffService getStaffService(User user) {
|
||||
return ServiceUtil.getService(StaffServiceImpl.class, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 编制列表
|
||||
*
|
||||
* @param params
|
||||
* @return
|
||||
*/
|
||||
public Map<String, Object> listPage(StaffSearchParam params) {
|
||||
return getStaffService(user).listPage(params);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增编制
|
||||
*
|
||||
* @param param
|
||||
* @return
|
||||
*/
|
||||
public int saveStaff(StaffSearchParam param) {
|
||||
return getStaffService(user).saveStaff(param);
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新编制
|
||||
*
|
||||
* @param param
|
||||
* @return
|
||||
*/
|
||||
public int updateStaff(StaffSearchParam param) {
|
||||
return getStaffService(user).updateStaff(param);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 根据ID批量删除
|
||||
*
|
||||
* @param ids
|
||||
*/
|
||||
public int deleteByIds(Collection<Long> ids) {
|
||||
return getStaffService(user).deleteByIds(ids);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取搜索条件
|
||||
*
|
||||
* @param params
|
||||
* @return
|
||||
*/
|
||||
public Map<String, Object> getSearchCondition(Map<String, Object> params) {
|
||||
return getStaffService(user).getSearchCondition(params);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 获取新增表单
|
||||
*
|
||||
* @param params
|
||||
* @return
|
||||
*/
|
||||
public Map<String, Object> getForm(Map<String, Object> params) {
|
||||
return getStaffService(user).getForm(params);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取列表页面按钮信息
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public Map<String, Object> getHasRight() {
|
||||
return getStaffService(user).getHasRight();
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue