zouxuan 5 年之前
父节点
当前提交
1b4849f67b
共有 18 个文件被更改,包括 658 次插入103 次删除
  1. 46 0
      edu-common/src/main/java/com/keao/edu/common/entity/UploadReturnBean.java
  2. 24 0
      edu-thirdparty/src/main/java/com/ym/mec/thirdparty/storage/StoragePlugin.java
  3. 6 0
      edu-user/edu-user-server/pom.xml
  4. 6 9
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/controller/EmployeeController.java
  5. 60 0
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/controller/TenantInfoController.java
  6. 47 0
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/controller/UploadFileController.java
  7. 0 13
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/dao/EmployeeDao.java
  8. 8 0
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/dao/TenantInfoDao.java
  9. 22 0
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/entity/Employee.java
  10. 114 0
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/entity/TenantInfo.java
  11. 22 0
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/page/EmployeeQueryInfo.java
  12. 8 3
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/EmployeeService.java
  13. 8 0
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/TenantInfoService.java
  14. 107 0
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/UploadFileService.java
  15. 24 10
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/EmployeeServiceImpl.java
  16. 22 0
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/TenantInfoServiceImpl.java
  17. 51 68
      edu-user/edu-user-server/src/main/resources/config.mybatis/EmployeeMapper.xml
  18. 83 0
      edu-user/edu-user-server/src/main/resources/config.mybatis/TenantInfoMapper.xml

+ 46 - 0
edu-common/src/main/java/com/keao/edu/common/entity/UploadReturnBean.java

@@ -0,0 +1,46 @@
+package com.keao.edu.common.entity;
+
+/** 
+ * @author sunzl 
+ * 2015年8月26日 下午4:42:03 
+ * 上传返回对象
+ */
+public class UploadReturnBean {
+
+	public UploadReturnBean(String url, boolean status, String message) {
+		super();
+		this.url = url;
+		this.status = status;
+		this.message = message;
+	}
+
+	private String url;
+
+	private boolean status;// 上传状态
+
+	private String message;// 上传失败 返回原因
+
+	public String getUrl() {
+		return url;
+	}
+
+	public void setUrl(String url) {
+		this.url = url;
+	}
+
+	public boolean isStatus() {
+		return status;
+	}
+
+	public void setStatus(boolean status) {
+		this.status = status;
+	}
+
+	public String getMessage() {
+		return message;
+	}
+
+	public void setMessage(String message) {
+		this.message = message;
+	}
+}

+ 24 - 0
edu-thirdparty/src/main/java/com/ym/mec/thirdparty/storage/StoragePlugin.java

@@ -0,0 +1,24 @@
+package com.ym.mec.thirdparty.storage;
+
+import java.io.File;
+import java.io.IOException;
+
+public interface StoragePlugin {
+
+	/**
+	 * 上传文件
+	 * @param folderName 文件夹
+	 * @param file 需要上传的文件
+	 * @return 返回文件路径
+	 */
+	String uploadFile(String folderName, File file);
+
+	/**
+	 * 下载文件
+	 * @param folderName 文件夹
+	 * @param fileName 文件名称
+	 * @return 返回文件内容
+	 * @throws IOException
+	 */
+	byte[] getFile(String folderName, String fileName) throws IOException;
+}

+ 6 - 0
edu-user/edu-user-server/pom.xml

@@ -74,5 +74,11 @@
             <groupId>com.keao.edu</groupId>
             <artifactId>edu-im-api</artifactId>
         </dependency>
+        <dependency>
+            <groupId>com.keao.edu</groupId>
+            <artifactId>edu-thirdparty</artifactId>
+            <version>1.0</version>
+            <scope>compile</scope>
+        </dependency>
     </dependencies>
 </project>

+ 6 - 9
edu-user/edu-user-server/src/main/java/com/keao/edu/user/controller/EmployeeController.java

@@ -1,12 +1,12 @@
 package com.keao.edu.user.controller;
 
 
-import com.keao.edu.auth.api.entity.SysUser;
 import com.keao.edu.common.controller.BaseController;
 import com.keao.edu.common.entity.HttpResponseResult;
 import com.keao.edu.common.page.PageInfo;
 import com.keao.edu.common.page.QueryInfo;
 import com.keao.edu.user.entity.Employee;
+import com.keao.edu.user.page.EmployeeQueryInfo;
 import com.keao.edu.user.service.EmployeeService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
@@ -14,8 +14,6 @@ import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
-import java.util.Date;
-
 @RestController
 @RequestMapping("employee")
 @Api(tags = "员工服务")
@@ -26,7 +24,7 @@ public class EmployeeController extends BaseController {
 	
 	@ApiOperation("员工服务分页查询")
 	@GetMapping(value = "/list")
-	public HttpResponseResult<PageInfo<Employee>> getList(QueryInfo queryInfo) {
+	public HttpResponseResult<PageInfo<Employee>> getList(EmployeeQueryInfo queryInfo) {
 		return succeed(employeeService.queryPage(queryInfo));
 	}
 
@@ -39,17 +37,16 @@ public class EmployeeController extends BaseController {
 
 	@ApiOperation("新增员工")
 	@PostMapping(value = "/add")
-	public HttpResponseResult add(SysUser sysUser) {
-		employeeService.add(sysUser);
+	public HttpResponseResult add(Employee employee) {
+		employeeService.add(employee);
 		return succeed();
 	}
 
 	@ApiOperation("更新员工")
 	@PostMapping(value = "/update")
 	public HttpResponseResult update(Employee employee) {
-		Date date = new Date();
-		employee.setUpdateTime(date);
-		return succeed(employeeService.update(employee));
+		employeeService.updateEmployee(employee);
+		return succeed();
 	}
 
 	@ApiOperation("删除")

+ 60 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/controller/TenantInfoController.java

@@ -0,0 +1,60 @@
+package com.keao.edu.user.controller;
+
+
+import com.keao.edu.common.controller.BaseController;
+import com.keao.edu.common.entity.HttpResponseResult;
+import com.keao.edu.common.page.PageInfo;
+import com.keao.edu.common.page.QueryInfo;
+import com.keao.edu.user.entity.TenantInfo;
+import com.keao.edu.user.service.TenantInfoService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Date;
+
+@RestController
+@RequestMapping("tenantInfo")
+@Api(tags = "机构服务")
+public class TenantInfoController extends BaseController {
+
+	@Autowired
+	private TenantInfoService tenantInfoService;
+	
+	@ApiOperation("机构服务分页查询")
+	@GetMapping(value = "/list")
+	public HttpResponseResult<PageInfo<TenantInfo>> getList(QueryInfo queryInfo) {
+		return succeed(tenantInfoService.queryPage(queryInfo));
+	}
+
+	@ApiOperation("查询机构详情")
+	@ApiImplicitParam(name = "id", value = "机构ID", required = true, dataType = "Integer", paramType = "path")
+	@GetMapping(value = "/query")
+	public HttpResponseResult<TenantInfo> query(Integer id) {
+		return succeed(tenantInfoService.get(id));
+	}
+
+	@ApiOperation("新增机构")
+	@PostMapping(value = "/add")
+	public HttpResponseResult add(TenantInfo tenantInfo) {
+		tenantInfoService.insert(tenantInfo);
+		return succeed();
+	}
+
+	@ApiOperation("更新机构")
+	@PostMapping(value = "/update")
+	public HttpResponseResult update(TenantInfo tenantInfo) {
+		tenantInfo.setUpdateTime(new Date());
+		tenantInfoService.update(tenantInfo);
+		return succeed();
+	}
+
+	@ApiOperation("删除")
+	@PostMapping(value = "/del/{id}")
+	public HttpResponseResult add(@PathVariable("id") Integer id) {
+		return succeed(tenantInfoService.delete(id));
+	}
+
+}

+ 47 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/controller/UploadFileController.java

@@ -0,0 +1,47 @@
+package com.keao.edu.user.controller;
+
+import com.keao.edu.common.controller.BaseController;
+import com.keao.edu.common.entity.UploadReturnBean;
+import com.keao.edu.user.service.UploadFileService;
+import com.keao.edu.util.upload.UploadUtil;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiParam;
+import org.apache.commons.lang3.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+
+/**
+ * 上传控制层
+ */
+@RestController
+@Api(tags = "文件上传服务")
+public class UploadFileController extends BaseController {
+
+	private final static Logger LOGGER = LoggerFactory.getLogger(UploadFileController.class);
+
+	@Autowired
+	private UploadFileService uploadFileService;
+
+	@PostMapping(value = "uploadFile")
+	@PreAuthorize("@pcs.hasPermissions('uploadFile','system')")
+	public Object uploadFile(@ApiParam(value = "上传的文件", required = true) @RequestParam("file") MultipartFile file) {
+		try {
+			if (file != null && StringUtils.isNotBlank(file.getOriginalFilename())) {
+				UploadReturnBean bean = uploadFileService.uploadFile(file.getInputStream(), UploadUtil.getExtension(file.getOriginalFilename()));
+				if (bean.isStatus()) {
+					return succeed(bean);
+				}
+				return failed(bean.getMessage());
+			}
+		} catch (Exception e) {
+			LOGGER.error("上传失败", e);
+		}
+		return failed("上传失败");
+	}
+}

+ 0 - 13
edu-user/edu-user-server/src/main/java/com/keao/edu/user/dao/EmployeeDao.java

@@ -1,6 +1,5 @@
 package com.keao.edu.user.dao;
 
-import com.keao.edu.auth.api.entity.SysUser;
 import com.keao.edu.common.dal.BaseDAO;
 import com.keao.edu.user.entity.Employee;
 import org.apache.ibatis.annotations.Param;
@@ -15,16 +14,4 @@ public interface EmployeeDao extends BaseDAO<Integer, Employee> {
      * @param roles
      */
     void batchAddEmployeeRole(@Param("userId") Integer id, @Param("roles") List<Integer> roles);
-
-    /**
-     * 修改用户信息
-     * @param user
-     */
-    void updateUser(SysUser user);
-
-    /**
-     * 新增用户
-     * @param user
-     */
-    void addSysUser(SysUser user);
 }

+ 8 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/dao/TenantInfoDao.java

@@ -0,0 +1,8 @@
+package com.keao.edu.user.dao;
+
+import com.keao.edu.common.dal.BaseDAO;
+import com.keao.edu.user.entity.TenantInfo;
+
+public interface TenantInfoDao extends BaseDAO<Integer, TenantInfo> {
+	
+}

+ 22 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/entity/Employee.java

@@ -63,9 +63,31 @@ public class Employee {
 	@ApiModelProperty(value = "邮政编码",required = false)
 	private String postalCode;
 
+	@ApiModelProperty(value = "所属角色",required = false)
+	private String roleName;
+
+	@ApiModelProperty(value = "是否删除0否1是",required = false)
+	private Integer delFlag;
+
 	@ApiModelProperty(value = "员工信息",required = false)
 	private SysUser sysUser;
 
+	public Integer getDelFlag() {
+		return delFlag;
+	}
+
+	public void setDelFlag(Integer delFlag) {
+		this.delFlag = delFlag;
+	}
+
+	public String getRoleName() {
+		return roleName;
+	}
+
+	public void setRoleName(String roleName) {
+		this.roleName = roleName;
+	}
+
 	public SysUser getSysUser() {
 		return sysUser;
 	}

+ 114 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/entity/TenantInfo.java

@@ -0,0 +1,114 @@
+package com.keao.edu.user.entity;
+
+import io.swagger.annotations.ApiModelProperty;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+
+/**
+ * 对应数据库表(tenant_info):
+ */
+public class TenantInfo {
+
+	/**  */
+	private Integer id;
+	
+	/**  */
+	private String name;
+	
+	/**  */
+	private String address;
+
+	@ApiModelProperty(value = "管理员名",required = false)
+	private String domainName;
+
+	private String logoUrl;
+
+	@ApiModelProperty(value = "机构名称",required = false)
+	private String contactName;
+
+	@ApiModelProperty(value = "机构手机",required = false)
+	private String contactPhone;
+	
+	/**  */
+	private java.util.Date createTime;
+	
+	/**  */
+	private java.util.Date updateTime;
+	
+	public void setId(Integer id){
+		this.id = id;
+	}
+	
+	public Integer getId(){
+		return this.id;
+	}
+			
+	public void setName(String name){
+		this.name = name;
+	}
+	
+	public String getName(){
+		return this.name;
+	}
+			
+	public void setAddress(String address){
+		this.address = address;
+	}
+	
+	public String getAddress(){
+		return this.address;
+	}
+			
+	public void setDomainName(String domainName){
+		this.domainName = domainName;
+	}
+	
+	public String getDomainName(){
+		return this.domainName;
+	}
+			
+	public void setLogoUrl(String logoUrl){
+		this.logoUrl = logoUrl;
+	}
+	
+	public String getLogoUrl(){
+		return this.logoUrl;
+	}
+			
+	public void setContactName(String contactName){
+		this.contactName = contactName;
+	}
+	
+	public String getContactName(){
+		return this.contactName;
+	}
+			
+	public void setContactPhone(String contactPhone){
+		this.contactPhone = contactPhone;
+	}
+	
+	public String getContactPhone(){
+		return this.contactPhone;
+	}
+			
+	public void setCreateTime(java.util.Date createTime){
+		this.createTime = createTime;
+	}
+	
+	public java.util.Date getCreateTime(){
+		return this.createTime;
+	}
+			
+	public void setUpdateTime(java.util.Date updateTime){
+		this.updateTime = updateTime;
+	}
+	
+	public java.util.Date getUpdateTime(){
+		return this.updateTime;
+	}
+			
+	@Override
+	public String toString() {
+		return ToStringBuilder.reflectionToString(this);
+	}
+
+}

+ 22 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/page/EmployeeQueryInfo.java

@@ -0,0 +1,22 @@
+package com.keao.edu.user.page;
+
+import com.keao.edu.common.page.QueryInfo;
+import io.swagger.annotations.ApiModelProperty;
+
+/**
+ * @Author Joburgess
+ * @Date 2019/9/17
+ */
+public class EmployeeQueryInfo extends QueryInfo {
+
+    @ApiModelProperty(value = "角色ID",required = false)
+    private Integer roleId;
+
+    public Integer getRoleId() {
+        return roleId;
+    }
+
+    public void setRoleId(Integer roleId) {
+        this.roleId = roleId;
+    }
+}

+ 8 - 3
edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/EmployeeService.java

@@ -1,6 +1,5 @@
 package com.keao.edu.user.service;
 
-import com.keao.edu.auth.api.entity.SysUser;
 import com.keao.edu.common.service.BaseService;
 import com.keao.edu.user.entity.Employee;
 
@@ -8,8 +7,14 @@ public interface EmployeeService extends BaseService<Integer, Employee> {
 
     /**
      * 新增员工
-     * @param sysUser
+     * @param employee
      * @return
      */
-    void add(SysUser sysUser);
+    void add(Employee employee);
+
+    /**
+     * 修改用户信息
+     * @param employee
+     */
+    void updateEmployee(Employee employee);
 }

+ 8 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/TenantInfoService.java

@@ -0,0 +1,8 @@
+package com.keao.edu.user.service;
+
+import com.keao.edu.common.service.BaseService;
+import com.keao.edu.user.entity.TenantInfo;
+
+public interface TenantInfoService extends BaseService<Integer, TenantInfo> {
+
+}

+ 107 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/UploadFileService.java

@@ -0,0 +1,107 @@
+package com.keao.edu.user.service;
+
+import com.keao.edu.common.entity.UploadReturnBean;
+import com.keao.edu.common.exception.BizException;
+import com.keao.edu.util.upload.UploadUtil;
+import com.ym.mec.thirdparty.storage.StoragePlugin;
+import org.apache.commons.io.FileUtils;
+import org.apache.commons.io.IOUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Service;
+
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+
+/** 
+ * 上传工具服务层实现类
+ */
+@Service
+public class UploadFileService {
+
+	@Autowired
+	private StoragePlugin storagePlugin;
+
+	/** 最大上传大小,单位kb */
+	@Value("${common.upload.maxSize:153600}")
+	private int maxSize;
+
+	/** 支持的扩展名 */
+	@Value("${common.upload.supportExtensions:jpg,jpeg,gif,png,mp3,mid,midi,aac,m4a,mp4}")
+	private String supportExtensions;
+
+	/** 文件根目录 */
+	@Value("/var/tmp/")
+	private String fileRoot;
+
+	public UploadReturnBean uploadFile(InputStream in, String ext) {
+
+		UploadReturnBean uploadReturn = new UploadReturnBean("", false, "");
+		String fileName = UploadUtil.getFileName(ext);
+
+		String supportType = supportExtensions;
+		if (!UploadUtil.validateImgFile(ext, supportType)) {
+			uploadReturn.setMessage("上传图片格式错误,目前只支持" + supportType);
+			return uploadReturn;
+		}
+
+		String root = fileRoot;
+		if (StringUtils.isBlank(root)) {
+			uploadReturn.setMessage("上传临时目录没有配置");
+			return uploadReturn;
+		}
+
+		String staticFloder = "";
+
+		String folder = UploadUtil.getFileFloder();
+		String filePath = UploadUtil.getFilePath(root, staticFloder, folder);
+		File file = uploadFile(in, filePath, fileName);
+		if (maxSize > 0 && maxSize < file.length() / 1024) {
+			FileUtils.deleteQuietly(file);
+			uploadReturn.setMessage("超出允许的大小(" + (maxSize / 1024) + "M)限制");
+			return uploadReturn;
+		}
+
+		String url = storagePlugin.uploadFile(staticFloder + folder, file);
+
+		FileUtils.deleteQuietly(file);
+
+		uploadReturn.setStatus(true);
+		uploadReturn.setUrl(url);
+		return uploadReturn;
+	}
+
+	public void setMaxSize(int maxSize) {
+		this.maxSize = maxSize;
+	}
+
+	/**
+	 * 上传文件的工具方法
+	 * @param inputStream
+	 * @param filePath
+	 * @param fileName
+	 * @return
+	 */
+	private File uploadFile(InputStream inputStream, String filePath, String fileName) {
+		File file = new File(filePath + "/" + fileName);
+		try {
+			if (!file.getParentFile().exists()) {
+				file.getParentFile().mkdirs();
+			}
+			FileOutputStream fos = new FileOutputStream(file);
+			IOUtils.copy(inputStream, fos);
+			if (!file.exists() || file.length() == 0) {
+				throw new BizException("图片上传出现错误,请重新上传");
+			}
+		} catch (IOException e) {
+			throw new BizException("图片上传失败", e);
+		} finally {
+			IOUtils.closeQuietly(inputStream);
+		}
+		return file;
+	}
+
+}

+ 24 - 10
edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/EmployeeServiceImpl.java

@@ -1,7 +1,6 @@
 package com.keao.edu.user.service.impl;
 
 
-import com.keao.edu.auth.api.client.SysUserFeignService;
 import com.keao.edu.auth.api.entity.SysUser;
 import com.keao.edu.common.dal.BaseDAO;
 import com.keao.edu.common.exception.BizException;
@@ -19,6 +18,8 @@ import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.util.Date;
+
 @Service
 public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee> implements EmployeeService {
 	
@@ -36,21 +37,21 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee> impl
 
 	@Override
 	@Transactional(rollbackFor = Exception.class)
-	public void add(SysUser sysUser) {
+	public void add(Employee employee) {
+		SysUser sysUser = employee.getSysUser();
 		SysUser user = sysUserDao.queryByPhone(sysUser.getPhone());
-		Employee employee;
 		if(user != null && user.getId() != null){
-			employee = employeeDao.get(user.getId());
-			if(employee == null){
+			Employee employee1 = employeeDao.get(user.getId());
+			if(employee1 == null){
 				if(StringUtils.isEmpty(user.getPassword())){
-					user.setPassword(new BCryptPasswordEncoder().encode("123456"));
+					sysUser.setPassword(new BCryptPasswordEncoder().encode("123456"));
 				}
 				employee.setUserId(user.getId());
 				employeeDao.insert(employee);
 				//新增用户角色
 				employeeDao.batchAddEmployeeRole(user.getId(),sysUser.getRoles());
 				user.setUserType(user.getUserType() + ",SYSTEM");
-				employeeDao.updateUser(user);
+				sysUserDao.update(user);
 				return;
 			}else{
 				throw new BizException("用户已存在");
@@ -59,14 +60,27 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee> impl
 		user = new SysUser();
 		user.setPassword(new BCryptPasswordEncoder().encode("123456"));
 		user.setUserType("SYSTEM");
-		employeeDao.addSysUser(user);
-		employee = new Employee();
+		sysUserDao.insert(user);
+
 		employee.setUserId(user.getId());
 		employeeDao.insert(employee);
 		//新增用户角色
 		employeeDao.batchAddEmployeeRole(user.getId(),sysUser.getRoles());
 		ImResult imResult = imFeignService.register(new ImUserModel(user.getId().toString(), user.getRealName(),null));
 		user.setImToken(imResult.getToken());
-		employeeDao.updateUser(user);
+		sysUserDao.update(user);
+	}
+
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public void updateEmployee(Employee employee) {
+		Date date = new Date();
+		SysUser sysUser = employee.getSysUser();
+		sysUser.setId(employee.getUserId());
+		employee.setUpdateTime(date);
+		sysUser.setUpdateTime(date);
+		sysUserDao.update(sysUser);
+		employeeDao.update(employee);
+		employeeDao.batchAddEmployeeRole(sysUser.getId(),sysUser.getRoles());
 	}
 }

+ 22 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/TenantInfoServiceImpl.java

@@ -0,0 +1,22 @@
+package com.keao.edu.user.service.impl;
+
+import com.keao.edu.common.dal.BaseDAO;
+import com.keao.edu.common.service.impl.BaseServiceImpl;
+import com.keao.edu.user.dao.TenantInfoDao;
+import com.keao.edu.user.entity.TenantInfo;
+import com.keao.edu.user.service.TenantInfoService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+@Service
+public class TenantInfoServiceImpl extends BaseServiceImpl<Integer, TenantInfo> implements TenantInfoService {
+	
+	@Autowired
+	private TenantInfoDao tenantInfoDao;
+
+	@Override
+	public BaseDAO<Integer, TenantInfo> getDAO() {
+		return tenantInfoDao;
+	}
+	
+}

+ 51 - 68
edu-user/edu-user-server/src/main/resources/config.mybatis/EmployeeMapper.xml

@@ -21,6 +21,32 @@
 		<result column="demission_date_" property="demissionDate" />
 		<result column="contact_address_" property="contactAddress" />
 		<result column="postal_code_" property="postalCode" />
+		<result column="role_name_" property="roleName" />
+		<result column="del_flag_" property="delFlag" />
+		<association property="sysUser" javaType="com.keao.edu.auth.api.entity.SysUser">
+			<result column="id_" property="id"/>
+			<result column="username_" property="username"/>
+			<result column="real_name_" property="realName"/>
+			<result column="password_" property="password"/>
+			<result column="salt_" property="salt"/>
+			<result column="phone_" property="phone"/>
+			<result column="avatar_" property="avatar"/>
+			<result column="create_time_" property="createTime"/>
+			<result column="update_time_" property="updateTime"/>
+			<result column="lock_flag_" property="lockFlag"/>
+			<result column="del_flag_" property="delFlag"/>
+			<result column="wx_openid_" property="wxOpenid"/>
+			<result column="qq_openid_" property="qqOpenid"/>
+			<result column="user_type_" property="userType"/>
+			<result column="gender_" property="gender"/>
+			<result column="nation_" property="nation"/>
+			<result column="birthdate_" property="birthdate"/>
+			<result column="email_" property="email"/>
+			<result column="im_token_" property="imToken"/>
+			<result column="id_card_no_" property="idCardNo"/>
+			<result column="wechat_id_" property="wechatId"/>
+			<result column="is_super_admin_" property="isSuperAdmin"/>
+		</association>
 	</resultMap>
 	
 	<!-- 根据主键查询一条记录 -->
@@ -35,11 +61,6 @@
 	
 	<!-- 向数据库增加一条记录 -->
 	<insert id="insert" parameterType="com.keao.edu.user.entity.Employee" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
-		<!--
-		<selectKey resultClass="int" keyProperty="id" > 
-		SELECT SEQ_WSDEFINITION_ID.nextval AS ID FROM DUAL 
-		</selectKey>
-		-->
 		INSERT INTO employee (user_id_,job_nature_,education_background_,graduate_school_,technical_titles_,entry_date_,
 		certificate_type_,certificate_num_,update_time_,create_time_,introduction_,demission_date_,contact_address_,postal_code_)
 		VALUES(#{userId},#{jobNature},#{educationBackground},#{graduateSchool},#{technicalTitles},#{entryDate},#{certificateType},
@@ -93,82 +114,44 @@
 		</if>
 		</set> WHERE user_id_ = #{userId}
 	</update>
-    <update id="batchAddEmployeeRole">
+    <insert id="batchAddEmployeeRole">
 		INSERT INTO sys_user_role(user_id_,role_id_) values
 		<foreach collection="roles" item="item" index="index" separator=",">
 			(#{userId},#{item})
 		</foreach>
+	</insert>
+	<!-- 根据主键删除一条记录 -->
+	<update id="delete" >
+		UPDATE employee SET del_flag_ = 0,update_time_ = NOW() WHERE user_id_ = #{userId}
 	</update>
-	<update id="updateUser" parameterType="com.keao.edu.auth.api.entity.SysUser">
-		UPDATE sys_user
-		<set>
-			<if test="delFlag != null">
-				del_flag_ = #{delFlag, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
-			</if>
-			<if test="wxOpenid != null">
-				wx_openid_ = #{wxOpenid},
-			</if>
-			<if test="password != null">
-				password_ = #{password},
-			</if>
-			<if test="avatar != null">
-				avatar_ = #{avatar},
-			</if>
-			<if test="email != null">
-				email_ = #{email},
-			</if>
-			<if test="gender != null">
-				gender_ = #{gender},
-			</if>
-			<if test="salt != null">
-				salt_ = #{salt},
-			</if>
-			<if test="username != null">
-				username_ = #{username},
-			</if>
-			<if test="realName != null">
-				real_name_ = #{realName},
+	<sql id="employeeQueryPage">
+		<where>
+				e.del_flag_ = 1
+			<if test="search != null and search != ''">
+				AND (e.user_id_ = #{search} OR su.phone_ LIKE CONCAT('%',#{search},'%') OR su.real_name_ LIKE CONCAT('%',#{search},'%'))
 			</if>
-			<if test="userType != null">
-				user_type_ = #{userType},
+			<if test="roleId != null">
+				AND sur.role_id_ = #{roleId}
 			</if>
-			<if test="updateTime != null">
-				update_time_ = NOW(),
-			</if>
-			<if test="lockFlag != null">
-				lock_flag_ = #{lockFlag},
-			</if>
-			<if test="birthdate != null">
-				birthdate_ = #{birthdate},
-			</if>
-			<if test="phone != null">
-				phone_ = #{phone},
-			</if>
-			<if test="qqOpenid != null">
-				qq_openid_ = #{qqOpenid},
-			</if>
-			<if test="nation != null">
-				nation_ = #{nation},
-			</if>
-			<if test="imToken != null">
-				im_token_ = #{imToken}
-			</if>
-		</set>
-		WHERE id_ = #{id}
-	</update>
-
-	<!-- 根据主键删除一条记录 -->
-	<delete id="delete" >
-		DELETE FROM employee WHERE user_id_ = #{userId} 
-	</delete>
+		</where>
+	</sql>
 	
 	<!-- 分页查询 -->
 	<select id="queryPage" resultMap="Employee" parameterType="map">
-		SELECT * FROM employee ORDER BY user_id_ <include refid="global.limit"/>
+		SELECT su.*,e.*,GROUP_CONCAT(sr.role_name_) role_name_ FROM employee e
+		LEFT JOIN sys_user su ON e.user_id_ = su.id_
+		LEFT JOIN sys_user_role sur ON sur.user_id_ = su.id_
+		LEFT JOIN sys_role sr ON sr.id_ = sur.role_id_
+		<include refid="employeeQueryPage"/>
+		GROUP BY e.user_id_
+		ORDER BY e.user_id_ <include refid="global.limit"/>
 	</select>
 	
 	<!-- 查询当前表的总记录数 -->
 	<select id="queryCount" resultType="int">
-		SELECT COUNT(*) FROM employee
+		SELECT COUNT(DISTINCT e.user_id_) FROM employee e
+		LEFT JOIN sys_user su ON e.user_id_ = su.id_
+		LEFT JOIN sys_user_role sur ON sur.user_id_ = su.id_
+		<include refid="employeeQueryPage"/>
 	</select>
 </mapper>

+ 83 - 0
edu-user/edu-user-server/src/main/resources/config.mybatis/TenantInfoMapper.xml

@@ -0,0 +1,83 @@
+<?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.keao.edu.user.dao.TenantInfoDao">
+	
+	<resultMap type="com.keao.edu.user.entity.TenantInfo" id="TenantInfo">
+		<result column="id_" property="id" />
+		<result column="name_" property="name" />
+		<result column="address_" property="address" />
+		<result column="domain_name_" property="domainName" />
+		<result column="logo_url_" property="logoUrl" />
+		<result column="contact_name_" property="contactName" />
+		<result column="contact_phone_" property="contactPhone" />
+		<result column="create_time_" property="createTime" />
+		<result column="update_time_" property="updateTime" />
+	</resultMap>
+	
+	<!-- 根据主键查询一条记录 -->
+	<select id="get" resultMap="TenantInfo" >
+		SELECT * FROM tenant_info WHERE id_ = #{id} 
+	</select>
+	
+	<!-- 全查询 -->
+	<select id="findAll" resultMap="TenantInfo">
+		SELECT * FROM tenant_info ORDER BY id_
+	</select>
+	
+	<!-- 向数据库增加一条记录 -->
+	<insert id="insert" parameterType="com.keao.edu.user.entity.TenantInfo" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
+		<!--
+		<selectKey resultClass="int" keyProperty="id" > 
+		SELECT SEQ_WSDEFINITION_ID.nextval AS ID FROM DUAL 
+		</selectKey>
+		-->
+		INSERT INTO tenant_info (id_,name_,address_,domain_name_,logo_url_,contact_name_,contact_phone_,create_time_,update_time_)
+		VALUES(#{id},#{name},#{address},#{domainName},#{logoUrl},#{contactName},#{contactPhone},NOW(),NOW())
+	</insert>
+	
+	<!-- 根据主键查询一条记录 -->
+	<update id="update" parameterType="com.keao.edu.user.entity.TenantInfo">
+		UPDATE tenant_info <set>
+		<if test="address != null">
+		address_ = #{address},
+		</if>
+		<if test="updateTime != null">
+		update_time_ = #{updateTime},
+		</if>
+		<if test="logoUrl != null">
+		logo_url_ = #{logoUrl},
+		</if>
+		<if test="contactPhone != null">
+		contact_phone_ = #{contactPhone},
+		</if>
+		<if test="domainName != null">
+		domain_name_ = #{domainName},
+		</if>
+		<if test="contactName != null">
+		contact_name_ = #{contactName},
+		</if>
+		<if test="name != null">
+		name_ = #{name}
+		</if>
+		</set> WHERE id_ = #{id}
+	</update>
+	
+	<!-- 根据主键删除一条记录 -->
+	<delete id="delete" >
+		DELETE FROM tenant_info WHERE id_ = #{id} 
+	</delete>
+	
+	<!-- 分页查询 -->
+	<select id="queryPage" resultMap="TenantInfo" parameterType="map">
+		SELECT * FROM tenant_info ORDER BY update_time_ DESC <include refid="global.limit"/>
+	</select>
+	
+	<!-- 查询当前表的总记录数 -->
+	<select id="queryCount" resultType="int">
+		SELECT COUNT(*) FROM tenant_info
+	</select>
+</mapper>