Ver Fonte

add项目排序

seyason há 2 anos atrás
pai
commit
ce19970204

+ 2 - 2
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/ProjectController.java

@@ -63,8 +63,8 @@ public class ProjectController {
     public HttpRespMsg getProjectPage(@RequestParam Integer pageIndex, @RequestParam Integer pageSize, String keyword,
                                       @RequestParam(required = false, defaultValue = "1") Integer searchField,
                                       Integer projectId, //可以直接传projectId来进行匹配
-                                      Integer status, Integer category,Integer projectMainId) {
-        return projectService.getProjectPage(pageIndex, pageSize, keyword,searchField, status, category, projectId,projectMainId, request);
+                                      Integer status, Integer category,Integer projectMainId, String sortProp, Integer sortOrder) {
+        return projectService.getProjectPage(pageIndex, pageSize, keyword,searchField, status, category, projectId,projectMainId, sortProp, sortOrder, request);
     }
 
     @RequestMapping("/saveBatchAccoDegrees")

+ 23 - 16
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/ReportController.java

@@ -905,17 +905,21 @@ public class ReportController {
                 //时间范围填报, 计算一下时长
                 try {
                     report.setStartTime(startTime).setEndTime(endTime);
-                    int excludeTime = 0;
-                    if (excludeTimeList.size() > 0) {
-                        for (TimeAutoExclude exclude : excludeTimeList) {
-                            if (exclude.getStartTime().compareTo(startTime) >= 0 && exclude.getEndTime().compareTo(endTime) <= 0) {
-                                //落在休息时间范围内,需要计算去掉的时间
-                                excludeTime += sdf.parse(exclude.getEndTime()).getTime() - sdf.parse(exclude.getStartTime()).getTime();
+                    long time = sdf.parse(report.getEndTime()).getTime() - sdf.parse(report.getStartTime()).getTime();
+                    //是否要扣除休息时间,如果是加班,则不需要扣除
+                    if (report.getIsOvertime() == 0) {
+                        int excludeTime = 0;
+                        if (excludeTimeList.size() > 0) {
+                            for (TimeAutoExclude exclude : excludeTimeList) {
+                                if (exclude.getStartTime().compareTo(startTime) >= 0 && exclude.getEndTime().compareTo(endTime) <= 0) {
+                                    //落在休息时间范围内,需要计算去掉的时间
+                                    excludeTime += sdf.parse(exclude.getEndTime()).getTime() - sdf.parse(exclude.getStartTime()).getTime();
+                                }
                             }
                         }
+                        time -= excludeTime;//去掉休息时间
                     }
-                    long time = sdf.parse(report.getEndTime()).getTime() - sdf.parse(report.getStartTime()).getTime();
-                    time -= excludeTime;//去掉休息时间
+
                     int minutes = (int)time/1000/60;
                     double hours = minutes*1.0f/60;
                     report.setWorkingTime(hours);
@@ -933,18 +937,21 @@ public class ReportController {
                 for (int t=0;t<array.size(); t++) {
                     JSONObject jsonObject = array.getJSONObject(t);
                     WorktimeItem item = JSONObject.toJavaObject(jsonObject, WorktimeItem.class);
-                    int excludeTime = 0;
-                    if (excludeTimeList.size() > 0) {
-                        for (TimeAutoExclude exclude : excludeTimeList) {
-                            if (exclude.getStartTime().compareTo(item.getStartTime()) >= 0 && exclude.getEndTime().compareTo(item.getEndTime()) <= 0) {
-                                //落在休息时间范围内,需要计算去掉的时间
-                                excludeTime += sdf.parse(exclude.getEndTime()).getTime() - sdf.parse(exclude.getStartTime()).getTime();
+                    long time = sdf.parse(item.getEndTime()).getTime() - sdf.parse(item.getStartTime()).getTime();
+                    //是否要扣除休息时间,如果是加班,则不需要扣除
+                    if (report.getIsOvertime() == 0) {
+                        int excludeTime = 0;
+                        if (excludeTimeList.size() > 0) {
+                            for (TimeAutoExclude exclude : excludeTimeList) {
+                                if (exclude.getStartTime().compareTo(item.getStartTime()) >= 0 && exclude.getEndTime().compareTo(item.getEndTime()) <= 0) {
+                                    //落在休息时间范围内,需要计算去掉的时间
+                                    excludeTime += sdf.parse(exclude.getEndTime()).getTime() - sdf.parse(exclude.getStartTime()).getTime();
+                                }
                             }
                         }
+                        time -= excludeTime;
                     }
 
-                    long time = sdf.parse(item.getEndTime()).getTime() - sdf.parse(item.getStartTime()).getTime();
-                    time -= excludeTime;
                     int minutes = (int)time/1000/60;
                     double hours = minutes*1.0f/60;
                     item.setTime(hours);

+ 106 - 16
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/WeiXinCorpController.java

@@ -36,7 +36,7 @@ public class WeiXinCorpController {
     public static final String TRANSMIT_SERVER_GET_DEPTDETAIL = "http://47.101.180.183:10010/wxcorp/getCorpDeptDetail?accessToken=ACCESS_TOKEN&deptId=DEPTID";
     public static final String TRANSMIT_SERVER_GET_DEPTMEMBDETAIL = "http://47.101.180.183:10010/wxcorp/getDeptUserDetail?accessToken=ACCESS_TOKEN&deptId=DEPTID";
     public static final String TRANSMIT_SERVER_GET_CONTACT_TOKEN = "http://47.101.180.183:10010/wxcorp/getCorpConcactAccessToken?corpid=CORPID&contactSecret=CONTACT_SECRET";
-    public static final String TRANSMIT_SERVER_GET_USERDETAIL = "http://47.101.180.183:10010/wxcorp/getUserInfoFromTranServer?accessToken=ACCESS_TOKEN&userId=USERID";
+    public static final String TRANSMIT_SERVER_GET_USERDETAIL = "http://47.101.180.183:10010/wxcorp/getUserInfoFromTranServer?accessToken=ACCESS_TOKEN&userId=USERID&deptId=DEPTID";
 
     public static final String POST_CONVERT_USERID = "https://qyapi.weixin.qq.com/cgi-bin/batch/userid_to_openuserid?access_token=ACCESS_TOKEN";
 
@@ -372,12 +372,14 @@ public class WeiXinCorpController {
                         SysRole defaultRole = sysRoleMapper.selectOne(new QueryWrapper<SysRole>().eq("company_id", companyId).eq("is_default", 1));
                         //通过通讯录secret获取到员工姓名
                         String remoteCorpConcactAccessToken = getRemoteCorpConcactAccessToken(wxCorpInfo);
-                        JSONObject userObj = remoteGetUserDetail(remoteCorpConcactAccessToken, corpWxUserId);
+                        org.json.JSONArray departmentArray = jsonObject.getJSONArray("department");
+                        Integer curUserWXDeptid = departmentArray.getInt(departmentArray.length() - 1);
+                        JSONObject userObj = remoteGetUserDetail(remoteCorpConcactAccessToken, corpWxUserId, curUserWXDeptid);
                         if (userObj.getInteger("errcode") == 0) {
                             //成功获取到通讯录的个人详情
                             Long id = SnowFlake.nextId();
                             JSONArray department = userObj.getJSONArray("department");
-                            Integer curUserWXDeptid = department.getInteger(department.size() - 1);
+                            curUserWXDeptid = getMaxDeptIdFromArray(department);
                             Department sysDept = departmentMapper.selectOne(new QueryWrapper<Department>().eq("company_id", companyId).eq("corpwx_deptid", curUserWXDeptid));
 
                             User user = new User()
@@ -410,11 +412,25 @@ public class WeiXinCorpController {
                     //只有授权通讯录同步的,才有机会更新部门或者上级
                     if (!StringUtils.isEmpty(wxCorpInfo.getContactSecret())) {
                         String remoteCorpConcactAccessToken = getRemoteCorpConcactAccessToken(wxCorpInfo);
-                        JSONObject userObj = remoteGetUserDetail(remoteCorpConcactAccessToken, corpWxUserId);
+                        Integer curUserWXDeptid = 0;
+                        if (jsonObject.has("Department")) {
+                            Object departmentJ = jsonObject.get("Department");
+                            if (departmentJ instanceof String || departmentJ instanceof Integer) {
+                                curUserWXDeptid = jsonObject.getInt("Department");
+                            } else if (departmentJ instanceof org.json.JSONArray) {
+                                org.json.JSONArray departmentArray = jsonObject.getJSONArray("Department");
+                                curUserWXDeptid = getMaxDeptIdFromArray(departmentArray);
+                            }
+                        } else {
+                            //取主部门
+                            curUserWXDeptid = jsonObject.getInt("MainDepartment");
+                        }
+
+                        JSONObject userObj = remoteGetUserDetail(remoteCorpConcactAccessToken, corpWxUserId, curUserWXDeptid);
                         if (userObj.getInteger("errcode") == 0) {
                             //成功获取到通讯录的个人详情
                             JSONArray department = userObj.getJSONArray("department");
-                            Integer curUserWXDeptid = department.getInteger(department.size() - 1);
+                            curUserWXDeptid = getMaxDeptIdFromArray(department);
                             Department sysDept = departmentMapper.selectOne(new QueryWrapper<Department>().eq("company_id", companyId).eq("corpwx_deptid", curUserWXDeptid));
 
                             User user = userMapper.selectOne(new QueryWrapper<User>().eq("company_id", companyId).eq("corpwx_userid", corpWxUserId));
@@ -444,7 +460,30 @@ public class WeiXinCorpController {
                             }
                         }
                     }
-
+                } else if ("create_party".equals(changeType)) {
+                    //创建部门,调用中转服务接口获取部门详情
+                    String corpId = jsonObject.getString("AuthCorpId");
+                    Integer deptId = jsonObject.getInt("Id");
+                    Integer parentDeptId = jsonObject.getInt("ParentId");
+                    WxCorpInfo wxCorpInfo = wxCorpInfoMapper.selectById(corpId);
+                    if (wxCorpInfo != null && !StringUtils.isEmpty(wxCorpInfo.getContactSecret())) {
+                        String remoteCorpConcactAccessToken = getRemoteCorpConcactAccessToken(wxCorpInfo);
+                        Integer companyId = wxCorpInfo.getCompanyId();
+                        Department department = new Department();
+                        department.setCompanyId(companyId);
+                        department.setCorpwxDeptid(deptId);
+                        JSONObject deptJson = remoteGetDeptDetail(remoteCorpConcactAccessToken, deptId);
+                        if (deptJson != null) {
+                            //成功获取到了
+                            String name = deptJson.getString("name");
+                            department.setDepartmentName(name);
+                            Department parentDept = department.selectOne(new QueryWrapper<Department>().eq("company_id", companyId).eq("corpwx_deptid", parentDeptId));
+                            if (parentDept != null) {
+                                department.setSuperiorId(parentDeptId);
+                            }
+                            departmentMapper.insert(department);
+                        }
+                    }
                 }
             }
         } catch (Exception e) {
@@ -455,6 +494,24 @@ public class WeiXinCorpController {
         return "success";
     }
 
+    private Integer getMaxDeptIdFromArray(JSONArray department) {
+        int deptId=0;
+        for (int i=0;i<department.size(); i++) {
+            if (deptId < department.getInteger(i)) {
+                deptId = department.getInteger(i);
+            }
+        }
+        return deptId;
+    }
+    private Integer getMaxDeptIdFromArray(org.json.JSONArray department) {
+        int deptId=0;
+        for (int i=0;i<department.length(); i++) {
+            if (deptId < department.getInt(i)) {
+                deptId = department.getInt(i);
+            }
+        }
+        return deptId;
+    }
 
 
     //"企业授权微信应用", notes = "企业授权微信应用")
@@ -1295,7 +1352,8 @@ public class WeiXinCorpController {
                 }
             }
             //检查用户是否已经存在
-            User oldUser = userMapper.selectOne(new QueryWrapper<User>().select("id, name").eq("corpwx_userid", curUserid).eq("company_id", companyId));
+            User oldUser = userMapper.selectOne(new QueryWrapper<User>().select("id, name, role_name").eq("corpwx_userid", curUserid).eq("company_id", companyId));
+
             if (oldUser == null) {
                 //先检查姓名+手机号是否存在,如果存在,则更新corpwxId
                 User sameNameUser = userMapper.selectOne(new QueryWrapper<User>().eq("name", user.getName()).eq("phone", user.getPhone()).eq("company_id", companyId).isNull("corpwx_userid").last("limit 1"));
@@ -1307,12 +1365,14 @@ public class WeiXinCorpController {
                 } else {
                     userMapper.insert(user);
                 }
-            } else if (oldUser.getRoleName().equals("超级管理员") && !oldUser.getName().equals(user.getName())){
-                //姓名不一致,需要更新
-                System.out.println("===更新超管姓名==="+user.getName());
-                user.setId(oldUser.getId());
-                oldUser.setName(user.getName());
-                userMapper.updateById(oldUser);
+            } else {
+                if (oldUser.getRoleName().equals("超级管理员") && !oldUser.getName().equals(user.getName())) {
+                    //姓名不一致,需要更新
+                    System.out.println("===更新超管姓名==="+user.getName());
+                    user.setId(oldUser.getId());
+                    oldUser.setName(user.getName());
+                    userMapper.updateById(oldUser);
+                }
             }
         }
 
@@ -1733,6 +1793,20 @@ public class WeiXinCorpController {
         return new HttpRespMsg();
     }
 
+    private JSONObject remoteGetDeptDetail(String accessToken, int deptId) {
+        String url = TRANSMIT_SERVER_GET_DEPTDETAIL.replace("ACCESS_TOKEN", accessToken).replace("DEPTID", ""+deptId);
+        String result = restTemplate.getForObject(url, String.class);
+        System.out.println("部门返回数据:"+result);
+        JSONObject resultObj = JSONObject.parseObject(JSONObject.parseObject(result).getString("data"));
+        if (resultObj.getInteger("errcode") == 0) {
+            JSONObject serverDept = resultObj.getJSONObject("department");
+            return serverDept;
+        } else {
+            System.err.println("同步获取部门详情报错:"+resultObj.toString());
+            return null;
+        }
+    }
+
     private JSONArray remoteGetDeptUserDetail(String accessToken, int deptId) {
         String url = TRANSMIT_SERVER_GET_DEPTMEMBDETAIL.replace("ACCESS_TOKEN", accessToken).replace("DEPTID", ""+deptId);
         String result = restTemplate.getForObject(url, String.class);
@@ -1741,8 +1815,9 @@ public class WeiXinCorpController {
         return obj;
     }
 
-    private JSONObject remoteGetUserDetail(String accessToken, String userId) {
-        String url = TRANSMIT_SERVER_GET_USERDETAIL.replace("ACCESS_TOKEN", accessToken).replace("USERID", userId);
+    private JSONObject remoteGetUserDetail(String accessToken, String userId, Integer deptId) {
+        String url = TRANSMIT_SERVER_GET_USERDETAIL.replace("ACCESS_TOKEN", accessToken).replace("USERID", userId)
+                        .replace("DEPTID", deptId+"");
         System.out.println("请求URL="+url);
         String result = restTemplate.getForObject(url, String.class);
         System.out.println("远程人员详情:"+result);
@@ -1821,7 +1896,22 @@ public class WeiXinCorpController {
     }
     //用于从中转服务器获取企业通讯录的单个人员详情
     @RequestMapping("/getUserInfoFromTranServer")
-    public HttpRespMsg getUserInfoFromTranServer(String accessToken, String userId) {
+    public HttpRespMsg getUserInfoFromTranServer(String accessToken, String userId, Integer deptId) {
+        String sampleOpenUserId = "woy9TkCAAAaAxThm4apuAlWID8HIxh_g";
+        if (userId.length() == sampleOpenUserId.length() && userId.startsWith("woy9Tk")) {
+            //用OpenUserId作userId的情况,需要获取部门下的全部人员进行转化获取
+            System.out.println("人员详情===去获取部门人员详情了===");
+            JSONArray transDeptUserInfo = getTransDeptUserInfo(accessToken, deptId);
+            for (int i=0;i<transDeptUserInfo.size(); i++) {
+                JSONObject userObj = transDeptUserInfo.getJSONObject(i);
+                if (userObj.getString("open_userid").equals(userId)) {
+                    HttpRespMsg msg = new HttpRespMsg();
+                    System.out.println("找到了=="+userObj);
+                    msg.data = userObj.toString();
+                    return msg;
+                }
+            }
+        }
         String url = GET_USER_INFO_URL.replace("ACCESS_TOKEN", accessToken).replace("USERID", userId);
         String result = restTemplate.getForObject(url, String.class);
         JSONObject obj = JSONObject.parseObject(result);

+ 1 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/ProjectService.java

@@ -20,7 +20,7 @@ public interface ProjectService extends IService<Project> {
     HttpRespMsg getProjectList(Integer forReport, HttpServletRequest request);
 
     HttpRespMsg getProjectPage(Integer pageIndex, Integer pageSize, String keyword, Integer searchField,
-                               Integer status, Integer category, Integer projectId,Integer projectMainId, HttpServletRequest request);
+                               Integer status, Integer category, Integer projectId,Integer projectMainId, String sortProp, Integer sortOrder, HttpServletRequest request);
 
     HttpRespMsg editProject(Integer id, String name, String code, String[] userIds, String inchargerId,
                             Integer isPublic,

+ 12 - 2
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ProjectServiceImpl.java

@@ -167,7 +167,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
     //分页获取项目列表
     @Override
     public HttpRespMsg getProjectPage(Integer pageIndex, Integer pageSize, String keyword, Integer searchField,
-                                      Integer status, Integer category, Integer projectId,Integer projectMainId, HttpServletRequest request) {
+                                      Integer status, Integer category, Integer projectId,Integer projectMainId,  String sortProp, Integer sortOrder, HttpServletRequest request) {
         HttpRespMsg httpRespMsg = new HttpRespMsg();
         try {
             //通过公司id获取该公司所有的项目列表
@@ -211,7 +211,17 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
             if (projectId != null) {
                 queryWrapper.eq("id", projectId);
             }
-            queryWrapper.orderByDesc("is_public").orderByAsc("id");
+            if (StringUtils.isEmpty(sortProp)) {
+                queryWrapper.orderByDesc("is_public").orderByAsc("id");
+            } else {
+                if (sortOrder == 0) {
+                    //降序
+                    queryWrapper.orderByDesc(sortProp);
+                } else {
+                    queryWrapper.orderByAsc(sortProp);
+                }
+            }
+
             IPage<Project> projectIPage = projectMapper.selectPage(new Page<>(pageIndex, pageSize),
                     queryWrapper);
             List<Project> projectList = projectIPage.getRecords();

+ 1 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/resources/application.yml

@@ -14,7 +14,7 @@ spring:
       location: C:/upload/
   datasource:
     driver-class-name: com.mysql.cj.jdbc.Driver
-    url: jdbc:mysql://47.101.180.183:3306/man_dev?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8&rewriteBatchedStatements=true&useSSL=false
+    url: jdbc:mysql://47.101.180.183:3306/man_hour_manager?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8&rewriteBatchedStatements=true&useSSL=false
     username: root
     password: HuoshiDB@2022
     hikari:

+ 9 - 1
fhKeeper/formulahousekeeper/ops-platform/src/main/java/com/management/platform/entity/User.java

@@ -20,13 +20,14 @@ import org.springframework.format.annotation.DateTimeFormat;
  * </p>
  *
  * @author Seyason
- * @since 2021-08-26
+ * @since 2022-07-11
  */
 @Data
 @EqualsAndHashCode(callSuper = false)
 @Accessors(chain = true)
 public class User extends Model<User> {
 
+
     private static final long serialVersionUID=1L;
     /**
      * 主键 雪花算法生成
@@ -181,6 +182,13 @@ public class User extends Model<User> {
     @TableField(exist = false)
     private double totalHours;
 
+    /**
+     * 是否可以登录八爪鱼系统
+     */
+    @TableField("is_ops")
+    private Integer isOps;
+
+
     @Override
     protected Serializable pkVal() {
         return this.id;

+ 3 - 0
fhKeeper/formulahousekeeper/ops-platform/src/main/java/com/management/platform/service/impl/UserServiceImpl.java

@@ -131,6 +131,9 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
             if (userVO.getRoleId() == null || userVO.getRoleId() == 0) {
                 httpRespMsg.setError("请先联系管理员为您分配角色");
                 return httpRespMsg;
+            } else if (userVO.getIsOps() == 0) {
+                httpRespMsg.setError("无权登录系统,请联系超级管理员为您开通运营权限");
+                return httpRespMsg;
             }
             //还要多返回一个公司名字
             userVO.setPassword("");

+ 98 - 0
fhKeeper/formulahousekeeper/ops-platform/src/main/resources/application-dev.yml

@@ -0,0 +1,98 @@
+server:
+  port: 10018
+  tomcat:
+    uri-encoding: utf-8
+    max-http-form-post-size: -1
+    connection-timeout: 18000000s
+spring:
+  servlet:
+    multipart:
+      # 配置上传文件的大小设置
+      # Single file max size  即单个文件大小
+      max-file-size: 100MB
+      max-request-size: 100MB
+  datasource:
+    driver-class-name: com.mysql.cj.jdbc.Driver
+    url: jdbc:mysql://47.101.180.183:3306/man_dev?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8&rewriteBatchedStatements=true&useSSL=false
+    username: root
+    password: HuoshiDB@2022
+    hikari:
+      maximum-pool-size: 10
+      minimum-idle: 3
+      max-lifetime: 30000
+      connection-test-query: SELECT 1
+    #######redis配置######
+    # redis
+    redis:
+      host: 127.0.0.1
+      port: 6379
+      timeout: 3
+      # password:
+      pool:
+        minIdle: 1
+        maxIdle: 10
+        maxWait: 3
+        maxActive: 8
+    ####全局配置时间返回格式#####
+  jackson:
+    #参数意义:
+    #JsonInclude.Include.ALWAYS       默认
+    #JsonInclude.Include.NON_DEFAULT   属性为默认值不序列化
+    #JsonInclude.Include.NON_EMPTY     属性为 空(””) 或者为 NULL 都不序列化
+    #JsonInclude.Include.NON_NULL      属性为NULL  不序列化
+    default-property-inclusion: ALWAYS
+    time-zone: GMT+8
+    date-format: yyyy-MM-dd HH:mm:ss
+
+##########日志配置
+logging:
+  level:
+    root: info
+    org.mybatis: error
+    java.sql: error
+    org.springframework.web: error
+    #打印sql语句
+    com.management.platform.mapper: error
+  path: /log/
+  file: octopus.log
+##########
+mybatis-plus:
+  #  mapper-locations: classpath:mapper/*/*.xml
+  #  #实体扫描,多个package用逗号或者分号分隔
+  #  typeAliasesPackage: com.hssx.cloudmodel
+  global-config:
+    #主键类型  0:"数据库ID自增", 1:"用户输入ID",2:"全局唯一ID (数字类型唯一ID)", 3:"全局唯一ID UUID";
+    id-type: 0
+    #字段策略 0:"忽略判断",1:"非 NULL 判断"),2:"非空判断"
+    field-strategy: 2
+    db-column-underline: true
+    refresh-mapper:
+    #################插入和更新非null判断
+    db-config:
+      insert-strategy: not_null
+      update-strategy: not_null
+  configuration:
+    map-underscore-to-camel-case: true
+    cache-enabled: false
+######mybstis配置#######
+mybatis:
+  type-aliases-package: com.management.platform.entity
+  mapper-locations: mappers/*Mapper.xml
+#####配置图片上传路径####
+upload:
+  path: /www/staticproject/timesheet/upload/
+
+##actuator健康检查配置
+management:
+  security:
+    enabled:false:
+  server:
+    port: 10019
+  #  endpoints:
+  #    web:
+  #      exposure:
+  #        include: "*"
+
+  health:
+    redis:
+      enabled: false

+ 11 - 1
fhKeeper/formulahousekeeper/ops-platform/src/main/resources/mapper/UserMapper.xml

@@ -27,12 +27,22 @@
         <result column="dingding_userid" property="dingdingUserid" />
         <result column="dingding_unionid" property="dingdingUnionid" />
         <result column="corpwx_userid" property="corpwxUserid" />
+        <result column="induction_date" property="inductionDate" />
         <result column="inactive_date" property="inactiveDate" />
+        <result column="position" property="position" />
+        <result column="report_status" property="reportStatus" />
+        <result column="superior_id" property="superiorId" />
+        <result column="plate1" property="plate1" />
+        <result column="plate2" property="plate2" />
+        <result column="plate3" property="plate3" />
+        <result column="plate4" property="plate4" />
+        <result column="plate5" property="plate5" />
+        <result column="is_ops" property="isOps" />
     </resultMap>
 
     <!-- 通用查询结果列 -->
     <sql id="Base_Column_List">
-        id, name, phone, password, portrait_url, create_time, role, company_id, department_id, department_cascade, cost, month_cost, salary_type, manage_dept_id, color, is_active, wx_openid, role_id, role_name, cost_apply_date, dingding_userid, dingding_unionid, corpwx_userid, inactive_date
+        id, name, phone, password, portrait_url, create_time, role, company_id, department_id, department_cascade, cost, month_cost, salary_type, manage_dept_id, color, is_active, wx_openid, role_id, role_name, cost_apply_date, dingding_userid, dingding_unionid, corpwx_userid, induction_date, inactive_date, position, report_status, superior_id, plate1, plate2, plate3, plate4, plate5, is_ops
     </sql>
     <!--单独分页获取人员-->
     <select id="getUserByDepartment" resultType="java.util.Map">