qa-prevention-gwj/src/main/java/com/zcloud/controller/xgf/FlowTrainController.java

207 lines
7.3 KiB
Java

package com.zcloud.controller.xgf;
import com.zcloud.controller.base.BaseController;
import com.zcloud.entity.Page;
import com.zcloud.entity.PageData;
import com.zcloud.service.xgf.TrainUsersService;
import com.zcloud.service.xgf.TrainingBatchService;
import com.zcloud.util.*;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.annotation.Resource;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @author fangjiakai
* @date 2023/05/15 11:09
*/
@Controller
@RequestMapping("/flowTrain")
public class FlowTrainController extends BaseController {
@Value("${preventionxgf.api.url}")
private String xgfUrl;
@Resource
private TrainingBatchService trainingbatchService;
@Resource
private TrainUsersService trainUsersService;
@RequestMapping(value = "/batchList")
@ResponseBody
public Object batchList(Page page) throws Exception {
Map<String, Object> map = new HashMap<String, Object>();
PageData pd = this.getPageData();
pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
String KEYWORDS = pd.getString("KEYWORDS"); //关键词检索条件
if (Tools.notEmpty(KEYWORDS)) pd.put("KEYWORDS", KEYWORDS.trim());
page.setPd(pd);
List<PageData> varList = trainingbatchService.list(page); //列出TrainingBatch列表
map.put("varList", varList);
map.put("page", page);
map.put("result", "success");
return map;
}
@RequestMapping(value = "/batchUserList")
@ResponseBody
public Object batchUserList(Page page) throws Exception {
PageData request = this.getPageData();
PageData condition = new PageData();
condition.put("TRAINING_BATCH_ID", request.get("TRAINING_BATCH_ID"));
page.setPd(condition);
List<PageData> varList = trainingbatchService.batchUserlistPage(page);
PageData response = new PageData();
response.put("varList", varList);
response.put("page", page);
response.put("total", page.getTotalResult());
response.put("result", "success");
return response;
}
@RequestMapping(value = "/batchAudit")
@ResponseBody
public Object batchAudit(Page page) throws Exception {
PageData pd = new PageData();
pd = this.getPageData();
Map result = HttpClientService.doPost(xgfUrl + "/openApi/trainingbatch/audit", pd);
return result;
}
private String getPageUrl(Page page) {
return "?showCount=" + page.getShowCount() + "&currentPage=" + page.getUrlCurrentPage();
}
/**
* 分公司端-相关方流动人员培训审核-查看用户信息
*
* @return
* @throws Exception
*/
@RequestMapping(value = "/getUserDetailById")
@ResponseBody
public Object getCorpUserList() throws Exception {
Map<String, Object> map = new HashMap<String, Object>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
Map result = HttpClientService.doPost(xgfUrl + "/api/user/getFloatPersonDetailById/", pd);
return result;
}
@RequestMapping(value = "/approveUser")
@ResponseBody
public Object approveUser() throws Exception {
Map<String,Object> map = new HashMap<String,Object>();
PageData pd = this.getPageData();
trainUsersService.approveUser(pd);
map.put("result", "success");
return map;
}
@RequestMapping(value = "/getDetailsById")
@ResponseBody
public Object getDetailsById() throws Exception {
PageData request = this.getPageData();
PageData condition = new PageData();
condition.put("TRAINING_BATCH_ID", request.get("TRAINING_BATCH_ID"));
PageData entity = trainingbatchService.findById(condition);
switch (entity.getString("STEP_STATUS")) {
case "0":
if (entity.getString("TERRITORIALITY_USER_ID").equals(Jurisdiction.getUSER_ID())) {
entity.put("step", "TERRITORIALITY_STATE");
}
break;
case "1":
if (entity.getString("MANAGER_USER_ID").equals(Jurisdiction.getUSER_ID())) {
entity.put("step", "MANAGER_STATE");
}
break;
case "2":
if (entity.getString("SUPERVISION_USER_ID").equals(Jurisdiction.getUSER_ID())) {
entity.put("step", "SUPERVISION_STATE");
}
break;
default:
break;
}
PageData response = new PageData();
response.put("pd", entity);
response.put("result", "success");
return response;
}
@RequestMapping(value = "/endApproval")
@ResponseBody
public Object endApproval() throws Exception {
Map<String,Object> map = new HashMap<String,Object>();
PageData pd = this.getPageData();
trainUsersService.endApproval(pd);
map.put("result", "success");
return map;
}
@RequestMapping(value = "/oldBatchList")
@ResponseBody
public Object oldBatchList(Page page) throws Exception {
Map<String, Object> map = new HashMap<String, Object>();
PageData pd = this.getPageData();
pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
String KEYWORDS = pd.getString("KEYWORDS"); //关键词检索条件
if (Tools.notEmpty(KEYWORDS)) pd.put("KEYWORDS", KEYWORDS.trim());
page.setPd(pd);
List<PageData> varList = trainingbatchService.oldBatchList(page); //列出TrainingBatch列表
map.put("varList", varList);
map.put("page", page);
map.put("result", "success");
return map;
}
/**
* 获取流程节点名称
* @date 2024-02-23
* @author liu jun
*/
@RequestMapping(value = "/getPintName")
@ResponseBody
public Object getPintName() throws Exception {
PageData request = this.getPageData();
if (StringUtils.isEmpty(request.getString("FLOWS_TYPE")))
throw new Exception("FLOWS_TYPE不能为空");
Map<String, Object> map = new HashMap<String, Object>();
if ("1".equals(request.getString("FLOWS_TYPE"))) {
switch (request.getString("FLOWS_STEP")) {
case "0":
map.put("Department", "指定主管部门");
map.put("User", "指定主管部门审批人");
map.put("UploadFile", "承诺书");
break;
case "1":
case "2":
case "3":
case "4":
map.put("Department", "指定监管部门");
map.put("User", "指定监管部门审批人");
break;
default:
throw new Exception("FLOWS_STEP不合法");
}
} else{
if (request.getString("FLOWS_STEP").equals("0")) {
map.put("Department", "监管部门");
map.put("User", "监管部门审批人");
}
}
map.put("result", "success");
return map;
}
}