diff --git a/src/main/java/com/bonus/imgTool/Enum/FileSourceTypeEnum.java b/src/main/java/com/bonus/imgTool/Enum/FileSourceTypeEnum.java new file mode 100644 index 0000000..50bef21 --- /dev/null +++ b/src/main/java/com/bonus/imgTool/Enum/FileSourceTypeEnum.java @@ -0,0 +1,26 @@ +package com.bonus.imgTool.Enum; + +import lombok.Getter; + +@Getter +public enum FileSourceTypeEnum { + + FILE_SOURCE_TYPE_1("1", "安全违章-违章照片"), + FILE_SOURCE_TYPE_2("2", "安全违章-整改照片"), + FILE_SOURCE_TYPE_3("3", "质量检查-缺陷问题照片"), + FILE_SOURCE_TYPE_4("4", "质量检查-整改照片"), + FILE_SOURCE_TYPE_5("5", "安全措施落实-现场照片"), + FILE_SOURCE_TYPE_6("6", "协调照片-建设前"), + FILE_SOURCE_TYPE_7("7", "协调照片-建设中"), + FILE_SOURCE_TYPE_8("8", "协调照片-恢复后"), + FILE_SOURCE_TYPE_9("9", "重要事项及宣传-照片"); + private final String status; + private final String statusName; + + FileSourceTypeEnum(String status, String statusName) { + this.status = status; + this.statusName = statusName; + } + + +} diff --git a/src/main/java/com/bonus/imgTool/backstage/entity/QueryParamDto.java b/src/main/java/com/bonus/imgTool/backstage/entity/QueryParamDto.java index 7d40eb2..af322b9 100644 --- a/src/main/java/com/bonus/imgTool/backstage/entity/QueryParamDto.java +++ b/src/main/java/com/bonus/imgTool/backstage/entity/QueryParamDto.java @@ -14,6 +14,8 @@ import java.util.List; @Data public class QueryParamDto { + private String imgPath; + /** * 1.我的收藏 2.最近上传 */ diff --git a/src/main/java/com/bonus/imgTool/backstage/entity/SynthesisQueryVo.java b/src/main/java/com/bonus/imgTool/backstage/entity/SynthesisQueryVo.java index 5b53f64..504f6d9 100644 --- a/src/main/java/com/bonus/imgTool/backstage/entity/SynthesisQueryVo.java +++ b/src/main/java/com/bonus/imgTool/backstage/entity/SynthesisQueryVo.java @@ -54,4 +54,7 @@ public class SynthesisQueryVo { * 收藏状态 0.未收藏 1.已收藏 */ private String collectStatus; + + /**重要事项宣传类标题*/ + private String title; } diff --git a/src/main/java/com/bonus/imgTool/imageUpload/controller/SafetyMeasuresController.java b/src/main/java/com/bonus/imgTool/imageUpload/controller/SafetyMeasuresController.java new file mode 100644 index 0000000..fb6c4b9 --- /dev/null +++ b/src/main/java/com/bonus/imgTool/imageUpload/controller/SafetyMeasuresController.java @@ -0,0 +1,65 @@ +package com.bonus.imgTool.imageUpload.controller; + +import com.bonus.imgTool.annotation.DecryptAndVerify; +import com.bonus.imgTool.annotation.LogAnnotation; +import com.bonus.imgTool.backstage.entity.QueryParamDto; +import com.bonus.imgTool.imageUpload.dto.SafetyMeasuresReqVo; +import com.bonus.imgTool.imageUpload.dto.SafetyMeasuresVo; +import com.bonus.imgTool.imageUpload.service.SafetyMeasuresService; +import com.bonus.imgTool.system.vo.EncryptedReq; +import com.bonus.imgTool.utils.ServerResponse; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +/** + * 安全措施落实 + */ +@Slf4j +@RestController +@RequestMapping("/safetyMeasure") +public class SafetyMeasuresController { + + @Resource + private SafetyMeasuresService safetyMeasuresService; + + + /** + * 安全措施落实获取列表 + * @param data + * @return + */ + @PostMapping(value = "/getSafetyMeasuresList") + @DecryptAndVerify(decryptedClass = SafetyMeasuresReqVo.class) + @LogAnnotation(operModul = "安全措施落实-查询", operation = "查询照片", operDesc = "系统级事件",operType="查询") + public ServerResponse getSafetyMeasuresList(EncryptedReq data) { + return safetyMeasuresService.getSafetyMeasuresList(data.getData()); + } + + /** + * 安全措施落实删除 + * @param data + * @return + */ + @PostMapping(value = "/deleteSafetyMeasures") + @DecryptAndVerify(decryptedClass = SafetyMeasuresReqVo.class) + @LogAnnotation(operModul = "安全措施落实-删除", operation = "查询照片", operDesc = "系统级事件",operType="查询") + public ServerResponse deleteSafetyMeasures(EncryptedReq data) { + return safetyMeasuresService.deleteSafetyMeasures(data.getData()); + } + + /** + * 安全措施落实新增 + * @param data + * @return + */ + @PostMapping(value = "/addSafetyMeasures") + @DecryptAndVerify(decryptedClass = SafetyMeasuresVo.class) + @LogAnnotation(operModul = "安全措施落实-新增", operation = "查询照片", operDesc = "系统级事件",operType="查询") + public ServerResponse addSafetyMeasures(EncryptedReq data) { + return safetyMeasuresService.addSafetyMeasures(data.getData()); + } +} diff --git a/src/main/java/com/bonus/imgTool/imageUpload/dto/SafetyMeasuresReqVo.java b/src/main/java/com/bonus/imgTool/imageUpload/dto/SafetyMeasuresReqVo.java new file mode 100644 index 0000000..d58fa5c --- /dev/null +++ b/src/main/java/com/bonus/imgTool/imageUpload/dto/SafetyMeasuresReqVo.java @@ -0,0 +1,35 @@ +package com.bonus.imgTool.imageUpload.dto; + +import lombok.Data; + +@Data +public class SafetyMeasuresReqVo { + + /** + * id + */ + private Long id; + + /** + * 工程id + */ + private Long proId; + + /** + * 专业id + */ + private Long majorId; + + /** + * 工序id + */ + private Long gxId; + + /** + * 关键字 + */ + private String keyWord; + + private int pageNum = 1; + private int pageSize = 15; +} diff --git a/src/main/java/com/bonus/imgTool/imageUpload/dto/SafetyMeasuresVo.java b/src/main/java/com/bonus/imgTool/imageUpload/dto/SafetyMeasuresVo.java new file mode 100644 index 0000000..9df67ba --- /dev/null +++ b/src/main/java/com/bonus/imgTool/imageUpload/dto/SafetyMeasuresVo.java @@ -0,0 +1,106 @@ +package com.bonus.imgTool.imageUpload.dto; + +import com.bonus.imgTool.system.vo.SysFileResourceVo; +import lombok.Data; + +import java.util.Date; +import java.util.List; + +@Data +public class SafetyMeasuresVo { + + /** + * id + */ + private Long id; + + /** + * 工程id + */ + private Long proId; + + /** + * 工程名称 + */ + private String proName; + + /** + * 专业id + */ + private Long majorId; + + /** + * 专业名称 + */ + private String majorName; + + /** + * 工序id + */ + private Long gxId; + + /** + * 工序名称 + */ + private String gxName; + + /** + * 检查人 + */ + private String checkUserName; + + /** + * 检查时间 + */ + private Date checkDate; + + /** + * 检查地点 + */ + private String checkPlace; + + /** + * 违章描述 + */ + private String checkDesc; + + /** + * 创建人 + */ + private Long createUserId; + + /** + * 创建时间 + */ + private Date createTime; + + /** + * 创建人姓名 + */ + private String createUserName; + + /** + * 修改人 + */ + private Long updateUserId; + + /** + * 修改时间 + */ + private Date updateTime; + + /** + * 修改人姓名 + */ + private String updateUserName; + + /** + * 数据来源 1.web 2.app + */ + private String dataSource; + + /** + * 图片信息 + */ + private List sysFileResourceList; +} diff --git a/src/main/java/com/bonus/imgTool/imageUpload/mapper/SafetyMeasuresMapper.java b/src/main/java/com/bonus/imgTool/imageUpload/mapper/SafetyMeasuresMapper.java new file mode 100644 index 0000000..c01b2f9 --- /dev/null +++ b/src/main/java/com/bonus/imgTool/imageUpload/mapper/SafetyMeasuresMapper.java @@ -0,0 +1,15 @@ +package com.bonus.imgTool.imageUpload.mapper; + +import com.bonus.imgTool.imageUpload.dto.SafetyMeasuresReqVo; +import com.bonus.imgTool.imageUpload.dto.SafetyMeasuresVo; + +import java.util.List; + +public interface SafetyMeasuresMapper { + List getSafetyMeasuresList(SafetyMeasuresReqVo data); + + void deleteSafetyMeasures(SafetyMeasuresReqVo data); + + + void addSafetyMeasures(SafetyMeasuresVo data); +} diff --git a/src/main/java/com/bonus/imgTool/imageUpload/service/SafetyMeasuresService.java b/src/main/java/com/bonus/imgTool/imageUpload/service/SafetyMeasuresService.java new file mode 100644 index 0000000..df702f2 --- /dev/null +++ b/src/main/java/com/bonus/imgTool/imageUpload/service/SafetyMeasuresService.java @@ -0,0 +1,13 @@ +package com.bonus.imgTool.imageUpload.service; + +import com.bonus.imgTool.imageUpload.dto.SafetyMeasuresReqVo; +import com.bonus.imgTool.imageUpload.dto.SafetyMeasuresVo; +import com.bonus.imgTool.utils.ServerResponse; + +public interface SafetyMeasuresService { + ServerResponse getSafetyMeasuresList(SafetyMeasuresReqVo data); + + ServerResponse deleteSafetyMeasures(SafetyMeasuresReqVo data); + + ServerResponse addSafetyMeasures(SafetyMeasuresVo data); +} diff --git a/src/main/java/com/bonus/imgTool/imageUpload/service/impl/SafetyMeasuresServiceImpl.java b/src/main/java/com/bonus/imgTool/imageUpload/service/impl/SafetyMeasuresServiceImpl.java new file mode 100644 index 0000000..0c6b9e6 --- /dev/null +++ b/src/main/java/com/bonus/imgTool/imageUpload/service/impl/SafetyMeasuresServiceImpl.java @@ -0,0 +1,102 @@ +package com.bonus.imgTool.imageUpload.service.impl; + +import com.bonus.imgTool.Enum.FileSourceTypeEnum; +import com.bonus.imgTool.backstage.entity.SynthesisQueryVo; +import com.bonus.imgTool.imageUpload.dto.SafetyMeasuresReqVo; +import com.bonus.imgTool.imageUpload.dto.SafetyMeasuresVo; +import com.bonus.imgTool.imageUpload.mapper.SafetyMeasuresMapper; +import com.bonus.imgTool.imageUpload.service.SafetyMeasuresService; +import com.bonus.imgTool.system.dao.SysFileResourceDao; +import com.bonus.imgTool.system.vo.SysFileResourceVo; +import com.bonus.imgTool.utils.ServerResponse; +import com.bonus.imgTool.utils.UserUtil; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; +import java.util.Optional; + +@Slf4j +@Service +@Transactional +public class SafetyMeasuresServiceImpl implements SafetyMeasuresService { + + @Resource + private SafetyMeasuresMapper safetyMeasuresMapper; + + @Resource + private SysFileResourceDao sysFileResourceDao; + + /** + * 安全措施落实获取列表 + * @param data + * @return + */ + @Override + public ServerResponse getSafetyMeasuresList(SafetyMeasuresReqVo data) { + PageHelper.startPage(data.getPageNum(), data.getPageSize()); + try { + List list = safetyMeasuresMapper.getSafetyMeasuresList(data); + //获取图片信息 + for (SafetyMeasuresVo safetyMeasuresVo : list) { + List sysFileResourceList = sysFileResourceDao.getSysFileResourceList(safetyMeasuresVo.getId()); + safetyMeasuresVo.setSysFileResourceList(sysFileResourceList); + } + PageInfo pageInfo = new PageInfo<>(list); + return ServerResponse.createSuccess(pageInfo); + } catch (Exception e) { + log.error(e.toString(), e); + return ServerResponse.createErroe("查询失败"); + } + } + + /** + * 安全措施落实删除--这里是逻辑删除 + * @param data + * @return + */ + @Override + public ServerResponse deleteSafetyMeasures(SafetyMeasuresReqVo data) { + try { + safetyMeasuresMapper.deleteSafetyMeasures(data); + sysFileResourceDao.deleteFileResource(data); + return ServerResponse.createSuccess(); + } catch (Exception e) { + log.error(e.toString(), e); + return ServerResponse.createErroe("删除失败"); + } + } + + /** + * 安全措施落实新增 + * @param data + * @return + */ + @Override + public ServerResponse addSafetyMeasures(SafetyMeasuresVo data) { + try { + //保存 + safetyMeasuresMapper.addSafetyMeasures(data); + //保存附件 + List sysFileResourceList = data.getSysFileResourceList(); + for (SysFileResourceVo sysFileResourceVo: sysFileResourceList ) { + sysFileResourceVo.setSourceId(data.getId()); + sysFileResourceVo.setUploadType("3"); + sysFileResourceVo.setSourceType(FileSourceTypeEnum.FILE_SOURCE_TYPE_5.getStatus()); + sysFileResourceVo.setSourceTypeName(FileSourceTypeEnum.FILE_SOURCE_TYPE_5.getStatusName()); + sysFileResourceVo.setCreateUser(UserUtil.getLoginUser() != null ? UserUtil.getLoginUser().getId() : 0); + sysFileResourceVo.setCreateUserName(UserUtil.getLoginUser() != null ? UserUtil.getLoginUser().getNewUser():null); + sysFileResourceDao.addSysFileResource(sysFileResourceVo); + } + } catch (Exception e) { + log.error(e.toString(), e); + return ServerResponse.createErroe("删除失败"); + } + return ServerResponse.createSuccess(); + } +} diff --git a/src/main/java/com/bonus/imgTool/model/SysUser.java b/src/main/java/com/bonus/imgTool/model/SysUser.java index 68d2bf0..b0ef5b0 100644 --- a/src/main/java/com/bonus/imgTool/model/SysUser.java +++ b/src/main/java/com/bonus/imgTool/model/SysUser.java @@ -1,11 +1,13 @@ package com.bonus.imgTool.model; import com.bonus.imgTool.base.entity.PageEntity; +import com.bonus.imgTool.system.vo.SelectVo; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; import java.util.Date; +import java.util.List; @Data public class SysUser extends PageEntity { @@ -149,6 +151,16 @@ public class SysUser extends PageEntity { * 签字路径 */ private String signImg; + private List projects; + /** + * 绑定工程 + */ + private String project; + /** + * 角色级别 + */ + private String levelName; + private String keyWord; /** * 角色级别 diff --git a/src/main/java/com/bonus/imgTool/system/controller/FileDownLoadController.java b/src/main/java/com/bonus/imgTool/system/controller/FileDownLoadController.java new file mode 100644 index 0000000..1a06065 --- /dev/null +++ b/src/main/java/com/bonus/imgTool/system/controller/FileDownLoadController.java @@ -0,0 +1,37 @@ +package com.bonus.imgTool.system.controller; + +import com.bonus.imgTool.annotation.DecryptAndVerify; +import com.bonus.imgTool.backstage.entity.QueryParamDto; +import com.bonus.imgTool.system.vo.EncryptedReq; +import com.bonus.imgTool.utils.ImageDownloadHandler; +import com.bonus.imgTool.utils.SystemUtils; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.io.*; + +/** + * @className:FileDownLoadController + * @author:cwchen + * @date:2025-04-02-17:21 + * @version:1.0 + * @description:文件下载 + */ +@RestController +@RequestMapping("/common/download/") +@Slf4j +public class FileDownLoadController { + + @ApiOperation("原图下载") + @GetMapping("/downloadImage") + @DecryptAndVerify(decryptedClass = QueryParamDto.class)//加解密统一管理 + public void downloadImage(HttpServletRequest request, HttpServletResponse response, EncryptedReq dto) { + String basicPath = SystemUtils.getUploadPath(); + String imgPath = dto.getData().getImgPath(); + ImageDownloadHandler.downloadImage(basicPath +File.separator+ imgPath, response, true); + } + +} diff --git a/src/main/java/com/bonus/imgTool/system/controller/SelectController.java b/src/main/java/com/bonus/imgTool/system/controller/SelectController.java index b926442..e95fad7 100644 --- a/src/main/java/com/bonus/imgTool/system/controller/SelectController.java +++ b/src/main/java/com/bonus/imgTool/system/controller/SelectController.java @@ -73,6 +73,18 @@ public class SelectController { } return ServerResponse.createErroe("操作失败"); } + @GetMapping(value = "getProjectSelect") + @DecryptAndVerify(decryptedClass = SelectDto.class)//加解密统一管理 + @LogAnnotation(operModul = "工程查询", operation = "下拉框", operDesc = "系统级事件",operType="查询") + public ServerResponse getProjectSelect(EncryptedReq data) { + try { + List list = service.getProjectSelect(data.getData()); + return ServerResponse.createSuccess(list); + }catch (Exception e){ + log.error(e.toString(),e); + } + return ServerResponse.createErroe("操作失败"); + } private void setDictsList(Long pId, List dictsAll, List list) { diff --git a/src/main/java/com/bonus/imgTool/system/controller/UserController.java b/src/main/java/com/bonus/imgTool/system/controller/UserController.java index 5c0cdab..4777961 100644 --- a/src/main/java/com/bonus/imgTool/system/controller/UserController.java +++ b/src/main/java/com/bonus/imgTool/system/controller/UserController.java @@ -10,10 +10,7 @@ import java.util.Objects; import com.bonus.imgTool.annotation.DecryptAndVerify; import com.bonus.imgTool.model.Role; import com.bonus.imgTool.system.dao.UserDao; -import com.bonus.imgTool.system.vo.EncryptedReq; -import com.bonus.imgTool.system.vo.Org; -import com.bonus.imgTool.system.vo.SysMenuVo; -import com.bonus.imgTool.system.vo.UserDto; +import com.bonus.imgTool.system.vo.*; import com.bonus.imgTool.model.PasswordConfig; import com.bonus.imgTool.model.SysUser; import com.bonus.imgTool.system.service.UserService; @@ -140,13 +137,14 @@ public class UserController { if (u != null && !Objects.equals(data.getData().getId(), u.getId())) { return ServerResponse.createErroe(data.getData().getLoginName() + "已存在"); } - if(StringHelper.isNotEmpty(data.getData().getPhone())){ + /* if(StringHelper.isNotEmpty(data.getData().getPhone())){ SysUser u2 = userService.getPhone(data.getData().getPhone()); if (u2 != null && !Objects.equals(data.getData().getId(), u2.getId())) { return ServerResponse.createErroe("手机号"+data.getData().getPhone() + "已存在"); } - } + }*/ userService.updateUser(data.getData()); + // 先删除对应的工程再新增 return ServerResponse.createBySuccessMsg("操作成功"); }catch (Exception e){ log.error(e.toString(),e); @@ -168,6 +166,18 @@ public class UserController { } return ServerResponse.createErroe("操作失败"); } + @PostMapping(value = "checkPassword") + @DecryptAndVerify(decryptedClass = SysUser.class) + @LogAnnotation(operModul = "系统管理-用户管理", operation = "校验用户名密码", operDesc = "系统级事件",operType="查询") + public ServerResponse checkPassword(EncryptedReq data) { + try { + ServerResponse response = userService.checkPassword(data.getData()); + return response; + }catch (Exception e){ + log.error(e.toString(),e); + } + return ServerResponse.createErroe("操作失败"); + } @PostMapping(value = "password") @@ -214,7 +224,9 @@ public class UserController { public ServerResponse user(EncryptedReq data) { try { UserDto userDto = userService.getById(data.getData().getId()); - String loginType = userDto.getLoginType(); + List projects = userService.getProjects(userDto); + userDto.setProjects(projects); + /*String loginType = userDto.getLoginType(); if (loginType != null && !loginType.isEmpty()){ String[] loginTypeArr = loginType.split(","); List loginTypes = new ArrayList<>(); @@ -222,7 +234,7 @@ public class UserController { loginTypes.add(Long.parseLong(type.trim())); } userDto.setLoginTypes(loginTypes); - } + }*/ return ServerResponse.createSuccess(userDto); }catch (Exception e){ log.error(e.toString(),e); diff --git a/src/main/java/com/bonus/imgTool/system/dao/SelectDao.java b/src/main/java/com/bonus/imgTool/system/dao/SelectDao.java index 98778c6..861eb93 100644 --- a/src/main/java/com/bonus/imgTool/system/dao/SelectDao.java +++ b/src/main/java/com/bonus/imgTool/system/dao/SelectDao.java @@ -14,4 +14,6 @@ public interface SelectDao { List getProfessionSelect(SelectDto data); List getProcessSelect(SelectDto data); + + List getProjectSelect(SelectDto data); } diff --git a/src/main/java/com/bonus/imgTool/system/dao/SysFileResourceDao.java b/src/main/java/com/bonus/imgTool/system/dao/SysFileResourceDao.java new file mode 100644 index 0000000..7039682 --- /dev/null +++ b/src/main/java/com/bonus/imgTool/system/dao/SysFileResourceDao.java @@ -0,0 +1,17 @@ +package com.bonus.imgTool.system.dao; + +import com.bonus.imgTool.imageUpload.dto.SafetyMeasuresReqVo; +import com.bonus.imgTool.system.vo.SysFileResourceVo; +import org.springframework.stereotype.Repository; + +import java.util.List; + +@Repository +public interface SysFileResourceDao { + + void deleteFileResource(SafetyMeasuresReqVo data); + + List getSysFileResourceList(Long id); + + void addSysFileResource(SysFileResourceVo sysFileResourceVo); +} diff --git a/src/main/java/com/bonus/imgTool/system/dao/UserDao.java b/src/main/java/com/bonus/imgTool/system/dao/UserDao.java index cacd84c..042449a 100644 --- a/src/main/java/com/bonus/imgTool/system/dao/UserDao.java +++ b/src/main/java/com/bonus/imgTool/system/dao/UserDao.java @@ -5,10 +5,7 @@ import java.util.Map; import com.bonus.imgTool.base.entity.DtreeVo; import com.bonus.imgTool.model.Role; -import com.bonus.imgTool.system.vo.LoginUser; -import com.bonus.imgTool.system.vo.Org; -import com.bonus.imgTool.system.vo.SysMenuVo; -import com.bonus.imgTool.system.vo.UserDto; +import com.bonus.imgTool.system.vo.*; import com.bonus.imgTool.model.PasswordConfig; import com.bonus.imgTool.model.SysUser; import org.apache.ibatis.annotations.Delete; @@ -197,4 +194,10 @@ public interface UserDao { * @return */ List getPersonList(SysUser data); + + Integer deleteUserProject(Long id); + + Integer saveUserProject(@Param("userId") Long id, @Param("proId")String proId); + + List getProjects(UserDto userDto); } diff --git a/src/main/java/com/bonus/imgTool/system/service/SelectService.java b/src/main/java/com/bonus/imgTool/system/service/SelectService.java index 74f329d..bce3ae9 100644 --- a/src/main/java/com/bonus/imgTool/system/service/SelectService.java +++ b/src/main/java/com/bonus/imgTool/system/service/SelectService.java @@ -15,4 +15,6 @@ public interface SelectService { List getProfessionSelect(SelectDto data); List getProcessSelect(SelectDto data); + + List getProjectSelect(SelectDto data); } diff --git a/src/main/java/com/bonus/imgTool/system/service/UserService.java b/src/main/java/com/bonus/imgTool/system/service/UserService.java index e841920..9d8a890 100644 --- a/src/main/java/com/bonus/imgTool/system/service/UserService.java +++ b/src/main/java/com/bonus/imgTool/system/service/UserService.java @@ -2,6 +2,7 @@ package com.bonus.imgTool.system.service; import com.bonus.imgTool.model.Role; import com.bonus.imgTool.system.vo.Org; +import com.bonus.imgTool.system.vo.SelectVo; import com.bonus.imgTool.system.vo.SysMenuVo; import com.bonus.imgTool.system.vo.UserDto; import com.bonus.imgTool.model.PasswordConfig; @@ -51,9 +52,8 @@ public interface UserService { * @param user * @return */ - default ServerResponse changePassword(SysUser user) { - return null; - } + ServerResponse changePassword(SysUser user); + ServerResponse checkPassword(SysUser user); /** * 管理员修改密码 @@ -168,4 +168,6 @@ public interface UserService { * @return */ List getPersonList(SysUser data); + + List getProjects(UserDto userDto); } diff --git a/src/main/java/com/bonus/imgTool/system/service/impl/SelectServiceImpl.java b/src/main/java/com/bonus/imgTool/system/service/impl/SelectServiceImpl.java index 777df16..f936b37 100644 --- a/src/main/java/com/bonus/imgTool/system/service/impl/SelectServiceImpl.java +++ b/src/main/java/com/bonus/imgTool/system/service/impl/SelectServiceImpl.java @@ -40,4 +40,9 @@ public class SelectServiceImpl implements SelectService { public List getProcessSelect(SelectDto data) { return dao.getProcessSelect(data); } + + @Override + public List getProjectSelect(SelectDto data) { + return dao.getProjectSelect(data); + } } diff --git a/src/main/java/com/bonus/imgTool/system/service/impl/UserServiceImpl.java b/src/main/java/com/bonus/imgTool/system/service/impl/UserServiceImpl.java index 456e909..9c10ccd 100644 --- a/src/main/java/com/bonus/imgTool/system/service/impl/UserServiceImpl.java +++ b/src/main/java/com/bonus/imgTool/system/service/impl/UserServiceImpl.java @@ -7,11 +7,13 @@ import com.bonus.imgTool.base.entity.DtreeVo; import com.bonus.imgTool.model.Role; import com.bonus.imgTool.system.vo.Org; import com.bonus.imgTool.model.PasswordConfig; +import com.bonus.imgTool.system.vo.SelectVo; import com.bonus.imgTool.system.vo.SysMenuVo; import com.bonus.imgTool.utils.ServerResponse; import com.bonus.imgTool.utils.StringHelper; import com.bonus.imgTool.utils.UserUtil; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.stereotype.Service; @@ -33,258 +35,295 @@ import javax.annotation.Resource; public class UserServiceImpl implements UserService { - @Resource - private UserDao userDao; - @Autowired - private BCryptPasswordEncoder passwordEncoder; + @Resource + private UserDao userDao; + @Autowired + private BCryptPasswordEncoder passwordEncoder; - /** - * 新增用户 - */ - @Override - public ServerResponse saveUser(UserDto userDto) { - try{ - SysUser user = userDto; - user.setPassword(passwordEncoder.encode(user.getPassword())); - int num=userDao.saveUser(user); - if(num>0){ - return ServerResponse.createSuccess("新增成功",num); - }else{ - return ServerResponse.createErroe("新增失败"); - } - }catch (Exception e){ - log.error(e.toString(),e); - } - return ServerResponse.createErroe("新增失败,数据异常"); - } - private void saveUserRoles(Long userId, List roleIds) { - if (roleIds != null) { - userDao.deleteUserRole(userId); - if (!CollectionUtils.isEmpty(roleIds)) { - userDao.saveUserRoles(userId, roleIds); - } - } - } + /** + * 新增用户 + */ + @Override + public ServerResponse saveUser(UserDto userDto) { + try { + String project = userDto.getProject(); + SysUser user = userDto; + user.setPassword(passwordEncoder.encode(user.getPassword())); + int num = userDao.saveUser(user); + if (StringUtils.isNotBlank(project)){ + for (String proId : project.split(",")) { + // 新增工程 + userDao.saveUserProject(userDto.getId(), proId); + } + } + if (num > 0) { + return ServerResponse.createSuccess("新增成功", num); + } else { + return ServerResponse.createErroe("新增失败"); + } + } catch (Exception e) { + log.error(e.toString(), e); + } + return ServerResponse.createErroe("新增失败,数据异常"); + } - @Override - public SysUser getUser(String loginName) { - try{ - return userDao.getUser(loginName); - }catch (Exception e){ - log.error(e.toString(),e); - } - return null; - } + private void saveUserRoles(Long userId, List roleIds) { + if (roleIds != null) { + userDao.deleteUserRole(userId); + if (!CollectionUtils.isEmpty(roleIds)) { + userDao.saveUserRoles(userId, roleIds); + } + } + } - @Override - public SysUser getUserCode(String userCode) { - try{ - return userDao.getUserCode(userCode); - }catch (Exception e){ - log.error(e.toString(),e); - } - return null; - } + @Override + public SysUser getUser(String loginName) { + try { + return userDao.getUser(loginName); + } catch (Exception e) { + log.error(e.toString(), e); + } + return null; + } - @Override - public ServerResponse changePassword(SysUser user) { - Long userId = UserUtil.getLoginUser().getId(); - UserDto bean = userDao.getById(userId); - SysUser u = userDao.getUser(bean.getLoginName()); - if (u == null) { - return ServerResponse.createErroe("用户不存在"); - } - if (!passwordEncoder.matches(user.getOldP(), u.getPassword())) { - return ServerResponse.createErroe("旧密码错误"); - } - userDao.changePassword(u.getId(), passwordEncoder.encode(user.getNewP1())); - return ServerResponse.createBySuccessMsg("修改成功"); - } + @Override + public SysUser getUserCode(String userCode) { + try { + return userDao.getUserCode(userCode); + } catch (Exception e) { + log.error(e.toString(), e); + } + return null; + } - @Override - public void password(SysUser user) { - user.setPassword(passwordEncoder.encode(user.getPassword())); - userDao.password(user); - } + @Override + public ServerResponse changePassword(SysUser user) { + Long userId = UserUtil.getLoginUser().getId(); + UserDto bean = userDao.getById(userId); + SysUser u = userDao.getUser(bean.getLoginName()); + if (u == null) { + return ServerResponse.createErroe("用户不存在"); + } + if (!passwordEncoder.matches(user.getOldP(), u.getPassword())) { + return ServerResponse.createErroe("旧密码错误"); + } + userDao.changePassword(u.getId(), passwordEncoder.encode(user.getNewP1())); + return ServerResponse.createBySuccessMsg("修改成功"); + } - @Override - public int count(Map params) { - return userDao.count(params); - } + @Override + public ServerResponse checkPassword(SysUser user) { + Long userId = UserUtil.getLoginUser().getId(); + UserDto bean = userDao.getById(userId); + SysUser u = userDao.getUser(bean.getLoginName()); + if (u == null) { + return ServerResponse.createByErrorMsg(500,"用户不存在"); + } + if (!passwordEncoder.matches(user.getOldP(), u.getPassword())) { + return ServerResponse.createByErrorMsg(500,"旧密码错误"); + } + return ServerResponse.createSuccess("校验成功"); + } - /** - * 查询用户列表 - */ - @Override - public List list(SysUser user) { - List list = userDao.list(user); - if (list.size()>0){ - for (SysUser users : list){ - //如果班组为不空,则拼接;否则只展示组织 - if (StringHelper.isNotEmpty(users.getTeamName())){ - users.setOrgName(users.getOrgName()+"/"+users.getTeamName()); - } - if (StringHelper.isNotEmpty(users.getSignImg())){ - users.setSignStatus("已签"); - } else { - users.setSignStatus("未签"); - } - } - } - return list; - } + @Override + public void password(SysUser user) { + user.setPassword(passwordEncoder.encode(user.getPassword())); + userDao.password(user); + } - /** - * 查询用户详情 - */ - @Override - public UserDto getById(Long id) { - return userDao.getById(id); - } + @Override + public int count(Map params) { + return userDao.count(params); + } - @Override - public int delUser(Long id) { - return userDao.delUser(id); - } + /** + * 查询用户列表 + */ + @Override + public List list(SysUser user) { + List list = userDao.list(user); + if (list.size() > 0) { + for (SysUser users : list) { + //如果班组为不空,则拼接;否则只展示组织 + if (StringHelper.isNotEmpty(users.getTeamName())) { + users.setOrgName(users.getOrgName() + "/" + users.getTeamName()); + } + if (StringHelper.isNotEmpty(users.getSignImg())) { + users.setSignStatus("已签"); + } else { + users.setSignStatus("未签"); + } + } + } + return list; + } - @Override - public PasswordConfig getPasswordConfigById() { - return userDao.getPasswordConfigById(); - } + /** + * 查询用户详情 + */ + @Override + public UserDto getById(Long id) { + return userDao.getById(id); + } - @Override - public List getOrg() { - return userDao.getOrg(); - } + @Override + public int delUser(Long id) { + return userDao.delUser(id); + } - @Override - public SysUser getPhone(String phone) { - return userDao.getPhone(phone); - } + @Override + public PasswordConfig getPasswordConfigById() { + return userDao.getPasswordConfigById(); + } - /** - * 查询锁定的用户 - * @return - */ - @Override - public List getLockUser(String state,String type) { - try{ - return userDao.getLockUser(state, type); - }catch (Exception e){ - log.error(e.toString(),e); - } - return null; - } + @Override + public List getOrg() { + return userDao.getOrg(); + } - @Override - public void updateUserState(String loginName, String state,String delFlag,Long id) { - try{ - userDao.updateUserState(loginName, state,delFlag, id); - }catch (Exception e){ - log.error(e.toString(),e); - } - } + @Override + public SysUser getPhone(String phone) { + return userDao.getPhone(phone); + } - @Override - public ServerResponse getOrgTree() { - List list = null; - try { - list = userDao.getOrgTree(); - } catch (Exception e) { - log.error("单位部门树", e); - } - return ServerResponse.createSuccess("查询成功", list); - } + /** + * 查询锁定的用户 + * + * @return + */ + @Override + public List getLockUser(String state, String type) { + try { + return userDao.getLockUser(state, type); + } catch (Exception e) { + log.error(e.toString(), e); + } + return null; + } - /** - * 修改启用状态 - * @param data - * @return - */ - @Override - public ServerResponse updateEnableState(UserDto data) { - try { - if (data.getId() == 0 || data.getState() == null) { - return ServerResponse.createErroe("参数不能为空"); - } else { - int num = userDao.updateEnableState(data); - if (num == 1) { - if (data.getState()==1) { - return ServerResponse.createSuccess("开启成功"); - } - return ServerResponse.createSuccess("关闭成功"); - } else { - return ServerResponse.createErroe("设置失败,请联系管理员"); - } - } - } catch (Exception e) { - log.error(e.toString(), e); - } - return ServerResponse.createErroe("参数异常,请联系管理员"); - } + @Override + public void updateUserState(String loginName, String state, String delFlag, Long id) { + try { + userDao.updateUserState(loginName, state, delFlag, id); + } catch (Exception e) { + log.error(e.toString(), e); + } + } - @Override - public List getRoleAll() { - return userDao.getRoleAll(); - } + @Override + public ServerResponse getOrgTree() { + List list = null; + try { + list = userDao.getOrgTree(); + } catch (Exception e) { + log.error("单位部门树", e); + } + return ServerResponse.createSuccess("查询成功", list); + } - /** - * 获取角色下App权限菜单 - */ - @Override - public List getRoleAppAuth() { - //获取当前登录用户角色编码 - String roleCode = UserUtil.getLoginUser() != null ? UserUtil.getLoginUser().getRoleCode() : ""; - return userDao.getRoleAppAuth(roleCode); - } + /** + * 修改启用状态 + * + * @param data + * @return + */ + @Override + public ServerResponse updateEnableState(UserDto data) { + try { + if (data.getId() == 0 || data.getState() == null) { + return ServerResponse.createErroe("参数不能为空"); + } else { + int num = userDao.updateEnableState(data); + if (num == 1) { + if (data.getState() == 1) { + return ServerResponse.createSuccess("开启成功"); + } + return ServerResponse.createSuccess("关闭成功"); + } else { + return ServerResponse.createErroe("设置失败,请联系管理员"); + } + } + } catch (Exception e) { + log.error(e.toString(), e); + } + return ServerResponse.createErroe("参数异常,请联系管理员"); + } - /** - * 保存签名 - */ - @Override - public int updateSign(UserDto userDto) { - return userDao.updateSign(userDto); - } + @Override + public List getRoleAll() { + return userDao.getRoleAll(); + } - @Override - public int delSignById(Long id) { - return userDao.delSignById(id); - } + /** + * 获取角色下App权限菜单 + */ + @Override + public List getRoleAppAuth() { + //获取当前登录用户角色编码 + String roleCode = UserUtil.getLoginUser() != null ? UserUtil.getLoginUser().getRoleCode() : ""; + return userDao.getRoleAppAuth(roleCode); + } - @Override - public List getPersonList(SysUser data) { - //获取登录人id - Long userId = UserUtil.getLoginUser().getId(); - data.setId(userId); - List list = userDao.getPersonList(data); - if (list.size() > 0) { - for (SysUser users : list) { - if (StringHelper.isNotEmpty(users.getSignImg())) { - users.setSignStatus("已签"); - } else { - users.setSignStatus("未签"); - } - } - } - return list; - } + /** + * 保存签名 + */ + @Override + public int updateSign(UserDto userDto) { + return userDao.updateSign(userDto); + } - /** - * 修改用户 - */ - @Override - @Transactional - public SysUser updateUser(UserDto userDto) { - if (userDto.getRoleId().isEmpty()){ - userDto.setRoleId(null); - } - if (StringHelper.isEmpty(userDto.getTeamId())){ - userDto.setTeamId(null); - } - userDao.update(userDto); - //saveUserRoles(userDto.getId(), userDto.getRoleIds()); + @Override + public int delSignById(Long id) { + return userDao.delSignById(id); + } - return userDto; - } + @Override + public List getPersonList(SysUser data) { + //获取登录人id + Long userId = UserUtil.getLoginUser().getId(); + data.setId(userId); + List list = userDao.getPersonList(data); + if (list.size() > 0) { + for (SysUser users : list) { + if (StringHelper.isNotEmpty(users.getSignImg())) { + users.setSignStatus("已签"); + } else { + users.setSignStatus("未签"); + } + } + } + return list; + } + + @Override + public List getProjects(UserDto userDto) { + return userDao.getProjects(userDto); + } + + /** + * 修改用户 + */ + @Override + @Transactional + public SysUser updateUser(UserDto userDto) { + String project = userDto.getProject(); + if (userDto.getRoleId().isEmpty()) { + userDto.setRoleId(null); + } + if (StringHelper.isEmpty(userDto.getTeamId())) { + userDto.setTeamId(null); + } + userDao.update(userDto); +// saveUserRoles(userDto.getId(), userDto.getRoleIds()); + // 先删除之前绑定的工程 + userDao.deleteUserProject(userDto.getId()); + if (StringUtils.isNotBlank(project)){ + for (String proId : project.split(",")) { + // 在新增修改后的工程 + userDao.saveUserProject(userDto.getId(), proId); + } + } + return userDto; + } } diff --git a/src/main/java/com/bonus/imgTool/system/vo/SysFileResourceVo.java b/src/main/java/com/bonus/imgTool/system/vo/SysFileResourceVo.java new file mode 100644 index 0000000..b66a2a8 --- /dev/null +++ b/src/main/java/com/bonus/imgTool/system/vo/SysFileResourceVo.java @@ -0,0 +1,84 @@ +package com.bonus.imgTool.system.vo; + +import lombok.Data; + +import java.math.BigDecimal; + +@Data +public class SysFileResourceVo { + + /** + * id + */ + private Long id; + + /** + * 文件名称 + */ + private String fileName; + + /** + * 文件后缀 + */ + private String fileSuffix; + + /** + * 文件大小 Mb单位 + */ + private BigDecimal fileSize; + + /** + * 原图图片路径 + */ + private String originalFilePath; + + /** + * 压缩图片路径 + */ + private String compressFilePath; + + /** + * 图片水印路径 + */ + private String watermarkFilePath; + + /** + * 文件类型 1.图片 2.文件 + */ + private String fileType; + + /** + * 资源id(安全违章ID、质量检查ID、3.安全措施落实ID、协调照片ID、重要事项及宣传照片ID) + */ + private Long sourceId; + + /** + * 上传类型 1.安全违章、2.质量检查、3.安全措施落实、4.协调照片、5.重要事项及宣传照片 + */ + private String uploadType; + + /** + * 资源类型 码表配置(照片类型或阶段) + */ + private String sourceType; + + /** + * 资源类型名称 + */ + private String sourceTypeName; + + /** + * 创建日期 + */ + private String createTime; + + /** + * 创建人 + */ + private Long createUser; + + /** + * 创建人 + */ + private String createUserName; +} diff --git a/src/main/java/com/bonus/imgTool/utils/ImageDownloadHandler.java b/src/main/java/com/bonus/imgTool/utils/ImageDownloadHandler.java new file mode 100644 index 0000000..6e2e663 --- /dev/null +++ b/src/main/java/com/bonus/imgTool/utils/ImageDownloadHandler.java @@ -0,0 +1,108 @@ +package com.bonus.imgTool.utils; +import javax.servlet.http.HttpServletResponse; +import java.io.*; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +/** + * @className:ImageDownloadHandler + * @author:cwchen + * @date:2025-04-02-17:30 + * @version:1.0 + * @description: 图片下载器 + */ +public class ImageDownloadHandler { + + /** + * 根据图片路径读取图片并返回到浏览器下载 + * @param imagePath 图片路径 + * @param response HttpServletResponse对象 + * @param download 是否作为附件下载(true-下载, false-直接显示) + */ + public static void downloadImage(String imagePath, HttpServletResponse response, boolean download) { + try { + Path path = Paths.get(imagePath); + + // 1. 检查文件是否存在 + if (!Files.exists(path)) { + response.sendError(HttpServletResponse.SC_NOT_FOUND, "图片不存在"); + return; + } + + // 2. 检查是否是文件 + if (!Files.isRegularFile(path)) { + response.sendError(HttpServletResponse.SC_BAD_REQUEST, "路径不是有效的文件"); + return; + } + + // 3. 获取文件类型并设置Content-Type + String contentType = determineContentType(imagePath); + if (contentType == null) { + response.sendError(HttpServletResponse.SC_UNSUPPORTED_MEDIA_TYPE, "不支持的图片格式"); + return; + } + response.setContentType(contentType); + + // 4. 设置响应头 + String fileName = path.getFileName().toString(); + if (download) { + // 作为附件下载 + response.setHeader("Content-Disposition", + "attachment; filename=\"" + fileName + "\""); + } else { + // 直接显示在浏览器 + response.setHeader("Content-Disposition", + "inline; filename=\"" + fileName + "\""); + } + + // 5. 设置缓存控制 +// response.setHeader("Cache-Control", "max-age=3600"); // 1小时缓存 + + // 6. 读取文件并写入响应输出流 + try (InputStream in = Files.newInputStream(path); + OutputStream out = response.getOutputStream()) { + + byte[] buffer = new byte[4096]; + int bytesRead; + while ((bytesRead = in.read(buffer)) != -1) { + out.write(buffer, 0, bytesRead); + } + out.flush(); + } + + } catch (IOException e) { + try { + response.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR, + "读取图片时发生错误: " + e.getMessage()); + } catch (IOException ex) { + ex.printStackTrace(); + } + } + } + + /** + * 根据文件扩展名确定Content-Type + */ + private static String determineContentType(String filePath) { + String extension = filePath.substring(filePath.lastIndexOf('.') + 1).toLowerCase(); + switch (extension) { + case "jpg": + case "jpeg": + return "image/jpeg"; + case "png": + return "image/png"; + case "gif": + return "image/gif"; + case "webp": + return "image/webp"; + case "bmp": + return "image/bmp"; + case "svg": + return "image/svg+xml"; + case "ico": + return "image/x-icon"; + default: + return null; + } + } +} diff --git a/src/main/java/com/bonus/imgTool/utils/PicUtils.java b/src/main/java/com/bonus/imgTool/utils/PicUtils.java index 0bb7f04..49bc675 100644 --- a/src/main/java/com/bonus/imgTool/utils/PicUtils.java +++ b/src/main/java/com/bonus/imgTool/utils/PicUtils.java @@ -101,9 +101,9 @@ public class PicUtils { } public static void main(String[] args) throws IOException { - byte[] bytes = compressPicForScale(FileTobyte(new File("L:\\其他\\测试图片\\6.jpg")), 200); - String newFileName = IDUtils.createID() + ".jpg"; - File fOut = new File("L:\\新建文件夹\\" + newFileName); + byte[] bytes = compressPicForScale(FileTobyte(new File("L:\\yn_img\\files\\yt\\2.png")), 200); + String newFileName = IDUtils.createID() + ".png"; + File fOut = new File("L:\\yn_img\\files\\ys\\" + newFileName); FileOutputStream fileOutputStream = new FileOutputStream(fOut); fileOutputStream.write(bytes); fileOutputStream.close(); diff --git a/src/main/resources/mappers/backstage/SynthesisQueryMapper.xml b/src/main/resources/mappers/backstage/SynthesisQueryMapper.xml index a13e2d7..5d6d1a6 100644 --- a/src/main/resources/mappers/backstage/SynthesisQueryMapper.xml +++ b/src/main/resources/mappers/backstage/SynthesisQueryMapper.xml @@ -27,20 +27,25 @@ diff --git a/src/main/resources/mappers/imageUpload/SafetMeasuresMapper.xml b/src/main/resources/mappers/imageUpload/SafetMeasuresMapper.xml new file mode 100644 index 0000000..9c6acbe --- /dev/null +++ b/src/main/resources/mappers/imageUpload/SafetMeasuresMapper.xml @@ -0,0 +1,71 @@ + + + + + insert into tb_safety_measure + + pro_id, + pro_name, + major_id, + major_name, + gx_id, + gx_name, + check_user_name, + check_date, + check_place, + check_desc, + create_user_id, + create_time, + create_user_name, + update_user_id, + update_user_name, + update_time, + data_source, + is_active + + + #{proId}, + #{proName}, + #{majorId}, + #{majorName}, + #{gxId}, + #{gxName}, + #{checkUserName}, + #{checkDate}, + #{checkPlace}, + #{checkDesc}, + #{createUserId}, + #{createTime}, + #{createUserName}, + #{updateUserid}, + #{updateUserName}, + #{updateTime}, + #{dataSource}, + 1 + + + + + update tb_safety_measure set is_active ='0' + where id = #{id} + + + + + + diff --git a/src/main/resources/mappers/system/SelectMapper.xml b/src/main/resources/mappers/system/SelectMapper.xml index 81d1cb2..24e39eb 100644 --- a/src/main/resources/mappers/system/SelectMapper.xml +++ b/src/main/resources/mappers/system/SelectMapper.xml @@ -40,6 +40,12 @@ major_id = #{pid} + diff --git a/src/main/resources/mappers/system/SysFileResourceMapper.xml b/src/main/resources/mappers/system/SysFileResourceMapper.xml new file mode 100644 index 0000000..494a4d0 --- /dev/null +++ b/src/main/resources/mappers/system/SysFileResourceMapper.xml @@ -0,0 +1,51 @@ + + + + + insert into sys_file_resource + + file_name, + file_suffix, + file_size, + original_file_path, + compress_file_path, + watermark_file_path, + file_type, + source_id, + upload_type, + source_type, + source_type_name, + create_time, + create_user_name, + create_user, + is_active + + + #{fileName}, + #{fileSuffix}, + #{fileSize}, + #{originalFilePath}, + #{compressFilePath}, + #{watermarkFilePath}, + #{fileType}, + #{sourceId}, + #{uploadType}, + #{sourceType}, + #{sourceTypeName}, + #{createTime}, + #{createUserName}, + #{createUser}, + 1 + + + + + update sys_file_resource set is_active ='0' + where source_id = #{id} + + + diff --git a/src/main/resources/mappers/system/UserMapper.xml b/src/main/resources/mappers/system/UserMapper.xml index 9b404a6..d17c92d 100644 --- a/src/main/resources/mappers/system/UserMapper.xml +++ b/src/main/resources/mappers/system/UserMapper.xml @@ -34,6 +34,10 @@ set sign_img=null where id = #{id} + + delete from tb_pro_user + where user_id = #{id} + select id, user_name as username, + password, login_name as loginName, sex, user_code as userCode, @@ -279,13 +282,23 @@ and t.id=#{id} order by t.del_flag ASC , t.state,t.create_time DESC + - + insert into sys_role_user(roleId, userId) values (#{roleId}, #{userId}) + + insert into tb_pro_user(user_id, pro_id) values (#{userId}, #{proId}) + update sys_user t @@ -295,11 +308,9 @@ t.sex = #{sex}, t.org_id = #{orgId}, t.role_id = #{roleId}, - t.phone = #{phone}, t.user_type = #{userType}, t.login_type = #{loginType}, t.team_id = #{teamId}, - t.state = #{state}, t.update_time = now() where t.id = #{id} diff --git a/src/main/resources/static/js/synthesisQuery/synthesisQuery.js b/src/main/resources/static/js/synthesisQuery/synthesisQuery.js index d07e401..6119735 100644 --- a/src/main/resources/static/js/synthesisQuery/synthesisQuery.js +++ b/src/main/resources/static/js/synthesisQuery/synthesisQuery.js @@ -93,16 +93,17 @@ function initImgData(list) { let htmlArr = []; if (list && list.length > 0) { $.each(list, function (index, item) { + let filePath = imgUrl + item.compressFilePath + "?token=" + tokens htmlArr.push("
" + "
\n" + - " " + + " " + "
" + "
" + "

" + item.uploadTime + "

" + "

" + item.uploadTypeName + "

" + "
" + "
" + - "

" + item.sourceTypeName + "

" + + "

" + setSourceTypeName(item) + "

" + setCollectData(item) + "
" + "
" + @@ -136,30 +137,20 @@ function initImgData(list) { return ""; } + // 设置标题 + function setSourceTypeName(item){ + if(item.sourceType === '9'){ + return item.title; + }else{ + return item.sourceTypeName.split('-')[1]; + } + } + } -/**放大*/ -function viewImg(item) { - layer.photos({ - shade: 0.5, - footer: false, - photos: { - "title": "图片预览", - "start": 0, - "data": [ - { - "pid": 1, - "src": "../../img/synthesisQuery/7.jpg", - } - ] - }, - }); -} -/**放大*/ -function imgDownLoad(item) { - alert(item.id) -} + + /**水印下载*/ function waterImgDownLoad(item) { diff --git a/src/main/resources/static/js/synthesisQuery/synthesisQueryCommon.js b/src/main/resources/static/js/synthesisQuery/synthesisQueryCommon.js new file mode 100644 index 0000000..91e490f --- /dev/null +++ b/src/main/resources/static/js/synthesisQuery/synthesisQueryCommon.js @@ -0,0 +1,47 @@ +/**放大*/ +function viewImg(item) { + layer.photos({ + shade: 0.5, + footer: false, + photos: { + "title": "图片预览", + "start": 0, + "data": [ + { + "pid": 1, + "src": imgUrl + item.originalFilePath + "?token=" + tokens, + } + ] + }, + }); +} + +/**原图下载*/ +function imgDownLoad(item) { + let orginalPath = item.originalFilePath; + let obj = { + imgPath: orginalPath, + } + let loadingMsg = layer.msg("原图下载中,请稍候...", {icon: 16, scrollbar: false, time: 0,}); + let url = dataUrl + "/common/download/downloadImage?token=" + tokens + "&encryptedData=" + encodeURIComponent(encryptCBC(JSON.stringify(obj))); + let xhr = new XMLHttpRequest(); + xhr.open("get", url, true); + xhr.responseType = "blob"; // 转换流 + xhr.setRequestHeader('Content-Type','application/json;charset=UTF-8') + xhr.onload = function () { + layer.close(loadingMsg); + if (this.status === 200) { + let blob = this.response; + var a = document.createElement("a"); + var url = window.URL.createObjectURL(blob); + a.href = url; + a.download = orginalPath.substring(orginalPath.lastIndexOf('/') + 1,orginalPath.length); // 文件名 + } else { + layer.msg("原图下载发生异常,请稍后重试", {icon: 16, scrollbar: false, time: 2000}); + } + a.click(); + window.URL.revokeObjectURL(url); + }; + // xhr.send(params); + xhr.send(); +} \ No newline at end of file diff --git a/src/main/resources/static/js/system/child/userFormTemp.js b/src/main/resources/static/js/system/child/userFormTemp.js index eddf41c..72bad65 100644 --- a/src/main/resources/static/js/system/child/userFormTemp.js +++ b/src/main/resources/static/js/system/child/userFormTemp.js @@ -1,4 +1,4 @@ -let form, layer, dtree, util, idParam, phoneParam; +let form, layer, dtree, util, idParam, phoneParam, formSelects; let arr = ['background', 'web', 'mobile', 'wx']; let background, web, mobile, wx; let data = [], appResList = []; @@ -12,13 +12,15 @@ function setParams(params) { console.log(params) idParam = JSON.parse(params).id; layui.config({ - base: "../../../js/layui-v2.6.8/dtree/", //此处路径请自行处理, 可以使用绝对路径 + base: "../../../js/layui-v2.6.8/" }).extend({ - dtree: 'dtree' - }).use(['form', 'layer', 'dtree', 'util'], function () { + dtree: 'dtree/dtree', + formSelects: 'formSelects-v4', + }).use(['form', 'layer', 'dtree', 'util', 'formSelects'], function () { layer = layui.layer; form = layui.form; util = layui.util; + formSelects = layui.formSelects; dtree = layui.dtree; var $ = layui.jquery; roleList = getRoleSelected(); @@ -123,11 +125,11 @@ function getRoleSelected() { * 获取工程数据 */ function getProSelected() { - let url = dataUrl + '/users/getRoleAll'; - ajaxRequest(url, "POST", null, true, function () { + let url = dataUrl + '/sys/select/getProjectSelect'; + ajaxRequest(url, "GET", null, true, function () { }, function (result) { if (result.code === 200) { - setSelectValue(result.data, 'project'); + setProjectValue(result.data); } else { layer.alert(result.msg, {icon: 2}) } @@ -163,6 +165,21 @@ function setSelectValue(list, selectName) { layui.form.render(); } +function setProjectValue(data) { + let keys = []; + $.each(data, function (index, item) { + let temp = { + "name": item.name, + "value": item.id + }; + keys.push(temp); + }) + formSelects.data('project', 'local', { + arr: keys + }); + layui.form.render('select'); // 重新渲染 select 组件 +} + // function setOrgTree(data){ // orgTree = dtree.renderSelect({ @@ -249,17 +266,25 @@ function setFormData(data) { document.getElementById('userType_0').checked = true; }*/ - if (data.state === 1) { - document.getElementById('state_1').checked = true; - } else if (data.state === 0) { - document.getElementById('state_0').checked = true; - } + /* if (data.state === 1) { + document.getElementById('state_1').checked = true; + } else if (data.state === 0) { + document.getElementById('state_0').checked = true; + }*/ $('#type_' + data.type).attr('checked', true) $('#orgId').val(data.orgId) $('#roleId').val(data.roleId) $('#roleId option[value=' + data.roleId + ']').attr('selected', true) - $('#project').val(data.roleId) - $('#project option[value=' + data.project + ']').attr('selected', true) + if ($('#roleId option:selected').text().includes('项目部级')) { + $('#projectDiv').removeClass('layui-hide'); + } else { + $('#projectDiv').addClass('layui-hide'); + } + $('#project').val(data.project) + var selectedValues = data.projects.map(function (item) { + return item.id; + }); + formSelects.value('project', selectedValues); /*$('#teamId').val(data.teamId) $('#teamId option[value=' + data.teamId + ']').attr('selected', true)*/ // var arrCB = data.loginTypes; @@ -284,17 +309,17 @@ function saveData(data) { let loadingMsg = layer.msg('数据上传中,请稍候...', {icon: 16, scrollbar: false, time: 0}); let url = dataUrl + "/users/addTemp"; let params = data.field; - var arr_box = [];//固定复选框 - $('#cbGuDing input[type=checkbox]:checked').each(function () { - arr_box.push($(this).val()); - }); - var arr_pro = [];//固定复选框 - $('#project input[type=checkbox]:checked').each(function () { - arr_pro.push($(this).val()); - }); + // var arr_box = [];//固定复选框 + // $('#cbGuDing input[type=checkbox]:checked').each(function () { + // arr_box.push($(this).val()); + // }); + // var arr_pro = [];//固定复选框 + // $('#project input[type=checkbox]:checked').each(function () { + // arr_pro.push($(this).val()); + // }); // params.loginType = arr_box.join() - params.project = arr_pro.join() + // params.project = arr_pro.join() // params.orgId = params.orgId_select_nodeId; if (params.id != "") { url = dataUrl + "/users/update"; diff --git a/src/main/resources/static/js/system/userMge.js b/src/main/resources/static/js/system/userMge.js index 25556f9..255f59d 100644 --- a/src/main/resources/static/js/system/userMge.js +++ b/src/main/resources/static/js/system/userMge.js @@ -111,7 +111,7 @@ function initTable(dataList, limit, page) { // {field: "orgName", title: "单位部门", unresize: true, align: "center"}, {field: "roleName", title: "角色", unresize: true, align: "center"}, // {field: "phone", title: "联系电话", unresize: true, align: "center"}, - {field: "userType", title: "用户级别", unresize: true, align: "center"}, + {field: "levelName", title: "用户级别", unresize: true, align: "center"}, {field: "state", title: "启用状态", align: "center", templet: '#is-state'}, {field: "createTime", title: "创建时间", unresize: true, align: "center"}, { @@ -148,19 +148,13 @@ function getReqParams(page, limit, type) { obj = { page: page + "", limit: limit + "", - userName: $('#userName').val(), - phone: $('#phone').val(), - orgId: selectOrgId, - userType: $('#userType').val(), + keyWord: $('#keyWord').val(), }; } else { obj = { page: '1', limit: '10', - userName: '', - phone: '', - orgId: '', - userType: '', + keyWord: '', }; } console.log(obj) @@ -172,7 +166,7 @@ function getReqParams(page, limit, type) { // 查询/重置 function query(type) { - let pattern = new RegExp("[%_<>]"); + /* let pattern = new RegExp("[%_<>]"); if (pattern.test($("#loginName").val())) { $("#loginName").val(''); return layer.msg('用户名查询包含特殊字符,请重新输入', { @@ -186,7 +180,7 @@ function query(type) { icon: 2, time: 2000 //2秒关闭(如果不配置,默认是3秒) }); - } + }*/ pageNum = 1; pages(1, limitSize); } diff --git a/src/main/resources/static/pages/synthesisQuery/synthesisQuery.html b/src/main/resources/static/pages/synthesisQuery/synthesisQuery.html index 6f5d1fb..767b4d9 100644 --- a/src/main/resources/static/pages/synthesisQuery/synthesisQuery.html +++ b/src/main/resources/static/pages/synthesisQuery/synthesisQuery.html @@ -104,4 +104,5 @@ + \ No newline at end of file diff --git a/src/main/resources/static/pages/user/child/userFormTemp.html b/src/main/resources/static/pages/user/child/userFormTemp.html index 14cd903..f792124 100644 --- a/src/main/resources/static/pages/user/child/userFormTemp.html +++ b/src/main/resources/static/pages/user/child/userFormTemp.html @@ -4,6 +4,7 @@ + @@ -64,7 +65,9 @@
-
diff --git a/src/main/resources/static/pages/user/password.html b/src/main/resources/static/pages/user/password.html index 437890d..44f8910 100644 --- a/src/main/resources/static/pages/user/password.html +++ b/src/main/resources/static/pages/user/password.html @@ -13,16 +13,16 @@
- +
-
- +
-