Merge branch 'master' of http://122.51.230.86:3000/dianliang/lanan-system
This commit is contained in:
commit
743f529c31
@ -4,7 +4,6 @@ import cn.iocoder.yudao.converter.DateFormatConverter;
|
||||
import cn.iocoder.yudao.framework.tenant.core.db.TenantBaseDO;
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
|
@ -1,9 +1,7 @@
|
||||
package cn.iocoder.yudao.module.company.entity;
|
||||
|
||||
import cn.iocoder.yudao.converter.DateFormatConverter;
|
||||
import cn.iocoder.yudao.framework.tenant.core.db.TenantBaseDO;
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
|
@ -1,14 +1,8 @@
|
||||
package cn.iocoder.yudao.module.company.mapper;
|
||||
|
||||
import cn.iocoder.yudao.module.company.entity.Company;
|
||||
import cn.iocoder.yudao.module.company.entity.CompanyQuals;
|
||||
import cn.iocoder.yudao.module.company.vo.CompanyQualsReqVO;
|
||||
import cn.iocoder.yudao.module.company.vo.CompanyReqVO;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
/**
|
||||
* 企业资质信息表
|
||||
|
@ -1,13 +1,7 @@
|
||||
package cn.iocoder.yudao.module.company.service;
|
||||
|
||||
import cn.iocoder.yudao.module.company.entity.Company;
|
||||
import cn.iocoder.yudao.module.company.entity.CompanyQuals;
|
||||
import cn.iocoder.yudao.module.company.vo.CompanyQualsReqVO;
|
||||
import cn.iocoder.yudao.module.company.vo.CompanyQualsRespVO;
|
||||
import cn.iocoder.yudao.module.company.vo.CompanyReqVO;
|
||||
import cn.iocoder.yudao.module.company.vo.CompanyRespVO;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
/**
|
||||
|
@ -1,14 +1,9 @@
|
||||
package cn.iocoder.yudao.module.company.service.impl;
|
||||
|
||||
import cn.iocoder.yudao.module.company.entity.Company;
|
||||
import cn.iocoder.yudao.module.company.entity.CompanyQuals;
|
||||
import cn.iocoder.yudao.module.company.mapper.CompanyMapper;
|
||||
import cn.iocoder.yudao.module.company.mapper.CompanyQualsMapper;
|
||||
import cn.iocoder.yudao.module.company.service.CompanyQualsService;
|
||||
import cn.iocoder.yudao.module.company.vo.CompanyQualsReqVO;
|
||||
import cn.iocoder.yudao.module.company.vo.CompanyQualsRespVO;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
|
@ -1,6 +1,5 @@
|
||||
package cn.iocoder.yudao.module.company.service.impl;
|
||||
|
||||
import cn.hutool.core.convert.Convert;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
|
||||
import cn.iocoder.yudao.framework.common.exception.ErrorCode;
|
||||
@ -11,12 +10,9 @@ import cn.iocoder.yudao.module.system.api.dept.DeptApi;
|
||||
import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO;
|
||||
import cn.iocoder.yudao.module.system.api.permission.PermissionApi;
|
||||
import cn.iocoder.yudao.module.system.api.permission.RoleApi;
|
||||
import cn.iocoder.yudao.module.system.api.permission.dto.RoleReqDTO;
|
||||
import cn.iocoder.yudao.module.system.api.user.AdminUserApi;
|
||||
import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO;
|
||||
import cn.iocoder.yudao.module.system.api.user.dto.UserDTO;
|
||||
import cn.iocoder.yudao.module.system.enums.permission.RoleCodeEnum;
|
||||
import cn.iocoder.yudao.module.system.enums.permission.RoleTypeEnum;
|
||||
import com.baomidou.dynamic.datasource.annotation.DSTransactional;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import cn.iocoder.yudao.module.company.vo.CompanyReqVO;
|
||||
@ -27,7 +23,6 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import cn.iocoder.yudao.module.company.mapper.CompanyMapper;
|
||||
import cn.iocoder.yudao.module.company.service.CompanyService;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
@ -38,8 +33,6 @@ import java.util.Set;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||
import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet;
|
||||
import static cn.iocoder.yudao.module.system.enums.ErrorCodeConstants.USER_NOT_EXISTS;
|
||||
import static java.util.Collections.singleton;
|
||||
|
||||
/**
|
||||
* 企业信息表(每个租户的下属企业信息);(dl_company)表服务实现类
|
||||
|
@ -1,14 +1,7 @@
|
||||
package cn.iocoder.yudao.module.company.vo;
|
||||
|
||||
import cn.iocoder.yudao.module.company.entity.Company;
|
||||
import cn.iocoder.yudao.module.company.entity.CompanyQuals;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
|
||||
|
||||
/**
|
||||
* 企业资质信息表查询条件实体
|
||||
|
@ -1,11 +1,8 @@
|
||||
package cn.iocoder.yudao.module.company.vo;
|
||||
|
||||
import cn.iocoder.yudao.module.company.entity.Company;
|
||||
import cn.iocoder.yudao.module.company.entity.CompanyQuals;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 企业资质返回结果或提交vo
|
||||
* @author vinjor-M
|
||||
|
@ -1,15 +1,10 @@
|
||||
package cn.iocoder.yudao.module.company.vo;
|
||||
|
||||
import cn.iocoder.yudao.module.company.entity.Company;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
|
||||
|
||||
/**
|
||||
* 企业返回结果或提交vo
|
||||
* @author vinjor-M
|
||||
|
86
dl-module-company/pom.xml
Normal file
86
dl-module-company/pom.xml
Normal file
@ -0,0 +1,86 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<parent>
|
||||
<groupId>cn.iocoder.boot</groupId>
|
||||
<artifactId>yudao</artifactId>
|
||||
<version>${revision}</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>dl-module-company</artifactId>
|
||||
<packaging>jar</packaging>
|
||||
<name>${project.artifactId}</name>
|
||||
<description>
|
||||
点亮企业管理库
|
||||
</description>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>cn.iocoder.boot</groupId>
|
||||
<artifactId>yudao-module-system-api</artifactId>
|
||||
<version>${revision}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>cn.iocoder.boot</groupId>
|
||||
<artifactId>yudao-module-infra-api</artifactId>
|
||||
<version>${revision}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>cn.iocoder.boot</groupId>
|
||||
<artifactId>yudao-spring-boot-starter-biz-tenant</artifactId>
|
||||
<version>2.1.0-jdk8-snapshot</version>
|
||||
</dependency>
|
||||
<!-- Web 相关 -->
|
||||
<dependency>
|
||||
<groupId>cn.iocoder.boot</groupId>
|
||||
<artifactId>yudao-spring-boot-starter-security</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-validation</artifactId>
|
||||
</dependency>
|
||||
|
||||
<!-- DB 相关 -->
|
||||
<dependency>
|
||||
<groupId>cn.iocoder.boot</groupId>
|
||||
<artifactId>yudao-spring-boot-starter-mybatis</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>cn.iocoder.boot</groupId>
|
||||
<artifactId>yudao-spring-boot-starter-redis</artifactId>
|
||||
</dependency>
|
||||
|
||||
<!-- Job 定时任务相关 -->
|
||||
<dependency>
|
||||
<groupId>cn.iocoder.boot</groupId>
|
||||
<artifactId>yudao-spring-boot-starter-job</artifactId>
|
||||
</dependency>
|
||||
|
||||
<!-- 消息队列相关 -->
|
||||
<dependency>
|
||||
<groupId>cn.iocoder.boot</groupId>
|
||||
<artifactId>yudao-spring-boot-starter-mq</artifactId>
|
||||
</dependency>
|
||||
|
||||
<!-- Test 测试相关 -->
|
||||
<dependency>
|
||||
<groupId>cn.iocoder.boot</groupId>
|
||||
<artifactId>yudao-spring-boot-starter-test</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<!-- 工具类相关 -->
|
||||
<dependency>
|
||||
<groupId>cn.iocoder.boot</groupId>
|
||||
<artifactId>yudao-spring-boot-starter-excel</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-mail</artifactId>
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
</project>
|
@ -0,0 +1,147 @@
|
||||
package cn.iocoder.yudao.module.staff.controller.admin;
|
||||
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog;
|
||||
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
|
||||
import cn.iocoder.yudao.module.staff.entity.CompanyStaff;
|
||||
import cn.iocoder.yudao.module.staff.service.CompanyStaffService;
|
||||
import cn.iocoder.yudao.module.staff.vo.CompanyStaffReqVO;
|
||||
import cn.iocoder.yudao.module.staff.vo.CompanyStaffRespVO;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.Parameter;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.IOException;
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
|
||||
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
||||
|
||||
/**
|
||||
* 企业管理-员工信息表 控制层
|
||||
* @author 小李
|
||||
* @date 17:14 2024/8/6
|
||||
**/
|
||||
@RestController
|
||||
@RequestMapping("/company/staff")
|
||||
@Tag(name = "管理后台 - 企业管理 - 员工管理")
|
||||
@Validated
|
||||
public class CompanyStaffController {
|
||||
|
||||
@Resource
|
||||
private CompanyStaffService staffService;
|
||||
|
||||
/**
|
||||
* 分页查询
|
||||
* @author 小李
|
||||
* @date 17:19 2024/8/6
|
||||
* @param pageReqVO 查询条件对象
|
||||
* @param pageNo 页码
|
||||
* @param pageSize 条数
|
||||
**/
|
||||
@GetMapping("/page")
|
||||
@Operation(summary = "获得企业管理-员工信息表信息分页")
|
||||
@PreAuthorize("@ss.hasPermission('company:staff:query')")
|
||||
public CommonResult<IPage<?>> getCompanyPage(CompanyStaffReqVO pageReqVO,
|
||||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
|
||||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) {
|
||||
Page<CompanyStaff> page = new Page<>(pageNo, pageSize);
|
||||
return success(staffService.queryListPage(pageReqVO, page));
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增员工
|
||||
* @author 小李
|
||||
* @date 17:20 2024/8/6
|
||||
* @param staffRespVO 员工对象
|
||||
**/
|
||||
@PostMapping("/create")
|
||||
@Operation(summary = "创建企业管理-员工信息表信息")
|
||||
@PreAuthorize("@ss.hasPermission('company:staff:create')")
|
||||
public CommonResult<String> createCompany(@RequestBody CompanyStaffRespVO staffRespVO) {
|
||||
staffService.saveStaff(staffRespVO);
|
||||
return CommonResult.ok();
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改员工
|
||||
* @author 小李
|
||||
* @date 17:24 2024/8/6
|
||||
* @param staffRespVO 员工对象
|
||||
**/
|
||||
@PutMapping("/update")
|
||||
@Operation(summary = "更新企业管理-员工信息表信息")
|
||||
@PreAuthorize("@ss.hasPermission('company:staff:update')")
|
||||
public CommonResult<Boolean> updateCompany(@RequestBody CompanyStaffRespVO staffRespVO) {
|
||||
staffService.updateStaff(staffRespVO);
|
||||
return CommonResult.ok();
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除员工
|
||||
* @author 小李
|
||||
* @date 17:28 2024/8/6
|
||||
* @param id 员工id
|
||||
**/
|
||||
@DeleteMapping("/delete")
|
||||
@Operation(summary = "删除企业管理-员工信息表信息")
|
||||
@Parameter(name = "id", description = "编号", required = true)
|
||||
@PreAuthorize("@ss.hasPermission('company:staff:delete')")
|
||||
public CommonResult<Boolean> deleteCompany(@RequestParam("id") String id) {
|
||||
staffService.deleteStaff(id);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询员工
|
||||
* @author 小李
|
||||
* @date 17:59 2024/8/6
|
||||
* @param id
|
||||
**/
|
||||
@GetMapping("/get")
|
||||
@Operation(summary = "获得企业管理-员工信息表信息")
|
||||
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||
@PreAuthorize("@ss.hasPermission('company:staff:query')")
|
||||
public CommonResult<CompanyStaffRespVO> getCompany(@RequestParam("id") String id) {
|
||||
CompanyStaff staff = staffService.getById(id);
|
||||
CompanyStaffRespVO staffRespVO = BeanUtils.toBean(staff, CompanyStaffRespVO.class);
|
||||
if(StringUtils.isNotEmpty(staffRespVO.getFileIds())){
|
||||
staffRespVO.setFileIdArray(Arrays.asList(staff.getFileIds().split(StrUtil.COMMA)));
|
||||
}
|
||||
return success(staffRespVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* @author 小李
|
||||
* @date 18:01 2024/8/6
|
||||
* @param pageReqVO 查询条件--暂时导出所有
|
||||
* @param response 响应体
|
||||
**/
|
||||
@GetMapping("/export-excel")
|
||||
@Operation(summary = "导出企业管理-员工信息表 Excel")
|
||||
@PreAuthorize("@ss.hasPermission('company:staff:export')")
|
||||
@ApiAccessLog(operateType = EXPORT)
|
||||
public void exportCompanyExcel(CompanyStaffReqVO pageReqVO,
|
||||
HttpServletResponse response) throws IOException {
|
||||
List<CompanyStaff> list = staffService.list();
|
||||
// 导出 Excel
|
||||
Map<Integer, Integer> columnWidthMap = new HashMap<>();
|
||||
// 第一列的索引是0,宽度设置为20个字符宽
|
||||
columnWidthMap.put(9, 20);
|
||||
columnWidthMap.put(10, 20);
|
||||
ExcelUtils.write(response, "企业信息表.xls", "数据", CompanyStaff.class, list,columnWidthMap);
|
||||
}
|
||||
}
|
@ -0,0 +1,89 @@
|
||||
package cn.iocoder.yudao.module.staff.entity;
|
||||
|
||||
|
||||
import cn.iocoder.yudao.framework.tenant.core.db.TenantBaseDO;
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDate;
|
||||
|
||||
/**
|
||||
* 企业管理-员工信息实体
|
||||
* @author 小李
|
||||
* @date 16:25 2024/8/6
|
||||
**/
|
||||
@TableName("company_staff")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ExcelIgnoreUnannotated
|
||||
public class CompanyStaff extends TenantBaseDO {
|
||||
/** 主键标识 */
|
||||
@TableId(type = IdType.INPUT)
|
||||
private String id;
|
||||
|
||||
/** 企业id(base_company表中的id) */
|
||||
private String corpId;
|
||||
|
||||
/** 用户id(system_users表的id) */
|
||||
private Long userId;
|
||||
|
||||
/** 部门id(system_dept表中的id) */
|
||||
private Long deptId;
|
||||
|
||||
/** 工号 */
|
||||
@ExcelProperty("工号")
|
||||
private String workNo;
|
||||
|
||||
/** 姓名 */
|
||||
@ExcelProperty("姓名")
|
||||
private String name;
|
||||
|
||||
/** 手机号 */
|
||||
@ExcelProperty("手机号")
|
||||
private String tel;
|
||||
|
||||
/** 性别 */
|
||||
@ExcelProperty("性别")
|
||||
private String sex;
|
||||
|
||||
/** 家庭住址 */
|
||||
@ExcelProperty("家庭住址")
|
||||
private String address;
|
||||
|
||||
/** 工作日期 */
|
||||
@ExcelProperty("工作日期")
|
||||
private LocalDate workDate;
|
||||
|
||||
/** 工龄 */
|
||||
@ExcelProperty("工龄")
|
||||
private BigDecimal workYear;
|
||||
|
||||
/** 入职日期 */
|
||||
@ExcelProperty("入职日期")
|
||||
private LocalDate joinedDate;
|
||||
|
||||
/** 司龄 */
|
||||
@ExcelProperty("司龄")
|
||||
private BigDecimal joinedYear;
|
||||
|
||||
/** 学历 */
|
||||
@ExcelProperty("学历")
|
||||
private String education;
|
||||
|
||||
/** 个人简介 */
|
||||
@ExcelProperty("个人简介")
|
||||
private String content;
|
||||
|
||||
/** 唯一推广码(须保证全平台唯一,规则:字母+数字;字母全大写) */
|
||||
@ExcelProperty("唯一推广码")
|
||||
private String uniqueCode;
|
||||
|
||||
/** 附件ids(infra_file表中的id,多个英文逗号拼接) */
|
||||
private String fileIds;
|
||||
}
|
@ -0,0 +1,22 @@
|
||||
package cn.iocoder.yudao.module.staff.mapper;
|
||||
|
||||
import cn.iocoder.yudao.module.staff.entity.CompanyStaff;
|
||||
import cn.iocoder.yudao.module.staff.vo.CompanyStaffReqVO;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 企业管理-员工信息表
|
||||
* @author 小李
|
||||
* @date 16:26 2024/8/6
|
||||
**/
|
||||
@Mapper
|
||||
public interface CompanyStaffMapper extends BaseMapper<CompanyStaff> {
|
||||
|
||||
IPage<CompanyStaff> selectListPage(@Param("map") CompanyStaffReqVO companyStaffReqVO, Page<CompanyStaff> page);
|
||||
}
|
@ -0,0 +1,50 @@
|
||||
package cn.iocoder.yudao.module.staff.service;
|
||||
|
||||
import cn.iocoder.yudao.module.staff.entity.CompanyStaff;
|
||||
import cn.iocoder.yudao.module.staff.vo.CompanyStaffReqVO;
|
||||
import cn.iocoder.yudao.module.staff.vo.CompanyStaffRespVO;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
import javax.validation.Valid;
|
||||
|
||||
/**
|
||||
* 企业管理-员工信息表 服务
|
||||
* @author 小李
|
||||
* @date 16:29 2024/8/6
|
||||
**/
|
||||
public interface CompanyStaffService extends IService<CompanyStaff> {
|
||||
|
||||
/**
|
||||
* 获得企业管理-员工信息表分页
|
||||
* @author 小李
|
||||
* @date 17:11 2024/8/6
|
||||
* @param pageReqVO 分页查询
|
||||
**/
|
||||
IPage<CompanyStaff> queryListPage(CompanyStaffReqVO pageReqVO, Page<CompanyStaff> page);
|
||||
|
||||
/**
|
||||
* 新增员工
|
||||
* @author 小李
|
||||
* @date 16:29 2024/8/6
|
||||
* @param staffRespVO 员工对象
|
||||
**/
|
||||
void saveStaff(@Valid CompanyStaffRespVO staffRespVO);
|
||||
|
||||
/**
|
||||
* 修改员工信息
|
||||
* @author 小李
|
||||
* @date 16:31 2024/8/6
|
||||
* @param staffRespVO 员工对象
|
||||
**/
|
||||
void updateStaff(@Valid CompanyStaffRespVO staffRespVO);
|
||||
|
||||
/**
|
||||
* 删除员工信息
|
||||
* @author 小李
|
||||
* @date 16:32 2024/8/6
|
||||
* @param id 员工ID
|
||||
**/
|
||||
void deleteStaff(String id);
|
||||
}
|
@ -0,0 +1,52 @@
|
||||
package cn.iocoder.yudao.module.staff.service.impl;
|
||||
|
||||
import cn.iocoder.yudao.module.staff.entity.CompanyStaff;
|
||||
import cn.iocoder.yudao.module.staff.mapper.CompanyStaffMapper;
|
||||
import cn.iocoder.yudao.module.staff.service.CompanyStaffService;
|
||||
import cn.iocoder.yudao.module.staff.vo.CompanyStaffReqVO;
|
||||
import cn.iocoder.yudao.module.staff.vo.CompanyStaffRespVO;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
/**
|
||||
* 企业管理-员工信息表 服务实现类
|
||||
* @author 小李
|
||||
* @date 16:29 2024/8/6
|
||||
**/
|
||||
@Service
|
||||
public class CompanyStaffServiceImpl extends ServiceImpl<CompanyStaffMapper, CompanyStaff> implements CompanyStaffService {
|
||||
|
||||
@Resource
|
||||
private CompanyStaffMapper staffMapper;
|
||||
|
||||
/**
|
||||
* 获得企业管理-员工信息表分页
|
||||
* @author 小李
|
||||
* @date 17:11 2024/8/6
|
||||
* @param pageReqVO 分页查询
|
||||
* @param page 分页对象
|
||||
**/
|
||||
@Override
|
||||
public IPage<CompanyStaff> queryListPage(CompanyStaffReqVO pageReqVO, Page<CompanyStaff> page) {
|
||||
return staffMapper.selectListPage(pageReqVO, page);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void saveStaff(CompanyStaffRespVO staffRespVO) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateStaff(CompanyStaffRespVO staffRespVO) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteStaff(String id) {
|
||||
|
||||
}
|
||||
}
|
@ -0,0 +1,13 @@
|
||||
package cn.iocoder.yudao.module.staff.vo;
|
||||
|
||||
import cn.iocoder.yudao.module.staff.entity.CompanyStaff;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 员工查询VO
|
||||
* @author 小李
|
||||
* @date 16:49 2024/8/6
|
||||
**/
|
||||
@Data
|
||||
public class CompanyStaffReqVO extends CompanyStaff {
|
||||
}
|
@ -0,0 +1,20 @@
|
||||
package cn.iocoder.yudao.module.staff.vo;
|
||||
|
||||
import cn.iocoder.yudao.module.staff.entity.CompanyStaff;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 员工响应或提交VO
|
||||
* @author 小李
|
||||
* @date 16:50 2024/8/6
|
||||
**/
|
||||
@Data
|
||||
public class CompanyStaffRespVO extends CompanyStaff {
|
||||
|
||||
/**
|
||||
* 员工附件IDS
|
||||
*/
|
||||
List<String> fileIdArray;
|
||||
}
|
@ -0,0 +1,9 @@
|
||||
<?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="cn.iocoder.yudao.module.staff.mapper.CompanyStaffMapper">
|
||||
<select id="selectListPage" resultType="cn.iocoder.yudao.module.staff.entity.CompanyStaff">
|
||||
select * from company_staff
|
||||
</select>
|
||||
</mapper>
|
79
pom.xml
79
pom.xml
@ -22,8 +22,10 @@
|
||||
<module>yudao-module-crm</module>
|
||||
<module>yudao-module-erp</module>
|
||||
<module>dl-module-base</module>
|
||||
<module>dl-module-company</module>
|
||||
<!-- Server 主项目 -->
|
||||
<module>yudao-server</module>
|
||||
|
||||
<!-- <module>yudao-module-ai</module>-->
|
||||
</modules>
|
||||
|
||||
@ -134,36 +136,51 @@
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>aliyun</id>
|
||||
<name>aliyun Repository</name>
|
||||
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
|
||||
<snapshots>
|
||||
<enabled>false</enabled>
|
||||
</snapshots>
|
||||
</repository>
|
||||
<!-- 积木报表部分依赖需要从jeecg仓库中下载 -->
|
||||
<repository>
|
||||
<id>jeecg</id>
|
||||
<name>jeecg Repository</name>
|
||||
<url>http://maven.jeecg.org/nexus/content/repositories/jeecg</url>
|
||||
<snapshots>
|
||||
<enabled>false</enabled>
|
||||
</snapshots>
|
||||
</repository>
|
||||
<!-- 使用 huawei / aliyun 的 Maven 源,提升下载速度 -->
|
||||
<repository>
|
||||
<id>huaweicloud</id>
|
||||
<name>huawei</name>
|
||||
<url>https://mirrors.huaweicloud.com/repository/maven/</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>aliyunmaven</id>
|
||||
<name>aliyun</name>
|
||||
<url>https://maven.aliyun.com/repository/public</url>
|
||||
</repository>
|
||||
|
||||
<!-- 使用 huawei / aliyun 的 Maven 源,提升下载速度 -->
|
||||
<!-- <repositories>-->
|
||||
<!-- <repository>-->
|
||||
<!-- <id>huaweicloud</id>-->
|
||||
<!-- <name>huawei</name>-->
|
||||
<!-- <url>https://mirrors.huaweicloud.com/repository/maven/</url>-->
|
||||
<!-- </repository>-->
|
||||
<!-- <repository>-->
|
||||
<!-- <id>aliyunmaven</id>-->
|
||||
<!-- <name>aliyun</name>-->
|
||||
<!-- <url>https://maven.aliyun.com/repository/public</url>-->
|
||||
<!-- </repository>-->
|
||||
|
||||
<!-- <repository>-->
|
||||
<!-- <id>spring-milestones</id>-->
|
||||
<!-- <name>Spring Milestones</name>-->
|
||||
<!-- <url>https://repo.spring.io/milestone</url>-->
|
||||
<!-- <snapshots>-->
|
||||
<!-- <enabled>false</enabled>-->
|
||||
<!-- </snapshots>-->
|
||||
<!-- </repository>-->
|
||||
<!-- <repository>-->
|
||||
<!-- <id>spring-snapshots</id>-->
|
||||
<!-- <name>Spring Snapshots</name>-->
|
||||
<!-- <url>https://repo.spring.io/snapshot</url>-->
|
||||
<!-- <releases>-->
|
||||
<!-- <enabled>false</enabled>-->
|
||||
<!-- </releases>-->
|
||||
<!-- </repository>-->
|
||||
<!-- </repositories>-->
|
||||
|
||||
<repository>
|
||||
<id>spring-milestones</id>
|
||||
<name>Spring Milestones</name>
|
||||
<url>https://repo.spring.io/milestone</url>
|
||||
<snapshots>
|
||||
<enabled>false</enabled>
|
||||
</snapshots>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>spring-snapshots</id>
|
||||
<name>Spring Snapshots</name>
|
||||
<url>https://repo.spring.io/snapshot</url>
|
||||
<releases>
|
||||
<enabled>false</enabled>
|
||||
</releases>
|
||||
</repository>
|
||||
</repositories>
|
||||
</project>
|
||||
|
@ -502,7 +502,7 @@
|
||||
<dependency>
|
||||
<groupId>com.google.inject</groupId>
|
||||
<artifactId>guice</artifactId>
|
||||
<version>${guice.version}</version>
|
||||
<!-- <version>${guice.version}</version>-->
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
|
@ -63,6 +63,7 @@
|
||||
<dependency>
|
||||
<groupId>org.jeecgframework.jimureport</groupId>
|
||||
<artifactId>jimureport-spring-boot-starter</artifactId>
|
||||
<!-- <version>1.4.0</version>-->
|
||||
</dependency>
|
||||
<!-- 单独依赖升级版本,解决低版本validator失败问题 -->
|
||||
<dependency>
|
||||
|
@ -0,0 +1,27 @@
|
||||
package cn.iocoder.yudao.module.system.enums.common;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* 性别的枚举值
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum DeptEnum {
|
||||
|
||||
/** 私人客户 */
|
||||
PRIVATE_CUS("私人客户"),
|
||||
/** 代办客户 */
|
||||
AGENT_CUS("代办客户"),
|
||||
/** 政企客户 */
|
||||
GOV_CUS("政企客户");
|
||||
|
||||
/**
|
||||
* 名称
|
||||
*/
|
||||
private final String name;
|
||||
|
||||
}
|
@ -51,6 +51,7 @@ import java.util.stream.Collectors;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||
import static cn.iocoder.yudao.module.system.enums.ErrorCodeConstants.*;
|
||||
import static cn.iocoder.yudao.module.system.enums.common.DeptEnum.*;
|
||||
import static java.util.Collections.singleton;
|
||||
|
||||
/**
|
||||
@ -131,7 +132,11 @@ public class TenantServiceImpl implements TenantService {
|
||||
// 修改租户的管理员
|
||||
tenantMapper.updateById(new TenantDO().setId(tenant.getId()).setContactUserId(userId));
|
||||
//创建租户顶级部门
|
||||
Long deptId = createDept(userId,createReqVO.getName(),createReqVO.getContactMobile());
|
||||
Long deptId = createDept(userId,createReqVO.getName(),createReqVO.getContactMobile(),null);
|
||||
//创建三个客户部门:私人客户、代办客户、政企客户
|
||||
createDept(null,PRIVATE_CUS.getName(),null,deptId);
|
||||
createDept(null,AGENT_CUS.getName(),null,deptId);
|
||||
createDept(null,GOV_CUS.getName(),null,deptId);
|
||||
//拉取本租户配置的服务套餐对应的角色和权限,存入本租户对应信息
|
||||
createServiceRole(createReqVO.getPackageId());
|
||||
});
|
||||
@ -158,13 +163,20 @@ public class TenantServiceImpl implements TenantService {
|
||||
}
|
||||
}
|
||||
|
||||
private Long createDept(Long userId,String deptName,String phone){
|
||||
private Long createDept(Long userId,String deptName,String phone,Long parentId){
|
||||
DeptSaveReqVO deptSaveReqVO = new DeptSaveReqVO();
|
||||
deptSaveReqVO.setName(deptName);
|
||||
deptSaveReqVO.setSort(0);
|
||||
deptSaveReqVO.setPhone(phone);
|
||||
deptSaveReqVO.setStatus(CommonStatusEnum.ENABLE.getStatus());
|
||||
deptSaveReqVO.setLeaderUserId(userId);
|
||||
if(null!=phone){
|
||||
deptSaveReqVO.setPhone(phone);
|
||||
}
|
||||
if(null!=userId){
|
||||
deptSaveReqVO.setLeaderUserId(userId);
|
||||
}
|
||||
if(null!=parentId){
|
||||
deptSaveReqVO.setParentId(parentId);
|
||||
}
|
||||
return deptService.createDept(deptSaveReqVO);
|
||||
}
|
||||
|
||||
|
@ -37,6 +37,12 @@
|
||||
<artifactId>dl-module-base</artifactId>
|
||||
<version>${revision}</version>
|
||||
</dependency>
|
||||
<!-- 企业管理包 -->
|
||||
<dependency>
|
||||
<groupId>cn.iocoder.boot</groupId>
|
||||
<artifactId>dl-module-company</artifactId>
|
||||
<version>${revision}</version>
|
||||
</dependency>
|
||||
<!-- 会员中心。默认注释,保证编译速度 -->
|
||||
<!-- <dependency>-->
|
||||
<!-- <groupId>cn.iocoder.boot</groupId>-->
|
||||
|
@ -80,7 +80,9 @@ mybatis-plus:
|
||||
type-aliases-package:
|
||||
- ${yudao.info.base-package}.module.*.dal.dataobject
|
||||
- ${yudao.info.base-package}.module.*.entity
|
||||
mapper-locations: classpath:/mapper/*/*.xml
|
||||
mapper-locations:
|
||||
- classpath*:mapper/*/*.xml # 扫描子模块下的 mapper.xml文件
|
||||
- classpath:mapper/*/*.xml # 扫描当前模块下的 mapper.xml 文件
|
||||
encryptor:
|
||||
password: XDV71a+xqStEA3WH # 加解密的秘钥,可使用 https://www.imaegoo.com/2020/aes-key-generator/ 网站生成
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user