|
@@ -4,39 +4,21 @@ import com.google.common.collect.Maps;
|
|
|
import com.jeeplus.common.json.AjaxJson;
|
|
|
import com.jeeplus.common.utils.DateUtils;
|
|
|
import com.jeeplus.common.utils.StringUtils;
|
|
|
-import com.jeeplus.common.utils.excel.ExportExcel;
|
|
|
-import com.jeeplus.core.persistence.Page;
|
|
|
import com.jeeplus.core.web.BaseController;
|
|
|
import com.jeeplus.modules.act.service.ActProcessService;
|
|
|
import com.jeeplus.modules.act.service.ActTaskService;
|
|
|
-import com.jeeplus.modules.sg.managementcenter.activiti.service.ConstructionService;
|
|
|
import com.jeeplus.modules.sg.managementcenter.activiti.utils.MyActiviUtils;
|
|
|
-import com.jeeplus.modules.sg.managementcenter.materialInventory.entity.MaterialInventory;
|
|
|
-import com.jeeplus.modules.sg.managementcenter.materialProvided.entity.MaterialProvided;
|
|
|
-import com.jeeplus.modules.sg.managementcenter.materialProvided.service.MaterialProvidedService;
|
|
|
import com.jeeplus.modules.sg.managementcenter.project.entity.Project;
|
|
|
-import com.jeeplus.modules.sg.managementcenter.project.service.ProjectService;
|
|
|
import com.jeeplus.modules.sg.materialmodule.activiti.entity.MaterialModule;
|
|
|
import com.jeeplus.modules.sg.materialmodule.activiti.service.MaterialModuleService;
|
|
|
-import com.jeeplus.modules.sg.picking.activiti.entity.*;
|
|
|
-import com.jeeplus.modules.sg.picking.activiti.service.PickIngService;
|
|
|
-import com.jeeplus.modules.sg.picking.activiti.service.ShowListService;
|
|
|
-import com.jeeplus.modules.sys.entity.DictValue;
|
|
|
import com.jeeplus.modules.sys.utils.UserUtils;
|
|
|
import org.activiti.engine.repository.ProcessDefinition;
|
|
|
-import org.apache.shiro.authz.annotation.RequiresPermissions;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Controller;
|
|
|
import org.springframework.ui.Model;
|
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
import org.springframework.web.bind.annotation.ResponseBody;
|
|
|
|
|
|
-import javax.servlet.http.HttpServletRequest;
|
|
|
-import javax.servlet.http.HttpServletResponse;
|
|
|
-import java.io.IOException;
|
|
|
-import java.io.UnsupportedEncodingException;
|
|
|
-import java.math.BigDecimal;
|
|
|
-import java.net.URLDecoder;
|
|
|
import java.util.*;
|
|
|
|
|
|
@Controller
|
|
@@ -59,7 +41,7 @@ public class MaterialModuleController extends BaseController {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 非涉电开工流程
|
|
|
+ * 土建开工流程
|
|
|
*/
|
|
|
@RequestMapping(value = "nonPowerStart")
|
|
|
public String nonPowerStart(MaterialModule materialModule, Model model) {
|
|
@@ -70,7 +52,7 @@ public class MaterialModuleController extends BaseController {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 非涉电施工中流程
|
|
|
+ * 土建施工中流程
|
|
|
*/
|
|
|
@RequestMapping(value = "nonPowerMiddle")
|
|
|
public String nonPowerMiddle(MaterialModule materialModule, Model model) {
|
|
@@ -81,7 +63,18 @@ public class MaterialModuleController extends BaseController {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 非涉电竣工流程
|
|
|
+ * 审核土建施工中流程
|
|
|
+ */
|
|
|
+ @RequestMapping(value = "nonRePowerMiddle")
|
|
|
+ public String nonRePowerMiddle(MaterialModule materialModule, Model model) {
|
|
|
+ MaterialModule materialShow = materialModuleService.get(materialModule.getAct().getProcInsId());
|
|
|
+ model.addAttribute("materialShow", materialShow);
|
|
|
+ model.addAttribute("materialModule", materialModule);
|
|
|
+ return "modules/sg/materialmodule/activiti/nonRePowerMiddle";
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 土建竣工流程
|
|
|
*/
|
|
|
@RequestMapping(value = "nonPowerEnd")
|
|
|
public String nonPowerEnd(MaterialModule materialModule, Model model) {
|
|
@@ -92,14 +85,91 @@ public class MaterialModuleController extends BaseController {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 是否完成非涉电工作
|
|
|
+ * 审核土建竣工流程
|
|
|
+ */
|
|
|
+ @RequestMapping(value = "nonRePowerEnd")
|
|
|
+ public String nonRePowerEnd(MaterialModule materialModule, Model model) {
|
|
|
+ MaterialModule materialShow = materialModuleService.get(materialModule.getAct().getProcInsId());
|
|
|
+ model.addAttribute("materialShow", materialShow);
|
|
|
+ model.addAttribute("materialModule", materialModule);
|
|
|
+ return "modules/sg/materialmodule/activiti/nonRePowerEnd";
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 经理审核土建
|
|
|
+ */
|
|
|
+ @RequestMapping(value = "reviewNonPower")
|
|
|
+ public String reviewNonPower(MaterialModule materialModule, Model model) {
|
|
|
+ MaterialModule materialShow = materialModuleService.get(materialModule.getAct().getProcInsId());
|
|
|
+ model.addAttribute("materialShow", materialShow);
|
|
|
+ model.addAttribute("materialModule", materialModule);
|
|
|
+ return "modules/sg/materialmodule/activiti/reviewNonPower";
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 电气开工流程
|
|
|
+ */
|
|
|
+ @RequestMapping(value = "electricalStart")
|
|
|
+ public String electricalStart(MaterialModule materialModule, Model model) {
|
|
|
+ MaterialModule materialShow = materialModuleService.get(materialModule.getAct().getProcInsId());
|
|
|
+ model.addAttribute("materialShow", materialShow);
|
|
|
+ model.addAttribute("materialModule", materialModule);
|
|
|
+ return "modules/sg/materialmodule/activiti/electricalStart";
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 电气施工流程
|
|
|
*/
|
|
|
- @RequestMapping(value = "nonPowerWhether")
|
|
|
- public String nonPowerWhether(MaterialModule materialModule, Model model) {
|
|
|
+ @RequestMapping(value = "electricalMiddle")
|
|
|
+ public String electricalMiddle(MaterialModule materialModule, Model model) {
|
|
|
MaterialModule materialShow = materialModuleService.get(materialModule.getAct().getProcInsId());
|
|
|
model.addAttribute("materialShow", materialShow);
|
|
|
model.addAttribute("materialModule", materialModule);
|
|
|
- return "modules/sg/materialmodule/activiti/nonPowerWhether";
|
|
|
+ return "modules/sg/materialmodule/activiti/electricalMiddle";
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 审核电气施工
|
|
|
+ */
|
|
|
+ @RequestMapping(value = "reElectricalMiddle")
|
|
|
+ public String reElectricalMiddle(MaterialModule materialModule, Model model) {
|
|
|
+ MaterialModule materialShow = materialModuleService.get(materialModule.getAct().getProcInsId());
|
|
|
+ model.addAttribute("materialShow", materialShow);
|
|
|
+ model.addAttribute("materialModule", materialModule);
|
|
|
+ return "modules/sg/materialmodule/activiti/reElectricalMiddle";
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 电气竣工流程
|
|
|
+ */
|
|
|
+ @RequestMapping(value = "electricalEnd")
|
|
|
+ public String electricalEnd(MaterialModule materialModule, Model model) {
|
|
|
+ MaterialModule materialShow = materialModuleService.get(materialModule.getAct().getProcInsId());
|
|
|
+ model.addAttribute("materialShow", materialShow);
|
|
|
+ model.addAttribute("materialModule", materialModule);
|
|
|
+ return "modules/sg/materialmodule/activiti/electricalEnd";
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 审核电气竣工
|
|
|
+ */
|
|
|
+ @RequestMapping(value = "reElectricalEnd")
|
|
|
+ public String reElectricalEnd(MaterialModule materialModule, Model model) {
|
|
|
+ MaterialModule materialShow = materialModuleService.get(materialModule.getAct().getProcInsId());
|
|
|
+ model.addAttribute("materialShow", materialShow);
|
|
|
+ model.addAttribute("materialModule", materialModule);
|
|
|
+ return "modules/sg/materialmodule/activiti/reElectricalEnd";
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 审核电气流程
|
|
|
+ */
|
|
|
+ @RequestMapping(value = "reviewElectrical")
|
|
|
+ public String reviewElectrical(MaterialModule materialModule, Model model) {
|
|
|
+ MaterialModule materialShow = materialModuleService.get(materialModule.getAct().getProcInsId());
|
|
|
+ model.addAttribute("materialShow", materialShow);
|
|
|
+ model.addAttribute("materialModule", materialModule);
|
|
|
+ return "modules/sg/materialmodule/activiti/reviewElectrical";
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -125,6 +195,17 @@ public class MaterialModuleController extends BaseController {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
+ * 审核涉电竣工
|
|
|
+ */
|
|
|
+ @RequestMapping(value = "rePowerEnd")
|
|
|
+ public String rePowerEnd(MaterialModule materialModule, Model model) {
|
|
|
+ MaterialModule materialShow = materialModuleService.get(materialModule.getAct().getProcInsId());
|
|
|
+ model.addAttribute("materialShow", materialShow);
|
|
|
+ model.addAttribute("materialModule", materialModule);
|
|
|
+ return "modules/sg/materialmodule/activiti/rePowerEnd";
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
* 是否完成所有涉电工作
|
|
|
*/
|
|
|
@RequestMapping(value = "PowerWhether")
|
|
@@ -169,32 +250,53 @@ public class MaterialModuleController extends BaseController {
|
|
|
j.setMsg("请选择项目");
|
|
|
return j;
|
|
|
}
|
|
|
+
|
|
|
/**
|
|
|
* 流程审批
|
|
|
*/
|
|
|
if (StringUtils.isBlank(materialModule.getId())) {
|
|
|
- //保存
|
|
|
- //修改项目的施工模块状态
|
|
|
- materialModule.setUserName(UserUtils.getUser().getLoginName());
|
|
|
- materialModule.setFrequency(1);
|
|
|
- materialModuleService.save(materialModule);
|
|
|
- // 启动流程
|
|
|
+ String projectType = materialModule.getProjectType();
|
|
|
+ String[] split = projectType.split("|");
|
|
|
Map<String, Object> vars = Maps.newHashMap();
|
|
|
Project userById = MyActiviUtils.findUserById(projectId);
|
|
|
- vars.put("manager", userById.getConstructionUnitManage());
|
|
|
- if ("contain".equals(flag)) {
|
|
|
+ vars.put("manager", UserUtils.getByUserName(userById.getConstructionUnitManage()).getLoginName());
|
|
|
+ //土建
|
|
|
+ vars.put("contain", false);
|
|
|
+ //电气
|
|
|
+ vars.put("electrical", false);
|
|
|
+ //涉电
|
|
|
+ vars.put("notContain", false);
|
|
|
+ boolean contain = false;
|
|
|
+ boolean electrical = false;
|
|
|
+ boolean notContain = false;
|
|
|
+ for (int i = 0; i < split.length; i++) {
|
|
|
+ if ("1".equals(split[i])) {
|
|
|
+ materialModule.setNonPower(1);
|
|
|
+ contain = true;
|
|
|
+ }
|
|
|
+ if ("2".equals(split[i])) {
|
|
|
+ materialModule.setElectrical(1);
|
|
|
+ electrical = true;
|
|
|
+ }
|
|
|
+ if ("3".equals(split[i])) {
|
|
|
+ materialModule.setPower(1);
|
|
|
+ notContain = true;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (contain == true) {
|
|
|
vars.put("contain", true);
|
|
|
- vars.put("notContain", false);
|
|
|
- vars.put("no", false);
|
|
|
- } else if ("notContain".equals(flag)) {
|
|
|
- vars.put("contain", false);
|
|
|
+ }
|
|
|
+ if (electrical == true) {
|
|
|
+ vars.put("electrical", true);
|
|
|
+ }
|
|
|
+ if (notContain == true && contain == false && electrical == false) {
|
|
|
vars.put("notContain", true);
|
|
|
- vars.put("no", false);
|
|
|
- } else {
|
|
|
- vars.put("contain", false);
|
|
|
- vars.put("notContain", false);
|
|
|
- vars.put("no", true);
|
|
|
}
|
|
|
+ //修改项目的施工模块状态
|
|
|
+ materialModule.setUserName(UserUtils.getUser().getName());
|
|
|
+ materialModule.setFrequency(1);
|
|
|
+ materialModuleService.save(materialModule);
|
|
|
+ // 启动流程
|
|
|
ProcessDefinition p = actProcessService.getProcessDefinition(procDefId);
|
|
|
String title = materialModule.getCurrentUser().getName() + "在" + DateUtils.getDateTime() + "发起" + p.getName();
|
|
|
actTaskService.startProcess(p.getKey(), "sg_construction_process", materialModule.getId(), title, vars);
|