Explorar o código

职位体系管理

lizhenhao %!s(int64=2) %!d(string=hai) anos
pai
achega
5ff17b2dc7

+ 68 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/jobPosion/domain/JobPosition.java

@@ -0,0 +1,68 @@
+package com.jeeplus.test.jobPosion.domain;
+
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.jeeplus.core.domain.BaseEntity;
+import com.jeeplus.core.query.Query;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * job_position
+ * @author 
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("job_position")
+public class JobPosition extends BaseEntity {
+
+    /**
+     * 备注信息
+     */
+    private String remarks;
+
+    /**
+     * 职位名称
+     */
+    @Query(tableColumn = "jp.name")
+    private String name;
+
+    /**
+     * 职位编码
+     */
+    private String no;
+
+    /**
+     * 所属部门
+     */
+    private String officeId;
+
+    /**
+     * 编制人数
+     */
+    private Integer staffNum;
+
+    /**
+     * 对应职务
+     */
+    private String positionId;
+
+    /**
+     * 任职资格
+     */
+    private String qualification;
+
+    /**
+     * 责任描述
+     */
+    private String obligation;
+
+    /**
+     * 启用停用 1启用 2停用
+     */
+    @Query(tableColumn = "jp.use_flag")
+    private String useFlag;
+
+    private static final long serialVersionUID = 1L;
+}

+ 42 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/jobPosion/domain/Position.java

@@ -0,0 +1,42 @@
+package com.jeeplus.test.jobPosion.domain;
+
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.jeeplus.core.domain.BaseEntity;
+import com.jeeplus.core.query.Query;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * position
+ * @author 
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("position")
+public class Position extends BaseEntity {
+
+    /**
+     * 备注信息
+     */
+    private String remarks;
+
+    /**
+     * 职务名称
+     */
+    @Query
+    private String name;
+
+    /**
+     * 描述
+     */
+    private String description;
+
+    /**
+     * 职务类型
+     */
+    private String categoryId;
+
+    private static final long serialVersionUID = 1L;
+}

+ 32 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/jobPosion/domain/PositionCategory.java

@@ -0,0 +1,32 @@
+package com.jeeplus.test.jobPosion.domain;
+
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.jeeplus.core.domain.BaseEntity;
+import com.jeeplus.core.query.Query;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * position_category
+ * @author 
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("position_category")
+public class PositionCategory extends BaseEntity {
+
+    /**
+     * 备注信息
+     */
+    private String remarks;
+
+    /**
+     * 职务分类名称
+     */
+    @Query
+    private String name;
+
+    private static final long serialVersionUID = 1L;
+}

+ 23 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/jobPosion/mapper/JobPositionMapper.java

@@ -0,0 +1,23 @@
+package com.jeeplus.test.jobPosion.mapper;
+
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Constants;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.jeeplus.test.jobPosion.domain.JobPosition;
+import com.jeeplus.test.jobPosion.domain.Position;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+@Mapper
+public interface JobPositionMapper extends BaseMapper<JobPosition> {
+
+    public IPage<JobPosition> findList(Page<JobPosition> page, @Param(Constants.WRAPPER) QueryWrapper<JobPosition> queryWrapper);
+
+    public void updateUseFlagById(@Param("ids") List<String> ids, @Param("useFlag") String useFlag);
+
+}

+ 10 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/jobPosion/mapper/PositionCategoryMapper.java

@@ -0,0 +1,10 @@
+package com.jeeplus.test.jobPosion.mapper;
+
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jeeplus.test.jobPosion.domain.PositionCategory;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface PositionCategoryMapper extends BaseMapper<PositionCategory> {
+}

+ 17 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/jobPosion/mapper/PositionMapper.java

@@ -0,0 +1,17 @@
+package com.jeeplus.test.jobPosion.mapper;
+
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Constants;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.jeeplus.test.jobPosion.domain.Position;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+@Mapper
+public interface PositionMapper extends BaseMapper<Position> {
+
+    public IPage<Position> findList(Page<Position> page,@Param(Constants.WRAPPER) QueryWrapper<Position> queryWrapper);
+}

+ 76 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/jobPosion/mapper/xml/JobPositionMapper.xml

@@ -0,0 +1,76 @@
+<?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.jeeplus.test.jobPosion.mapper.JobPositionMapper">
+  <resultMap id="BaseResultMap" type="com.jeeplus.test.jobPosion.domain.JobPosition">
+    <id column="id" jdbcType="VARCHAR" property="id" />
+    <result column="create_by" jdbcType="VARCHAR" property="createBy" />
+    <result column="create_date" jdbcType="TIMESTAMP" property="createDate" />
+    <result column="update_by" jdbcType="VARCHAR" property="updateBy" />
+    <result column="update_date" jdbcType="TIMESTAMP" property="updateDate" />
+    <result column="remarks" jdbcType="VARCHAR" property="remarks" />
+    <result column="del_flag" jdbcType="INTEGER" property="delFlag" />
+    <result column="name" jdbcType="VARCHAR" property="name" />
+    <result column="no" jdbcType="VARCHAR" property="no" />
+    <result column="office_id" jdbcType="VARCHAR" property="officeId" />
+    <result column="staff_num" jdbcType="INTEGER" property="staffNum" />
+    <result column="position_id" jdbcType="VARCHAR" property="positionId" />
+    <result column="qualification" jdbcType="VARCHAR" property="qualification" />
+    <result column="obligation" jdbcType="VARCHAR" property="obligation" />
+    <result column="use_flag" jdbcType="VARCHAR" property="useFlag" />
+  </resultMap>
+  <sql id="Base_Column_List">
+    jp.id,
+    jp.create_by,
+    jp.create_date,
+    jp.update_by,
+    jp.update_date,
+    jp.remarks,
+    jp.del_flag,
+    jp.`name`,
+    jp.`no`,
+    jp.office_id,
+    jp.staff_num,
+    jp.position_id,
+    jp.qualification,
+    jp.obligation,
+    jp.use_flag
+  </sql>
+
+  <sql id="Sql_List">
+    jp.id,
+    jp.create_by,
+    jp.create_date,
+    jp.update_by,
+    jp.update_date,
+    jp.remarks,
+    jp.del_flag,
+    jp.`name`,
+    jp.`no`,
+    jp.staff_num,
+    jp.qualification,
+    jp.obligation,
+    jp.use_flag
+  </sql>
+
+
+  <select id="findList" resultType="com.jeeplus.test.jobPosion.domain.JobPosition">
+    select
+    <include refid="Sql_List"></include>,
+    so.name as office_id,
+    p.name as position_id
+    from job_position jp
+    left join sys_office so on so.id = jp.office_id
+    left join `position` p on p.id = jp.position_id
+    ${ew.customSqlSegment}
+    order by jp.create_date desc
+  </select>
+
+  <update id="updateUseFlagById">
+    <foreach collection="ids" item="item" separator=";">
+      update job_position jp
+      set jp.use_flag = #{useFlag}
+      where jp.id = #{item}
+    </foreach>
+  </update>
+
+</mapper>

+ 25 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/jobPosion/mapper/xml/PositionCategoryMapper.xml

@@ -0,0 +1,25 @@
+<?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.jeeplus.test.jobPosion.mapper.PositionCategoryMapper">
+  <resultMap id="BaseResultMap" type="com.jeeplus.test.jobPosion.domain.PositionCategory">
+    <id column="id" jdbcType="VARCHAR" property="id" />
+    <result column="create_by" jdbcType="VARCHAR" property="createBy" />
+    <result column="create_date" jdbcType="TIMESTAMP" property="createDate" />
+    <result column="update_by" jdbcType="VARCHAR" property="updateBy" />
+    <result column="update_date" jdbcType="TIMESTAMP" property="updateDate" />
+    <result column="remarks" jdbcType="VARCHAR" property="remarks" />
+    <result column="del_flag" jdbcType="INTEGER" property="delFlag" />
+    <result column="name" jdbcType="VARCHAR" property="name" />
+  </resultMap>
+  <sql id="Base_Column_List">
+    id,
+    create_by,
+    create_date,
+    update_by,
+    update_date,
+    remarks,
+    del_flag,
+    `name`
+  </sql>
+
+</mapper>

+ 50 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/jobPosion/mapper/xml/PositionMapper.xml

@@ -0,0 +1,50 @@
+<?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.jeeplus.test.jobPosion.mapper.PositionMapper">
+  <resultMap id="BaseResultMap" type="com.jeeplus.test.jobPosion.domain.Position">
+    <id column="id" jdbcType="VARCHAR" property="id" />
+    <result column="create_by" jdbcType="VARCHAR" property="createBy" />
+    <result column="create_date" jdbcType="TIMESTAMP" property="createDate" />
+    <result column="update_by" jdbcType="VARCHAR" property="updateBy" />
+    <result column="update_date" jdbcType="TIMESTAMP" property="updateDate" />
+    <result column="remarks" jdbcType="VARCHAR" property="remarks" />
+    <result column="del_flag" jdbcType="INTEGER" property="delFlag" />
+    <result column="name" jdbcType="VARCHAR" property="name" />
+    <result column="description" jdbcType="VARCHAR" property="description" />
+    <result column="category_id" jdbcType="VARCHAR" property="categoryId" />
+  </resultMap>
+  <sql id="Base_Column_List">
+    p.id,
+    p.create_by,
+    p.create_date,
+    p.update_by,
+    p.update_date,
+    p.remarks,
+    p.del_flag,
+    p.`name`,
+    p.description,
+    p.category_id
+  </sql>
+
+  <sql id="Sql_List">
+    p.id,
+    p.create_by,
+    p.create_date,
+    p.update_by,
+    p.update_date,
+    p.remarks,
+    p.del_flag,
+    p.`name`,
+    p.description
+  </sql>
+
+  <select id="findList" resultType="com.jeeplus.test.jobPosion.domain.Position">
+    select
+    <include refid="Sql_List"></include>,
+    pc.name as category_id
+    from `position` p
+    left join position_category pc on p.category_id = pc.id
+    ${ew.customSqlSegment}
+    order by p.create_date desc
+  </select>
+</mapper>