From 47d330d27fb88e85a40e64e5423f73b0b29c088e Mon Sep 17 00:00:00 2001
From: “djh” <“3298565835@qq.com”>
Date: Mon, 17 Mar 2025 17:03:22 +0800
Subject: [PATCH] 修改
---
ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml | 3
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/BaseEntity.java | 6
signature/src/main/java/com/gkhy/sign/entity/SignatureType.java | 4
signature/src/main/java/com/gkhy/sign/mapper/SignatureTemplateMapper.java | 5
signature/src/main/java/com/gkhy/sign/service/SignatureItemService.java | 2
signature/src/main/java/com/gkhy/sign/dto/rep/SignatureFlowRep.java | 18 +
signature/src/main/java/com/gkhy/sign/dto/rep/SignatureTemplateRep.java | 9
signature/src/main/java/com/gkhy/sign/service/SignatureTemplateService.java | 5
signature/src/main/java/com/gkhy/sign/service/impl/SignatureTemplateServiceImpl.java | 15
signature/src/main/java/com/gkhy/sign/controller/web/SignatureTemplateController.java | 10
ruoyi-admin/src/main/resources/application-pro.yml | 2
signature/src/main/java/com/gkhy/sign/dto/req/SignatureFlowSignReq.java | 43 +++
ruoyi-admin/src/main/java/com/ruoyi/RuoYiApplication.java | 4
ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysLoginService.java | 63 ++++
signature/src/main/java/com/gkhy/sign/service/impl/SignatureItemServiceImpl.java | 27 +
signature/src/main/java/com/gkhy/sign/controller/web/SignatureFlowController.java | 23 +
signature/src/main/java/com/gkhy/sign/entity/SignatureTemplate.java | 1
signature/src/main/java/com/gkhy/sign/controller/web/SignatureItemController.java | 10
signature/src/main/resources/mapper/sign/SignatureTemplateMapper.xml | 9
signature/src/main/java/com/gkhy/sign/controller/app/AppSignatureItemController.java | 32 ++
signature/src/main/java/com/gkhy/sign/controller/app/AppSignatureFlowController.java | 35 ++
signature/src/main/resources/mapper/sign/SignatureItemMapper.xml | 70 +++--
signature/src/main/java/com/gkhy/sign/entity/SignatureFlow.java | 31 +
signature/src/main/java/com/gkhy/sign/mapper/SignatureFlowMapper.java | 8
signature/src/main/java/com/gkhy/sign/service/SignatureFlowService.java | 5
ruoyi-admin/src/main/resources/application.yml | 2
signature/src/main/java/com/gkhy/sign/mapper/SignatureItemMapper.java | 5
signature/src/main/resources/mapper/sign/SignatureFlowMapper.xml | 39 ++
signature/src/main/java/com/gkhy/sign/service/SignatureTypeService.java | 2
signature/src/main/java/com/gkhy/sign/service/impl/SignatureFlowServiceImpl.java | 68 ++++
signature/src/main/java/com/gkhy/sign/controller/app/AppLoginController.java | 39 ++
signature/src/main/java/com/gkhy/sign/mapper/SignatureTypeMapper.java | 5
signature/src/main/java/com/gkhy/sign/service/impl/SignatureTypeServiceImpl.java | 8
ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java | 4
signature/src/main/java/com/gkhy/sign/controller/web/SignatureTypeController.java | 20
signature/src/main/java/com/gkhy/sign/dto/req/SignatureFlowAddReq.java | 132 +++++++++
signature/src/main/java/com/gkhy/sign/dto/rep/SignatureItemRep.java | 7
signature/src/main/resources/mapper/sign/SignatureTypeMapper.xml | 10
ruoyi-admin/src/main/resources/application-dev.yml | 6
39 files changed, 670 insertions(+), 117 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/RuoYiApplication.java b/ruoyi-admin/src/main/java/com/ruoyi/RuoYiApplication.java
index 32eb6f1..2c161c9 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/RuoYiApplication.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/RuoYiApplication.java
@@ -1,5 +1,6 @@
package com.ruoyi;
+import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
@@ -9,7 +10,8 @@
*
* @author ruoyi
*/
-@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class })
+@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class },scanBasePackages = {"com.gkhy","com.ruoyi"})
+@MapperScan("com.gkhy.sign.mapper")
public class RuoYiApplication
{
public static void main(String[] args)
diff --git a/ruoyi-admin/src/main/resources/application-dev.yml b/ruoyi-admin/src/main/resources/application-dev.yml
index 4395f48..1bfc956 100644
--- a/ruoyi-admin/src/main/resources/application-dev.yml
+++ b/ruoyi-admin/src/main/resources/application-dev.yml
@@ -24,9 +24,9 @@
druid:
# 主库数据源
master:
- url: jdbc:mysql://localhost:3306/signature?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+ url: jdbc:mysql://192.168.2.3:7006/signature?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
username: root
- password: password
+ password: 2farwL3yPXfbH2AP
# 从库数据源
slave:
# 从数据源开关/默认关闭
@@ -80,7 +80,7 @@
# redis 配置
redis:
# 地址
- host: 192.168.2.6
+ host: 192.168.2.3
# 端口,默认为6379
port: 6379
# 数据库索引
diff --git a/ruoyi-admin/src/main/resources/application-pro.yml b/ruoyi-admin/src/main/resources/application-pro.yml
index 2c3d87c..eeb1cb4 100644
--- a/ruoyi-admin/src/main/resources/application-pro.yml
+++ b/ruoyi-admin/src/main/resources/application-pro.yml
@@ -24,7 +24,7 @@
druid:
# 主库数据源
master:
- url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+ url: jdbc:mysql://localhost:3306/signature?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
username: root
password: password
# 从库数据源
diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml
index a32b0c2..973681a 100644
--- a/ruoyi-admin/src/main/resources/application.yml
+++ b/ruoyi-admin/src/main/resources/application.yml
@@ -109,7 +109,7 @@
# 是否开启swagger
enabled: true
# 请求前缀
- pathMapping: /dev-api
+ pathMapping: /
# 防止XSS攻击
xss:
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/BaseEntity.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/BaseEntity.java
index 15bf66b..d138a3b 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/BaseEntity.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/BaseEntity.java
@@ -4,6 +4,9 @@
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude;
@@ -19,6 +22,7 @@
/** 搜索值 */
@JsonIgnore
+ @TableField(exist = false)
private String searchValue;
/** 创建者 */
@@ -36,10 +40,12 @@
private Date updateTime;
/** 备注 */
+ @TableField(exist = false)
private String remark;
/** 请求参数 */
@JsonInclude(JsonInclude.Include.NON_EMPTY)
+ @TableField(exist = false)
private Map<String, Object> params;
public String getSearchValue()
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java
index 2d3c0f6..a68e862 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java
@@ -101,7 +101,7 @@
.csrf(csrf -> csrf.disable())
// 禁用HTTP响应标头
.headers((headersCustomizer) -> {
- headersCustomizer.cacheControl(cache -> cache.disable()).frameOptions(options -> options.sameOrigin());
+ headersCustomizer.cacheControl(cache -> cache.disable()).frameOptions(options -> options.disable());
})
// 认证失败处理类
.exceptionHandling(exception -> exception.authenticationEntryPoint(unauthorizedHandler))
@@ -111,7 +111,7 @@
.authorizeHttpRequests((requests) -> {
permitAllUrl.getUrls().forEach(url -> requests.antMatchers(url).permitAll());
// 对于登录login 注册register 验证码captchaImage 允许匿名访问
- requests.antMatchers("/login", "/register", "/captchaImage").permitAll()
+ requests.antMatchers("/login", "/register", "/captchaImage","/app/login").permitAll()
// 静态资源,可匿名访问
.antMatchers(HttpMethod.GET, "/", "/*.html", "/**/*.html", "/**/*.css", "/**/*.js", "/profile/**").permitAll()
.antMatchers("/swagger-ui.html", "/swagger-resources/**", "/webjars/**", "/*/api-docs", "/druid/**").permitAll()
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysLoginService.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysLoginService.java
index fe16427..d6516c9 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysLoginService.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysLoginService.java
@@ -1,6 +1,10 @@
package com.ruoyi.framework.web.service;
import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+
+import com.ruoyi.common.core.domain.model.LoginBody;
+import com.ruoyi.common.utils.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.authentication.AuthenticationManager;
import org.springframework.security.authentication.BadCredentialsException;
@@ -51,6 +55,9 @@
@Autowired
private ISysConfigService configService;
+
+ @Autowired
+ private HttpServletRequest request;
/**
* 登录验证
@@ -157,12 +164,12 @@
throw new UserPasswordNotMatchException();
}
// IP黑名单校验
- String blackStr = configService.selectConfigByKey("sys.login.blackIPList");
- if (IpUtils.isMatchedIp(blackStr, IpUtils.getIpAddr()))
- {
- AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("login.blocked")));
- throw new BlackListException();
- }
+// String blackStr = configService.selectConfigByKey("sys.login.blackIPList");
+// if (IpUtils.isMatchedIp(blackStr, IpUtils.getIpAddr()))
+// {
+// AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("login.blocked")));
+// throw new BlackListException();
+// }
}
/**
@@ -178,4 +185,48 @@
sysUser.setLoginDate(DateUtils.getNowDate());
userService.updateUserProfile(sysUser);
}
+
+ public String appLogin(String username, String password) {
+ // 验证码校验
+// validateCaptcha(username, code, uuid);
+ // 登录前置校验
+ loginPreCheck(username, password);
+ // 用户验证
+ Authentication authentication = null;
+ try
+ {
+ UsernamePasswordAuthenticationToken authenticationToken = new UsernamePasswordAuthenticationToken(username, password);
+ AuthenticationContextHolder.setContext(authenticationToken);
+ // 该方法会去调用UserDetailsServiceImpl.loadUserByUsername
+ authentication = authenticationManager.authenticate(authenticationToken);
+ }
+ catch (Exception e)
+ {
+ if (e instanceof BadCredentialsException)
+ {
+ AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.password.not.match")));
+ throw new UserPasswordNotMatchException();
+ }
+ else
+ {
+ AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, e.getMessage()));
+ throw new ServiceException(e.getMessage());
+ }
+ }
+ finally
+ {
+ AuthenticationContextHolder.clearContext();
+ }
+ AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success")));
+ LoginUser loginUser = (LoginUser) authentication.getPrincipal();
+ recordLoginInfo(loginUser.getUserId());
+ // 生成token
+ return tokenService.createToken(loginUser);
+ }
+
+ public void logout() {
+ LoginUser loginUser = SecurityUtils.getLoginUser();
+ tokenService.delLoginUser(loginUser.getToken());
+
+ }
}
diff --git a/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
index 5b2a7f2..9f868f3 100644
--- a/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
@@ -66,6 +66,9 @@
<if test="userName != null and userName != ''">
AND u.user_name like concat('%', #{userName}, '%')
</if>
+ <if test="nickName != null and nickName != ''">
+ and u.nick_name like concat('%',#{nickName},'%')
+ </if>
<if test="status != null and status != ''">
AND u.status = #{status}
</if>
diff --git a/signature/src/main/java/com/gkhy/sign/controller/app/AppLoginController.java b/signature/src/main/java/com/gkhy/sign/controller/app/AppLoginController.java
new file mode 100644
index 0000000..6dd2be7
--- /dev/null
+++ b/signature/src/main/java/com/gkhy/sign/controller/app/AppLoginController.java
@@ -0,0 +1,39 @@
+package com.gkhy.sign.controller.app;
+
+import com.ruoyi.common.constant.Constants;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.domain.model.LoginBody;
+import com.ruoyi.framework.web.service.SysLoginService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+@Api(tags = "APP用户登录前端控制器")
+@RestController
+@RequestMapping("/app")
+public class AppLoginController {
+ @Autowired
+ private SysLoginService sysLoginService;
+
+ @ApiOperation(value = "用户登录")
+ @PostMapping("/login")
+ public AjaxResult login(@RequestBody LoginBody loginBody){
+ AjaxResult ajax = AjaxResult.success();
+ // 生成令牌
+ String token = sysLoginService.appLogin(loginBody.getUsername(), loginBody.getPassword());
+ ajax.put(Constants.TOKEN, token);
+ return ajax;
+ }
+
+ @ApiOperation(value = "用户退出")
+ @PostMapping("/logout")
+ public AjaxResult logout(){
+ sysLoginService.logout();
+ return AjaxResult.success();
+ }
+}
+
diff --git a/signature/src/main/java/com/gkhy/sign/controller/app/AppSignatureFlowController.java b/signature/src/main/java/com/gkhy/sign/controller/app/AppSignatureFlowController.java
new file mode 100644
index 0000000..3fbff67
--- /dev/null
+++ b/signature/src/main/java/com/gkhy/sign/controller/app/AppSignatureFlowController.java
@@ -0,0 +1,35 @@
+package com.gkhy.sign.controller.app;
+
+import com.gkhy.sign.dto.req.SignatureFlowSignReq;
+import com.gkhy.sign.service.SignatureFlowService;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import io.swagger.annotations.Api;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+@Api(tags = "app端签名管理")
+@RestController
+@RequestMapping("/app/sign")
+public class AppSignatureFlowController extends BaseController {
+
+ @Autowired
+ private SignatureFlowService signatureFlowService;
+
+
+ /**
+ * 保存签名
+ */
+ @PostMapping("/save/sign")
+ public AjaxResult save(@RequestBody SignatureFlowSignReq signatureFlowReq){
+ return toAjax(signatureFlowService.saveSignatureFlow(signatureFlowReq));
+ }
+
+
+
+
+
+}
diff --git a/signature/src/main/java/com/gkhy/sign/controller/app/AppSignatureItemController.java b/signature/src/main/java/com/gkhy/sign/controller/app/AppSignatureItemController.java
new file mode 100644
index 0000000..df27b3e
--- /dev/null
+++ b/signature/src/main/java/com/gkhy/sign/controller/app/AppSignatureItemController.java
@@ -0,0 +1,32 @@
+package com.gkhy.sign.controller.app;
+
+import com.gkhy.sign.dto.req.SignatureItemReq;
+import com.gkhy.sign.service.SignatureItemService;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.page.TableDataInfo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+@Api(tags = "app端签署项目管理")
+@RestController
+@RequestMapping("/app/item")
+public class AppSignatureItemController extends BaseController {
+ @Autowired
+ private SignatureItemService signatureItemService;
+
+ /**
+ * 查询签署项目列表
+ */
+ @GetMapping("/list")
+ @ApiOperation(value = "查询签署项目列表")
+ public TableDataInfo list(SignatureItemReq signatureItem) {
+ startPage();
+ return getDataTable(signatureItemService.selectItemList(signatureItem));
+ }
+
+
+}
diff --git a/signature/src/main/java/com/gkhy/sign/controller/SignatureFlowController.java b/signature/src/main/java/com/gkhy/sign/controller/web/SignatureFlowController.java
similarity index 67%
rename from signature/src/main/java/com/gkhy/sign/controller/SignatureFlowController.java
rename to signature/src/main/java/com/gkhy/sign/controller/web/SignatureFlowController.java
index 91b22ba..bfdc7e4 100644
--- a/signature/src/main/java/com/gkhy/sign/controller/SignatureFlowController.java
+++ b/signature/src/main/java/com/gkhy/sign/controller/web/SignatureFlowController.java
@@ -1,5 +1,7 @@
-package com.gkhy.sign.controller;
+package com.gkhy.sign.controller.web;
+import com.gkhy.sign.dto.req.SignatureFlowAddReq;
+import com.gkhy.sign.dto.req.SignatureFlowSignReq;
import com.gkhy.sign.dto.req.SignatureItemReq;
import com.gkhy.sign.entity.SignatureFlow;
import com.gkhy.sign.entity.SignatureItem;
@@ -15,7 +17,7 @@
import org.springframework.web.bind.annotation.*;
@RestController
-@Api(value = "签名流转管理")
+@Api(tags = "签名流转管理")
@RequestMapping("/flow")
public class SignatureFlowController extends BaseController {
@@ -43,5 +45,22 @@
return toAjax(signatureFlowService.insertSignatureFlow(signatureFlow));
}
+// /**
+// * 保存签名
+// */
+// @PostMapping("/save/sign")
+// public AjaxResult save(@RequestBody SignatureFlowSignReq signatureFlowReq){
+// return toAjax(signatureFlowService.saveSignatureFlow(signatureFlowReq));
+// }
+
+ /**
+ * 归档
+ * @param signatureFlow
+ * @return
+ */
+ @PostMapping("/returnFile")
+ public AjaxResult returnFile(@RequestBody SignatureFlow signatureFlow){
+ return toAjax(signatureFlowService.returnFile(signatureFlow));
+ }
}
diff --git a/signature/src/main/java/com/gkhy/sign/controller/SignatureItemController.java b/signature/src/main/java/com/gkhy/sign/controller/web/SignatureItemController.java
similarity index 88%
rename from signature/src/main/java/com/gkhy/sign/controller/SignatureItemController.java
rename to signature/src/main/java/com/gkhy/sign/controller/web/SignatureItemController.java
index 10f823a..50b1bce 100644
--- a/signature/src/main/java/com/gkhy/sign/controller/SignatureItemController.java
+++ b/signature/src/main/java/com/gkhy/sign/controller/web/SignatureItemController.java
@@ -1,4 +1,4 @@
-package com.gkhy.sign.controller;
+package com.gkhy.sign.controller.web;
import com.gkhy.sign.dto.req.SignatureItemReq;
import com.gkhy.sign.entity.SignatureItem;
@@ -14,7 +14,7 @@
import org.springframework.web.bind.annotation.*;
@RestController
-@Api(value = "签署项目管理")
+@Api(tags = "签署项目管理")
@RequestMapping("/item")
public class SignatureItemController extends BaseController {
@@ -53,10 +53,10 @@
/**
* 删除签署项目
*/
- @PostMapping("/delete")
+ @PostMapping("/delete/{id}")
@ApiOperation(value = "删除签署项目")
- public AjaxResult remove(@RequestBody Long[] ids) {
- return toAjax(signatureItemService.deleteItem(ids));
+ public AjaxResult remove(@PathVariable("id") Integer id) {
+ return toAjax(signatureItemService.deleteItem(id));
}
diff --git a/signature/src/main/java/com/gkhy/sign/controller/SignatureTemplateController.java b/signature/src/main/java/com/gkhy/sign/controller/web/SignatureTemplateController.java
similarity index 91%
rename from signature/src/main/java/com/gkhy/sign/controller/SignatureTemplateController.java
rename to signature/src/main/java/com/gkhy/sign/controller/web/SignatureTemplateController.java
index c8112d8..e73723b 100644
--- a/signature/src/main/java/com/gkhy/sign/controller/SignatureTemplateController.java
+++ b/signature/src/main/java/com/gkhy/sign/controller/web/SignatureTemplateController.java
@@ -1,4 +1,4 @@
-package com.gkhy.sign.controller;
+package com.gkhy.sign.controller.web;
import com.gkhy.sign.entity.SignatureTemplate;
import com.gkhy.sign.entity.SignatureType;
@@ -13,7 +13,7 @@
import org.springframework.web.bind.annotation.*;
@RestController
-@Api(value = "签署模版管理")
+@Api(tags = "签署模版管理")
@RequestMapping("/template")
public class SignatureTemplateController extends BaseController {
@@ -52,10 +52,10 @@
/**
* 删除签署模版
*/
- @PostMapping("/delete")
+ @PostMapping("/delete/{id}")
@ApiOperation(value = "删除签署模版")
- public AjaxResult remove(@RequestBody Long[] ids) {
- return toAjax(signatureTemplateService.deleteTemplate(ids));
+ public AjaxResult remove(@PathVariable("id") Long id) {
+ return toAjax(signatureTemplateService.deleteTemplate(id));
}
diff --git a/signature/src/main/java/com/gkhy/sign/controller/SignatureTypeController.java b/signature/src/main/java/com/gkhy/sign/controller/web/SignatureTypeController.java
similarity index 75%
rename from signature/src/main/java/com/gkhy/sign/controller/SignatureTypeController.java
rename to signature/src/main/java/com/gkhy/sign/controller/web/SignatureTypeController.java
index 45a0e9e..697b89a 100644
--- a/signature/src/main/java/com/gkhy/sign/controller/SignatureTypeController.java
+++ b/signature/src/main/java/com/gkhy/sign/controller/web/SignatureTypeController.java
@@ -1,7 +1,8 @@
-package com.gkhy.sign.controller;
+package com.gkhy.sign.controller.web;
import com.gkhy.sign.entity.SignatureType;
import com.gkhy.sign.service.SignatureTypeService;
+import com.ruoyi.common.annotation.Anonymous;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
@@ -13,7 +14,7 @@
@RestController
-@Api(value = "签署类型管理")
+@Api(tags = "签署类型管理")
@RequestMapping("/type")
public class SignatureTypeController extends BaseController {
@@ -24,7 +25,8 @@
* 查询签署类别列表
*/
@GetMapping("/list")
- @ApiOperation(value = "查询签署类别列表")
+ @ApiOperation("查询签署类别列表")
+ @Anonymous
public AjaxResult list(SignatureType signatureType) {
return success(signatureTypeService.selectTypeList(signatureType));
}
@@ -33,7 +35,7 @@
* 新增签署类别
*/
@PostMapping("/insert")
- @ApiOperation(value = "新增签署类别")
+ @ApiOperation("新增签署类别")
public AjaxResult add(@Validated @RequestBody SignatureType signatureType) {
return toAjax(signatureTypeService.insertSignatureType(signatureType));
}
@@ -42,7 +44,7 @@
* 修改签署类别
*/
@PostMapping("/update")
- @ApiOperation(value = "修改签署类别")
+ @ApiOperation("修改签署类别")
public AjaxResult edit(@RequestBody SignatureType signatureType) {
return toAjax(signatureTypeService.updateSignatureType(signatureType));
}
@@ -50,10 +52,10 @@
/**
* 删除签署类别
*/
- @PostMapping("/delete")
- @ApiOperation(value = "删除签署类别")
- public AjaxResult remove(@RequestBody Long[] ids) {
- return toAjax(signatureTypeService.deleteType(ids));
+ @PostMapping("/delete/{id}")
+ @ApiOperation("删除签署类别")
+ public AjaxResult remove(@PathVariable("id") Integer id) {
+ return toAjax(signatureTypeService.deleteType(id));
}
diff --git a/signature/src/main/java/com/gkhy/sign/dto/rep/SignatureFlowRep.java b/signature/src/main/java/com/gkhy/sign/dto/rep/SignatureFlowRep.java
index 2fae2cd..76522a5 100644
--- a/signature/src/main/java/com/gkhy/sign/dto/rep/SignatureFlowRep.java
+++ b/signature/src/main/java/com/gkhy/sign/dto/rep/SignatureFlowRep.java
@@ -15,6 +15,7 @@
private String userName;
private Integer deptId;
+ private String deptName;
private Integer signUserId;
@@ -25,6 +26,7 @@
private String signFile;
private Integer signStatus;
+ private Integer sort;
public Integer getItemId() {
return itemId;
@@ -56,6 +58,14 @@
public void setDeptId(Integer deptId) {
this.deptId = deptId;
+ }
+
+ public String getDeptName() {
+ return deptName;
+ }
+
+ public void setDeptName(String deptName) {
+ this.deptName = deptName;
}
public Integer getSignUserId() {
@@ -105,4 +115,12 @@
public void setSignStatus(Integer signStatus) {
this.signStatus = signStatus;
}
+
+ public Integer getSort() {
+ return sort;
+ }
+
+ public void setSort(Integer sort) {
+ this.sort = sort;
+ }
}
diff --git a/signature/src/main/java/com/gkhy/sign/dto/rep/SignatureItemRep.java b/signature/src/main/java/com/gkhy/sign/dto/rep/SignatureItemRep.java
index 03acbc2..5111aa6 100644
--- a/signature/src/main/java/com/gkhy/sign/dto/rep/SignatureItemRep.java
+++ b/signature/src/main/java/com/gkhy/sign/dto/rep/SignatureItemRep.java
@@ -2,16 +2,19 @@
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
+import com.fasterxml.jackson.annotation.JsonFormat;
import com.gkhy.sign.entity.SignatureFlow;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotNull;
+import java.io.Serializable;
import java.util.Date;
import java.util.List;
-public class SignatureItemRep extends BaseEntity {
+public class SignatureItemRep implements Serializable {
private Long id ;
private String itemName;
@@ -19,6 +22,8 @@
private String templateName;
private Integer deptId;
private String deptName;
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date originateTime;
private Integer initiaiUserId;
private String initiaiUserName;
diff --git a/signature/src/main/java/com/gkhy/sign/dto/rep/SignatureTemplateRep.java b/signature/src/main/java/com/gkhy/sign/dto/rep/SignatureTemplateRep.java
index 53bd9bf..7fe794b 100644
--- a/signature/src/main/java/com/gkhy/sign/dto/rep/SignatureTemplateRep.java
+++ b/signature/src/main/java/com/gkhy/sign/dto/rep/SignatureTemplateRep.java
@@ -17,6 +17,7 @@
private String deptName;
private String filePath;
+ private String fileName;
private Integer delFlag;
public Long getId() {
@@ -75,6 +76,14 @@
this.filePath = filePath;
}
+ public String getFileName() {
+ return fileName;
+ }
+
+ public void setFileName(String fileName) {
+ this.fileName = fileName;
+ }
+
public Integer getDelFlag() {
return delFlag;
}
diff --git a/signature/src/main/java/com/gkhy/sign/dto/req/SignatureFlowAddReq.java b/signature/src/main/java/com/gkhy/sign/dto/req/SignatureFlowAddReq.java
new file mode 100644
index 0000000..ed3d508
--- /dev/null
+++ b/signature/src/main/java/com/gkhy/sign/dto/req/SignatureFlowAddReq.java
@@ -0,0 +1,132 @@
+package com.gkhy.sign.dto.req;
+
+public class SignatureFlowAddReq {
+
+
+ private Long itemId;
+
+ private Long userId;
+
+ private String userName;
+
+ private Long deptId;
+ private String deptName;
+
+ private Long[] signUserId;
+
+ private String signUserName;
+
+ private Long signDeptId;
+
+ private String signDeptName;
+
+ private String filePath;
+ private Integer status;
+ private Integer sort;
+ private Integer delFlag;
+
+
+ public Long getItemId() {
+ return itemId;
+ }
+
+ public void setItemId(Long itemId) {
+ this.itemId = itemId;
+ }
+
+ public Long getUserId() {
+ return userId;
+ }
+
+ public void setUserId(Long userId) {
+ this.userId = userId;
+ }
+
+ public String getUserName() {
+ return userName;
+ }
+
+ public void setUserName(String userName) {
+ this.userName = userName;
+ }
+
+ public Long getDeptId() {
+ return deptId;
+ }
+
+ public void setDeptId(Long deptId) {
+ this.deptId = deptId;
+ }
+
+ public String getDeptName() {
+ return deptName;
+ }
+
+ public void setDeptName(String deptName) {
+ this.deptName = deptName;
+ }
+
+ public Long[] getSignUserId() {
+ return signUserId;
+ }
+
+ public void setSignUserId(Long[] signUserId) {
+ this.signUserId = signUserId;
+ }
+
+ public String getSignUserName() {
+ return signUserName;
+ }
+
+ public void setSignUserName(String signUserName) {
+ this.signUserName = signUserName;
+ }
+
+ public Long getSignDeptId() {
+ return signDeptId;
+ }
+
+ public void setSignDeptId(Long signDeptId) {
+ this.signDeptId = signDeptId;
+ }
+
+ public String getSignDeptName() {
+ return signDeptName;
+ }
+
+ public void setSignDeptName(String signDeptName) {
+ this.signDeptName = signDeptName;
+ }
+
+ public String getFilePath() {
+ return filePath;
+ }
+
+ public void setFilePath(String filePath) {
+ this.filePath = filePath;
+ }
+
+ public Integer getStatus() {
+ return status;
+ }
+
+ public void setStatus(Integer status) {
+ this.status = status;
+ }
+
+ public Integer getSort() {
+ return sort;
+ }
+
+ public void setSort(Integer sort) {
+ this.sort = sort;
+ }
+
+ public Integer getDelFlag() {
+ return delFlag;
+ }
+
+ public void setDelFlag(Integer delFlag) {
+ this.delFlag = delFlag;
+ }
+}
diff --git a/signature/src/main/java/com/gkhy/sign/dto/req/SignatureFlowSignReq.java b/signature/src/main/java/com/gkhy/sign/dto/req/SignatureFlowSignReq.java
new file mode 100644
index 0000000..6b2fa84
--- /dev/null
+++ b/signature/src/main/java/com/gkhy/sign/dto/req/SignatureFlowSignReq.java
@@ -0,0 +1,43 @@
+package com.gkhy.sign.dto.req;
+
+public class SignatureFlowSignReq {
+
+ private Integer itemId;
+ private Long userId;
+
+ private String filePath;
+
+ private Integer status;
+
+ public Integer getItemId() {
+ return itemId;
+ }
+
+ public void setItemId(Integer itemId) {
+ this.itemId = itemId;
+ }
+
+ public Long getUserId() {
+ return userId;
+ }
+
+ public void setUserId(Long userId) {
+ this.userId = userId;
+ }
+
+ public String getFilePath() {
+ return filePath;
+ }
+
+ public void setFilePath(String filePath) {
+ this.filePath = filePath;
+ }
+
+ public Integer getStatus() {
+ return status;
+ }
+
+ public void setStatus(Integer status) {
+ this.status = status;
+ }
+}
diff --git a/signature/src/main/java/com/gkhy/sign/entity/SignatureFlow.java b/signature/src/main/java/com/gkhy/sign/entity/SignatureFlow.java
index 18ada8c..b47e655 100644
--- a/signature/src/main/java/com/gkhy/sign/entity/SignatureFlow.java
+++ b/signature/src/main/java/com/gkhy/sign/entity/SignatureFlow.java
@@ -17,32 +17,30 @@
private Integer id;
@NotNull(message = "项目id不能为空")
@ApiModelProperty(value = "项目id")
- private Integer itemId;
+ private Long itemId;
@NotNull(message = "操作人id不能为空")
@ApiModelProperty(value = "操作人id")
private Long userId;
- @NotNull(message = "操作人姓名不能为空")
@ApiModelProperty(value = "操作人姓名")
private String userName;
@NotNull(message = "操作人部门不能为空")
@ApiModelProperty(value = "操作人部门")
private Long deptId;
- @ApiModelProperty(value = "操作人部门")
private String deptName;
@NotNull(message = "流向人id不能为空")
@ApiModelProperty(value = "流向人id")
private Long signUserId;
- @NotNull(message = "流向人姓名不能为空")
@ApiModelProperty(value = "流向人姓名")
private String signUserName;
@NotNull(message = "流向人部门不能为空")
@ApiModelProperty(value = "流向人部门")
private Long signDeptId;
- @ApiModelProperty(value = "流向人部门名称")
+
private String signDeptName;
- private String file_path;
+ private String filePath;
private Integer status;
+ private Integer sort;
private Integer delFlag;
public Integer getId() {
@@ -53,11 +51,11 @@
this.id = id;
}
- public Integer getItemId() {
+ public Long getItemId() {
return itemId;
}
- public void setItemId(Integer itemId) {
+ public void setItemId(Long itemId) {
this.itemId = itemId;
}
@@ -133,12 +131,21 @@
this.deptName = deptName;
}
- public String getFile_path() {
- return file_path;
+ public String getFilePath() {
+ return filePath;
}
- public void setFile_path(String file_path) {
- this.file_path = file_path;
+ public void setFilePath(String file_path) {
+ this.filePath = filePath;
+ }
+
+
+ public Integer getSort() {
+ return sort;
+ }
+
+ public void setSort(Integer sort) {
+ this.sort = sort;
}
public Integer getStatus() {
diff --git a/signature/src/main/java/com/gkhy/sign/entity/SignatureTemplate.java b/signature/src/main/java/com/gkhy/sign/entity/SignatureTemplate.java
index d4e5f13..173216f 100644
--- a/signature/src/main/java/com/gkhy/sign/entity/SignatureTemplate.java
+++ b/signature/src/main/java/com/gkhy/sign/entity/SignatureTemplate.java
@@ -14,6 +14,7 @@
@ApiModel(value = "签署模版对象" , description = "签署模版对象")
public class SignatureTemplate extends BaseEntity {
+ private static final long serialVersionUID = 1L;
@TableId(type = IdType.AUTO)
private Long id;
diff --git a/signature/src/main/java/com/gkhy/sign/entity/SignatureType.java b/signature/src/main/java/com/gkhy/sign/entity/SignatureType.java
index 99b82ae..430bfc2 100644
--- a/signature/src/main/java/com/gkhy/sign/entity/SignatureType.java
+++ b/signature/src/main/java/com/gkhy/sign/entity/SignatureType.java
@@ -7,6 +7,7 @@
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
+import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
@@ -14,11 +15,12 @@
@ApiModel(value = "签署类型",description = "签署类型对象")
public class SignatureType extends BaseEntity {
+ private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Long id;
- @NotNull(message = "类型名成不能为空")
+ @NotBlank(message = "类型名成不能为空")
private String typeName;
private Integer delFlag;
diff --git a/signature/src/main/java/com/gkhy/sign/mapper/SignatureFlowMapper.java b/signature/src/main/java/com/gkhy/sign/mapper/SignatureFlowMapper.java
index f65b7cc..33fe482 100644
--- a/signature/src/main/java/com/gkhy/sign/mapper/SignatureFlowMapper.java
+++ b/signature/src/main/java/com/gkhy/sign/mapper/SignatureFlowMapper.java
@@ -2,10 +2,18 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.gkhy.sign.dto.rep.SignatureFlowRep;
+import com.gkhy.sign.dto.req.SignatureFlowSignReq;
import com.gkhy.sign.entity.SignatureFlow;
import java.util.List;
public interface SignatureFlowMapper extends BaseMapper<SignatureFlow> {
List<SignatureFlowRep> selectbyItemId(Long id);
+
+ int updateByFlowItemId(SignatureFlowSignReq signatureFlowReq);
+
+ SignatureFlow selectByItemIdAndUserId(SignatureFlow signatureFlow);
+
+ int updateByFlow(SignatureFlow signatureFlow);
+
}
diff --git a/signature/src/main/java/com/gkhy/sign/mapper/SignatureItemMapper.java b/signature/src/main/java/com/gkhy/sign/mapper/SignatureItemMapper.java
index 5d8b5e0..6c9fc6a 100644
--- a/signature/src/main/java/com/gkhy/sign/mapper/SignatureItemMapper.java
+++ b/signature/src/main/java/com/gkhy/sign/mapper/SignatureItemMapper.java
@@ -10,7 +10,10 @@
public interface SignatureItemMapper extends BaseMapper<SignatureItem> {
List<SignatureItemRep> getItemList(SignatureItemReq signatureItem);
- int deleteItemByIds(Long[] ids);
+ int deleteItemByIds(Integer ids);
int insertSignatureItem(SignatureItem signatureItem);
+
+ void updateByItemId(SignatureItem signatureItem);
+
}
diff --git a/signature/src/main/java/com/gkhy/sign/mapper/SignatureTemplateMapper.java b/signature/src/main/java/com/gkhy/sign/mapper/SignatureTemplateMapper.java
index 575c502..d89f10b 100644
--- a/signature/src/main/java/com/gkhy/sign/mapper/SignatureTemplateMapper.java
+++ b/signature/src/main/java/com/gkhy/sign/mapper/SignatureTemplateMapper.java
@@ -1,12 +1,13 @@
package com.gkhy.sign.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.gkhy.sign.dto.rep.SignatureTemplateRep;
import com.gkhy.sign.entity.SignatureTemplate;
import java.util.List;
public interface SignatureTemplateMapper extends BaseMapper<SignatureTemplate> {
- List<SignatureTemplate> selectTemplateList(SignatureTemplate signatureTemplate);
+ List<SignatureTemplateRep> selectTemplateList(SignatureTemplate signatureTemplate);
- int deleteTemplateByIds(Long[] ids);
+ int deleteTemplateByIds(Long ids);
}
diff --git a/signature/src/main/java/com/gkhy/sign/mapper/SignatureTypeMapper.java b/signature/src/main/java/com/gkhy/sign/mapper/SignatureTypeMapper.java
index 33edefe..6a42fb5 100644
--- a/signature/src/main/java/com/gkhy/sign/mapper/SignatureTypeMapper.java
+++ b/signature/src/main/java/com/gkhy/sign/mapper/SignatureTypeMapper.java
@@ -2,11 +2,14 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.gkhy.sign.entity.SignatureType;
+import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface SignatureTypeMapper extends BaseMapper<SignatureType> {
List<SignatureType> selectTypeList(SignatureType signatureType);
- int deleteTypeIds(Long[] ids);
+ int deleteTypeIds(Integer ids);
+
+ SignatureType selectByTypeName( String typeName);
}
diff --git a/signature/src/main/java/com/gkhy/sign/service/SignatureFlowService.java b/signature/src/main/java/com/gkhy/sign/service/SignatureFlowService.java
index 8c67d5c..dbdc6b0 100644
--- a/signature/src/main/java/com/gkhy/sign/service/SignatureFlowService.java
+++ b/signature/src/main/java/com/gkhy/sign/service/SignatureFlowService.java
@@ -2,6 +2,8 @@
import com.baomidou.mybatisplus.extension.service.IService;
import com.gkhy.sign.dto.rep.SignatureFlowRep;
+import com.gkhy.sign.dto.req.SignatureFlowAddReq;
+import com.gkhy.sign.dto.req.SignatureFlowSignReq;
import com.gkhy.sign.entity.SignatureFlow;
import java.util.List;
@@ -11,5 +13,8 @@
int insertSignatureFlow(SignatureFlow signatureFlow);
+ int saveSignatureFlow(SignatureFlowSignReq signatureFlowReq);
+
+ int returnFile(SignatureFlow signatureFlow);
}
diff --git a/signature/src/main/java/com/gkhy/sign/service/SignatureItemService.java b/signature/src/main/java/com/gkhy/sign/service/SignatureItemService.java
index 77b6a6c..9e0237c 100644
--- a/signature/src/main/java/com/gkhy/sign/service/SignatureItemService.java
+++ b/signature/src/main/java/com/gkhy/sign/service/SignatureItemService.java
@@ -14,5 +14,5 @@
int updateSignatureIteme(SignatureItem signatureItem);
- int deleteItem(Long[] ids);
+ int deleteItem(Integer ids);
}
diff --git a/signature/src/main/java/com/gkhy/sign/service/SignatureTemplateService.java b/signature/src/main/java/com/gkhy/sign/service/SignatureTemplateService.java
index f3b3f88..a77a922 100644
--- a/signature/src/main/java/com/gkhy/sign/service/SignatureTemplateService.java
+++ b/signature/src/main/java/com/gkhy/sign/service/SignatureTemplateService.java
@@ -1,16 +1,17 @@
package com.gkhy.sign.service;
import com.baomidou.mybatisplus.extension.service.IService;
+import com.gkhy.sign.dto.rep.SignatureTemplateRep;
import com.gkhy.sign.entity.SignatureTemplate;
import java.util.List;
public interface SignatureTemplateService extends IService<SignatureTemplate> {
- List<SignatureTemplate> selectTemplate(SignatureTemplate signatureTemplate);
+ List<SignatureTemplateRep> selectTemplate(SignatureTemplate signatureTemplate);
int insertSignatureTemplate(SignatureTemplate signatureTemplate);
int updateSignatureTemplate(SignatureTemplate signatureTemplate);
- int deleteTemplate(Long[] ids);
+ int deleteTemplate(Long ids);
}
diff --git a/signature/src/main/java/com/gkhy/sign/service/SignatureTypeService.java b/signature/src/main/java/com/gkhy/sign/service/SignatureTypeService.java
index 6220d13..71b766b 100644
--- a/signature/src/main/java/com/gkhy/sign/service/SignatureTypeService.java
+++ b/signature/src/main/java/com/gkhy/sign/service/SignatureTypeService.java
@@ -12,5 +12,5 @@
int updateSignatureType(SignatureType signatureType);
- int deleteType(Long[] ids);
+ int deleteType(Integer ids);
}
diff --git a/signature/src/main/java/com/gkhy/sign/service/impl/SignatureFlowServiceImpl.java b/signature/src/main/java/com/gkhy/sign/service/impl/SignatureFlowServiceImpl.java
index 66f2180..c19e870 100644
--- a/signature/src/main/java/com/gkhy/sign/service/impl/SignatureFlowServiceImpl.java
+++ b/signature/src/main/java/com/gkhy/sign/service/impl/SignatureFlowServiceImpl.java
@@ -2,12 +2,24 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.gkhy.sign.dto.rep.SignatureFlowRep;
+import com.gkhy.sign.dto.req.SignatureFlowAddReq;
+import com.gkhy.sign.dto.req.SignatureFlowSignReq;
import com.gkhy.sign.entity.SignatureFlow;
+import com.gkhy.sign.entity.SignatureItem;
import com.gkhy.sign.mapper.SignatureFlowMapper;
+import com.gkhy.sign.mapper.SignatureItemMapper;
import com.gkhy.sign.service.SignatureFlowService;
+import com.ruoyi.common.core.domain.entity.SysDept;
+import com.ruoyi.common.core.domain.entity.SysUser;
+import com.ruoyi.common.core.domain.model.LoginUser;
+import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.system.mapper.SysDeptMapper;
+import com.ruoyi.system.mapper.SysUserMapper;
+import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import java.util.Date;
import java.util.List;
@Service
@@ -15,6 +27,12 @@
@Autowired
private SignatureFlowMapper signatureFlowMapper;
+ @Autowired
+ private SignatureItemMapper signatureItemMapper;
+ @Autowired
+ private SysUserMapper sysUserMapper;
+ @Autowired
+ private SysDeptMapper sysDeptMapper;
@@ -25,6 +43,56 @@
@Override
public int insertSignatureFlow(SignatureFlow signatureFlow) {
+// SignatureFlow signatureFlow1 = signatureFlowMapper.selectByItemIdAndUserId(signatureFlow);
+// if (signatureFlow1.getStatus() == 0 ){
+// throw new RuntimeException("尚未签名,不能流转");
+// }
+ List<SignatureFlowRep> signatureFlowReps = signatureFlowMapper.selectbyItemId(signatureFlow.getItemId());
+ signatureFlow.setSort(signatureFlowReps.size()+1);
+ SysUser sysUser = sysUserMapper.selectUserById(signatureFlow.getUserId());
+ SysDept sysDept = sysDeptMapper.selectDeptById(signatureFlow.getDeptId());
+ signatureFlow.setUserName(sysUser.getNickName());
+ signatureFlow.setDeptName(sysDept.getDeptName());
+ SysUser sysUserSign = sysUserMapper.selectUserById(signatureFlow.getSignUserId());
+ SysDept sysDeptSign = sysDeptMapper.selectDeptById(signatureFlow.getSignDeptId());
+ signatureFlow.setSignUserName(sysUserSign.getNickName());
+ signatureFlow.setSignDeptName(sysDeptSign.getDeptName());
+
return signatureFlowMapper.insert(signatureFlow);
}
+
+ @Override
+ public int saveSignatureFlow(SignatureFlowSignReq signatureFlowReq) {
+
+ return signatureFlowMapper.updateByFlowItemId(signatureFlowReq);
+ }
+
+ @Override
+ public int returnFile(SignatureFlow signatureFlow) {
+ LoginUser loginUser = SecurityUtils.getLoginUser();
+ signatureFlow.setStatus(3);
+ SysUser sysUser = sysUserMapper.selectUserById(loginUser.getUserId());
+ SysDept sysDept = sysDeptMapper.selectDeptById(loginUser.getDeptId());
+ signatureFlow.setUserId(loginUser.getUserId());
+ signatureFlow.setUserName(sysUser.getNickName());
+ signatureFlow.setDeptId(loginUser.getDeptId());
+ signatureFlow.setDeptName(sysDept.getDeptName());
+ signatureFlow.setSignDeptId(sysDept.getDeptId());
+ signatureFlow.setSignDeptName(sysDept.getDeptName());
+ signatureFlow.setSignUserId(sysUser.getUserId());
+ signatureFlow.setSignUserName(sysUser.getNickName());
+ List<SignatureFlowRep> signatureFlowReps = signatureFlowMapper.selectbyItemId(signatureFlow.getItemId());
+ signatureFlow.setSort(signatureFlowReps.size()+1);
+ int i = signatureFlowMapper.insert(signatureFlow);
+ SignatureItem signatureItem = new SignatureItem();
+ if (i>0){
+ signatureItem.setId(Long.valueOf(signatureFlow.getItemId()));
+ signatureItem.setFilePath(signatureFlow.getFilePath());
+ signatureItem.setStatus(2);
+ signatureItem.setUpdateBy(SecurityUtils.getUsername());
+ signatureItem.setUpdateTime(new Date());
+ signatureItemMapper.updateByItemId(signatureItem);
+ }
+ return i;
+ }
}
diff --git a/signature/src/main/java/com/gkhy/sign/service/impl/SignatureItemServiceImpl.java b/signature/src/main/java/com/gkhy/sign/service/impl/SignatureItemServiceImpl.java
index 3f0e5d3..d3d14bf 100644
--- a/signature/src/main/java/com/gkhy/sign/service/impl/SignatureItemServiceImpl.java
+++ b/signature/src/main/java/com/gkhy/sign/service/impl/SignatureItemServiceImpl.java
@@ -1,6 +1,8 @@
package com.gkhy.sign.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.github.pagehelper.PageInfo;
+import com.gkhy.sign.dto.rep.SignatureFlowRep;
import com.gkhy.sign.dto.rep.SignatureItemRep;
import com.gkhy.sign.dto.req.SignatureItemReq;
import com.gkhy.sign.entity.SignatureFlow;
@@ -9,7 +11,9 @@
import com.gkhy.sign.mapper.SignatureItemMapper;
import com.gkhy.sign.service.SignatureItemService;
import com.ruoyi.common.core.domain.entity.SysDept;
+import com.ruoyi.common.core.domain.entity.SysRole;
import com.ruoyi.common.core.domain.entity.SysUser;
+import com.ruoyi.common.utils.PageUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.system.mapper.SysDeptMapper;
import com.ruoyi.system.mapper.SysUserMapper;
@@ -35,9 +39,15 @@
@Override
public List<SignatureItemRep> selectItemList(SignatureItemReq signatureItem) {
- SysUser user = SecurityUtils.getLoginUser().getUser();
- signatureItem.setUserId(user.getUserId());
- return signatureItemMapper.getItemList(signatureItem);
+ if (!SysUser.isAdmin(SecurityUtils.getUserId())) {
+ signatureItem.setUserId(SecurityUtils.getUserId());
+ }
+ List<SignatureItemRep> itemList = signatureItemMapper.getItemList(signatureItem);
+ for (SignatureItemRep signatureItemRep : itemList) {
+ List<SignatureFlowRep> signatureFlowReps = signatureFlowMapper.selectbyItemId(signatureItemRep.getId());
+ signatureItemRep.setSignatureFlows(signatureFlowReps);
+ }
+ return itemList;
}
@Override
@@ -48,20 +58,23 @@
signatureItem.setOriginateTime(new Date());
int insert = signatureItemMapper.insertSignatureItem(signatureItem);
+ List<SignatureFlowRep> signatureFlowReps = signatureFlowMapper.selectbyItemId(signatureItem.getId());
SignatureFlow signatureFlow = new SignatureFlow();
- signatureFlow.setItemId(insert);
+ signatureFlow.setItemId(signatureItem.getId());
signatureFlow.setUserId(SecurityUtils.getUserId());
- signatureFlow.setUserName(SecurityUtils.getUsername());
+ SysUser sysUser2 = sysUser.selectUserById(SecurityUtils.getUserId());
+ signatureFlow.setUserName(sysUser2.getNickName());
signatureFlow.setDeptId(SecurityUtils.getDeptId());
SysDept sysDept = sysDeptMapper.selectDeptById(SecurityUtils.getDeptId());
signatureFlow.setDeptName(sysDept.getDeptName());
signatureFlow.setSignUserId(signatureItem.getInitiaiUserId());
SysUser sysUser1 = sysUser.selectUserById(signatureItem.getInitiaiUserId());
SysDept sysDept1 = sysDeptMapper.selectDeptById(sysUser1.getDeptId());
- signatureFlow.setSignUserName(sysUser1.getUserName());
+ signatureFlow.setSignUserName(sysUser1.getNickName());
signatureFlow.setSignDeptId(sysDept1.getDeptId());
signatureFlow.setSignDeptName(sysDept1.getDeptName());
signatureFlow.setStatus(0);
+ signatureFlow.setSort(signatureFlowReps.size()+1);
signatureFlowMapper.insert(signatureFlow);
return insert;
@@ -76,7 +89,7 @@
}
@Override
- public int deleteItem(Long[] ids) {
+ public int deleteItem(Integer ids) {
return signatureItemMapper.deleteItemByIds(ids);
}
}
diff --git a/signature/src/main/java/com/gkhy/sign/service/impl/SignatureTemplateServiceImpl.java b/signature/src/main/java/com/gkhy/sign/service/impl/SignatureTemplateServiceImpl.java
index a875bfd..0d05433 100644
--- a/signature/src/main/java/com/gkhy/sign/service/impl/SignatureTemplateServiceImpl.java
+++ b/signature/src/main/java/com/gkhy/sign/service/impl/SignatureTemplateServiceImpl.java
@@ -1,11 +1,15 @@
package com.gkhy.sign.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.gkhy.sign.dto.rep.SignatureTemplateRep;
import com.gkhy.sign.entity.SignatureTemplate;
import com.gkhy.sign.mapper.SignatureTemplateMapper;
import com.gkhy.sign.service.SignatureTemplateService;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.common.utils.file.FileUploadUtils;
+import com.ruoyi.common.utils.file.FileUtils;
+import org.apache.tomcat.util.http.fileupload.FileUpload;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -19,12 +23,17 @@
private SignatureTemplateMapper signatureTemplateMapper;
@Override
- public List<SignatureTemplate> selectTemplate(SignatureTemplate signatureTemplate) {
+ public List<SignatureTemplateRep> selectTemplate(SignatureTemplate signatureTemplate) {
if (!SysUser.isAdmin(SecurityUtils.getUserId())){
signatureTemplate.setDeptId(SecurityUtils.getDeptId());
}
- return signatureTemplateMapper.selectTemplateList(signatureTemplate);
+ List<SignatureTemplateRep> signatureTemplateReps = signatureTemplateMapper.selectTemplateList(signatureTemplate);
+ for (SignatureTemplateRep signatureTemplateRep : signatureTemplateReps) {
+ String name = FileUtils.getName(signatureTemplateRep.getFilePath());
+ signatureTemplateRep.setFileName(name);
+ }
+ return signatureTemplateReps;
}
@Override
@@ -42,7 +51,7 @@
}
@Override
- public int deleteTemplate(Long[] ids) {
+ public int deleteTemplate(Long ids) {
return signatureTemplateMapper.deleteTemplateByIds(ids);
}
}
diff --git a/signature/src/main/java/com/gkhy/sign/service/impl/SignatureTypeServiceImpl.java b/signature/src/main/java/com/gkhy/sign/service/impl/SignatureTypeServiceImpl.java
index c0c0a0f..ad153aa 100644
--- a/signature/src/main/java/com/gkhy/sign/service/impl/SignatureTypeServiceImpl.java
+++ b/signature/src/main/java/com/gkhy/sign/service/impl/SignatureTypeServiceImpl.java
@@ -9,8 +9,6 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
-import java.time.LocalDateTime;
-import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@@ -30,6 +28,10 @@
SysUser user = SecurityUtils.getLoginUser().getUser();
signatureType.setCreateBy(user.getUserName());
signatureType.setCreateTime(new Date());
+ SignatureType signatureType1 = signatureTypeMapper.selectByTypeName(signatureType.getTypeName());
+ if (signatureType1!=null){
+ throw new RuntimeException("类型名称不可重复");
+ }
return signatureTypeMapper.insert(signatureType);
}
@@ -42,7 +44,7 @@
}
@Override
- public int deleteType(Long[] ids) {
+ public int deleteType(Integer ids) {
return signatureTypeMapper.deleteTypeIds(ids);
}
}
diff --git a/signature/src/main/resources/mapper/sign/SignatureFlowMapper.xml b/signature/src/main/resources/mapper/sign/SignatureFlowMapper.xml
index c647e6b..11db864 100644
--- a/signature/src/main/resources/mapper/sign/SignatureFlowMapper.xml
+++ b/signature/src/main/resources/mapper/sign/SignatureFlowMapper.xml
@@ -3,20 +3,39 @@
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.gkhy.sign.mapper.SignatureFlowMapper">
+ <update id="updateByFlowItemId">
+ UPDATE signature_flow
+ SET file_path = #{filePath},
+ `status` = #{status}
+ WHERE
+ item_id = #{itemId}
+ AND sign_user_id = #{userId}
+ </update>
+
+ <update id="updateByFlow">
+ update signature_flow
+ set status=#{status} where item_id = #{itemId} and sign_user_id = #{userId}
+ </update>
<select id="selectbyItemId" resultType="com.gkhy.sign.dto.rep.SignatureFlowRep">
- select sf.item_id,
- sf.user_id,
- sf.user_name,
- sf.dept_id,
- sf.dept_name,
- sf.after_user_id,
- sf.after_user_name,
- sf.after_dept_id,
- sf.after_dept_name,
- siu.status as sing_status
+ select
+ item_id,
+ user_id,
+ user_name,
+ dept_id,
+ dept_name,
+ sign_user_id,
+ sign_user_name,
+ sign_dept_id,
+ sign_dept_name,
+ file_path as sign_file,
+ status as sign_status,
+ sort
from
signature_flow where item_id = #{id}
</select>
+ <select id="selectByItemIdAndUserId" resultType="com.gkhy.sign.entity.SignatureFlow">
+ select * from signature_flow where item_id = #{itemId} and sign_user_id = #{signUserId}
+ </select>
</mapper>
\ No newline at end of file
diff --git a/signature/src/main/resources/mapper/sign/SignatureItemMapper.xml b/signature/src/main/resources/mapper/sign/SignatureItemMapper.xml
index 4523301..a2d0970 100644
--- a/signature/src/main/resources/mapper/sign/SignatureItemMapper.xml
+++ b/signature/src/main/resources/mapper/sign/SignatureItemMapper.xml
@@ -13,24 +13,26 @@
<result property="deptName" column="item_dept_name"/>
<result property="originateTime" column="originate_time"/>
<result property="initiaiUserId" column="initiai_user_id"/>
- <result property="initiaiUserName" column="initiaiUserid"/>
+ <result property="initiaiUserName" column="initiai_user_name"/>
<result property="itemFile" column="item_file"/>
<result property="itemStatus" column="item_status"/>
<result property="delFlag" column="del_flag"/>
- <collection property="signatureFlows" javaType="java.util.List" resultMap="signatureItemRep"/>
+<!-- <collection property="signatureFlows" javaType="java.util.List" resultMap="signatureItemRep"/>-->
</resultMap>
<resultMap id="signatureItemRep" type="com.gkhy.sign.dto.rep.SignatureFlowRep">
<result property="itemId" column="item_id"/>
<result property="userId" column="user_id"/>
- <result property="userName" column="userName"/>
+ <result property="userName" column="user_name"/>
<result property="deptId" column="dept_id"/>
+ <result property="deptName" column="dept_name"/>
<result property="signUserId" column="sign_user_id"/>
<result property="signUserName" column="sign_user_name"/>
<result property="signDeptId" column="sign_dept_id"/>
<result property="signDeptName" column="sign_dept_name"/>
<result property="signFile" column="sign_file"/>
<result property="signStatus" column="sign_status"/>
+ <result property="sort" column="sort"/>
</resultMap>
<insert id="insertSignatureItem" parameterType="SignatureItem" useGeneratedKeys="true" keyProperty="id">
INSERT INTO `signature`.`signature_item`
@@ -40,7 +42,7 @@
<if test="templateId != null">template_id,</if>
<if test="deptId != null">dept_id,</if>
<if test="originateTime != null">originate_time,</if>
- <if test="initialUserId != null">initiai_user_id,</if>
+ <if test="initiaiUserId != null">initiai_user_id,</if>
<if test="filePath != null and filePath != ''">file_path,</if>
<if test="status != null">status,</if>
<if test="delFlag != null">del_flag,</if>
@@ -55,7 +57,7 @@
<if test="templateId != null">#{templateId},</if>
<if test="deptId != null">#{deptId},</if>
<if test="originateTime != null">#{originateTime},</if>
- <if test="initialUserId != null">#{initialUserId},</if>
+ <if test="initiaiUserId != null">#{initiaiUserId},</if>
<if test="filePath != null and filePath != ''">#{filePath},</if>
<if test="status != null">#{status},</if>
<if test="delFlag != null">#{delFlag},</if>
@@ -65,15 +67,33 @@
<if test="updateTime != null">#{updateTime},</if>
</trim>
</insert>
+ <update id="updateByItemId">
+ update signature_item
+ <trim prefix="SET" suffixOverrides=",">
+ <if test="itemName != null and itemName != ''">item_name = #{itemName},</if>
+ <if test="templateId != null">template_id = #{templateId},</if>
+ <if test="deptId != null">dept_id = #{deptId},</if>
+ <if test="originateTime != null">originate_time = #{originateTime},</if>
+ <if test="initiaiUserId != null">initiai_user_id = #{initiaiUserId},</if>
+ <if test="filePath != null and filePath != ''">file_path = #{filePath},</if>
+ <if test="status != null"> status = #{status},</if>
+ <if test="delFlag != null">del_flag = #{delFlag},</if>
+ <if test="createBy != null and createBy != ''"> create_by = #{createBy},</if>
+ <if test="createTime != null">create_time = #{createTime},</if>
+ <if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
+ <if test="updateTime != null">update_time = #{updateTime},</if>
+ </trim>
+ where id = #{id}
+ </update>
<delete id="deleteItemByIds">
- update signature_item set del_flag = 2 where id in
- <foreach item="id" collection="array" open="(" separator="," close=")">
- #{id}
- </foreach>
+ update signature_item set del_flag = 2 where id = #{ids}
</delete>
- <select id="getItemList" resultMap="signatureItemRep">
+
+
+<!-- LEFT JOIN signature_flow sf ON si.id = sf.item_id-->
+ <select id="getItemList" resultMap="itemVo">
SELECT
si.id,
si.item_name,
@@ -82,37 +102,31 @@
si.dept_id as itme_dept_id,
sd.dept_name as item_dept_name,
si.originate_time,
- su.user_name AS initiai_user_name,
+ su.nick_name AS initiai_user_name,
si.initiai_user_id,
st.file_path as item_file,
si.`status` as item_status,
- si.del_flag,
- sf.item_id,
- sf.user_id,
- sf.user_name,
- sf.dept_id,
- sf.dept_name,
- sf.sign_user_id,
- sf.sign_user_name,
- sf.sign_dept_id,
- sf.sign_dept_name,
- sf.file_path as sign_file,
- sf.status as sign_status
+ si.del_flag
FROM
signature_item si
LEFT JOIN signature_template st ON si.template_id = st.id
LEFT JOIN signature_type sty ON st.type_id = sty.id
LEFT JOIN sys_dept sd ON si.dept_id = sd.dept_id
LEFT JOIN sys_user su ON si.initiai_user_id = su.user_id
- LEFT JOIN signature_flow sf ON si.id = sf.item_id
<where>
+ si.del_flag = 0
+ <if test="userId != null">
+ AND si.id IN (
+ SELECT DISTINCT si.id
+ FROM signature_item si
+ LEFT JOIN signature_flow sf ON si.id = sf.item_id
+ WHERE sf.sign_user_id = #{userId}
+ )
+ </if>
<if test="status != null">
and si.status = #{status}
</if>
- <if test="userId != null">
- and sf.user_id = #{userId}
- </if>
</where>
- ORDER BY si.id
+ ORDER BY si.create_time desc
</select>
</mapper>
\ No newline at end of file
diff --git a/signature/src/main/resources/mapper/sign/SignatureTemplateMapper.xml b/signature/src/main/resources/mapper/sign/SignatureTemplateMapper.xml
index c3e2571..ecdd072 100644
--- a/signature/src/main/resources/mapper/sign/SignatureTemplateMapper.xml
+++ b/signature/src/main/resources/mapper/sign/SignatureTemplateMapper.xml
@@ -16,14 +16,11 @@
<result property="delFlag" column="del_flag"/>
</resultMap>
<delete id="deleteTemplateByIds">
- update signature_template set del_flag = 2 where id in
- <foreach item="id" collection="array" open="(" separator="," close=")">
- #{id}
- </foreach>
+ update signature_template set del_flag = 2 where id = #{ids}
</delete>
- <select id="selectTemplateList" resultType="com.gkhy.sign.entity.SignatureTemplate">
+ <select id="selectTemplateList" resultType="com.gkhy.sign.dto.rep.SignatureTemplateRep">
SELECT
st.id,
st.template_name,
@@ -38,9 +35,11 @@
LEFT JOIN sys_dept sd ON st.dept_id = sd.dept_id
LEFT JOIN signature_type sty on st.type_id = sty.id
<where>
+ and st.del_flag = 0
<if test="deptId != null">
and st.dept_id = #{deptId}
</if>
</where>
+ order by st.create_time desc
</select>
</mapper>
\ No newline at end of file
diff --git a/signature/src/main/resources/mapper/sign/SignatureTypeMapper.xml b/signature/src/main/resources/mapper/sign/SignatureTypeMapper.xml
index 43a22ee..94b22d4 100644
--- a/signature/src/main/resources/mapper/sign/SignatureTypeMapper.xml
+++ b/signature/src/main/resources/mapper/sign/SignatureTypeMapper.xml
@@ -18,10 +18,7 @@
</sql>
<delete id="deleteTypeIds">
- update signature_type set del_flag = 2 where id in
- <foreach item="id" collection="array" open="(" separator="," close=")">
- #{id}
- </foreach>
+ update signature_type set del_flag = 2 where id= #{ids}
</delete>
@@ -34,4 +31,9 @@
</if>
</where>
</select>
+
+ <select id="selectByTypeName" resultType="com.gkhy.sign.entity.SignatureType">
+ <include refid="selectType"/>
+ where type_name =#{typeName} and del_flag = 0
+ </select>
</mapper>
\ No newline at end of file
--
Gitblit v1.9.2