Pārlūkot izejas kodu

Merge remote-tracking branch 'origin/master'

蔡德晨 5 gadi atpakaļ
vecāks
revīzija
6404604268

+ 1 - 0
src/main/java/com/jeeplus/modules/act/service/ActProcessService.java

@@ -100,6 +100,7 @@ public class ActProcessService extends BaseService {
 	      pMap.put("name", processDefinition.getName());
 	      pMap.put("version","V:"+processDefinition.getVersion());
 	      pMap.put("resourceName", processDefinition.getResourceName());
+	      pMap.put("description", processDefinition.getDescription());
 	      pMap.put("diagramResourceName", processDefinition.getDiagramResourceName());
 	      pMap.put("deploymentId", processDefinition.getDeploymentId());
 	      pMap.put("suspended", processDefinition.isSuspended());

+ 5 - 4
src/main/java/com/jeeplus/modules/act/service/ActTaskService.java

@@ -1137,16 +1137,17 @@ public class ActTaskService extends BaseService {
 	@Transactional(readOnly = false)
 	public void newAuditSave(Act act,String tuser,Construction construction) {
 
+		String comment = act.getComment();
 		// 设置意见
 //		constructionService.save(construction);
-		if ("manager".equals(act.getFlag())) {
+		/*if ("manager".equals(act.getFlag())) {
 			act.setComment(act.getComment());
 		} else if ("company".equals(act.getFlag())) {
 			act.setComment(act.getComment());
 		} else {
 			act.setComment(act.getComment());
 		}
-		/*		act.setComment(("yes".equals(act.getFlag())?"[同意] ":"[驳回] ")+act.getComment());*/
+		*//*		act.setComment(("yes".equals(act.getFlag())?"[同意] ":"[驳回] ")+act.getComment());*//*
 		act.preUpdate();
 		// 对不同环节的业务逻辑进行操作
 		String taskDefKey = act.getTaskDefKey();
@@ -1172,8 +1173,8 @@ public class ActTaskService extends BaseService {
 		}
 		constructionService.newUpdate(construction);
 //		vars.put("processer", UserUtils.get(construction.getTuser().getId()).getLoginName());
-		/*vars.put("pass", "yes".equals(act.getFlag())? true : false);*/
-		complete(act.getTaskId(), act.getProcInsId(), act.getComment(), vars);
+		*//*vars.put("pass", "yes".equals(act.getFlag())? true : false);*//*
+		complete(act.getTaskId(), act.getProcInsId(), act.getComment(), vars);*/
 	}
 
 

+ 6 - 0
src/main/java/com/jeeplus/modules/act/web/ActProcessController.java

@@ -6,6 +6,7 @@ package com.jeeplus.modules.act.web;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.UnsupportedEncodingException;
+import java.net.URLDecoder;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -236,6 +237,11 @@ public class ActProcessController extends BaseController {
 	@RequestMapping(value = "deleteProcIns")
 	public AjaxJson deleteProcIns(String procInsId, String reason) {
 		AjaxJson j = new AjaxJson();
+		try {
+			reason = URLDecoder.decode(reason,"UTF-8");
+		} catch (UnsupportedEncodingException e) {
+			e.printStackTrace();
+		}
 		if (StringUtils.isBlank(reason)){
 			j.setSuccess(false);
 			j.setMsg("请填写作废原因");

+ 23 - 3
src/main/java/com/jeeplus/modules/act/web/ActTaskController.java

@@ -4,6 +4,8 @@
 package com.jeeplus.modules.act.web;
 
 import java.io.InputStream;
+import java.io.UnsupportedEncodingException;
+import java.net.URLDecoder;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
@@ -377,7 +379,13 @@ public class ActTaskController extends BaseController {
 	@RequestMapping(value = "audit2")
 	public AjaxJson auditTask2(Act act) {
 		AjaxJson j = new AjaxJson();
-		actTaskService.auditSave2(act);
+		try {
+			String comment = URLDecoder.decode(act.getComment(), "UTF-8");
+			act.setComment(comment);
+			actTaskService.auditSave2(act);
+		} catch (UnsupportedEncodingException e) {
+			e.printStackTrace();
+		}
 		j.setMsg("审批成功");
 		return j;
 	}
@@ -390,7 +398,13 @@ public class ActTaskController extends BaseController {
 	@RequestMapping(value = "audit3")
 	public AjaxJson auditTask3(Act act, Disclose disclose) {
 		AjaxJson j = new AjaxJson();
-		actTaskService.auditSave3(act,disclose);
+		try {
+			String comment = URLDecoder.decode(act.getComment(), "UTF-8");
+			act.setComment(comment);
+			actTaskService.auditSave3(act,disclose);
+		} catch (UnsupportedEncodingException e) {
+			e.printStackTrace();
+		}
 		j.setMsg("审批成功");
 		return j;
 	}
@@ -405,7 +419,13 @@ public class ActTaskController extends BaseController {
 	@RequestMapping(value = "newAudit")
 	public AjaxJson newAuditTask(Act act,String tuser,Construction construction) {
 		AjaxJson j = new AjaxJson();
-		actTaskService.newAuditSave(act,tuser,construction);
+		try {
+			String comment = URLDecoder.decode(act.getComment(), "UTF-8");
+			act.setComment(comment);
+			actTaskService.newAuditSave(act,tuser,construction);
+		} catch (UnsupportedEncodingException e) {
+			e.printStackTrace();
+		}
 		j.setMsg("审批成功");
 		return j;
 	}

+ 4 - 3
src/main/java/com/jeeplus/modules/sys/web/UserController.java

@@ -14,6 +14,7 @@ import javax.validation.ConstraintViolationException;
 
 import org.apache.shiro.authz.annotation.Logical;
 import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.apache.shiro.session.Session;
 import org.aspectj.weaver.loadtime.Aj;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
@@ -79,11 +80,11 @@ public class UserController extends BaseController {
 	public String index(User user, Model model) {
 		return "modules/sys/user/userIndex";
 	}
-	
+
 	@RequiresPermissions("sys:user:index")
 	@RequestMapping(value = "userSelect")
-	public String userSelect(boolean isMultiSelect, Model model) {
-		model.addAttribute("isMultiSelect", isMultiSelect);
+	public String userSelect(Model model, HttpServletRequest request) {
+		String office = (String)request.getParameter("office");
 		return "modules/common/userSelect";
 	}
 

+ 4 - 0
src/main/webapp/static/common/js/jeeplus.js

@@ -227,6 +227,10 @@
             });
         },
 
+        /**新用户框**/
+
+
+
         /**角色选择框**/
         openRoleSelectDialog:function(isMultiSelect, yesFuc){
             var url = ctx + "/sys/role/data";

+ 1 - 1
src/main/webapp/webpage/modules/bpm/task/apply/taskMyAppledList.js

@@ -128,7 +128,7 @@ $(document).ready(function() {
                                // actTaskService.complete(testAudit.getAct().getTaskId(), testAudit.getAct().getProcInsId(), testAudit.getAct().getComment(), te
                                jp.confirm("确定要撤销申请吗?", function (data) {
                                    jp.loading();
-                                   jp.get("${ctx}/act/process/deleteProcIns?procInsId=" + row['procIns.processInstanceId'] + "&reason=" + encodeURIComponent("用户撤销"), function (result) {
+                                   jp.get("${ctx}/act/process/deleteProcIns?procInsId=" + row['procIns.processInstanceId'] + "&reason=" + encodeURI(encodeURI("用户撤销")), function (result) {
                                        if (result.success) {
                                            $('#actTable').bootstrapTable('refresh');
                                            jp.success(result.msg);

+ 10 - 6
src/main/webapp/webpage/modules/bpm/task/process/taskProcessList.js

@@ -66,7 +66,8 @@ $(document).ready(function() {
 		        }
 		       
 		    }
-			,{
+
+			,/*{
 		        field: 'key',
 		        title: '流程标识',
 		        sortable: true,
@@ -75,13 +76,16 @@ $(document).ready(function() {
 			    }
 		       
 		    }
-			,{
+			,*/{
 		        field: 'name',
 		        title: '流程名称',
 		        sortable: true
 		       
-		    }
-			,{
+		    },{
+			   field: 'description',
+			   title: '流程备注',
+			   sortable: true
+		   },{
 		        field: 'diagramResourceName',
 		        title: '流程图',
 			   formatter:function (value, row, index) {
@@ -89,13 +93,13 @@ $(document).ready(function() {
 			   }
 		       
 		    }
-			,{
+			,/*{
 		        field: 'version',
 		        title: '流程版本',
 		        sortable: true
 		       
 		    }
-			,{
+			,*/{
 		        field: 'deploymentTime',
 		        title: '更新时间',
 			   formatter:function (value, row, index) {

+ 5 - 5
src/main/webapp/webpage/modules/sg/managementcenter/activiti/constructionAudit.jsp

@@ -22,14 +22,14 @@
 
 			$("#agree").click(function () {
 				// var ii=document.getElementById("tuser").value;
-				var tuser = $("#tuserName").val();
+				var tuser = ($("#tuserName").val();
 				console.log(tuser);
 				if (tuser=="") {
 					jp.error("请选择用户");
 					return;
 				}
 				var id = $("#id").val();
-				var powerLine=$("#powerLine").val();
+				var powerLine= $("#powerLine").val();
 				var blackoutArea=$("#blackoutArea").val();
 				var projectType=$("#projectType").val();
 				var powerFailure=$("#powerFailure").val();
@@ -59,7 +59,7 @@
 								"procInsId":"${construction.act.procInsId}",
 								"procDefId":"${construction.act.procDefId}",
 								"flag":"manager",
-								"comment":message,
+								"comment":window.encodeURI(message),
 								"tuser": tuser,
 								"id":id,
 								"powerLine":powerLine,
@@ -125,7 +125,7 @@
 								"procInsId":"${construction.act.procInsId}",
 								"procDefId":"${construction.act.procDefId}",
 								"flag":"company",
-								"comment":message,
+								"comment":window.encodeURI(message),
 								"id":id,
 								"powerLine":powerLine,
 								"blackoutArea":blackoutArea,
@@ -168,7 +168,7 @@
 								"procInsId":"${construction.act.procInsId}",
 								"procDefId":"${construction.act.procDefId}",
 								"flag":"reject",
-								"comment":message
+								"comment":window.encodeURI(message)
 							},
 							function (data) {
 								if(data.success){

+ 74 - 5
src/main/webapp/webpage/modules/sg/managementcenter/activiti/constructionForm.jsp

@@ -44,6 +44,58 @@
 					}
 				}
 			});
+
+			$("#${id}Button, #${id}Name").click(function(){
+				// 是否限制选择,如果限制,设置为disabled
+				if ($("#${id}Button").hasClass("disabled")){
+					return true;
+				}
+				// 正常打开
+
+/*				jp.openUserSelectDialog(${isMultiSelected? true:false},function(ids, names){
+					$("#${id}Id").val(ids.replace(/u_/ig,""));
+					$("#${id}Name").val(names);
+					$("#${id}Name").focus();
+				})*/
+					top.layer.open({
+						type: 2,
+						area: ['900px', '560px'],
+						title:"选择用户",
+						auto:true,
+						maxmin: true, //开启最大化最小化按钮
+						content: ctx+"/sys/user/userSelect?office=e223b1c8472843bbbbc94c9b72c29737",
+						btn: ['确定', '关闭'],
+						yes: function(index, layero){
+							var ids = layero.find("iframe")[0].contentWindow.getIdSelections();
+							var names = layero.find("iframe")[0].contentWindow.getNameSelections();
+							var loginNames = layero.find("iframe")[0].contentWindow.getLoginNameSelections();
+							if(ids.length ==0){
+								jp.warning("请选择至少一个用户!");
+								return;
+							}
+							// 执行保存
+							yesFuc(ids.join(","), names.join(","), loginNames.join(","));
+
+							top.layer.close(index);
+						},
+						cancel: function(index){
+							//取消默认为空,如需要请自行扩展。
+							top.layer.close(index);
+						}
+					});
+			});
+
+			$("#${id}DelButton").click(function(){
+				// 是否限制选择,如果限制,设置为disabled
+				if ($("#${id}Button").hasClass("disabled")){
+					return true;
+				}
+				// 清除
+				$("#${id}Id").val("");
+				$("#${id}Name").val("");
+				$("#${id}Name").focus();
+
+			});
 		});
 	</script>
 </head>
@@ -80,14 +132,26 @@
 								<td class="width-35">
 									<sys:userselect id="tuser" name="tuser.id" value="${construction.tuser.id}" labelName="tuser.name" labelValue="${construction.tuser.name}"
 													cssClass="form-control required"/>
+									<%--<input id="${id}Id" name="${name}" class="${cssClass} form-control" type="hidden" value="${value}"/>
+										<div class="input-group" style="width:100%">
+										<input id="${id}Name" name="${labelName}" ${allowInput?'':'readonly="readonly"'}  type="text"  value="${labelValue}" data-msg-required="${dataMsgRequired}"
+										class="${cssClass}" style="${cssStyle}"/>
+										<span class="input-group-btn">
+										<button type="button"  id="${id}Button" class="btn <c:if test="${fn:contains(cssClass, 'input-sm')}"> btn-sm </c:if><c:if test="${fn:contains(cssClass, 'input-lg')}"> btn-lg </c:if>  btn-primary ${disabled} ${hideBtn ? 'hide' : ''}"><i class="fa fa-search"></i>
+										</button>
+										<button type="button" id="${id}DelButton" class="close" data-dismiss="alert" style="position: absolute; top: 5px; right: 53px; z-index: 999; display: block;">×</button>
+									</span>
+
+									</div>
+									<label id="${id}Name-error" class="error" for="${id}Name" style="display:none"></label>--%>
 								</td>
 							</tr>
 							<tr>
-								<td class="width-15 active"><label class="pull-right">项目号:</label></td>
+								<td class="width-15 active"><label class="pull-right"><font color="red">*</font>项目号:</label></td>
 								<td class="width-35">
 									<input type='text'  name="projectId" class="form-control required"  value="${construction.projectId}"/>
 								</td>
-								<td class="width-15 active"><label class="pull-right">项目名称:</label></td>
+								<td class="width-15 active"><label class="pull-right"><font color="red">*</font>项目名称:</label></td>
 								<td class="width-35">
 									<input type='text'  name="projectName" class="form-control required"  value="${construction.projectName}"/>
 								</td>
@@ -95,11 +159,16 @@
 							<tr>
 								<td class="width-15 active"><label class="pull-right">接收图纸时间:</label></td>
 								<td class="width-35">
-									<input type='text'  name="acceptDate" class="form-control required"  value="<fmt:formatDate value="${construction.acceptDate}" pattern="yyyy-MM-dd HH:mm:ss"/>"/>
+									<div class='input-group form_datetime' id='acceptDate'>
+										<input type='text'  name="acceptDate" class="form-control required"  value="<fmt:formatDate value="${construction.acceptDate}" pattern="yyyy-MM-dd HH:mm:ss"/>"/>
+										<span class="input-group-addon">
+			                        <span class="glyphicon glyphicon-calendar"></span>
+			                   		 </span>
+									</div>
 								</td>
-								<td class="width-15 active"><label class="pull-right"><font color="red">*</font>备注说明:</label></td>
+								<td class="width-15 active"><label class="pull-right">备注说明:</label></td>
 								<td class="width-35">
-									<textarea  name="examineDate" style="height: 100px" class="form-control required">${construction.examineDate}</textarea>
+									<textarea  name="examineDate" style="height: 100px" class="form-control">${construction.examineDate}</textarea>
 								</td>
 							</tr>
 							</tbody>

+ 2 - 2
src/main/webapp/webpage/modules/sg/managementcenter/activiti/divideAudit.jsp

@@ -30,7 +30,7 @@
 								"procInsId":"${construction.act.procInsId}",
 								"procDefId":"${construction.act.procDefId}",
 								"flag":"yes",
-								"comment":message
+								"comment":window.encodeURI(message)
 
 							},
 							function (data) {
@@ -53,7 +53,7 @@
 								"procInsId":"${construction.act.procInsId}",
 								"procDefId":"${construction.act.procDefId}",
 								"flag":"no",
-								"comment":message
+								"comment":window.encodeURI(message)
 							},
 							function (data) {
 								if(data.success){

+ 45 - 3
src/main/webapp/webpage/modules/sg/managementcenter/activiti/divideForm.jsp

@@ -51,7 +51,7 @@
 								"procInsId":"${construction.act.procInsId}",
 								"procDefId":"${construction.act.procDefId}",
 								"flag":"yes",
-								"comment":message,
+								"comment":window.encodeURI(message),
 								"conId":conId,
 								"channel":channel,
 								"capacity":capacity,
@@ -86,6 +86,27 @@
 
 			$("#reject").click(function () {
 				jp.prompt("存在问题, 审批意见", function (message) {
+					var conId = $("#id").val();
+					var channel = $("#channel").val();
+					var capacity = $("#capacity").val();
+					var sceneSize = $("#sceneSize").val();
+					var capacitySize = $("#capacitySize").val();
+					var hiddenDanger = $("#hiddenDanger").val();
+					var influenceConstruction = $("#influenceConstruction").val();
+					var projectRepetition = $("#projectRepetition").val();
+					var implemented = $("#implemented").val();
+					var transformer = $("#transformer").val();
+					var lineName = $("#lineName").val();
+					var quantities = $("#quantities").val();
+					var rodNumber = $("#rodNumber").val();
+					var administrationType = $("#administrationType").val();
+					var politicalProblem = $("#politicalProblem").val();
+					var precondition = $("#precondition").val();
+					var placementMode = $("#placementMode").val();
+					var productionDate = $("#productionDate").val();
+					var IntegrateModule = $("#IntegrateModule").val();
+					var needReplace = $("#needReplace").val();
+					var overallTransformation = $("#overallTransformation").val();
 					jp.post("${ctx}/act/task/audit3",
 							{
 								"taskId":"${construction.act.taskId}",
@@ -93,8 +114,29 @@
 								"taskDefKey":"${construction.act.taskDefKey}",
 								"procInsId":"${construction.act.procInsId}",
 								"procDefId":"${construction.act.procDefId}",
-								"flag":"no",
-								"comment":message
+								"flag":"yes",
+								"comment":window.encodeURI(message),
+								"conId":conId,
+								"channel":channel,
+								"capacity":capacity,
+								"sceneSize":sceneSize,
+								"capacitySize":capacitySize,
+								"hiddenDanger":hiddenDanger,
+								"influenceConstruction":influenceConstruction,
+								"projectRepetition":projectRepetition,
+								"implemented":implemented,
+								"transformer":transformer,
+								"lineName":lineName,
+								"quantities":quantities,
+								"rodNumber":rodNumber,
+								"administrationType":administrationType,
+								"politicalProblem":politicalProblem,
+								"precondition":precondition,
+								"placementMode":placementMode,
+								"productionDate":productionDate,
+								"IntegrateModule":IntegrateModule,
+								"needReplace":needReplace,
+								"overallTransformation":overallTransformation
 							},
 							function (data) {
 								if(data.success){