文档库--列表,文件上传
This commit is contained in:
+27
-4
@@ -1,11 +1,14 @@
|
||||
package com.jero.modules.oss.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.jero.common.system.base.entity.JeroEntity;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.experimental.Accessors;
|
||||
import com.jero.common.system.base.entity.JeroEntity;
|
||||
import org.jeecgframework.poi.excel.annotation.Excel;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@TableName("oss_file")
|
||||
@@ -15,10 +18,30 @@ public class OSSFile extends JeroEntity {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Excel(name = "文件名称")
|
||||
@ApiModelProperty(value = "文件名称")
|
||||
private String fileName;
|
||||
|
||||
@Excel(name = "文件地址")
|
||||
@ApiModelProperty(value = "文件路径")
|
||||
private String url;
|
||||
|
||||
@ApiModelProperty(value = "关联ID")
|
||||
private String connectId;
|
||||
|
||||
@ApiModelProperty(value = "创建人登录名称")
|
||||
private String createBy;
|
||||
|
||||
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
|
||||
@ApiModelProperty(value = "创建日期")
|
||||
private Date createTime;
|
||||
|
||||
@ApiModelProperty(value = "更新人登录名称")
|
||||
private String updateBy;
|
||||
|
||||
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
|
||||
@ApiModelProperty(value = "更新日期")
|
||||
private Date updateTime;
|
||||
|
||||
@ApiModelProperty(value = "所属部门")
|
||||
private String sysOrgCode;
|
||||
|
||||
}
|
||||
|
||||
+15
@@ -1,6 +1,7 @@
|
||||
package com.jero.modules.oss.service;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.List;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.jero.modules.oss.entity.OSSFile;
|
||||
@@ -9,7 +10,21 @@ import org.springframework.web.multipart.MultipartFile;
|
||||
public interface IOSSFileService extends IService<OSSFile> {
|
||||
|
||||
void upload(MultipartFile multipartFile) throws IOException;
|
||||
/**
|
||||
* 本地文件上传
|
||||
*
|
||||
* @param mf 文件
|
||||
* @param bizPath 自定义路径
|
||||
* @return
|
||||
*/
|
||||
public OSSFile uploadLocal(MultipartFile mf, String bizPath);
|
||||
|
||||
boolean delete(OSSFile ossFile);
|
||||
|
||||
/**
|
||||
* 批量修改
|
||||
* @param ossFileList
|
||||
*/
|
||||
void updateFileInfo(List<OSSFile> ossFileList);
|
||||
|
||||
}
|
||||
|
||||
+96
@@ -1,19 +1,33 @@
|
||||
package com.jero.modules.oss.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.common.util.CommonUtils;
|
||||
import com.jero.common.util.oConvertUtils;
|
||||
import com.jero.common.util.oss.OssBootUtil;
|
||||
import com.jero.modules.oss.entity.OSSFile;
|
||||
import com.jero.modules.oss.mapper.OSSFileMapper;
|
||||
import com.jero.modules.oss.service.IOSSFileService;
|
||||
import me.zhyd.oauth.utils.UuidUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.shiro.SecurityUtils;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.FileCopyUtils;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@Service("ossFileService")
|
||||
public class OSSFileServiceImpl extends ServiceImpl<OSSFileMapper, OSSFile> implements IOSSFileService {
|
||||
|
||||
@Value(value = "${jero.path.upload}")
|
||||
private String uploadpath;
|
||||
|
||||
@Override
|
||||
public void upload(MultipartFile multipartFile) throws IOException {
|
||||
String fileName = multipartFile.getOriginalFilename();
|
||||
@@ -27,6 +41,83 @@ public class OSSFileServiceImpl extends ServiceImpl<OSSFileMapper, OSSFile> impl
|
||||
//update-end--Author:scott Date:20201227 for:JT-361【文件预览】阿里云原生域名可以文件预览,自己映射域名kkfileview提示文件下载失败-------------------
|
||||
this.save(ossFile);
|
||||
}
|
||||
/**
|
||||
* 本地文件上传
|
||||
*
|
||||
* @param mf 文件
|
||||
* @param bizPath 自定义路径
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public OSSFile uploadLocal(MultipartFile mf, String bizPath) {
|
||||
|
||||
//处理文件大小,大于100M抛出异常
|
||||
long fileSize = mf.getSize() / 1024 / 1024;
|
||||
String originalFilename = mf.getOriginalFilename();
|
||||
if (fileSize >= 100) {
|
||||
throw new JeroBootException(originalFilename + "文件大小超出100MB限制, 请压缩或降低文件质量!");
|
||||
}
|
||||
|
||||
OSSFile oSSFile = new OSSFile();
|
||||
try {
|
||||
String ctxPath = uploadpath;
|
||||
String fileName = null;
|
||||
String fileType = null;
|
||||
File file = new File(ctxPath + File.separator + bizPath + File.separator);
|
||||
if (!file.exists()) {
|
||||
file.mkdirs();// 创建文件根目录
|
||||
}
|
||||
String orgName = mf.getOriginalFilename();// 获取文件名
|
||||
orgName = CommonUtils.getFileName(orgName);
|
||||
if (orgName.indexOf(".") != -1) {
|
||||
fileName = orgName.substring(0, orgName.lastIndexOf(".")) + "_" + System.currentTimeMillis() + orgName.substring(orgName.lastIndexOf("."));
|
||||
} else {
|
||||
fileName = orgName + "_" + System.currentTimeMillis();
|
||||
}
|
||||
|
||||
fileType = orgName.substring(orgName.lastIndexOf("."));
|
||||
//判断文件类型
|
||||
if (StringUtils.isNotEmpty(fileType)) {
|
||||
String[] fileTypeArr = {".doc", ".docx", ".xls", ".xlsx", ".pdf", ".png", ".jfif", ".pjpeg", ".jpeg", ".pjp", ".jpg", ".swf", ".bmp",".rar",".zip"};
|
||||
boolean flag = true;
|
||||
for (String fileTypeTemp : fileTypeArr) {
|
||||
if (fileTypeTemp.equalsIgnoreCase(fileType)) {
|
||||
flag = false;
|
||||
}
|
||||
}
|
||||
if (flag) {
|
||||
throw new JeroBootException("只能够上传Word、Excel、PDF、静态图片类型的文件。请重新选择文件!");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
String savePath = file.getPath() + File.separator + fileName;
|
||||
File savefile = new File(savePath);
|
||||
FileCopyUtils.copy(mf.getBytes(), savefile);
|
||||
String dbpath = null;
|
||||
if (oConvertUtils.isNotEmpty(bizPath)) {
|
||||
dbpath = bizPath + File.separator + fileName;
|
||||
} else {
|
||||
dbpath = fileName;
|
||||
}
|
||||
if (dbpath.contains("\\")) {
|
||||
dbpath = dbpath.replace("\\", "/");
|
||||
}
|
||||
|
||||
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
//存入文件表
|
||||
oSSFile.setFileName(orgName);
|
||||
oSSFile.setId(UuidUtils.getUUID());
|
||||
oSSFile.setUrl(file.getPath());
|
||||
oSSFile.setCreateBy(loginUser.getUsername());
|
||||
oSSFile.setCreateTime(new Date());
|
||||
this.save(oSSFile);
|
||||
return oSSFile;
|
||||
} catch (IOException e) {
|
||||
log.error(e.getMessage(), e);
|
||||
}
|
||||
return oSSFile;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean delete(OSSFile ossFile) {
|
||||
@@ -40,4 +131,9 @@ public class OSSFileServiceImpl extends ServiceImpl<OSSFileMapper, OSSFile> impl
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateFileInfo(List<OSSFile> ossFileList) {
|
||||
this.updateBatchById(ossFileList);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+63
-31
@@ -72,50 +72,82 @@ public class CommonController {
|
||||
return Result.error("没有权限,请联系管理员授权");
|
||||
}
|
||||
|
||||
// /**
|
||||
// * 文件上传统一方法
|
||||
// * @param request
|
||||
// * @param response
|
||||
// * @return
|
||||
// */
|
||||
// @PostMapping(value = "/upload")
|
||||
// public Result<OSSFile> upload(HttpServletRequest request, HttpServletResponse response) {
|
||||
// Result<OSSFile> result = new Result<>();
|
||||
// String savePath = "";
|
||||
// String bizPath = request.getParameter("biz");
|
||||
// MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
|
||||
// // 获取上传文件对象
|
||||
// MultipartFile file = multipartRequest.getFile("file");
|
||||
// // 文件类型是否处于黑名单
|
||||
// if(CommonUtils.limitFileSuffix(file.getOriginalFilename(),fileSuffixLimits)){
|
||||
// result.setMessage("该文件类型不允许上传");
|
||||
// result.setSuccess(false);
|
||||
// result.setCode(0);
|
||||
// return result;
|
||||
// }
|
||||
// if(oConvertUtils.isEmpty(bizPath)){
|
||||
// bizPath = "";
|
||||
// }
|
||||
// if(CommonConstant.UPLOAD_TYPE_LOCAL.equals(uploadType)){
|
||||
// // 本地上传
|
||||
// savePath = CommonUtils.uploadLocal(file,bizPath,uploadpath);
|
||||
// }else{
|
||||
// // minio上传
|
||||
// savePath = CommonUtils.upload(file, bizPath, uploadType);
|
||||
// }
|
||||
// if(oConvertUtils.isNotEmpty(savePath)){
|
||||
// //上传成功 进行数据库存储
|
||||
// OSSFile ossFile = new OSSFile();
|
||||
// // 文件名
|
||||
// String fileName = file.getOriginalFilename();
|
||||
// fileName = CommonUtils.getFileName(fileName);
|
||||
// ossFile.setFileName(fileName);
|
||||
// ossFile.setUrl(savePath);
|
||||
// ossFileService.save(ossFile);
|
||||
// result.setMessage(savePath);
|
||||
// result.setResult(ossFile);
|
||||
// result.setSuccess(true);
|
||||
// }else {
|
||||
// result.setMessage("上传失败!");
|
||||
// result.setSuccess(false);
|
||||
// }
|
||||
// return result;
|
||||
// }
|
||||
|
||||
/**
|
||||
* 文件上传统一方法
|
||||
*
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
@PostMapping(value = "/upload")
|
||||
public Result<OSSFile> upload(HttpServletRequest request, HttpServletResponse response) {
|
||||
public Result<?> upload(HttpServletRequest request, HttpServletResponse response) {
|
||||
Result<OSSFile> result = new Result<>();
|
||||
String savePath = "";
|
||||
String bizPath = request.getParameter("biz");
|
||||
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
|
||||
// 获取上传文件对象
|
||||
MultipartFile file = multipartRequest.getFile("file");
|
||||
// 文件类型是否处于黑名单
|
||||
if(CommonUtils.limitFileSuffix(file.getOriginalFilename(),fileSuffixLimits)){
|
||||
result.setMessage("该文件类型不允许上传");
|
||||
result.setSuccess(false);
|
||||
result.setCode(0);
|
||||
return result;
|
||||
}
|
||||
if(oConvertUtils.isEmpty(bizPath)){
|
||||
MultipartFile file = multipartRequest.getFile("file");// 获取上传文件对象
|
||||
if (oConvertUtils.isEmpty(bizPath)) {
|
||||
if (CommonConstant.UPLOAD_TYPE_OSS.equals(uploadType)) {
|
||||
//未指定目录,则用阿里云默认目录 upload
|
||||
bizPath = "upload";
|
||||
} else {
|
||||
bizPath = "";
|
||||
}
|
||||
}
|
||||
if(CommonConstant.UPLOAD_TYPE_LOCAL.equals(uploadType)){
|
||||
// 本地上传
|
||||
savePath = CommonUtils.uploadLocal(file,bizPath,uploadpath);
|
||||
}else{
|
||||
// minio上传
|
||||
savePath = CommonUtils.upload(file, bizPath, uploadType);
|
||||
}
|
||||
if(oConvertUtils.isNotEmpty(savePath)){
|
||||
//上传成功 进行数据库存储
|
||||
OSSFile ossFile = new OSSFile();
|
||||
// 文件名
|
||||
String fileName = file.getOriginalFilename();
|
||||
fileName = CommonUtils.getFileName(fileName);
|
||||
ossFile.setFileName(fileName);
|
||||
ossFile.setUrl(savePath);
|
||||
ossFileService.save(ossFile);
|
||||
result.setMessage(savePath);
|
||||
result.setResult(ossFile);
|
||||
OSSFile oSSFile = ossFileService.uploadLocal(file, bizPath);
|
||||
if (oConvertUtils.isNotEmpty(oSSFile)) {
|
||||
result.setResult(oSSFile);
|
||||
result.setSuccess(true);
|
||||
}else {
|
||||
} else {
|
||||
result.setMessage("上传失败!");
|
||||
result.setSuccess(false);
|
||||
}
|
||||
|
||||
@@ -47,6 +47,40 @@
|
||||
<artifactId>jero-boot-base-generater</artifactId>
|
||||
<version>${jero.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>commons-beanutils</groupId>
|
||||
<artifactId>commons-beanutils</artifactId>
|
||||
<version>1.9.3</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>commons-collections</groupId>
|
||||
<artifactId>commons-collections</artifactId>
|
||||
<version>3.2.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>commons-lang</groupId>
|
||||
<artifactId>commons-lang</artifactId>
|
||||
<version>2.6</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>commons-logging</groupId>
|
||||
<artifactId>commons-logging</artifactId>
|
||||
<version>1.1.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>net.sf.ezmorph</groupId>
|
||||
<artifactId>ezmorph</artifactId>
|
||||
<version>1.0.6</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>net.sf.json-lib</groupId>
|
||||
<artifactId>json-lib</artifactId>
|
||||
<version>2.2.3</version>
|
||||
<classifier>jdk15</classifier>
|
||||
<!-- jdk版本 -->
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
|
||||
</project>
|
||||
</project>
|
||||
|
||||
+8
-3
@@ -1,5 +1,6 @@
|
||||
package com.jero.modules.document.controller;
|
||||
|
||||
import cn.hutool.json.JSON;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
@@ -15,6 +16,7 @@ import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
import net.sf.json.JSONObject;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
@@ -67,9 +69,12 @@ public class BussDocumentLibraryEOController extends JeroController<BussDocument
|
||||
@AutoLog(value = "分页查询")
|
||||
@ApiOperation(value="分页查询", notes="分页查询")
|
||||
@GetMapping(value = "/queryPageInfo")
|
||||
public Result<?> queryPageInfo(@RequestParam(name="parameter",required=false) Map<String,Object> parameter) {
|
||||
bussDocumentLibraryEOService.getInfoPage(parameter);
|
||||
return Result.OK();
|
||||
@ResponseBody
|
||||
public JSONObject queryPageInfo(@RequestParam(name="parameter",required=false) Map<String,Object> parameter) {
|
||||
IPage infoPage = bussDocumentLibraryEOService.getInfoPage(parameter);
|
||||
Result<IPage> ok = Result.OK(infoPage);
|
||||
JSONObject jsonResult = JSONObject.fromObject(ok);
|
||||
return jsonResult;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
+2
-1
@@ -17,7 +17,8 @@ public interface BussDocumentLibraryEOMapper extends BaseMapper<BussDocumentLibr
|
||||
int insertInfo(@Param("insertField") String insertField,
|
||||
@Param("insertValue") String insertValue);
|
||||
|
||||
IPage getInfoPage(@Param("page") Page page,
|
||||
IPage getInfoPage(@Param("page") IPage page,
|
||||
@Param("field") String field,
|
||||
@Param("condition") String condition);
|
||||
|
||||
|
||||
|
||||
+2
-2
@@ -40,8 +40,8 @@
|
||||
values (${insertValue})
|
||||
</insert>
|
||||
|
||||
<select id="getInfoPage" resultType="com.baomidou.mybatisplus.core.metadata.IPage">
|
||||
select * from buss_document_library
|
||||
<select id="getInfoPage" resultType="java.util.LinkedHashMap">
|
||||
select ${field} from buss_document_library
|
||||
${condition}
|
||||
</select>
|
||||
|
||||
|
||||
+2
-1
@@ -1,5 +1,6 @@
|
||||
package com.jero.modules.document.service;
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.jero.modules.document.entity.BussDocumentLibraryEO;
|
||||
|
||||
@@ -85,7 +86,7 @@ public interface IBussDocumentLibraryEOService extends IService<BussDocumentLibr
|
||||
*/
|
||||
void updateInfo(Map<String,Object> map);
|
||||
|
||||
void getInfoPage(Map<String,Object> parameter);
|
||||
IPage getInfoPage(Map<String,Object> parameter);
|
||||
|
||||
|
||||
}
|
||||
|
||||
+331
-355
@@ -13,6 +13,8 @@ import com.jero.modules.document.entity.BussDocumentLibraryEO;
|
||||
import com.jero.modules.document.enums.FieldTypeEnum;
|
||||
import com.jero.modules.document.mapper.BussDocumentLibraryEOMapper;
|
||||
import com.jero.modules.document.service.IBussDocumentLibraryEOService;
|
||||
import com.jero.modules.oss.entity.OSSFile;
|
||||
import com.jero.modules.oss.service.IOSSFileService;
|
||||
import com.jero.modules.tag.entity.OnlCgformArea;
|
||||
import com.jero.modules.tag.service.impl.OnlCgformAreaServiceImpl;
|
||||
import org.apache.commons.lang3.ObjectUtils;
|
||||
@@ -22,162 +24,173 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.*;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.UUID;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @Description: 文档库信息表
|
||||
* @Author: jero-boot
|
||||
* @Date: 2022-01-21
|
||||
* @Date: 2022-01-21
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Service
|
||||
public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLibraryEOMapper, BussDocumentLibraryEO> implements IBussDocumentLibraryEOService {
|
||||
|
||||
@Autowired
|
||||
private OnlCgformFieldServiceImpl onlCgformFieldService;
|
||||
@Autowired
|
||||
private OnlCgformAreaServiceImpl onlCgformAreaServiceImpl;
|
||||
@Autowired
|
||||
private BussDocumentLibraryEOMapper bussDocumentLibraryEOMapper;
|
||||
@Autowired
|
||||
private OnlCgformFieldServiceImpl onlCgformFieldService;
|
||||
@Autowired
|
||||
private OnlCgformAreaServiceImpl onlCgformAreaServiceImpl;
|
||||
@Autowired
|
||||
private BussDocumentLibraryEOMapper bussDocumentLibraryEOMapper;
|
||||
@Autowired
|
||||
private IOSSFileService iOSSFileService;
|
||||
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void deleteById(String id) {
|
||||
removeById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void deleteByIds(List<String> ids) {
|
||||
removeByIds(ids);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public BussDocumentLibraryEO queryById(String id) {
|
||||
return getById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<BussDocumentLibraryEO> queryList() {
|
||||
return list();
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询条件
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<Map<String, Object>> queryCondition(String flag) {
|
||||
List<OnlCgformField> fieldList = onlCgformFieldService.getFieldList(flag);
|
||||
if(fieldList.size() != 0){
|
||||
//过滤出搜索条件()
|
||||
fieldList = fieldList.stream().filter(e-> YesOrNoEnum.YES.getValue().equals(String.valueOf(e.getIsQuery()))).collect(Collectors.toList());
|
||||
}
|
||||
List<Map<String,Object>> list = new ArrayList<>();
|
||||
for (OnlCgformField onlCgformField : fieldList) {
|
||||
Map<String,Object> map = new HashMap<>();
|
||||
map.put("field_show_type",onlCgformField.getFieldShowType());//类型(判断是下拉还是输入框,等等)
|
||||
map.put("dict_field",onlCgformField.getDictField());
|
||||
map.put("db_field_name",onlCgformField.getDbFieldName());//字段
|
||||
map.put("db_field_txt",onlCgformField.getDbFieldTxt());//字段中文名
|
||||
map.put("db_field_en_name",onlCgformField.getDbFieldEnName());//字段英文名
|
||||
list.add(map);
|
||||
}
|
||||
return list;
|
||||
}
|
||||
/**
|
||||
* 查询条件
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<Map<String, Object>> queryCondition(String flag) {
|
||||
List<OnlCgformField> fieldList = onlCgformFieldService.getFieldList(flag);
|
||||
if (fieldList.size() != 0) {
|
||||
//过滤出搜索条件()
|
||||
fieldList = fieldList.stream().filter(e -> YesOrNoEnum.YES.getValue().equals(String.valueOf(e.getIsQuery()))).collect(Collectors.toList());
|
||||
}
|
||||
List<Map<String, Object>> list = new ArrayList<>();
|
||||
for (OnlCgformField onlCgformField : fieldList) {
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
map.put("field_show_type", onlCgformField.getFieldShowType());//类型(判断是下拉还是输入框,等等)
|
||||
map.put("dict_field", onlCgformField.getDictField());
|
||||
map.put("db_field_name", onlCgformField.getDbFieldName());//字段
|
||||
map.put("db_field_txt", onlCgformField.getDbFieldTxt());//字段中文名
|
||||
map.put("db_field_en_name", onlCgformField.getDbFieldEnName());//字段英文名
|
||||
list.add(map);
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表表头
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<Map<String, Object>> getHeader(String flag) {
|
||||
List<OnlCgformField> fieldList = onlCgformFieldService.getFieldList(flag);
|
||||
if(fieldList.size() != 0){
|
||||
//过滤列表字段(is_show_list-->列表是否显示0否 1是)
|
||||
fieldList = fieldList.stream().filter(e-> YesOrNoEnum.YES.getValue().equals(String.valueOf(e.getIsShowList()))).collect(Collectors.toList());
|
||||
}
|
||||
List<Map<String,Object>> list = new ArrayList<>();
|
||||
for (OnlCgformField onlCgformField : fieldList) {
|
||||
Map<String,Object> map = new HashMap<>();
|
||||
map.put("db_field_name",onlCgformField.getDbFieldName());//字段
|
||||
map.put("db_field_txt",onlCgformField.getDbFieldTxt());//字段中文名
|
||||
map.put("db_field_en_name",onlCgformField.getDbFieldEnName());//字段英文名
|
||||
list.add(map);
|
||||
}
|
||||
return list;
|
||||
}
|
||||
/**
|
||||
* 列表表头
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<Map<String, Object>> getHeader(String flag) {
|
||||
List<OnlCgformField> fieldList = onlCgformFieldService.getFieldList(flag);
|
||||
if (fieldList.size() != 0) {
|
||||
//过滤列表字段(is_show_list-->列表是否显示0否 1是)
|
||||
fieldList = fieldList.stream().filter(e -> YesOrNoEnum.YES.getValue().equals(String.valueOf(e.getIsShowList()))).collect(Collectors.toList());
|
||||
}
|
||||
List<Map<String, Object>> list = new ArrayList<>();
|
||||
for (OnlCgformField onlCgformField : fieldList) {
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
map.put("db_field_name", onlCgformField.getDbFieldName());//字段
|
||||
map.put("db_field_txt", onlCgformField.getDbFieldTxt());//字段中文名
|
||||
map.put("db_field_en_name", onlCgformField.getDbFieldEnName());//字段英文名
|
||||
list.add(map);
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增表单
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<Map<String,Object>> getAddForm(String flag) {
|
||||
OnlCgformArea onlCgformArea = new OnlCgformArea();
|
||||
onlCgformArea.setIsModel(ModuleEnum.DOCUMENT_LIBRARY.getValue());
|
||||
//区域管理
|
||||
List<OnlCgformArea> areaList = onlCgformAreaServiceImpl.queryList(onlCgformArea);
|
||||
//字段属性
|
||||
List<OnlCgformField> fieldList = onlCgformFieldService.getFieldList(flag);
|
||||
/**
|
||||
* 新增表单
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<Map<String, Object>> getAddForm(String flag) {
|
||||
OnlCgformArea onlCgformArea = new OnlCgformArea();
|
||||
onlCgformArea.setIsModel(ModuleEnum.DOCUMENT_LIBRARY.getValue());
|
||||
//区域管理
|
||||
List<OnlCgformArea> areaList = onlCgformAreaServiceImpl.queryList(onlCgformArea);
|
||||
//字段属性
|
||||
List<OnlCgformField> fieldList = onlCgformFieldService.getFieldList(flag);
|
||||
|
||||
if(fieldList.size() != 0){
|
||||
//过滤出表单字段(is_show_form-->表单是否显示0否 1是)
|
||||
fieldList = fieldList.stream().filter(e-> YesOrNoEnum.YES.getValue().equals(String.valueOf(e.getIsShowForm()))).collect(Collectors.toList());
|
||||
}
|
||||
List<Map<String,Object>> result = new ArrayList<>();
|
||||
for (OnlCgformArea onlCgformAreaTemp : areaList) {
|
||||
List<OnlCgformField> fieldListTemp = fieldList.stream().filter(e->onlCgformAreaTemp.getSort().toString().equals(e.getShowArea())).collect(Collectors.toList());
|
||||
for (OnlCgformField onlCgformField : fieldListTemp) {
|
||||
Map<String,Object> map = new HashMap<>();
|
||||
map.put("field_show_type",onlCgformField.getFieldShowType());//类型(判断是下拉还是输入框,等等)
|
||||
map.put("dict_field",onlCgformField.getDictField());
|
||||
map.put("db_field_name",onlCgformField.getDbFieldName());//字段
|
||||
map.put("db_field_txt",onlCgformField.getDbFieldTxt());//字段中文名
|
||||
map.put("db_field_en_name",onlCgformField.getDbFieldEnName());//字段英文名
|
||||
map.put("area",onlCgformAreaTemp.getShowArea());//区域
|
||||
map.put("field_must_input",onlCgformField.getFieldMustInput());//区域
|
||||
result.add(map);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
if (fieldList.size() != 0) {
|
||||
//过滤出表单字段(is_show_form-->表单是否显示0否 1是)
|
||||
fieldList = fieldList.stream().filter(e -> YesOrNoEnum.YES.getValue().equals(String.valueOf(e.getIsShowForm()))).collect(Collectors.toList());
|
||||
}
|
||||
List<Map<String, Object>> result = new ArrayList<>();
|
||||
for (OnlCgformArea onlCgformAreaTemp : areaList) {
|
||||
List<OnlCgformField> fieldListTemp = fieldList.stream().filter(e -> onlCgformAreaTemp.getSort().toString().equals(e.getShowArea())).collect(Collectors.toList());
|
||||
for (OnlCgformField onlCgformField : fieldListTemp) {
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
map.put("field_show_type", onlCgformField.getFieldShowType());//类型(判断是下拉还是输入框,等等)
|
||||
map.put("dict_field", onlCgformField.getDictField());
|
||||
map.put("db_field_name", onlCgformField.getDbFieldName());//字段
|
||||
map.put("db_field_txt", onlCgformField.getDbFieldTxt());//字段中文名
|
||||
map.put("db_field_en_name", onlCgformField.getDbFieldEnName());//字段英文名
|
||||
map.put("area", onlCgformAreaTemp.getShowArea());//区域
|
||||
map.put("field_must_input", onlCgformField.getFieldMustInput());//区域
|
||||
result.add(map);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 详情,编辑数据查询
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<Map<String,Object>> getDocumentInfoById(String id) {
|
||||
LambdaQueryWrapper<BussDocumentLibraryEO> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(BussDocumentLibraryEO::getId,id);
|
||||
//通过id查询数据
|
||||
List<Map<String, Object>> dateList = bussDocumentLibraryEOMapper.selectMaps(queryWrapper);
|
||||
return dateList;
|
||||
/**
|
||||
* 详情,编辑数据查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<Map<String, Object>> getDocumentInfoById(String id) {
|
||||
LambdaQueryWrapper<BussDocumentLibraryEO> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(BussDocumentLibraryEO::getId, id);
|
||||
//通过id查询数据
|
||||
List<Map<String, Object>> dateList = bussDocumentLibraryEOMapper.selectMaps(queryWrapper);
|
||||
return dateList;
|
||||
// //区域管理
|
||||
// List<OnlCgformArea> areaList = onlCgformAreaServiceImpl.queryList();
|
||||
// //字段属性
|
||||
@@ -208,275 +221,238 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
||||
// result.add(map);
|
||||
// }
|
||||
// }
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增数据
|
||||
* @param map
|
||||
*/
|
||||
public void addInfo(Map<String,Object> map){
|
||||
//字段属性
|
||||
List<OnlCgformField> fieldList = onlCgformFieldService.getFieldList(ModuleEnum.DOCUMENT_LIBRARY.getValue());
|
||||
//时间类型字段
|
||||
List<OnlCgformField> fieldDateList = fieldList.stream().filter(e->"Date".equals(e.getDbType())).collect(Collectors.toList());
|
||||
//文件类型字段
|
||||
List<OnlCgformField> fieldFileList = fieldList.stream().filter(e->"file".equals(e.getFieldShowType())).collect(Collectors.toList());
|
||||
//以下3行代码为测试数据(暂时保留)
|
||||
/**
|
||||
* 新增数据
|
||||
*
|
||||
* @param map
|
||||
*/
|
||||
public void addInfo(Map<String, Object> map) {
|
||||
//字段属性
|
||||
List<OnlCgformField> fieldList = onlCgformFieldService.getFieldList(ModuleEnum.DOCUMENT_LIBRARY.getValue());
|
||||
//时间类型字段
|
||||
List<OnlCgformField> fieldDateList = fieldList.stream().filter(e -> "Date".equals(e.getDbType())).collect(Collectors.toList());
|
||||
//文件类型字段
|
||||
List<OnlCgformField> fieldFileList = fieldList.stream().filter(e -> "file".equals(e.getFieldShowType())).collect(Collectors.toList());
|
||||
//以下3行代码为测试数据(暂时保留)
|
||||
// LambdaQueryWrapper<BussDocumentLibraryEO> queryWrapper = new LambdaQueryWrapper<>();
|
||||
// queryWrapper.eq(BussDocumentLibraryEO::getId,"1");
|
||||
// List<Map<String, Object>> dateList = bussDocumentLibraryEOMapper.selectMaps(queryWrapper);
|
||||
String mustFields = "id,create_by,create_time,update_by,update_time,sys_org_code";
|
||||
String mustValues = getMustValues();
|
||||
//字段
|
||||
StringBuilder fieldsBuilder = new StringBuilder();
|
||||
//数据值
|
||||
StringBuilder valuesBuilder = new StringBuilder();
|
||||
String mustFields = "id,create_by,create_time,update_by,update_time,sys_org_code";
|
||||
String mustValues = getMustValues();
|
||||
//字段
|
||||
StringBuilder fieldsBuilder = new StringBuilder();
|
||||
//数据值
|
||||
StringBuilder valuesBuilder = new StringBuilder();
|
||||
// for (Map.Entry<String, Object> entry : dateList.get(0).entrySet()) {
|
||||
for (Map.Entry<String, Object> entry : map.entrySet()) {
|
||||
String key = entry.getKey();
|
||||
Object value = entry.getValue();
|
||||
List<OnlCgformField> fieldDate = fieldDateList.stream().filter(e -> entry.getKey().equals(e.getDbFieldName())).collect(Collectors.toList());
|
||||
//处理发布日期,标准实施日期
|
||||
//以下注释代码为测试数据(暂时保留)
|
||||
for (Map.Entry<String, Object> entry : map.entrySet()) {
|
||||
String key = entry.getKey();
|
||||
Object value = entry.getValue();
|
||||
List<OnlCgformField> fieldDate = fieldDateList.stream().filter(e -> entry.getKey().equals(e.getDbFieldName())).collect(Collectors.toList());
|
||||
//处理发布日期,标准实施日期
|
||||
//以下注释代码为测试数据(暂时保留)
|
||||
// if(!"id".equals(key)
|
||||
// &&!"create_by".equals(key)
|
||||
// &&!"create_time".equals(key)
|
||||
// &&!"update_by".equals(key)
|
||||
// &&!"update_time".equals(key)
|
||||
// &&!"sys_org_code".equals(key)){
|
||||
if("issue_time".equals(key) || "implement_time".equals(key)){
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
if(ObjectUtils.isNotEmpty(value)){
|
||||
value = "str_to_date('" + sdf.format(value) + "','%Y-%m-%d %H:%i:%s')";
|
||||
}
|
||||
valuesBuilder.append("," + value);
|
||||
}else{
|
||||
valuesBuilder.append("," + "'" + value + "'");
|
||||
}
|
||||
fieldsBuilder.append("," + key);
|
||||
if ("issue_time".equals(key) || "implement_time".equals(key)) {
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
if (ObjectUtils.isNotEmpty(value)) {
|
||||
value = "str_to_date('" + sdf.format(value) + "','%Y-%m-%d %H:%i:%s')";
|
||||
}
|
||||
valuesBuilder.append("," + value);
|
||||
} else {
|
||||
//处理文件类型
|
||||
List<OnlCgformField> fieldFile = fieldFileList.stream().filter(e -> entry.getKey().equals(e.getDbFieldName())).collect(Collectors.toList());
|
||||
if (fieldFile.size() != 0 && ObjectUtils.isNotEmpty(value)) {
|
||||
|
||||
String valueTemp = UUID.randomUUID().toString().replace("-", "");
|
||||
value = valueTemp;
|
||||
//修改文件表关联信息connect_id
|
||||
List<OSSFile> oSSFileList = new ArrayList<>();
|
||||
for (String fileId : value.toString().split(",")) {
|
||||
OSSFile ossFile = new OSSFile();
|
||||
ossFile.setId(fileId);
|
||||
ossFile.setConnectId(valueTemp);
|
||||
oSSFileList.add(ossFile);
|
||||
}
|
||||
iOSSFileService.updateFileInfo(oSSFileList);
|
||||
}
|
||||
valuesBuilder.append("," + "'" + value + "'");
|
||||
}
|
||||
fieldsBuilder.append("," + key);
|
||||
// }
|
||||
|
||||
}
|
||||
|
||||
String insertField = mustFields + fieldsBuilder.toString();
|
||||
String insertValue = mustValues + valuesBuilder.toString();
|
||||
bussDocumentLibraryEOMapper.insertInfo(insertField, insertValue);
|
||||
|
||||
}
|
||||
|
||||
//处理文件类型
|
||||
List<OnlCgformField> fieldFile = fieldFileList.stream().filter(e->entry.getKey().equals(e.getDbFieldName())).collect(Collectors.toList());
|
||||
if(fieldFile.size() != 0 && ObjectUtils.isNotEmpty(value)){
|
||||
|
||||
String valueTemp = UUID.randomUUID().toString().replace("-", "");
|
||||
//修改文件表关联信息connect_id
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
String insertField = mustFields + fieldsBuilder.toString();
|
||||
String insertValue = mustValues + valuesBuilder.toString();
|
||||
bussDocumentLibraryEOMapper.insertInfo(insertField,insertValue);
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑数据
|
||||
* @param map
|
||||
*/
|
||||
public void updateInfo(Map<String,Object> map){
|
||||
//字段属性
|
||||
List<OnlCgformField> fieldList = onlCgformFieldService.getFieldList(ModuleEnum.DOCUMENT_LIBRARY.getValue());
|
||||
//时间类型字段
|
||||
List<OnlCgformField> fieldDateList = fieldList.stream().filter(e->"Date".equals(e.getDbType())).collect(Collectors.toList());
|
||||
//文件类型字段
|
||||
List<OnlCgformField> fieldFileList = fieldList.stream().filter(e->"file".equals(e.getFieldShowType())).collect(Collectors.toList());
|
||||
//一下3行代码为测试数据(暂时保留)
|
||||
/**
|
||||
* 编辑数据
|
||||
*
|
||||
* @param map
|
||||
*/
|
||||
public void updateInfo(Map<String, Object> map) {
|
||||
//字段属性
|
||||
List<OnlCgformField> fieldList = onlCgformFieldService.getFieldList(ModuleEnum.DOCUMENT_LIBRARY.getValue());
|
||||
//时间类型字段
|
||||
List<OnlCgformField> fieldDateList = fieldList.stream().filter(e -> "Date".equals(e.getDbType())).collect(Collectors.toList());
|
||||
//文件类型字段
|
||||
List<OnlCgformField> fieldFileList = fieldList.stream().filter(e -> "file".equals(e.getFieldShowType())).collect(Collectors.toList());
|
||||
//一下3行代码为测试数据(暂时保留)
|
||||
// LambdaQueryWrapper<BussDocumentLibraryEO> queryWrapper = new LambdaQueryWrapper<>();
|
||||
// queryWrapper.eq(BussDocumentLibraryEO::getId,"1");
|
||||
// List<Map<String, Object>> dateList = bussDocumentLibraryEOMapper.selectMaps(queryWrapper);
|
||||
//字段
|
||||
StringBuilder fieldsBuilder = new StringBuilder();
|
||||
//数据值
|
||||
StringBuilder valuesBuilder = new StringBuilder();
|
||||
//字段
|
||||
StringBuilder fieldsBuilder = new StringBuilder();
|
||||
//数据值
|
||||
StringBuilder valuesBuilder = new StringBuilder();
|
||||
// for (Map.Entry<String, Object> entry : dateList.get(0).entrySet()) {
|
||||
for (Map.Entry<String, Object> entry : map.entrySet()) {
|
||||
String key = entry.getKey();
|
||||
Object value = entry.getValue();
|
||||
//处理修改人和修改时间
|
||||
if("update_by".equals(key)){
|
||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
value = sysUser.getUsername();
|
||||
}
|
||||
if( "update_time".equals(key)){
|
||||
value = new Date();
|
||||
}
|
||||
List<OnlCgformField> fieldDate = fieldDateList.stream().filter(e -> entry.getKey().equals(e.getDbFieldName())).collect(Collectors.toList());
|
||||
//处理时间类型
|
||||
if(fieldDate.size() != 0){
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
if(ObjectUtils.isNotEmpty(value)){
|
||||
value = "str_to_date('" + sdf.format(value) + "','%Y-%m-%d %H:%i:%s')";
|
||||
}
|
||||
valuesBuilder.append(value + ",");
|
||||
}else{
|
||||
valuesBuilder.append("'" + value + "'" + ",");
|
||||
}
|
||||
fieldsBuilder.append(key + ",");
|
||||
for (Map.Entry<String, Object> entry : map.entrySet()) {
|
||||
String key = entry.getKey();
|
||||
Object value = entry.getValue();
|
||||
//处理修改人和修改时间
|
||||
if ("update_by".equals(key)) {
|
||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
value = sysUser.getUsername();
|
||||
}
|
||||
if ("update_time".equals(key)) {
|
||||
value = new Date();
|
||||
}
|
||||
List<OnlCgformField> fieldDate = fieldDateList.stream().filter(e -> entry.getKey().equals(e.getDbFieldName())).collect(Collectors.toList());
|
||||
//处理时间类型
|
||||
if (fieldDate.size() != 0) {
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
if (ObjectUtils.isNotEmpty(value)) {
|
||||
value = "str_to_date('" + sdf.format(value) + "','%Y-%m-%d %H:%i:%s')";
|
||||
}
|
||||
valuesBuilder.append(value + ",");
|
||||
} else {
|
||||
valuesBuilder.append("'" + value + "'" + ",");
|
||||
}
|
||||
fieldsBuilder.append(key + ",");
|
||||
|
||||
//处理文件类型
|
||||
List<OnlCgformField> fieldFile = fieldFileList.stream().filter(e->entry.getKey().equals(e.getDbFieldName())).collect(Collectors.toList());
|
||||
if(fieldFile.size() != 0 && ObjectUtils.isNotEmpty(value)){
|
||||
//处理文件类型
|
||||
List<OnlCgformField> fieldFile = fieldFileList.stream().filter(e -> entry.getKey().equals(e.getDbFieldName())).collect(Collectors.toList());
|
||||
if (fieldFile.size() != 0 && ObjectUtils.isNotEmpty(value)) {
|
||||
|
||||
String valueTemp = UUID.randomUUID().toString().replace("-", "");
|
||||
//修改文件表关联信息connect_id
|
||||
String valueTemp = UUID.randomUUID().toString().replace("-", "");
|
||||
//修改文件表关联信息connect_id
|
||||
|
||||
}
|
||||
}
|
||||
String insertField = fieldsBuilder.substring(0, fieldsBuilder.length() - 1);
|
||||
String insertValue = valuesBuilder.substring(0, valuesBuilder.length() - 1);
|
||||
//先删除在新增.
|
||||
}
|
||||
}
|
||||
String insertField = fieldsBuilder.substring(0, fieldsBuilder.length() - 1);
|
||||
String insertValue = valuesBuilder.substring(0, valuesBuilder.length() - 1);
|
||||
//先删除在新增.
|
||||
// bussDocumentLibraryEOMapper.deleteById((String)dateList.get(0).get("id"));
|
||||
bussDocumentLibraryEOMapper.deleteById((String)map.get("id"));
|
||||
bussDocumentLibraryEOMapper.insertInfo(insertField,insertValue);
|
||||
bussDocumentLibraryEOMapper.deleteById((String) map.get("id"));
|
||||
bussDocumentLibraryEOMapper.insertInfo(insertField, insertValue);
|
||||
|
||||
}
|
||||
private String getMustValues(){
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
String mustValue = "'"+ UUID.randomUUID().toString().replace("-", "") + "','" + sysUser.getUsername() + "',"
|
||||
+"str_to_date('" + sdf.format(new Date()) + "','%Y-%m-%d %H:%i:%s')"+ ",'"+sysUser.getUsername() + "',"
|
||||
+"str_to_date('" + sdf.format(new Date()) + "','%Y-%m-%d %H:%i:%s')"+ ",'"+sysUser.getOrgCode()+ "'";
|
||||
return mustValue;
|
||||
}
|
||||
}
|
||||
|
||||
public void getInfoPage(Map<String,Object> parameter){
|
||||
//过滤查询条件字段类型使用
|
||||
List<Map<String, Object>> mapList = queryCondition("1");
|
||||
private String getMustValues() {
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
String mustValue = "'" + UUID.randomUUID().toString().replace("-", "") + "','" + sysUser.getUsername() + "',"
|
||||
+ "str_to_date('" + sdf.format(new Date()) + "','%Y-%m-%d %H:%i:%s')" + ",'" + sysUser.getUsername() + "',"
|
||||
+ "str_to_date('" + sdf.format(new Date()) + "','%Y-%m-%d %H:%i:%s')" + ",'" + sysUser.getOrgCode() + "'";
|
||||
return mustValue;
|
||||
}
|
||||
|
||||
//测试数据(查询条件, 暂时使用mapTemp, 提交代码的时候使用parameter)
|
||||
Map<String,Object> mapTemp = new HashMap<>();
|
||||
// mapTemp.put("orderByField","issue_time");//测试数据
|
||||
// mapTemp.put("orderBy","1");//测试数据
|
||||
public IPage getInfoPage(Map<String, Object> parameter) {
|
||||
//过滤查询条件字段类型使用
|
||||
List<Map<String, Object>> mapList = queryCondition("1");
|
||||
|
||||
for (Map<String, Object> map : mapList) {
|
||||
for (Map.Entry<String, Object> entry : map.entrySet()) {
|
||||
String key = entry.getKey();
|
||||
String value = (String) entry.getValue();
|
||||
int a= 0;
|
||||
if("db_field_name".equals(key)){
|
||||
mapTemp.put(value,"aaa");//测试数据
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//查询条件
|
||||
StringBuilder conditionSb = new StringBuilder("where 1 = 1");
|
||||
//需要查询的字段
|
||||
List<OnlCgformField> fieldList = onlCgformFieldService.getFieldList("1");
|
||||
if (fieldList.size() != 0) {
|
||||
//过滤列表字段(is_show_list-->列表是否显示0否 1是)
|
||||
fieldList = fieldList.stream().filter(e -> YesOrNoEnum.YES.getValue().equals(String.valueOf(e.getIsShowList()))).collect(Collectors.toList());
|
||||
}
|
||||
List<String> fieldListTemp = fieldList.stream().map(OnlCgformField::getDbFieldName).collect(Collectors.toList());
|
||||
List<String> fieldListNew = new ArrayList<>();
|
||||
fieldListNew.add("id");
|
||||
//转时间格式
|
||||
for (String field : fieldListTemp) {
|
||||
if ("issue_time".equals(field) || "implement_time".equals(field)) {
|
||||
fieldListNew.add("date_format(" + field + ", '%Y-%m-%d %H:%i:%s')");
|
||||
} else {
|
||||
fieldListNew.add(field);
|
||||
}
|
||||
}
|
||||
|
||||
for (Map.Entry<String, Object> entry : mapTemp.entrySet()) {
|
||||
String key = entry.getKey();
|
||||
String value = (String) entry.getValue();
|
||||
if(StringUtils.isNotBlank(value)){
|
||||
for (Map<String, Object> map : mapList) {
|
||||
String fieldName = (String)map.get("db_field_name");//字段
|
||||
if(key.equals(fieldName)){
|
||||
//字段类型(判断是输入框还是下拉,等等)
|
||||
String fieldType = (String) map.get("field_show_type");//字段类型
|
||||
//查询条件
|
||||
StringBuilder conditionSb = new StringBuilder("where 1 = 1");
|
||||
|
||||
if(FieldTypeEnum.TEXT.getValue().equals(fieldType)){
|
||||
//输入框
|
||||
conditionSb.append(" and " + key + " like concat(concat('%','" + value + "'),'%')");
|
||||
if (ObjectUtils.isNotEmpty(parameter)) {
|
||||
for (Map.Entry<String, Object> entry : parameter.entrySet()) {
|
||||
String key = entry.getKey();
|
||||
String value = (String) entry.getValue();
|
||||
if (StringUtils.isNotBlank(value)) {
|
||||
for (Map<String, Object> map : mapList) {
|
||||
String fieldName = (String) map.get("db_field_name");//字段
|
||||
if (key.equals(fieldName)) {
|
||||
//字段类型(判断是输入框还是下拉,等等)
|
||||
String fieldType = (String) map.get("field_show_type");//字段类型
|
||||
|
||||
}else if(FieldTypeEnum.LIST.getValue().equals(fieldType)
|
||||
|| FieldTypeEnum.LIST_MULTI.getValue().equals(fieldType)){
|
||||
StringBuilder valueSb = new StringBuilder();
|
||||
for (String valueTemp : value.split(",")) {
|
||||
valueSb.append("'" + valueTemp + "',");
|
||||
}
|
||||
String substring = valueSb.substring(0, valueSb.length() - 1);
|
||||
//下拉单选或下拉多选
|
||||
conditionSb.append(" and " + key + " in("+substring+")");
|
||||
if (FieldTypeEnum.TEXT.getValue().equals(fieldType)) {
|
||||
//输入框
|
||||
conditionSb.append(" and " + key + " like concat(concat('%','" + value + "'),'%')");
|
||||
|
||||
}else if(FieldTypeEnum.DATE.getValue().equals(fieldType)){
|
||||
value = "2022-01-24";
|
||||
//日期(区分单日期还时间范围)
|
||||
if(value.contains(",")){
|
||||
conditionSb.append(" and " +"date_format("+ key + ",'%Y-%m-%d') >= '" + value.split(",")[0] + "'"
|
||||
+ " and " +"date_format("+ key + ",'%Y-%m-%d') <= '" + value.split(",")[1] + "'");
|
||||
}else{
|
||||
conditionSb.append(" and " +"date_format("+ key + ",'%Y-%m-%d') = '" + value + "'");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
//处理列表表头排序
|
||||
if(StringUtils.isNotBlank((String) mapTemp.get("orderByField"))){
|
||||
conditionSb.append(" order by " + (String) mapTemp.get("orderByField"));
|
||||
if("1".equals((String) mapTemp.get("orderBy"))){
|
||||
conditionSb.append(" asc");//正序
|
||||
}else if("2".equals((String) mapTemp.get("orderBy"))){
|
||||
conditionSb.append(" desc");//倒序
|
||||
}
|
||||
}else{
|
||||
conditionSb.append(" order by create_time desc");
|
||||
}
|
||||
int pageNo = 1;
|
||||
int pageSize = 10;
|
||||
} else if (FieldTypeEnum.LIST.getValue().equals(fieldType)
|
||||
|| FieldTypeEnum.LIST_MULTI.getValue().equals(fieldType)) {
|
||||
StringBuilder valueSb = new StringBuilder();
|
||||
for (String valueTemp : value.split(",")) {
|
||||
valueSb.append("'" + valueTemp + "',");
|
||||
}
|
||||
String substring = valueSb.substring(0, valueSb.length() - 1);
|
||||
//下拉单选或下拉多选
|
||||
conditionSb.append(" and " + key + " in(" + substring + ")");
|
||||
|
||||
} else if (FieldTypeEnum.DATE.getValue().equals(fieldType)) {
|
||||
value = "2022-01-24";
|
||||
//日期(区分单日期还时间范围)
|
||||
if (value.contains(",")) {
|
||||
conditionSb.append(" and " + "date_format(" + key + ",'%Y-%m-%d') >= '" + value.split(",")[0] + "'"
|
||||
+ " and " + "date_format(" + key + ",'%Y-%m-%d') <= '" + value.split(",")[1] + "'");
|
||||
} else {
|
||||
conditionSb.append(" and " + "date_format(" + key + ",'%Y-%m-%d') = '" + value + "'");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
//处理列表表头排序
|
||||
if (StringUtils.isNotBlank((String) parameter.get("orderByField"))) {
|
||||
conditionSb.append(" order by " + (String) parameter.get("orderByField"));
|
||||
if ("1".equals((String) parameter.get("orderBy"))) {
|
||||
conditionSb.append(" asc");//正序
|
||||
} else if ("2".equals((String) parameter.get("orderBy"))) {
|
||||
conditionSb.append(" desc");//倒序
|
||||
}
|
||||
} else {
|
||||
conditionSb.append(" order by create_time desc");
|
||||
}
|
||||
}
|
||||
int pageNo = 1;
|
||||
int pageSize = 10;
|
||||
// int pageNo = Integer.parseInt(mapTemp.get("pageNo").toString());
|
||||
// int pageSize = Integer.parseInt(mapTemp.get("pageSize").toString());
|
||||
Page page = new Page(pageNo, pageSize);
|
||||
|
||||
IPage infoPage = bussDocumentLibraryEOMapper.getInfoPage(page, conditionSb.toString());
|
||||
int a = 0;
|
||||
|
||||
// for (Map<String, Object> map : mapList) {
|
||||
//
|
||||
//
|
||||
// String key = (String) map.get("db_field_name");//字段名
|
||||
//// String value = (String) map.get("value");//字段值
|
||||
// String value = "qqqqqq,wwww";//字段值
|
||||
// String fieldType = (String) map.get("field_show_type");//字段类型
|
||||
//
|
||||
// if(StringUtils.isNotBlank(value)){
|
||||
// if(FieldTypeEnum.TEXT.getValue().equals(fieldType)){
|
||||
// //输入框
|
||||
// conditionSb.append(" and " + key + " like concat(concat('%','" + value + "'),'%')");
|
||||
//// conditionSb.append(" and " + key +"='"+value+"' ");
|
||||
//
|
||||
//
|
||||
// }else if(FieldTypeEnum.LIST.getValue().equals(fieldType)
|
||||
// || FieldTypeEnum.LIST_MULTI.getValue().equals(fieldType)){
|
||||
// StringBuilder valueSb = new StringBuilder();
|
||||
// for (String valueTemp : value.split(",")) {
|
||||
// valueSb.append("'" + valueTemp + "',");
|
||||
// }
|
||||
// String substring = valueSb.substring(0, valueSb.length() - 1);
|
||||
// //下拉单选或下拉多选
|
||||
// conditionSb.append(" and " + key + " in("+substring+")");
|
||||
//
|
||||
//
|
||||
// }else if(FieldTypeEnum.DATE.getValue().equals(fieldType)){
|
||||
// value = "2022-01-24,2022-01-24";
|
||||
// //日期
|
||||
// if(value.contains(",")){
|
||||
// conditionSb.append(" and " +"date_format("+ key + ",'%Y-%m-%d') >= '" + value.split(",")[0] + "'"
|
||||
// + " and " +"date_format("+ key + ",'%Y-%m-%d') >= '" + value.split(",")[1] + "'");
|
||||
// }else{
|
||||
// conditionSb.append(" and " +"date_format("+ key + ",'%Y-%m-%d') >= '" + value + "'");
|
||||
// }
|
||||
//
|
||||
//
|
||||
//
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// }
|
||||
IPage page = new Page(pageNo, pageSize);
|
||||
|
||||
|
||||
IPage infoPage = bussDocumentLibraryEOMapper.getInfoPage(page, " " + StringUtils.join(fieldListNew, ","), conditionSb.toString());
|
||||
return infoPage;
|
||||
|
||||
|
||||
|
||||
|
||||
// bussDocumentLibraryEOMapper.getInfoPage();
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -135,7 +135,8 @@ spring:
|
||||
# username: root
|
||||
# password: 123456
|
||||
# driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
url: jdbc:mysql://121.36.69.172:3307/laws_weilai?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
|
||||
url: jdbc:mysql://121.36.69.172:3307/laws_weilai?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai&useSSL=false
|
||||
# url: jdbc:mysql://121.36.69.172:3307/laws_weilai?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
|
||||
username: root
|
||||
password: hzwlsoft.com
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
@@ -180,7 +181,7 @@ jero :
|
||||
uploadType: local
|
||||
path :
|
||||
#文件上传根目录 设置
|
||||
upload: D://opt//upFiles
|
||||
upload: E://opt//upFiles
|
||||
#webapp文件路径
|
||||
webapp: D://opt//webapp
|
||||
shiro:
|
||||
|
||||
@@ -124,7 +124,7 @@
|
||||
}
|
||||
getAction(this.url.tableList, params).then((res) => {
|
||||
if (res.success) {
|
||||
this.jsonBody = res.result || []
|
||||
this.jsonBody = res.result.records
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user