Merge remote-tracking branch 'origin/master'

This commit is contained in:
LiuY 2022-04-21 18:08:56 +08:00
commit d198ee357b
25 changed files with 1080 additions and 57 deletions

View File

@ -94,7 +94,7 @@ public class MailController extends DefaultBaseController {
}
/**
* 查询收件箱详情
* 草稿箱分页列表
* @param page
* @return
*/
@ -117,7 +117,7 @@ public class MailController extends DefaultBaseController {
}
/**
* 保存草稿箱
* 更新草稿
*/
@PostMapping("update-draft-mail")
public SuccessResult updateDraftMail(@RequestBody MailSendVO vo){
@ -167,7 +167,7 @@ public class MailController extends DefaultBaseController {
}
/**
* 查询收件箱详情
* 查询垃圾箱详情
* @return
*/
@GetMapping("get-del-mail")
@ -178,7 +178,7 @@ public class MailController extends DefaultBaseController {
}
/**
* 查询收件箱详情
* 恢复垃圾箱邮件
* @return
*/
@GetMapping("get-recover-del-mail/{ids}")

View File

@ -106,6 +106,7 @@ public class FileUploadAppController extends DefaultBaseController {
@GetMapping("listpagefileupload")
public SuccessResultList<List<FileUploadDTO>> listPage(@RequestHeader("token") String token, ListPage page) {
Map<String, Object> params = requestParams();
params.put("token", token);
page.setParams(params);
return fileUploadService.listPage(page);
}

View File

@ -1,17 +1,23 @@
package cn.com.tenlion.systemoa.controller.app.api.mail;
import cn.com.tenlion.systemoa.pojo.vos.carapply.CarApplyVO;
import cn.com.tenlion.systemoa.pojo.dtos.mail.MailDelDTO;
import cn.com.tenlion.systemoa.pojo.dtos.mail.MailInboxDTO;
import cn.com.tenlion.systemoa.pojo.dtos.mail.MailSendDTO;
import cn.com.tenlion.systemoa.pojo.vos.mail.MailSendVO;
import cn.com.tenlion.systemoa.service.mail.IMailService;
import ink.wgink.annotation.CheckRequestBodyAnnotation;
import ink.wgink.common.base.DefaultBaseController;
import ink.wgink.interfaces.consts.ISystemConstant;
import ink.wgink.pojo.ListPage;
import ink.wgink.pojo.result.ErrorResult;
import ink.wgink.pojo.result.SuccessResult;
import ink.wgink.pojo.result.SuccessResultList;
import io.swagger.annotations.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
/**
* @author xwangs
* @create 2022-04-19 17:18
@ -37,4 +43,224 @@ public class MailAppController extends DefaultBaseController {
return new SuccessResult();
}
@ApiOperation(value = "发件箱分页列表", notes = "发件箱分页列表")
@ApiImplicitParams({
@ApiImplicitParam(name = "token", value = "token", paramType = "header"),
@ApiImplicitParam(name = "page", value = "当前页码", paramType = "query", dataType = "int", defaultValue = "1"),
@ApiImplicitParam(name = "rows", value = "显示数量", paramType = "query", dataType = "int", defaultValue = "20"),
@ApiImplicitParam(name = "keywords", value = "标题|收件人姓名", paramType = "query", dataType = "String")
})
@ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
@GetMapping("list-page-app=send-mail")
public SuccessResultList<List<MailSendDTO>> listPageAppSendMail(@RequestHeader("token") String token, ListPage page) {
Map<String, Object> params = requestParams();
page.setParams(params);
return mailService.listPageAppSendMail(token, page);
}
@ApiOperation(value = "发件箱详情", notes = "发件箱详情")
@ApiImplicitParams({
@ApiImplicitParam(name = "token", value = "token", paramType = "header")
})
@ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
@GetMapping("get-app=send-mail/{mailId}")
public MailSendDTO getAppSendMail(@RequestHeader("token") String token,
@PathVariable("mailId") String mailId){
Map<String, Object> params = requestParams();
params.put("mailId", mailId);
MailSendDTO sendMail = mailService.getSendMail(params);
return sendMail;
}
@ApiOperation(value = "收件箱分页列表", notes = "收件箱分页列表")
@ApiImplicitParams({
@ApiImplicitParam(name = "token", value = "token", paramType = "header"),
@ApiImplicitParam(name = "page", value = "当前页码", paramType = "query", dataType = "int", defaultValue = "1"),
@ApiImplicitParam(name = "rows", value = "显示数量", paramType = "query", dataType = "int", defaultValue = "20")
})
@ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
@GetMapping("list-page-app=inbox-mail")
public SuccessResultList<List<MailInboxDTO>> listPageAppInboxMail(@RequestHeader("token") String token, ListPage page) {
Map<String, Object> params = requestParams();
page.setParams(params);
return mailService.listPageAppInboxMail(token, page);
}
@ApiOperation(value = "收件箱详情", notes = "发件箱详情")
@ApiImplicitParams({
@ApiImplicitParam(name = "token", value = "token", paramType = "header")
})
@ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
@GetMapping("get-app=inbox-mail/{id}")
public MailInboxDTO getAppInboxMail(@RequestHeader("token") String token,
@PathVariable("id") String id){
Map<String, Object> params = requestParams();
params.put("id", id);
MailInboxDTO inboxMail = mailService.getAppInboxMail(token, params);
return inboxMail;
}
/**
* 保存草稿箱
*/
@ApiOperation(value = "保存草稿", notes = "保存草稿")
@ApiImplicitParams({
@ApiImplicitParam(name = "token", value = "token", paramType = "header")
})
@ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
@PostMapping("save-app-draft-mail")
public SuccessResult saveAppDraftMail(@RequestHeader("token") String token,
@RequestBody MailSendVO vo){
mailService.saveAppDraftMail(token,vo);
return new SuccessResult();
}
@ApiOperation(value = "草稿箱分页列表", notes = "草稿箱分页列表")
@ApiImplicitParams({
@ApiImplicitParam(name = "token", value = "token", paramType = "header"),
@ApiImplicitParam(name = "page", value = "当前页码", paramType = "query", dataType = "int", defaultValue = "1"),
@ApiImplicitParam(name = "rows", value = "显示数量", paramType = "query", dataType = "int", defaultValue = "20")
})
@ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
@GetMapping("list-page-app=draft-mail")
public SuccessResultList<List<MailSendDTO>> listPageAppDraftMail(@RequestHeader("token") String token, ListPage page) {
Map<String, Object> params = requestParams();
page.setParams(params);
return mailService.listPageAppDraftMail(token, page);
}
@ApiOperation(value = "草稿箱详情", notes = "草稿箱详情")
@ApiImplicitParams({
@ApiImplicitParam(name = "token", value = "token", paramType = "header")
})
@ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
@GetMapping("get-app=draft-mail/{mailId}")
public MailSendDTO getAppDraftMail(@RequestHeader("token") String token,
@PathVariable("mailId") String mailId){
Map<String, Object> params = requestParams();
params.put("mailId", mailId);
MailSendDTO draftMail = mailService.getAppDraftMail(token, params);
return draftMail;
}
@ApiOperation(value = "更新草稿", notes = "更新草稿")
@ApiImplicitParams({
@ApiImplicitParam(name = "token", value = "token", paramType = "header")
})
@ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
@PostMapping("update-app-draft-mail/{mailId}")
public SuccessResult updateAppDraftMail(@RequestBody MailSendVO vo,
@PathVariable("mailId") String mailId){
vo.setMailId(mailId);
mailService.updateAppDraftMail(vo);
return new SuccessResult();
}
/**
* 草稿发送
*/
@ApiOperation(value = "更新草稿", notes = "更新草稿")
@ApiImplicitParams({
@ApiImplicitParam(name = "token", value = "token", paramType = "header")
})
@ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
@PostMapping("save-app-send-draft-mail")
public SuccessResult saveAppSendDraftMail(@RequestHeader("token") String token,
@RequestBody MailSendVO vo){
mailService.saveAppSendDraftMail(token, vo);
return new SuccessResult();
}
@ApiOperation(value = "垃圾箱分页列表", notes = "垃圾箱分页列表")
@ApiImplicitParams({
@ApiImplicitParam(name = "token", value = "token", paramType = "header"),
@ApiImplicitParam(name = "page", value = "当前页码", paramType = "query", dataType = "int", defaultValue = "1"),
@ApiImplicitParam(name = "rows", value = "显示数量", paramType = "query", dataType = "int", defaultValue = "20")
})
@ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
@GetMapping("list-page-app=del-mail")
public SuccessResultList<List<MailDelDTO>> listPageAppDelMail(@RequestHeader("token") String token, ListPage page) {
Map<String, Object> params = requestParams();
page.setParams(params);
return mailService.listPageAppDelMail(token, page);
}
@ApiOperation(value = "垃圾箱详情", notes = "垃圾箱详情")
@ApiImplicitParams({
@ApiImplicitParam(name = "token", value = "token", paramType = "header"),
@ApiImplicitParam(name = "id", value = "Id值", paramType = "path")
})
@ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
@GetMapping("get-app=del-mail/{id}")
public MailDelDTO getAppDelMail(@RequestHeader("token") String token,
@PathVariable("id") String id){
Map<String, Object> params = requestParams();
params.put("id", id);
MailDelDTO delMail = mailService.getAppDelMail(token, params);
return delMail;
}
/**
* 恢复垃圾箱邮件
* @return
*/
@ApiOperation(value = "恢复垃圾箱邮件", notes = "恢复垃圾箱邮件")
@ApiImplicitParams({
@ApiImplicitParam(name = "token", value = "token", paramType = "header"),
@ApiImplicitParam(name = "ids", value = "多个id用逗号拼接", paramType = "path")
})
@ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
@GetMapping("get-app-recover-del-mail/{ids}")
public void getAppRecoverDelMail(@RequestHeader("token") String token,
@PathVariable("ids") String ids){
mailService.getRecoverDelMail(ids);
}
@ApiOperation(value = "删除-发件箱邮件", notes = "删除-发件箱邮件")
@ApiImplicitParams({
@ApiImplicitParam(name = "token", value = "token", paramType = "header"),
@ApiImplicitParam(name = "ids", value = "取mailId,多个mailId用逗号拼接", paramType = "path")
})
@ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
@DeleteMapping("delete-app-send-mail/{ids}")
public void deleteAppSendMail(@RequestHeader("token") String token,
@PathVariable("ids") String ids){
mailService.deleteAppSendMail(token, ids);
}
@ApiOperation(value = "删除-收件箱邮件", notes = "删除-收件箱邮件")
@ApiImplicitParams({
@ApiImplicitParam(name = "token", value = "token", paramType = "header"),
@ApiImplicitParam(name = "ids", value = "取id,多个id用逗号拼接", paramType = "path")
})
@ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
@DeleteMapping("delete-app-inbox-mail/{ids}")
public void deleteAppInboxMail(@RequestHeader("token") String token,
@PathVariable("ids") String ids){
mailService.deleteAppInboxMail(token, ids);
}
@ApiOperation(value = "删除-草稿箱邮件", notes = "删除-草稿箱邮件")
@ApiImplicitParams({
@ApiImplicitParam(name = "token", value = "token", paramType = "header"),
@ApiImplicitParam(name = "ids", value = "取mailId,多个mailId用逗号拼接", paramType = "path")
})
@DeleteMapping("delete-app-draft-mail/{ids}")
public void deleteAppDraftMail(@RequestHeader("token") String token,
@PathVariable("ids") String ids){
mailService.deleteAppDraftMail(token, ids);
}
@ApiOperation(value = "删除-垃圾箱邮件", notes = "删除-垃圾箱邮件")
@ApiImplicitParams({
@ApiImplicitParam(name = "token", value = "token", paramType = "header"),
@ApiImplicitParam(name = "ids", value = "取id,多个id用逗号拼接", paramType = "path")
})
@DeleteMapping("delete-app-del-mail/{ids}")
public void deleteAppDelMail(@RequestHeader("token") String token,
@PathVariable("ids") String ids){
mailService.deleteDelMail(ids);
}
}

View File

@ -48,4 +48,9 @@ public class FileUploadRouteController extends DefaultBaseController {
return new ModelAndView("fileupload/list-share-public");
}
@GetMapping("list-share-share")
public ModelAndView listShareShare() {
return new ModelAndView("fileupload/list-share-share");
}
}

View File

@ -117,4 +117,6 @@ public interface IFileTypeDao {
*/
Integer count(Map<String, Object> params) throws SearchException;
FileTypeDTO getName(Map<String, Object> params);
}

View File

@ -1,5 +1,7 @@
package cn.com.tenlion.systemoa.pojo.dtos.mail;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.ToString;
@ -10,23 +12,41 @@ import lombok.ToString;
*/
@Data
@ToString
@ApiModel
public class MailDelDTO {
@ApiModelProperty(name = "id", value = "自增主键")
private String id;
@ApiModelProperty(name = "mailId", value = "逻辑主键")
private String mailId;
@ApiModelProperty(name = "recipientIds", value = "收件人IDs-逗号分割")
private String recipientIds;
@ApiModelProperty(name = "recipientNames", value = "收件人名字")
private String recipientNames;
@ApiModelProperty(name = "copyForIds", value = "抄送人IDs-逗号分割")
private String copyForIds;
@ApiModelProperty(name = "copyForNames", value = "抄送人名字")
private String copyForNames;
@ApiModelProperty(name = "secretIds", value = "密送人IDs-逗号分割")
private String secretIds;
@ApiModelProperty(name = "secretNames", value = "密送人名字")
private String secretNames;
@ApiModelProperty(name = "title", value = "邮件主题")
private String title;
@ApiModelProperty(name = "mailFiles", value = "附件IDs")
private String mailFiles;
@ApiModelProperty(name = "contentRich", value = "富文本内容")
private String contentRich;
@ApiModelProperty(name = "content", value = "纯文本内容")
private String content;
@ApiModelProperty(name = "creator", value = "发件人ID")
private String creator;
@ApiModelProperty(name = "gmtCreate", value = "发件时间")
private String gmtCreate;
@ApiModelProperty(name = "sourceFrom", value = "来源")
private String sourceFrom;
@ApiModelProperty(name = "delUserId", value = "删除人")
private String delUserId;
@ApiModelProperty(name = "delTime", value = "删除时间")
private String delTime;
}

View File

@ -1,5 +1,7 @@
package cn.com.tenlion.systemoa.pojo.dtos.mail;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.ToString;
@ -10,23 +12,41 @@ import lombok.ToString;
*/
@Data
@ToString
@ApiModel
public class MailInboxDTO {
@ApiModelProperty(name = "mailId", value = "自增主键")
private String id;
@ApiModelProperty(name = "mailIdLink", value = "邮件ID")
private String mailIdLink;
@ApiModelProperty(name = "recipientIds", value = "收件人IDs-逗号分割")
private String recipientIds;
@ApiModelProperty(name = "recipientNames", value = "收件人名字")
private String recipientNames;
@ApiModelProperty(name = "copyForIds", value = "抄送人IDs-逗号分割")
private String copyForIds;
@ApiModelProperty(name = "copyForNames", value = "抄送人名字")
private String copyForNames;
@ApiModelProperty(name = "secretIds", value = "密送人IDs-逗号分割")
private String secretIds;
@ApiModelProperty(name = "secretNames", value = "密送人名字")
private String secretNames;
@ApiModelProperty(name = "title", value = "邮件主题")
private String title;
@ApiModelProperty(name = "mailFiles", value = "附件IDs")
private String mailFiles;
@ApiModelProperty(name = "contentRich", value = "富文本内容")
private String contentRich;
@ApiModelProperty(name = "content", value = "纯文本内容")
private String content;
@ApiModelProperty(name = "creator", value = "发件人ID")
private String creator;
@ApiModelProperty(name = "gmtCreate", value = "发件时间")
private String gmtCreate;
@ApiModelProperty(name = "copyForTypes", value = "抄送标记")
private String copyForTypes;
@ApiModelProperty(name = "secretTypes", value = "密送标记")
private String secretTypes;
@ApiModelProperty(name = "creatorNames", value = "发件人姓名")
private String creatorNames;
}

View File

@ -1,5 +1,7 @@
package cn.com.tenlion.systemoa.pojo.dtos.mail;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.ToString;
@ -10,21 +12,37 @@ import lombok.ToString;
*/
@Data
@ToString
@ApiModel
public class MailSendDTO {
@ApiModelProperty(name = "mailId", value = "逻辑主键")
private String mailId;
@ApiModelProperty(name = "recipientIds", value = "收件人IDs-逗号分割")
private String recipientIds;
@ApiModelProperty(name = "recipientNames", value = "收件人名字")
private String recipientNames;
@ApiModelProperty(name = "copyForIds", value = "抄送人IDs-逗号分割")
private String copyForIds;
@ApiModelProperty(name = "copyForNames", value = "抄送人名字")
private String copyForNames;
@ApiModelProperty(name = "secretIds", value = "密送人IDs-逗号分割")
private String secretIds;
@ApiModelProperty(name = "secretNames", value = "密送人名字")
private String secretNames;
@ApiModelProperty(name = "title", value = "邮件主题")
private String title;
@ApiModelProperty(name = "mailFiles", value = "附件IDs")
private String mailFiles;
@ApiModelProperty(name = "contentRich", value = "富文本内容")
private String contentRich;
@ApiModelProperty(name = "content", value = "纯文本内容")
private String content;
@ApiModelProperty(name = "creator", value = "发件人ID")
private String creator;
@ApiModelProperty(name = "gmtCreate", value = "发件时间")
private String gmtCreate;
@ApiModelProperty(name = "modifier", value = "系统默认字段")
private String modifier;
@ApiModelProperty(name = "gmtModified", value = "系统默认字段")
private String gmtModified;
}

View File

@ -1,5 +1,6 @@
package cn.com.tenlion.systemoa.service.filerole;
import cn.com.tenlion.systemoa.pojo.dtos.filetype.FileTypeDTO;
import ink.wgink.pojo.ListPage;
import ink.wgink.pojo.result.SuccessResultList;
import cn.com.tenlion.systemoa.pojo.dtos.filerole.FileRoleDTO;
@ -184,5 +185,4 @@ public interface IFileRoleService {
* @return
*/
Integer count(Map<String, Object> params);
}

View File

@ -1,5 +1,6 @@
package cn.com.tenlion.systemoa.service.filetype;
import cn.com.tenlion.systemoa.pojo.dtos.filerole.FileRoleDTO;
import ink.wgink.pojo.ListPage;
import ink.wgink.pojo.result.SuccessResultList;
import cn.com.tenlion.systemoa.pojo.dtos.filetype.FileTypeDTO;
@ -185,4 +186,9 @@ public interface IFileTypeService {
*/
Integer count(Map<String, Object> params);
List<FileRoleDTO> getShare(Map<String, Object> params);
FileTypeDTO getName(String fileTypeId);
FileTypeDTO getName(Map<String, Object> params);
}

View File

@ -1,5 +1,7 @@
package cn.com.tenlion.systemoa.service.filetype.impl;
import cn.com.tenlion.systemoa.pojo.dtos.filerole.FileRoleDTO;
import cn.com.tenlion.systemoa.service.filerole.IFileRoleService;
import ink.wgink.common.base.DefaultBaseService;
import ink.wgink.pojo.ListPage;
import ink.wgink.pojo.bos.UserInfoBO;
@ -33,6 +35,8 @@ public class FileTypeServiceImpl extends DefaultBaseService implements IFileType
@Autowired
private IFileTypeDao fileTypeDao;
@Autowired
private IFileRoleService fileRoleService;
@Override
public void save(FileTypeVO fileTypeVO) {
@ -106,6 +110,11 @@ public class FileTypeServiceImpl extends DefaultBaseService implements IFileType
@Override
public FileTypeDTO get(Map<String, Object> params) {
/*if(null != params.get("typeBelong")) {
if("共享文档".equals(params.get("typeBelong").toString())) {
params.put("typeBelong", "个人文档");
}
}*/
return fileTypeDao.get(params);
}
@ -150,6 +159,11 @@ public class FileTypeServiceImpl extends DefaultBaseService implements IFileType
if(null != userInfoBO) {
params.put("creator", userInfoBO.getUserId());
}
if(null != params.get("typeBelong")) {
if("共享文档".equals(params.get("typeBelong").toString())) {
params.put("typeBelong", "个人文档");
}
}
List<FileTypeDTO> fileTypeDTOList = fileTypeDao.list(params);
Iterator<FileTypeDTO> it = fileTypeDTOList.iterator();
while (it.hasNext()) {
@ -194,4 +208,22 @@ public class FileTypeServiceImpl extends DefaultBaseService implements IFileType
return count == null ? 0 : count;
}
@Override
public List<FileRoleDTO> getShare(Map<String, Object> params) {
List<FileRoleDTO> list = fileRoleService.list(params);
return list;
}
@Override
public FileTypeDTO getName(String fileTypeId) {
Map<String, Object> params = super.getHashMap(2);
params.put("fileTypeId", fileTypeId);
return getName(params);
}
@Override
public FileTypeDTO getName(Map<String, Object> params) {
return fileTypeDao.getName(params);
}
}

View File

@ -3,6 +3,7 @@ package cn.com.tenlion.systemoa.service.fileupload.impl;
import cn.com.tenlion.systemoa.config.properties.ConfigPro;
import cn.com.tenlion.systemoa.dao.fileupload.IFileUploadDao;
import cn.com.tenlion.systemoa.pojo.bos.fileupload.FileUploadBO;
import cn.com.tenlion.systemoa.pojo.dtos.filerole.FileRoleDTO;
import cn.com.tenlion.systemoa.pojo.dtos.filetype.FileTypeDTO;
import cn.com.tenlion.systemoa.pojo.dtos.fileupload.FileUploadDTO;
import cn.com.tenlion.systemoa.pojo.pos.fileupload.FileUploadPO;
@ -18,6 +19,7 @@ import ink.wgink.exceptions.SearchException;
import ink.wgink.module.file.dao.IFileDao;
import ink.wgink.module.file.service.IFileService;
import ink.wgink.pojo.ListPage;
import ink.wgink.pojo.app.AppTokenUser;
import ink.wgink.pojo.bos.UserInfoBO;
import ink.wgink.pojo.pos.FilePO;
import ink.wgink.pojo.result.SuccessResultList;
@ -141,10 +143,13 @@ public class FileUploadServiceImpl extends DefaultBaseService implements IFileUp
FileUploadDTO fileUploadDTO = fileUploadDao.get(params);
if(null != fileUploadDTO) {
if(!StringUtils.isEmpty(fileUploadDTO.getFileTypeId())) {
FileTypeDTO fileTypeDTO = fileTypeService.get(fileUploadDTO.getFileTypeId());
FileTypeDTO fileTypeDTO = fileTypeService.getName(fileUploadDTO.getFileTypeId());
if(null != fileTypeDTO) {
fileUploadDTO.setOldFileType(fileTypeDTO.getTypeName());
fileUploadDTO.setFileTypeName(fileTypeDTO.getTypeName());
fileUploadDTO.setCatalogueType(fileTypeDTO.getTypeBelong());
fileUploadDTO.setCatalogueName(fileTypeDTO.getTypeName());
}
}
if(!StringUtils.isEmpty(fileUploadDTO.getFileId())) {
@ -205,38 +210,62 @@ public class FileUploadServiceImpl extends DefaultBaseService implements IFileUp
@Override
public List<FileUploadDTO> list(Map<String, Object> params) {
UserInfoBO userInfoBO = this.securityComponent.getCurrentUser();
if(null != userInfoBO) {
if (null != userInfoBO) {
params.put("creator", userInfoBO.getUserId());
}
String token = null;
if(null != params.get("token")) {
token = params.get("token").toString();
try {
AppTokenUser appTokenUser = securityComponent.getAppTokenUser(token);
if(null != appTokenUser) {
params.put("creator", appTokenUser.getId());
}
}catch (Exception e) {
e.printStackTrace();
}
}
List<FileUploadDTO> fileUploadDTOList = fileUploadDao.list(params);
if(null != fileUploadDTOList && fileUploadDTOList.size() > 0) {
Iterator it = fileUploadDTOList.iterator();
while(it.hasNext()) {
FileUploadDTO fileUploadDTO = (FileUploadDTO) it.next();
params.put("fileTypeId", fileUploadDTO.getFileTypeId());
params.put("fileUploadId", fileUploadDTO.getFileUploadId());
String typeBelong = null;
if(null != params.get("typeBelong")) {
typeBelong = params.get("typeBelong").toString();
if("共享文档".equals(typeBelong)) {
typeBelong = "个人文档";
}
}
if(null != params.get("typeBelong") && "共享文档".equals(params.get("typeBelong").toString())) {
List<FileRoleDTO> fileRoleDTOList = fileTypeService.getShare(params);
if(null == fileRoleDTOList || fileRoleDTOList.size() == 0) {
it.remove();
continue;
}
}
params.remove("typeBelong");
params.remove("creator");
FileTypeDTO fileTypeDTO = fileTypeService.get(params);
params.put("typeBelong", typeBelong);
if(null != params.get("typeBelong") && null != fileTypeDTO) {
if(!params.get("typeBelong").toString().equals(fileTypeDTO.getTypeBelong())) {
it.remove();
continue;
}
}
if(null != fileTypeDTO) {
fileUploadDTO.setCatalogueType(fileTypeDTO.getTypeBelong());
fileUploadDTO.setCatalogueName(fileTypeDTO.getTypeName());
FileTypeDTO fileTypeDTO1 = fileTypeService.getName(fileUploadDTO.getFileTypeId());
if(null != fileTypeDTO1) {
fileUploadDTO.setCatalogueType(fileTypeDTO1.getTypeBelong());
fileUploadDTO.setCatalogueName(fileTypeDTO1.getTypeName());
}
}
}
/*if(null != fileUploadDTOList && fileUploadDTOList.size() > 0) {
for(FileUploadDTO fileUploadDTO: fileUploadDTOList) {
params.put("fileCatalogueId", fileUploadDTO.getCatalogueId());
FileCatalogueDTO fileCatalogueDTO = fileCatalogueService.get(params);
if(null != fileCatalogueDTO) {
fileUploadDTO.setCatalogueName(fileCatalogueDTO.getName());
fileUploadDTO.setCatalogueType(fileCatalogueDTO.getType());
}
}
}*/
return fileUploadDTOList;
}

View File

@ -71,4 +71,32 @@ public interface IMailService {
* @param vo 邮件VO
*/
void appSendMail(String token, MailSendVO vo);
SuccessResultList<List<MailSendDTO>> listPageAppSendMail(String token, ListPage page);
SuccessResultList<List<MailInboxDTO>> listPageAppInboxMail(String token, ListPage page);
MailInboxDTO getAppInboxMail(String token, Map<String, Object> params);
void saveAppDraftMail(String token, MailSendVO vo);
SuccessResultList<List<MailSendDTO>> listPageAppDraftMail(String token, ListPage page);
MailSendDTO getAppDraftMail(String token, Map<String, Object> params);
void updateAppDraftMail(MailSendVO vo);
void saveAppSendDraftMail(String token, MailSendVO vo);
SuccessResultList<List<MailDelDTO>> listPageAppDelMail(String token, ListPage page);
MailDelDTO getAppDelMail(String token, Map<String, Object> params);
void deleteAppSendMail(String token, String ids);
void deleteAppInboxMail(String token, String ids);
void deleteAppDraftMail(String token, String ids);
}

View File

@ -69,6 +69,21 @@ public class MailServiceImpl extends DefaultBaseService implements IMailService
return new SuccessResultList<>(list, pageInfo.getPageNum(), pageInfo.getTotal());
}
@Override
public SuccessResultList<List<MailSendDTO>> listPageAppSendMail(String token, ListPage page) {
AppTokenUser appTokenUser = getAppTokenUser(token);
if(appTokenUser == null || "".equals(appTokenUser.getId())){
return new SuccessResultList<>(new ArrayList<>(0), 0, 0L);
}
PageHelper.startPage(page.getPage(), page.getRows());
Map<String, Object> params = page.getParams();
params.put("creator", appTokenUser.getId());
List<MailSendDTO> list = mailDao.listSendMail(params);
PageInfo<MailSendDTO> pageInfo = new PageInfo<>(list);
return new SuccessResultList<>(list, pageInfo.getPageNum(), pageInfo.getTotal());
}
@Override
public MailSendDTO getSendMail(Map<String, Object> params) {
MailSendDTO dto = mailDao.getSendMail(params);
@ -121,6 +136,52 @@ public class MailServiceImpl extends DefaultBaseService implements IMailService
return new SuccessResultList<>(list, pageInfo.getPageNum(), pageInfo.getTotal());
}
@Override
public SuccessResultList<List<MailInboxDTO>> listPageAppInboxMail(String token, ListPage page) {
AppTokenUser appTokenUser = getAppTokenUser(token);
if(appTokenUser == null || "".equals(appTokenUser.getId())){
return new SuccessResultList<>(new ArrayList<>(0), 0, 0L);
}
Map<String, Object> params = page.getParams();
params.put("userId", appTokenUser.getId());
PageHelper.startPage(page.getPage(), page.getRows());
List<MailInboxDTO> list = mailDao.listInboxMail(params);
// 处理抄送情况
for(MailInboxDTO item : list){
if(item.getCopyForIds() == null || "".equals(item.getCopyForIds())){
continue;
}
String[] copyForIds = item.getCopyForIds().split(",");
for (String str : copyForIds){
if(str.equals(appTokenUser.getId())){
item.setCopyForTypes("1");
continue;
}
}
}
// 处理密送情况
for(MailInboxDTO item : list){
if(item.getSecretIds() == null || "".equals(item.getSecretIds())){
continue;
}
String[] secretIds = item.getSecretIds().split(",");
for (String str : secretIds){
String tempId = "";
String tempName = "";
if(str.equals(appTokenUser.getId())){
tempId = str;
tempName = appTokenUser.getUsername() + "[" + appTokenUser.getName() + "]";
item.setSecretIds(tempId);
item.setSecretNames(tempName);
item.setSecretTypes("1");
continue;
}
}
}
PageInfo<MailInboxDTO> pageInfo = new PageInfo<>(list);
return new SuccessResultList<>(list, pageInfo.getPageNum(), pageInfo.getTotal());
}
@Override
public MailInboxDTO getInboxMail(Map<String, Object> params) {
MailInboxDTO dto = mailDao.getInboxMail(params);
@ -148,6 +209,34 @@ public class MailServiceImpl extends DefaultBaseService implements IMailService
return dto;
}
@Override
public MailInboxDTO getAppInboxMail(String token, Map<String, Object> params) {
MailInboxDTO dto = mailDao.getInboxMail(params);
AppTokenUser appTokenUser = getAppTokenUser(token);
String userId = appTokenUser.getId();
// 处理密送
if(dto.getSecretIds() != null && !"".equals(dto.getSecretIds())){
String[] secretIds = dto.getSecretIds().split(",");
for (String str : secretIds){
String tempId = "";
String tempName = "";
if(str.equals(userId)){
tempId = str;
tempName = appTokenUser.getUsername() + "[" + appTokenUser.getName() + "]";
dto.setSecretIds(tempId);
dto.setSecretNames(tempName);
}
}
}
UserDTO sendDto = userService.get(dto.getCreator());
dto.setCreatorNames(sendDto.getUserUsername() + "[" + sendDto.getUserName() + "]");
/*String spx = "<p><br></p><p><br></p><p><br></p><p>在 "+ dto.getGmtCreate() + ", "
+"<span style='color: blue;'>"+ currentUser.getUserUsername() + " [" + currentUser.getUserName() + "]</span> 写道:" +"</p>" +
"<p><hr style='border: 1px dashed'></hr></p>";
dto.setContentRich(spx + dto.getContentRich());*/
return dto;
}
@Override
public void saveDraftMail(MailSendVO vo) {
String uuid = UUIDUtil.getUUID();
@ -157,6 +246,15 @@ public class MailServiceImpl extends DefaultBaseService implements IMailService
mailDao.saveDraftMail(saveParam);
}
@Override
public void saveAppDraftMail(String token, MailSendVO vo) {
String uuid = UUIDUtil.getUUID();
Map<String, Object> saveParam = HashMapUtil.beanToMap(vo);
saveParam.put("mailId", uuid);
setAppSaveInfo(token, saveParam);
mailDao.saveDraftMail(saveParam);
}
@Override
public SuccessResultList<List<MailSendDTO>> listPageDraftMail(ListPage page) {
UserInfoBO currentUser = securityComponent.getCurrentUser();
@ -171,12 +269,32 @@ public class MailServiceImpl extends DefaultBaseService implements IMailService
return new SuccessResultList<>(list, pageInfo.getPageNum(), pageInfo.getTotal());
}
@Override
public SuccessResultList<List<MailSendDTO>> listPageAppDraftMail(String token, ListPage page) {
AppTokenUser appTokenUser = getAppTokenUser(token);
if(appTokenUser == null || "".equals(appTokenUser.getId())){
return new SuccessResultList<>(new ArrayList<>(0), 0, 0L);
}
PageHelper.startPage(page.getPage(), page.getRows());
Map<String, Object> params = page.getParams();
params.put("creator", appTokenUser.getId());
List<MailSendDTO> list = mailDao.listDraftMail(params);
PageInfo<MailSendDTO> pageInfo = new PageInfo<>(list);
return new SuccessResultList<>(list, pageInfo.getPageNum(), pageInfo.getTotal());
}
@Override
public MailSendDTO getDraftMail(Map<String, Object> params) {
MailSendDTO dto = mailDao.getDraftMail(params);
return dto;
}
@Override
public MailSendDTO getAppDraftMail(String token, Map<String, Object> params) {
MailSendDTO dto = mailDao.getDraftMail(params);
return dto;
}
@Override
public void updateDraftMail(MailSendVO vo) {
Map<String, Object> updateParam = HashMapUtil.beanToMap(vo);
@ -184,6 +302,13 @@ public class MailServiceImpl extends DefaultBaseService implements IMailService
mailDao.updateDraftMail(updateParam);
}
@Override
public void updateAppDraftMail(MailSendVO vo) {
Map<String, Object> updateParam = HashMapUtil.beanToMap(vo);
updateParam.put("gmtCreate", DateUtil.getTime());
mailDao.updateDraftMail(updateParam);
}
@Override
public void saveSendDraftMail(MailSendVO vo) {
Map<String, Object> saveParam = HashMapUtil.beanToMap(vo);
@ -195,6 +320,16 @@ public class MailServiceImpl extends DefaultBaseService implements IMailService
mailDao.deleteDraftMail(vo.getMailId());
}
@Override
public void saveAppSendDraftMail(String token, MailSendVO vo) {
Map<String, Object> saveParam = HashMapUtil.beanToMap(vo);
setAppSaveInfo(token, saveParam);
mailDao.saveSendMail(saveParam);
saveParam.put("mailIdLink", vo.getMailId());
mailDao.saveInboxMail(saveParam);
mailDao.deleteDraftMail(vo.getMailId());
}
@Override
public void deleteSendMail(String ids) {
UserInfoBO currentUser = securityComponent.getCurrentUser();
@ -219,6 +354,30 @@ public class MailServiceImpl extends DefaultBaseService implements IMailService
mailDao.deleteSendMail(ids);
}
@Override
public void deleteAppSendMail(String token, String ids) {
AppTokenUser appTokenUser = getAppTokenUser(token);
if(appTokenUser == null || "".equals(appTokenUser.getId())){
return;
}
String[] idArray = ids.split(",");
if(idArray.length > 1 && "".equals(idArray[0])){
return;
}
// 将发件箱中邮件保存到垃圾箱中
Map<String, Object> param = new HashMap<>(8);
for(String str : idArray){
param.put("mailId", str);
MailSendDTO sendMail = mailDao.getSendMail(param);
Map<String, Object> saveObj = HashMapUtil.beanToMap(sendMail);
saveObj.put("sourceFrom", "send");
saveObj.put("delUserId", appTokenUser.getId());
saveObj.put("delTime", DateUtil.getTime());
mailDao.saveDelMail(saveObj);
}
mailDao.deleteSendMail(ids);
}
@Override
public void deleteInboxMail(String ids) {
UserInfoBO currentUser = securityComponent.getCurrentUser();
@ -244,6 +403,31 @@ public class MailServiceImpl extends DefaultBaseService implements IMailService
mailDao.deleteInboxMail(ids);
}
@Override
public void deleteAppInboxMail(String token, String ids) {
AppTokenUser appTokenUser = getAppTokenUser(token);
if(appTokenUser == null || "".equals(appTokenUser.getId())){
return;
}
String[] idArray = ids.split(",");
if(idArray.length > 1 && "".equals(idArray[0])){
return;
}
// 将收件箱中邮件保存到垃圾箱
Map<String, Object> param = new HashMap<>(8);
for(String str : idArray){
param.put("id", str);
MailInboxDTO inboxMail = mailDao.getInboxMail(param);
Map<String, Object> saveObj = HashMapUtil.beanToMap(inboxMail);
saveObj.put("mailId", saveObj.get("mailIdLink"));
saveObj.put("sourceFrom", "inbox");
saveObj.put("delUserId", appTokenUser.getId());
saveObj.put("delTime", DateUtil.getTime());
mailDao.saveDelMail(saveObj);
}
mailDao.deleteInboxMail(ids);
}
@Override
public void deleteDraftMail(String ids) {
UserInfoBO currentUser = securityComponent.getCurrentUser();
@ -268,6 +452,30 @@ public class MailServiceImpl extends DefaultBaseService implements IMailService
mailDao.deleteDraftMail(ids);
}
@Override
public void deleteAppDraftMail(String token, String ids) {
AppTokenUser appTokenUser = getAppTokenUser(token);
if(appTokenUser == null || "".equals(appTokenUser.getId())){
return;
}
String[] idArray = ids.split(",");
if(idArray.length > 1 && "".equals(idArray[0])){
return;
}
// 将草稿箱中邮件保存到垃圾箱中
Map<String, Object> param = new HashMap<>(8);
for(String str : idArray){
param.put("mailId", str);
MailSendDTO sendMail = mailDao.getDraftMail(param);
Map<String, Object> saveObj = HashMapUtil.beanToMap(sendMail);
saveObj.put("sourceFrom", "draft");
saveObj.put("delUserId", appTokenUser.getId());
saveObj.put("delTime", DateUtil.getTime());
mailDao.saveDelMail(saveObj);
}
mailDao.deleteDraftMail(ids);
}
@Override
public void deleteDelMail(String ids) {
String[] idArray = ids.split(",");
@ -291,12 +499,32 @@ public class MailServiceImpl extends DefaultBaseService implements IMailService
return new SuccessResultList<>(list, pageInfo.getPageNum(), pageInfo.getTotal());
}
@Override
public SuccessResultList<List<MailDelDTO>> listPageAppDelMail(String token, ListPage page) {
AppTokenUser appTokenUser = getAppTokenUser(token);
if(appTokenUser == null || "".equals(appTokenUser.getId())){
return new SuccessResultList<>(new ArrayList<>(0), 0, 0L);
}
PageHelper.startPage(page.getPage(), page.getRows());
Map<String, Object> params = page.getParams();
params.put("delUserId", appTokenUser.getId());
List<MailDelDTO> list = mailDao.listDelMail(params);
PageInfo<MailDelDTO> pageInfo = new PageInfo<>(list);
return new SuccessResultList<>(list, pageInfo.getPageNum(), pageInfo.getTotal());
}
@Override
public MailDelDTO getDelMail(Map<String, Object> params) {
MailDelDTO dto = mailDao.getDelMail(params);
return dto;
}
@Override
public MailDelDTO getAppDelMail(String token, Map<String, Object> params) {
MailDelDTO dto = mailDao.getDelMail(params);
return dto;
}
@Override
public void getRecoverDelMail(String ids) {
String[] idArray = ids.split(",");
@ -334,7 +562,6 @@ public class MailServiceImpl extends DefaultBaseService implements IMailService
}
}
/**
* 崔宝成-日程通知提醒邮件接口
* @param sendUserId 发件人Id

View File

@ -235,6 +235,9 @@
t1.id LIKE CONCAT('%', #{keywords}, '%')
)
</if>
<if test="fileUploadId != null and fileUploadId != ''">
AND t1.file_upload_id = #{fileUploadId}
</if>
<if test="startTime != null and startTime != ''">
AND
LEFT(t1.gmt_create, 10) <![CDATA[ >= ]]> #{startTime}

View File

@ -124,6 +124,42 @@
<!-- 文件类型详情 -->
<select id="get" parameterType="map" resultMap="fileTypeDTO">
SELECT
t1.type_name,
t1.remake,
t1.type_belong,
t1.code,
t1.file_type_id,
<if test="typeBelong != null and typeBelong != '' and typeBelong != '个人文档'">
t2.add_role,
t2.edit_role,
t2.del_role,
t2.share_role,
</if>
1
FROM
data_file_type t1
<if test="typeBelong != null and typeBelong != '' and typeBelong != '个人文档'">
LEFT JOIN data_file_role t2 ON t1.file_type_id = t2.file_upload_id
</if>
WHERE
t1.is_delete = 0
<if test="fileTypeId != null and fileTypeId != ''">
AND t1.file_type_id = #{fileTypeId}
</if>
<if test="typeBelong != null and typeBelong != ''">
AND t1.type_belong = #{typeBelong}
</if>
<if test="creator != null and creator != ''">
AND FIND_IN_SET(#{creator}, t1.creator)
<if test="typeBelong != null and typeBelong != '' and typeBelong != '个人文档'">
OR FIND_IN_SET(#{creator}, t2.user_id)
</if>
</if>
LIMIT 0, 1
</select>
<select id="getName" parameterType="map" resultMap="fileTypeDTO">
SELECT
t1.type_name,
t1.remake,
@ -133,7 +169,8 @@
t2.add_role,
t2.edit_role,
t2.del_role,
t2.share_role
t2.share_role,
1
FROM
data_file_type t1
LEFT JOIN data_file_role t2 ON t1.file_type_id = t2.file_upload_id
@ -142,6 +179,9 @@
<if test="fileTypeId != null and fileTypeId != ''">
AND t1.file_type_id = #{fileTypeId}
</if>
<if test="typeBelong != null and typeBelong != ''">
AND t1.type_belong = #{typeBelong}
</if>
<if test="creator != null and creator != ''">
AND FIND_IN_SET(#{creator}, t1.creator)
OR FIND_IN_SET(#{creator}, t2.user_id)
@ -208,14 +248,18 @@
t1.modifier,
t1.gmt_modified,
t1.is_delete,
t2.add_role,
t2.edit_role,
t2.del_role,
t2.share_role,
<if test="typeBelong != null and typeBelong != '' and typeBelong != '个人文档'">
t2.add_role,
t2.edit_role,
t2.del_role,
t2.share_role,
</if>
1
FROM
data_file_type t1
LEFT JOIN data_file_role t2 ON t1.file_type_id = t2.file_upload_id
<if test="typeBelong != null and typeBelong != '' and typeBelong != '个人文档'">
LEFT JOIN data_file_role t2 ON t1.file_type_id = t2.file_upload_id
</if>
WHERE
t1.is_delete = 0
<if test="keywords != null and keywords != ''">
@ -226,9 +270,14 @@
OR t1.type_belong LIKE CONCAT('%', #{keywords}, '%')
)
</if>
<if test="typeBelong != null and typeBelong != ''">
AND t1.type_belong = #{typeBelong}
</if>
<if test="creator != null and creator != ''">
AND FIND_IN_SET(#{creator}, t1.creator)
OR FIND_IN_SET(#{creator}, t2.user_id)
<if test="typeBelong != null and typeBelong != '' and typeBelong != '个人文档'">
OR FIND_IN_SET(#{creator}, t2.user_id)
</if>
</if>
<if test="startTime != null and startTime != ''">
AND

View File

@ -244,14 +244,18 @@
t1.modifier,
t1.gmt_modified,
t1.is_delete,
t2.add_role,
t2.edit_role,
t2.del_role,
t2.share_role,
<if test="typeBelong != null and typeBelong != '' and typeBelong != '个人文档'">
t2.add_role,
t2.edit_role,
t2.del_role,
t2.share_role,
</if>
1
FROM
data_file_upload t1
LEFT JOIN data_file_role t2 ON t1.file_upload_id = t2.file_upload_id
<if test="typeBelong != null and typeBelong != '' and typeBelong != '个人文档'">
LEFT JOIN data_file_role t2 ON t1.file_upload_id = t2.file_upload_id
</if>
WHERE
t1.is_delete = 0
<if test="keywords != null and keywords != ''">
@ -265,7 +269,9 @@
</if>
<if test="creator != null and creator != ''">
AND FIND_IN_SET(#{creator}, t1.creator)
OR FIND_IN_SET(#{creator}, t2.user_id)
<if test="typeBelong != null and typeBelong != '' and typeBelong != '个人文档'">
OR FIND_IN_SET(#{creator}, t2.user_id)
</if>
</if>
<if test="catalogueId != null and catalogueId != ''">
AND t1.catalogue_id = #{catalogueId}

View File

@ -29,11 +29,11 @@
<input type="text" id="userName" name="userName" class="layui-input" value="" placeholder="点击选择被共享人员" maxlength="36">
</div>
</div>
<div class="layui-form-item" pane>
<div class="layui-form-item" pane style="display: none;">
<label class="layui-form-label">新增权限</label>
<div class="layui-input-block">
<input type="radio" name="addRole" lay-filter="addRole" value="是" title="是" checked>
<input type="radio" name="addRole" lay-filter="addRole" value="否" title="否">
<input type="radio" name="addRole" lay-filter="addRole" value="是" title="是">
<input type="radio" name="addRole" lay-filter="addRole" value="否" title="否" checked>
</div>
</div>
<div class="layui-form-item" pane>
@ -50,11 +50,11 @@
<input type="radio" name="delRole" lay-filter="delRole" value="否" title="否">
</div>
</div>
<div class="layui-form-item" pane>
<div class="layui-form-item" pane style="display: none;">
<label class="layui-form-label">共享权限</label>
<div class="layui-input-block">
<input type="radio" name="shareRole" lay-filter="shareRole" value="是" title="是" checked>
<input type="radio" name="shareRole" lay-filter="shareRole" value="否" title="否">
<input type="radio" name="shareRole" lay-filter="shareRole" value="是" title="是">
<input type="radio" name="shareRole" lay-filter="shareRole" value="否" title="否" checked>
</div>
</div>
<div class="layui-form-item layui-layout-admin">

View File

@ -35,11 +35,11 @@
<input type="text" id="userName" name="userName" class="layui-input" value="" placeholder="点击选择被共享人员" maxlength="36">
</div>
</div>
<div class="layui-form-item">
<div class="layui-form-item" style="display: none;">
<label class="layui-form-label">新增权限</label>
<div class="layui-input-block">
<input type="radio" name="addRole" lay-filter="addRole" value="是" title="是" checked>
<input type="radio" name="addRole" lay-filter="addRole" value="否" title="否">
<input type="radio" name="addRole" lay-filter="addRole" value="是" title="是">
<input type="radio" name="addRole" lay-filter="addRole" value="否" title="否" checked>
</div>
</div>
<div class="layui-form-item">
@ -56,11 +56,11 @@
<input type="radio" name="delRole" lay-filter="delRole" value="否" title="否">
</div>
</div>
<div class="layui-form-item">
<div class="layui-form-item" style="display: none;">
<label class="layui-form-label">共享权限</label>
<div class="layui-input-block">
<input type="radio" name="shareRole" lay-filter="shareRole" value="是" title="是" checked>
<input type="radio" name="shareRole" lay-filter="shareRole" value="否" title="否">
<input type="radio" name="shareRole" lay-filter="shareRole" value="是" title="是">
<input type="radio" name="shareRole" lay-filter="shareRole" value="否" title="否" checked>
</div>
</div>
<div class="layui-form-item layui-layout-admin">

View File

@ -220,7 +220,7 @@
// 文档共享
if('share' == obj.event) {
console.log(data)
share(data.fileTypeId, data.typeBelong);
share(data.fileUploadId, data.typeBelong);
}
});

View File

@ -28,8 +28,14 @@
<!-- 表头按钮组 -->
<script type="text/html" id="headerToolBar">
<div class="layui-btn-group">
<button type="button" class="layui-btn layui-btn-sm" lay-event="saveEvent">
<i class="fa fa-lg fa-plus"></i> 新增
</button>
<button type="button" class="layui-btn layui-btn-normal layui-btn-sm" lay-event="updateEvent">
<i class="fa fa-lg fa-edit"></i> 查看
<i class="fa fa-lg fa-edit"></i> 编辑
</button>
<button type="button" class="layui-btn layui-btn-danger layui-btn-sm" lay-event="removeEvent">
<i class="fa fa-lg fa-trash"></i> 删除
</button>
</div>
</script>
@ -118,6 +124,12 @@
}
return rowData;
}
},
{field: 'share', fixed: 'right', width: 150, title: '共享', align:'center',
templet: function(row) {
var rowData = '<a class="layui-btn layui-btn-xs" lay-event="share">文档共享</a>';
return rowData;
}
}
]
],
@ -313,7 +325,7 @@
area: ['100%', '100%'],
shadeClose: true,
anim: 2,
content: top.restAjax.path('route/fileupload/update?fileUploadId={fileUploadId}&typeBelong={typeBelong}', [checkDatas[0].fileUploadId, checkDatas[0].catalogueName]),
content: top.restAjax.path('route/fileupload/update?fileUploadId={fileUploadId}&typeBelong={typeBelong}', [checkDatas[0].fileUploadId, '个人文档']),
end: function() {
reloadTable();
}

View File

@ -125,7 +125,7 @@
return rowData;
}
},
{field: 'share', fixed: 'right', width: 150, title: '共享', align:'center',
/*{field: 'share', fixed: 'right', width: 150, title: '共享', align:'center',
templet: function(row) {
var rowData;
if(row['shareRole'] == '否') {
@ -137,7 +137,7 @@
}
return rowData;
}
}
}*/
]
],
page: true,

View File

@ -0,0 +1,340 @@
<!doctype html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<base th:href="${#request.getContextPath() + '/'}">
<meta charset="utf-8">
<meta name="renderer" content="webkit">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
<link rel="stylesheet" href="assets/fonts/font-awesome/css/font-awesome.css"/>
<link rel="stylesheet" href="assets/layuiadmin/layui/css/layui.css" media="all">
<link rel="stylesheet" href="assets/layuiadmin/style/admin.css" media="all">
</head>
<body>
<div class="layui-fluid layui-anim layui-anim-fadein">
<div class="layui-row">
<div class="layui-col-md12">
<div class="layui-card">
<div class="layui-card-body">
<div class="test-table-reload-btn" style="margin-bottom: 10px;">
<div class="layui-inline">
<input type="text" id="keywords" class="layui-input search-item" placeholder="输入关键字">
</div>
<button type="button" id="search" class="layui-btn layui-btn-sm">
<i class="fa fa-lg fa-search"></i> 搜索
</button>
</div>
<table class="layui-hide" id="dataTable" lay-filter="dataTable"></table>
<!-- 表头按钮组 -->
<script type="text/html" id="headerToolBar">
<div class="layui-btn-group">
<button type="button" class="layui-btn layui-btn-normal layui-btn-sm" lay-event="updateEvent">
<i class="fa fa-lg fa-edit"></i> 查看
</button>
</div>
</script>
</div>
</div>
</div>
</div>
</div>
<script src="assets/layuiadmin/layui/layui.js"></script>
<script src="assets/js/vendor/viewer/viewer.min.js"></script>
<script>
layui.config({
base: 'assets/layuiadmin/'
}).extend({
index: 'lib/index'
}).use(['index', 'table', 'laydate', 'common'], function() {
var $ = layui.$;
var $win = $(window);
var table = layui.table;
var admin = layui.admin;
var laydate = layui.laydate;
var common = layui.common;
var resizeTimeout = null;
var tableUrl = 'api/fileupload/listpage?typeBelong={typeBelong}';
// 初始化表格
function initTable() {
table.render({
elem: '#dataTable',
id: 'dataTable',
url: top.restAjax.path(tableUrl, ['共享文档']),
width: admin.screen() > 1 ? '100%' : '',
height: $win.height() - 90,
limit: 20,
limits: [20, 40, 60, 80, 100, 200],
toolbar: '#headerToolBar',
request: {
pageName: 'page',
limitName: 'rows'
},
cols: [
[
{type:'checkbox', fixed: 'left'},
{field:'rowNum', width:80, title: '序号', fixed: 'left', align:'center', templet: '<span>{{d.LAY_INDEX}}</span>'},
{field: 'catalogueName', width: 180, title: '类别名称', align:'center',
templet: function(row) {
var rowData = row[this.field];
if(typeof(rowData) === 'undefined' || rowData == null || rowData == '') {
return '-';
}
return rowData;
}
},
{field: 'fileType', width: 180, title: '文件类型', align:'center',
templet: function(row) {
var rowData = row[this.field];
if(typeof(rowData) === 'undefined' || rowData == null || rowData == '') {
return '-';
}
return rowData;
}
},
{field: 'fileModular', width: 180, title: '文件模块', align:'center',
templet: function(row) {
var rowData = row[this.field];
if(typeof(rowData) === 'undefined' || rowData == null || rowData == '') {
return '-';
}
return rowData;
}
},
{field: 'content', width: 180, title: '文件说明', align:'center',
templet: function(row) {
var rowData = row[this.field];
if(typeof(rowData) === 'undefined' || rowData == null || rowData == '') {
return '-';
}
return rowData;
}
},
{field: 'remake', width: 180, title: '备注', align:'center',
templet: function(row) {
var rowData = row[this.field];
if(typeof(rowData) === 'undefined' || rowData == null || rowData == '') {
return '-';
}
return rowData;
}
}
]
],
page: true,
parseData: function(data) {
return {
'code': 0,
'msg': '',
'count': data.total,
'data': data.rows
};
}
});
}
// 文档共享
function share(id, catalogueType) {
if('个人文档' == catalogueType) {
selUser(id);
}else {
layer.open({
type: 2,
title: false,
closeBtn: 0,
area: ['100%', '100%'],
shadeClose: true,
anim: 2,
content: top.restAjax.path('route/filerole/save?fileUploadId={fileUploadId}', [id]),
end: function() {
reloadTable();
}
});
}
}
function selUser(id) {
top.dialog.open({
url: top.restAjax.path('route/department/user/select-user', []),
title: '被共享人员',
width: '1040px',
height: '98%',
onClose: function(data) {
var receiverUserList = [];
console.log(top.dialog.dialogData.selectedDepartmentUsers)
if(top.dialog.dialogData.selectedDepartmentUsers.length > 0) {
receiverUserList = top.dialog.dialogData.selectedDepartmentUsers;
}
if(receiverUserList.length > 0) {
var ids = '';
var userNames = '';
for(var i = 0, item; item = receiverUserList[i++];) {
if(i > 1) {
ids += ',';
userNames += ',';
}
ids += item['userId'];
userNames += item['userName'];
}
saveShare(id, ids);
}
}
});
}
function saveShare(id, userIds) {
var loadLayerIndex;
top.restAjax.post(top.restAjax.path('api/filerole/save', []), {
fileUploadId: id,
userId: userIds
}, null, function(code, data) {
if(code == 200) {
top.dialog.msg('文件共享成功');
}else {
top.dialog.msg('文件共享失败');
}
}, function(code, data) {
top.dialog.msg(data.msg);
}, function() {
loadLayerIndex = top.dialog.msg(top.dataMessage.committing, {icon: 16, time: 0, shade: 0.3});
}, function() {
top.dialog.close(loadLayerIndex);
});
}
function closeBox() {
parent.layer.close(parent.layer.getFrameIndex(window.name));
}
//监听行单击事件
table.on('tool(dataTable)', function(obj){
var data = obj.data;
// 文档共享
if('share' == obj.event) {
console.log(data)
share(data.fileUploadId, data.catalogueType);
}
});
// 重载表格
function reloadTable(currentPage) {
table.reload('dataTable', {
url: top.restAjax.path(tableUrl, ['共享文档']),
where: {
keywords: $('#keywords').val(),
startTime: $('#startTime').val(),
endTime: $('#endTime').val()
},
page: {
curr: currentPage
},
height: $win.height() - 90,
});
}
// 初始化日期
function initDate() {
// 日期选择
laydate.render({
elem: '#startTime',
format: 'yyyy-MM-dd'
});
laydate.render({
elem: '#endTime',
format: 'yyyy-MM-dd'
});
}
initTable();
initDate();
// 删除
function removeData(ids) {
top.dialog.msg(top.dataMessage.delete, {
time: 0,
btn: [top.dataMessage.button.yes, top.dataMessage.button.no],
shade: 0.3,
yes: function (index) {
top.dialog.close(index);
var layIndex;
top.restAjax.delete(top.restAjax.path('api/fileupload/remove/{ids}', [ids]), {}, null, function (code, data) {
top.dialog.msg(top.dataMessage.deleteSuccess, {time: 1000});
reloadTable();
}, function (code, data) {
top.dialog.msg(data.msg);
}, function () {
layIndex = top.dialog.msg(top.dataMessage.deleting, {icon: 16, time: 0, shade: 0.3});
}, function () {
top.dialog.close(layIndex);
});
}
});
}
initTable();
initDate();
// 事件 - 页面变化
$win.on('resize', function() {
clearTimeout(resizeTimeout);
resizeTimeout = setTimeout(function() {
reloadTable();
}, 500);
});
// 事件 - 搜索
$(document).on('click', '#search', function() {
reloadTable(1);
});
// 事件 - 增删改
table.on('toolbar(dataTable)', function(obj) {
var layEvent = obj.event;
var checkStatus = table.checkStatus('dataTable');
var checkDatas = checkStatus.data;
if(layEvent === 'saveEvent') {
layer.open({
type: 2,
title: false,
closeBtn: 0,
area: ['100%', '100%'],
shadeClose: true,
anim: 2,
content: top.restAjax.path('route/fileupload/save?typeBelong={typeBelong}', ['共享文档']),
end: function() {
reloadTable();
}
});
} else if(layEvent === 'updateEvent') {
if(checkDatas.length === 0) {
top.dialog.msg(top.dataMessage.table.selectEdit);
} else if(checkDatas.length > 1) {
top.dialog.msg(top.dataMessage.table.selectOneEdit);
} else {
layer.open({
type: 2,
title: false,
closeBtn: 0,
area: ['100%', '100%'],
shadeClose: true,
anim: 2,
content: top.restAjax.path('route/fileupload/update?fileUploadId={fileUploadId}&typeBelong={typeBelong}&isView={isView}', [checkDatas[0].fileUploadId, '共享文档', 'yes']),
end: function() {
reloadTable();
}
});
}
} else if(layEvent === 'removeEvent') {
if(checkDatas.length === 0) {
top.dialog.msg(top.dataMessage.table.selectDelete);
} else {
var ids = '';
for(var i = 0, item; item = checkDatas[i++];) {
if(i > 1) {
ids += '_';
}
ids += item['fileUploadId'];
}
removeData(ids);
}
}
});
});
</script>
</body>
</html>

View File

@ -159,7 +159,7 @@
<div class="layui-form-item layui-layout-admin">
<div class="layui-input-block">
<div class="layui-footer" style="left: 0;">
<button type="button" class="layui-btn" lay-submit lay-filter="submitForm">提交新增</button>
<button type="button" class="layui-btn" id="submitBtn" lay-submit lay-filter="submitForm">提交新增</button>
<button type="button" class="layui-btn layui-btn-primary close">返回上级</button>
</div>
</div>

View File

@ -29,12 +29,12 @@
<!-- 表头按钮组 -->
<script type="text/html" id="headerToolBar">
<div class="layui-btn-group">
<button type="button" class="layui-btn layui-btn-sm" lay-event="saveEvent">
<!--<button type="button" class="layui-btn layui-btn-sm" lay-event="saveEvent">
<i class="fa fa-lg fa-plus"></i> 新增
</button>
<button type="button" class="layui-btn layui-btn-danger layui-btn-sm" lay-event="removeEvent">
<i class="fa fa-lg fa-trash"></i> 删除
</button>
</button>-->
</div>
</script>
</div>
@ -69,7 +69,6 @@
height: $win.height() - 60,
limit: 20,
limits: [20, 40, 60, 80, 100, 200],
toolbar: '#headerToolBar',
request: {
pageName: 'page',
limitName: 'rows'