From 8853292babb2ad94de4a3207966f1e83b767cd2d Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Sun, 17 Sep 2023 16:38:34 +0800
Subject: [PATCH] 新增流程节点进程查询接口

---
 src/main/java/org/springblade/modules/zc/controller/ZcController.java |  115 ++++++++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 100 insertions(+), 15 deletions(-)

diff --git a/src/main/java/org/springblade/modules/zc/controller/ZcController.java b/src/main/java/org/springblade/modules/zc/controller/ZcController.java
index c3d1e88..9038510 100644
--- a/src/main/java/org/springblade/modules/zc/controller/ZcController.java
+++ b/src/main/java/org/springblade/modules/zc/controller/ZcController.java
@@ -17,27 +17,42 @@
 package org.springblade.modules.zc.controller;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.metadata.TableInfo;
+import com.baomidou.mybatisplus.core.metadata.TableInfoHelper;
+import com.baomidou.mybatisplus.core.toolkit.Assert;
+import com.baomidou.mybatisplus.core.toolkit.ReflectionKit;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 import lombok.AllArgsConstructor;
+import org.springblade.common.vo.DeptVo;
 import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.log.exception.ServiceException;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.DigestUtil;
 import org.springblade.core.tool.utils.Func;
+import org.springblade.core.tool.utils.StringUtil;
+import org.springblade.modules.FTP.FtpUtil;
+import org.springblade.modules.information.entity.Information;
 import org.springblade.modules.system.entity.User;
+import org.springblade.modules.system.service.IDeptService;
 import org.springblade.modules.system.service.IUserService;
+import org.springblade.modules.system.service.MyAsyncService;
 import org.springblade.modules.zc.entity.Zc;
 import org.springblade.modules.zc.service.IZcService;
 import org.springblade.modules.zc.vo.ZcVO;
 import org.springframework.web.bind.annotation.*;
+import springfox.documentation.annotations.ApiIgnore;
 
 import javax.validation.Valid;
+import java.io.Serializable;
 import java.text.SimpleDateFormat;
-import java.util.Date;
+import java.util.*;
 
 /**
  *  控制器
@@ -54,6 +69,9 @@
 	private final IZcService zcService;
 
 	private IUserService iUserService;
+
+	private final IDeptService deptFeignApi;
+	private final MyAsyncService myAsyncService;
 
 	/**
 	 * 详情
@@ -84,8 +102,27 @@
 	@ApiOperationSupport(order = 3)
 	@ApiOperation(value = "分页", notes = "传入zc")
 	public R<IPage<ZcVO>> page(ZcVO zc, Query query) {
-		IPage<ZcVO> pages = zcService.selectZcPage(Condition.getPage(query), zc);
-		return R.data(pages);
+		//获取部门数据
+		List<DeptVo> deptVos = deptFeignApi.selDeptList();
+		IPage<ZcVO> page = zcService.selectZcPage(Condition.getPage(query), zc);
+		for (int j = 0; j < page.getRecords().size(); j++) {
+			if (page.getRecords().get(j).getDeptid() != null && !page.getRecords().get(j).getDeptid().equals("")){
+				String[] split = page.getRecords().get(j).getDeptid().split(",");
+				List<String> list = Arrays.asList(split);
+				StringBuffer deptNameBuiffer = new StringBuffer();
+				//数据匹配封装
+				for (String deptId:list) {
+					for (DeptVo deptVo:deptVos) {
+						if (deptId.equals(deptVo.getId().toString())){
+							deptNameBuiffer.append(deptVo.getDeptName()).append(",");
+						}
+					}
+				}
+				//封装部门名称数据
+				page.getRecords().get(j).setDeptName(deptNameBuiffer.substring(0,deptNameBuiffer.length()-1));
+			}
+		}
+		return R.data(page);
 	}
 
 	/**
@@ -105,6 +142,55 @@
 	@ApiOperationSupport(order = 5)
 	@ApiOperation(value = "修改", notes = "传入zc")
 	public R update(@Valid @RequestBody Zc zc) {
+		String type = zc.getType();
+		SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+		String times = df.format(new Date());
+		zc.setZctime(times);
+		if (type.equals("1")){
+
+			User user = new User();
+			user.setAccount(zc.getUsername());
+			user.setTenantId("000000");
+
+			User user1 = iUserService.userByAccount(user.getTenantId(),user.getAccount());
+			if (null!=user1) {
+				throw new ServiceException(StringUtil.format("当前用户 [{}] 已存在!", user.getAccount()));
+			}
+
+			user.setPassword(DigestUtil.encrypt(zc.getPassword()));
+			user.setRealName(zc.getSname());
+			user.setCardid(zc.getCardid());
+			user.setRoleId(zc.getParentId());
+			user.setDeptId(zc.getDeptid());
+			user.setCreateTime(new Date());
+			user.setHold("2");
+			user.setDispatch("1");
+			user.setStatus(1);
+			user.setExaminationType("0");
+			user.setIsDeleted(0);
+			iUserService.save(user);
+
+			//内网数据同步
+			String rtime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
+			String s = "insert into blade_user(id,tenant_id,account,password,real_name,role_id,dept_id,create_time,status,is_deleted,cardid,hold,examination_type,dispatch) " +
+				"values(" + "'" + user.getId() + "'" +
+				"," + "'" + user.getTenantId() + "'" +
+				"," + "'" + user.getAccount() + "'" +
+				"," +"'" + user.getPassword() + "'" +
+				"," + "'" + user.getRealName() + "'" +
+				"," + "'" + user.getRoleId() + "'" +
+				"," + "'" + user.getDeptId() + "'" +
+				"," + "'" + rtime + "'" +
+				"," + "'" + user.getStatus() + "'" +
+				"," + "'" + user.getIsDeleted() + "'" +
+				"," + "'" + user.getCardid() + "'" +
+				"," + "'" + user.getHold() + "'" +
+				"," + "'" + user.getExaminationType() + "'" +
+				"," + "'" + user.getDispatch() + "'" + ")";
+			//FtpUtil.sqlFileUpload(s);
+			myAsyncService.dataSync(s);
+
+		}
 		return R.status(zcService.updateById(zc));
 	}
 
@@ -115,18 +201,6 @@
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入zc")
 	public R submit(@Valid @RequestBody Zc zc) {
-		String type = zc.getType();
-		if (type.equals("1")){
-			User user = new User();
-			user.setAccount(zc.getUsername());
-			user.setPassword(DigestUtil.encrypt(zc.getPassword()));
-			user.setRealName(zc.getSname());
-			user.setSex(Integer.valueOf(zc.getSex()));
-			user.setPhone(zc.getPhone());
-			user.setDeptId(zc.getDeptid());
-			user.setRoleId(zc.getParentId());
-			iUserService.saveOrUpdate(user);
-		}
 		return R.status(zcService.saveOrUpdate(zc));
 	}
 
@@ -147,6 +221,17 @@
 	@PostMapping("/inster")
 	@ApiOperation(value = "新增", notes = "传入zc")
 	public R inster(@Valid @RequestBody Zc zc) {
+		//获取用户名,判断该用户名是否已注册,或已有用户
+		//查询注册表中是否有相同的注册信息
+		Zc zc1 = zcService.getAuditSuccessInfo(zc.getUsername());
+		if (null!=zc1){
+			throw new com.aliyun.oss.ServiceException(StringUtil.format("当前用户名 [{}] 已被注册!", zc.getUsername()));
+		}
+		//查询用户表中未删除,未离职的用户信息
+		User user = iUserService.getUserInfo(zc.getUsername());
+		if (null!=user){
+			throw new com.aliyun.oss.ServiceException(StringUtil.format("当前用户名 [{}] 已被注册!", zc.getUsername()));
+		}
 		//当前时间
 		SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
 		String times = df.format(new Date());

--
Gitblit v1.9.3