ソースを参照

git-svn-id: https://192.168.57.71/svn/jsgkj@127 931142cf-59ea-a443-aa0e-51397b428577

xt_yuanxd 9 年 前
コミット
61b57da1b7
55 ファイル変更10297 行追加0 行削除
  1. 194 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/ggfwxxgl/jdjc/jdjcadd.jsp
  2. 210 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/ggfwxxgl/jdjc/jdjcedit.jsp
  3. 181 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/ggfwxxgl/jdjc/jdjcmain.jsp
  4. 179 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/ggfwxxgl/jdjc/jdjcview.jsp
  5. 208 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jgbg/jgbgadd.jsp
  6. 215 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jgbg/jgbgedit.jsp
  7. 183 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jgbg/jgbgmain.jsp
  8. 208 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jgsq/jgsqadd.jsp
  9. 215 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jgsq/jgsqedit.jsp
  10. 183 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jgsq/jgsqmain.jsp
  11. 218 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jgsq/jgsqview.jsp
  12. 208 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jgzx/jgzxadd.jsp
  13. 215 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jgzx/jgzxedit.jsp
  14. 183 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jgzx/jgzxmain.jsp
  15. 218 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jgzx/jgzxview.jsp
  16. 215 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jsjdbg/jsjdbgedit.jsp
  17. 183 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jsjdbg/jsjdbgmain.jsp
  18. 218 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jsjdbg/jsjdbgview.jsp
  19. 208 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jsjdcbsj/jsjdcbsjadd.jsp
  20. 183 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jsjdcbsj/jsjdcbsjmain.jsp
  21. 219 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jsjdcbsj/jsjdcbsjview.jsp
  22. 208 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jsjdzx/jsjdzxadd.jsp
  23. 215 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jsjdzx/jsjdzxedit.jsp
  24. 183 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jsjdzx/jsjdzxmain.jsp
  25. 218 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jsjdzx/jsjdzxview.jsp
  26. 80 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/showRy.jsp
  27. 52 0
      gkjsjy/trunk/WebContent/WEB-INF/pages/showViewOption.jsp
  28. 264 0
      gkjsjy/trunk/WebContent/static/biz/js/ggfwxxgl/jdjc/jdjcdetail.js
  29. 79 0
      gkjsjy/trunk/WebContent/static/biz/js/ggfwxxgl/jdjc/jdjcmain.js
  30. 502 0
      gkjsjy/trunk/WebContent/static/biz/js/gkjsgl/jsjdcbsj/jsjdcbsjdetail.js
  31. 106 0
      gkjsjy/trunk/WebContent/static/biz/js/gkjsgl/jsjdcbsj/jsjdcbsjmain.js
  32. 86 0
      gkjsjy/trunk/resources/deployments/jdjc.bpmn
  33. 465 0
      gkjsjy/trunk/resources/deployments/jsjdcbsj.bpmn
  34. 234 0
      gkjsjy/trunk/resources/deployments/lh.bpmn
  35. 689 0
      gkjsjy/trunk/src/com/xt/jygl/ggfwxxgl/jdjc/ctl/JdjcCtl.java
  36. 8 0
      gkjsjy/trunk/src/com/xt/jygl/ggfwxxgl/jdjc/dao/JdjcDao.java
  37. 14 0
      gkjsjy/trunk/src/com/xt/jygl/ggfwxxgl/jdjc/dao/JdjcfjDao.java
  38. 203 0
      gkjsjy/trunk/src/com/xt/jygl/ggfwxxgl/jdjc/entity/JdjcEntity.java
  39. 74 0
      gkjsjy/trunk/src/com/xt/jygl/ggfwxxgl/jdjc/entity/JdjcfjEntity.java
  40. 20 0
      gkjsjy/trunk/src/com/xt/jygl/ggfwxxgl/jdjc/service/JdjcService.java
  41. 17 0
      gkjsjy/trunk/src/com/xt/jygl/ggfwxxgl/jdjc/service/JdjcfjService.java
  42. 119 0
      gkjsjy/trunk/src/com/xt/jygl/ggfwxxgl/jdjc/service/impl/JdjcServiceImpl.java
  43. 36 0
      gkjsjy/trunk/src/com/xt/jygl/ggfwxxgl/jdjc/service/impl/JdjcfjServiceImpl.java
  44. 204 0
      gkjsjy/trunk/src/com/xt/jygl/ggfwxxgl/jdjc/vo/JdjcVo.java
  45. 966 0
      gkjsjy/trunk/src/com/xt/jygl/gkjsgl/jsjdcbsj/ctl/JsjdcbsjCtl.java
  46. 30 0
      gkjsjy/trunk/src/com/xt/jygl/gkjsgl/jsjdcbsj/ctl/JsjdcbsjWebService.java
  47. 8 0
      gkjsjy/trunk/src/com/xt/jygl/gkjsgl/jsjdcbsj/dao/JsjdcbsjDao.java
  48. 14 0
      gkjsjy/trunk/src/com/xt/jygl/gkjsgl/jsjdcbsj/dao/JsjdcbsjfjDao.java
  49. 251 0
      gkjsjy/trunk/src/com/xt/jygl/gkjsgl/jsjdcbsj/entity/JsjdcbsjEntity.java
  50. 76 0
      gkjsjy/trunk/src/com/xt/jygl/gkjsgl/jsjdcbsj/entity/JsjdcbsjfjEntity.java
  51. 20 0
      gkjsjy/trunk/src/com/xt/jygl/gkjsgl/jsjdcbsj/service/JsjdcbsjService.java
  52. 17 0
      gkjsjy/trunk/src/com/xt/jygl/gkjsgl/jsjdcbsj/service/JsjdcbsjfjService.java
  53. 113 0
      gkjsjy/trunk/src/com/xt/jygl/gkjsgl/jsjdcbsj/service/impl/JsjdcbsjServiceImpl.java
  54. 33 0
      gkjsjy/trunk/src/com/xt/jygl/gkjsgl/jsjdcbsj/service/impl/JsjdcbsjfjServiceImpl.java
  55. 449 0
      gkjsjy/trunk/src/com/xt/jygl/gkjsgl/jsjdcbsj/vo/JsjdcbsjVo.java

+ 194 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/ggfwxxgl/jdjc/jdjcadd.jsp

@@ -0,0 +1,194 @@
+<%@ page  contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
+<!DOCTYPE html>
+<html lang="en">
+<head>
+	<meta charset="utf-8">
+	<title>江苏省港口建设与经营管理信息系统</title>
+	<meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <%@ include file="../../common.jsp"%>
+	<script type="text/javascript" src="${app }/static/biz/js/ggfwxxgl/jdjc/jdjcdetail.js"></script>
+	<script type="text/javascript">
+		$(document).ready(function () {
+			iFrameHeightIframe('${menuid}');//自适应高度
+			initszdSelect('szdsel', '${sz}', 'showgk', '80%');
+			initgkSelect('gksel', '${gk}','${sz}', 'showgq', '80%');
+			initgqSelect('gqsel', '','${sz}', '${gk}',null, '80%');
+		});
+		function showgk(){
+			$('#xzjyr').val("");
+	    	$('#xzjyrid').val("");
+			initgqSelect('gqsel','','','',null,'80%');
+			initgkSelect('gksel','',$('.szdselectpicker').val(),"showgq",'80%');
+			jyrhide();
+		}
+		function showgq(){
+			$('#xzjyr').val("");
+	    	$('#xzjyrid').val("");
+			initgqSelect('gqsel','',$('.szdselectpicker').val(),$('.gkselectpicker').val(),'','80%');
+			jyrhide();
+		}
+		
+		function jyrSel(jyrid) {
+		guanbipop();
+		
+		$.post($.app + "/gkjyr/findById", {
+			id : jyrid
+		}, function(data) {
+			//返回的是经营人实体,你可以在回掉中,进行任何其他字段的默认填写
+			$('#jyrid').val(data.id);
+			$('#jyrmc').val(data.gkjyr);
+			
+		}, "json");
+					
+		}
+			
+	</script>
+</head>
+<body>
+	<jsp:include page="../../jyrselect.jsp"></jsp:include>
+	<div class="box" >
+		<div class="box-content" >
+			<div class="apply_fill">
+ <form  id="addform" method="post" enctype="multipart/form-data"> 	
+ 		<input type="hidden" id="fjFlag" name="fjFlag" value="1"/>
+ 		<input type="hidden" id="flowFlag" name="flowFlag" />
+				<table class="apply" cellpadding="0" cellspacing="0" style="table-layout: fixed;">
+						<tr>
+							<th><span class="needwrite">*</span>所在地:&nbsp;</th>
+							<td >
+								<div id="szdsel"></div>
+							</td>
+							<th><span class="needwrite">*</span>所在港口:&nbsp;</th>
+							<td >
+								 <div id="gksel"></div>
+							</td>
+						</tr>
+						<tr>
+							<th><span class="needwrite">*</span>所在地区:&nbsp;</th>
+							<td >
+								<div id="gqsel"></div>
+							</td>
+							<th><span class="needwrite">*</span>申请日期:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="sqrq"
+										readonly="readonly" value="${fn:substring(sqrq,0,10)}">
+							</td>
+						</tr>
+						<tr>
+	                        <th><span class="needwrite">*</span>督查单位:&nbsp;</th>
+	                        <td>
+		                        <input type="text" class="form-control"  name ="dcdw"
+										readonly="readonly" value="${user.ssglbm.gkglbmqc}">
+	                        </td>
+	                        <th><span class="needwrite">*</span>整改期限:&nbsp;</th>
+	                        <td>
+		                        <input class="Wdate" name="zgqx" id="zgqx" type="text" onFocus="WdatePicker({lang:'zh-cn',skin:'default',dateFmt:'yyyy-MM-dd'})" id="zysjztext">
+	                        </td>
+	                    </tr>
+	                    <tr>
+	                        <th><span class="needwrite">*</span>被督查单位:&nbsp;</th>
+	                        <td colspan="3" style="position: relative;">
+		                       <input type="text" style="" readonly="readonly" class="form-control" id="jyrmc" name="jyrmc"> 
+		                     
+											<a class="btn btn-primary btn-sm" href="#"
+												onclick="jyrselpop('jyrSel')"
+												style="position: absolute; right: 5px; top: 4px;"> <i
+												class="glyphicon"></i>选择被督查单位
+											</a>
+										<input type="hidden" class="form-control" name="jyrid"
+										id="jyrid" value="">
+	                        </td>
+	                    </tr>
+	                     <tr>
+	                        <th>参加督查人员:&nbsp;</th>
+	                        <td colspan="3">
+		                        <input type="text" class="form-control"  name="cjdcry"  maxlength="50">
+	                        </td>
+	                    </tr>
+	                     <tr>
+	                        <th><span class="needwrite">*</span>被督查单位负责人:&nbsp;</th>
+	                        <td colspan="3">
+		                        <input type="text" class="form-control"  name="bdcdwfzr"  maxlength="50">
+	                        </td>
+	                    </tr>
+	                     <tr>
+	                        <th>被督查单位参加人员:&nbsp;</th>
+	                        <td colspan="3">
+		                        <input type="text" class="form-control"  name="bdcdwcjry"  maxlength="50">
+	                        </td>
+	                    </tr>
+	                      <tr>
+	                        <th>隐患名称:&nbsp;</th>
+	                        <td colspan="3">
+		                        <textarea class="form-control" rows="3" cols="3" name="yhmc"></textarea>
+	                        </td>
+	                    </tr>
+	                      <tr>
+	                        <th>整改措施要求:&nbsp;</th>
+	                        <td colspan="3">
+		                        <textarea class="form-control" rows="3" cols="3" name="zgcsyq"></textarea>
+	                        </td>
+	                    </tr>
+	                      <tr>
+	                        <th>整改说明:&nbsp;</th>
+	                        <td colspan="3">
+		                        <textarea class="form-control" rows="3" cols="3" name="zgsm"></textarea>
+	                        </td>
+	                    </tr>
+	                      <tr>
+	                        <th>整改附件说明:&nbsp;</th>
+	                        <td colspan="3">
+		                       			<a href="#" class="file">上传<input type="file" name="file" id="fjid" onchange="jdjc.detail.submitFile()"/></a>
+						<table  id="tableId" style="width: 100%">
+							<tr>
+							<!-- <td style="width:5%;text-align: center;">序号</td> -->
+							<td style="width:40%;text-align: center;">上传附件名称</td>
+							<td style="width:15%;text-align: center;">操作</td>
+							</tr>
+						</table>
+			            
+	                        </td>
+	                    </tr>
+	                    <!--   <tr>
+	                        <th>备注:&nbsp;</th>
+	                        <td colspan="3">
+		                        <textarea class="form-control" rows="3" cols="3" name="bz"></textarea>
+	                        </td>
+	                    </tr> -->
+	                      <tr>
+	                        <th>整改后附件说明:&nbsp;</th>
+	                        <td colspan="3">
+		                        上传
+	                        </td>
+	                    </tr>
+					</table>
+</form>
+					<div  id="buttons">
+                    	<a class="btn btn-default btn-sm" href="#" onclick="jdjc.detail.save()">
+							   <i class="glyphicon glyphicon-floppy-disk"></i> 
+							            保存</a>
+						<c:if test="${btnflag == 1 }">
+							         	<a class="btn btn-default btn-sm" href="#"
+								onclick="jdjc.detail.submit()"> <i
+								class="glyphicon glyphicon-floppy-disk"></i> 提交
+							</a> 
+						</c:if>	 
+						<c:if test="${btnflag == 0 }">
+							         	<a class="btn btn-default btn-sm" href="#"
+								onclick="jdjc.detail.savexf()"> <i
+								class="glyphicon glyphicon-floppy-disk"></i> 下发
+							</a> 
+						</c:if>	 						            
+							             <a class="btn btn-default btn-sm" href="#"  onclick="jdjc.detail.back()">
+							  <i class="glyphicon glyphicon-arrow-left"></i>  
+							            返回</a>
+          			</div>
+			</div>
+			
+		</div>
+	</div>
+	
+
+</body>
+</html>

+ 210 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/ggfwxxgl/jdjc/jdjcedit.jsp

@@ -0,0 +1,210 @@
+<%@ page  contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
+<!DOCTYPE html>
+<html lang="en">
+<head>
+	<meta charset="utf-8">
+	<title>江苏省港口建设与经营管理信息系统</title>
+	<meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <%@ include file="../../common.jsp"%>
+	<script type="text/javascript" src="${app }/static/biz/js/ggfwxxgl/jdjc/jdjcdetail.js"></script>
+	<script type="text/javascript">
+		$(document).ready(function () {
+			iFrameHeightIframe('${menuid}');//自适应高度
+			initszdSelect('szdsel', '${record.szd}', 'showgk', '80%');
+			initgkSelect('gksel', '${record.szgk}','${record.szd}', 'showgq', '80%');
+			initgqSelect('gqsel','${record.szgq}', '${record.szd}','${record.szgk}','80%');
+		});
+		function showgk(){
+			initgqSelect('gqsel','','','',null,'80%');
+			initgkSelect('gksel','',$('.szdselectpicker').val(),"showgq",'80%');
+			jyrhide();
+		}
+		function showgq(){
+			initgqSelect('gqsel','',$('.szdselectpicker').val(),$('.gkselectpicker').val(),'','80%');
+			jyrhide();
+		}
+		
+		function jyrSel(jyrid) {
+		guanbipop();
+		
+		$.post($.app + "/gkjyr/findById", {
+			id : jyrid
+		}, function(data) {
+			//返回的是经营人实体,你可以在回掉中,进行任何其他字段的默认填写
+			$('#jyrid').val(data.id);
+			$('#jyrmc').val(data.gkjyr);
+			
+		}, "json");
+					
+		}
+			
+	</script>
+</head>
+<body>
+	<div class="box" >
+		<div class="box-content" >
+			<div class="apply_fill">
+ <form  id="addform" method="post" enctype="multipart/form-data"> 	
+ 		<input type="hidden" id="id" name="id" value="${record.id }">
+ 		<input type="hidden" id="fjFlag" name="fjFlag" value="1"/>
+ 		<input type="hidden" id="flowFlag" name="flowFlag" />
+				<table class="apply" cellpadding="0" cellspacing="0" style="table-layout: fixed;">
+						<tr>
+							<th><span class="needwrite">*</span>所在地:&nbsp;</th>
+							<td >
+								<div id="szdsel"></div>
+							</td>
+							<th><span class="needwrite">*</span>所在港口:&nbsp;</th>
+							<td >
+								 <div id="gksel"></div>
+							</td>
+						</tr>
+						<tr>
+							<th><span class="needwrite">*</span>所在地区:&nbsp;</th>
+							<td >
+								<div id="gqsel"></div>
+							</td>
+							<th><span class="needwrite">*</span>申请日期:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="sqrq"
+										readonly="readonly" value="${fn:substring(record.sqrq,0,10)}">
+							</td>
+						</tr>
+						<tr>
+	                        <th><span class="needwrite">*</span>督查单位:&nbsp;</th>
+	                        <td>
+		                        <input type="text" class="form-control"  name ="dcdw"
+										readonly="readonly" value="${record.dcdw}">
+	                        </td>
+	                        <th><span class="needwrite">*</span>整改期限:&nbsp;</th>
+	                        <td>
+		                        <input class="Wdate" name="zgqx" id="zgqx" type="text"  <c:if test="${record.flowflag == 1 }"> readonly="readonly" </c:if> 
+		                         value="${fn:substring(record.zgqx,0,10)}" onFocus="WdatePicker({lang:'zh-cn',skin:'default',dateFmt:'yyyy-MM-dd'})" id="zysjztext">
+	                        </td>
+	                    </tr>
+	                    <tr>
+	                        <th><span class="needwrite">*</span>被督查单位:&nbsp;</th>
+	                        <td colspan="3" style="position: relative;">
+		                       <input type="text" style="" readonly="readonly" class="form-control" value="${record.gkjyrmc }" id="jyrmc" name="jyrmc"> 
+											
+										<input type="hidden" class="form-control" name="jyrid"
+										id="jyrid" value="${record.gkjyr }">
+	                        </td>
+	                    </tr>
+	                     <tr>
+	                        <th>参加督查人员:&nbsp;</th>
+	                        <td colspan="3">
+		                        <input type="text" class="form-control" <c:if test="${record.flowflag == 1 }"> readonly="readonly" </c:if> 
+		                         name="cjdcry" value="${record.cjdcry }" >
+	                        </td>
+	                    </tr>
+	                     <tr>
+	                        <th>被督查单位负责人:&nbsp;</th>
+	                        <td colspan="3">
+		                        <input type="text" class="form-control" <c:if test="${record.flowflag == 1 }"> readonly="readonly" </c:if> 
+		                         name="bdcdwfzr" value="${record.bdcdwfzr }">
+	                        </td>
+	                    </tr>
+	                     <tr>
+	                        <th>被督查单位参加人员:&nbsp;</th>
+	                        <td colspan="3">
+		                        <input type="text" class="form-control" <c:if test="${record.flowflag == 1 }"> readonly="readonly" </c:if> 
+		                         name="bdcdwcjry"  value="${record.bdcdwcjry }">
+	                        </td>
+	                    </tr>
+	                      <tr>
+	                        <th>隐患名称:&nbsp;</th>
+	                        <td colspan="3">
+		                        <textarea class="form-control" <c:if test="${record.flowflag == 1 }"> readonly="readonly" </c:if>   rows="3" cols="3" name="yhmc">${record.yhmc }</textarea>
+	                        </td>
+	                    </tr>
+	                      <tr>
+	                        <th>整改措施要求:&nbsp;</th>
+	                        <td colspan="3">
+		                        <textarea class="form-control"  <c:if test="${record.flowflag == 1 }"> readonly="readonly" </c:if>  rows="3" cols="3" name="zgcsyq">${record.zgcsyq }</textarea>
+	                        </td>
+	                    </tr>
+	                      <tr>
+	                        <th>整改说明:&nbsp;</th>
+	                        <td colspan="3">
+		                        <textarea class="form-control" <c:if test="${record.flowflag == 1 }"> readonly="readonly" </c:if>  rows="3" cols="3" name="zgsm">${record.zgsm }</textarea>
+	                        </td>
+	                    </tr>
+	                      <tr>
+	                        <th>整改附件说明:&nbsp;</th>
+	                        <td colspan="3">
+	                        
+	                        <c:if test="${record.flowflag != 1 }"> 
+	                        	<a href="#" class="file">上传<input type="file" name="file" id="fjid" onchange="jdjc.detail.submitFile()"/></a>
+	                         </c:if> 
+		                       		 
+							<table  id="tableId" style="width: 100%">
+							<tr align="center">
+							<td style="width:40%;text-align: center;">上传附件名称</td>
+							  <c:if test="${record.flowflag != 1 }"> 
+							<td style="width:15%;text-align: center;">操作</td>
+							</c:if>
+							</tr>
+							<c:forEach items="${fjlist }" var="fj" varStatus="status">
+							<tr align="center">
+							<td><a class='main_title' href='/jsjy/accessory/download?id=${fj.fjid }'>${fj.fjmc }</a></td>
+							  <c:if test="${record.flowflag != 1 }"> 
+							<td><a class="btn btn-default btn-xs" href="#" onclick="jdjc.detail.delFj('${fj.id}',this)">删除</a></td>
+							</c:if>
+							</tr>
+							</c:forEach>
+						</table>
+	                        </td>
+	                    </tr>
+	                     <!--  <tr>
+	                        <th>备注:&nbsp;</th>
+	                        <td colspan="3">
+		                        <textarea class="form-control" rows="3" cols="3" name="bz"></textarea>
+	                        </td>
+	                   
+	                      <tr>
+	                        <th>整改后附件说明:&nbsp;</th>
+	                        <td colspan="3">
+	                        </td>
+	                    </tr>
+	                     </tr> -->
+					</table>
+	</form>
+					<div  id="buttons">
+					  <c:if test="${record.flowflag != 1 }"> 
+                    	<a class="btn btn-default btn-sm" href="#" onclick="jdjc.detail.save()">
+							   <i class="glyphicon glyphicon-floppy-disk"></i> 
+							            保存</a>
+					</c:if>
+					<c:if test="${record.btnflag == 0 }">	            
+					<c:if test="${flag == '' || flag == null}">
+  
+					      <a class="btn btn-default btn-sm" href="#" onclick="jdjc.detail.submit()">
+							   <i class="glyphicon glyphicon-floppy-disk"></i> 
+							            提交</a>
+						</c:if>
+						<c:if test="${flag=='th'}">
+						<a class="btn btn-default btn-sm" href="#"  onclick="jdjc.detail.submitAudit()">
+						   <i class="glyphicon glyphicon-ok-sign"></i> 
+						            提交</a>
+						</c:if>
+					</c:if>		            
+						<c:if test="${record.btnflag == 1 }">
+							         	<a class="btn btn-default btn-sm" href="#"
+								onclick="jdjc.detail.savexf()"> <i
+								class="glyphicon glyphicon-floppy-disk"></i> 下发
+							</a> 
+						</c:if>	 		            	 
+							             <a class="btn btn-default btn-sm" href="#"  onclick="jdjc.detail.back()">
+							  <i class="glyphicon glyphicon-arrow-left"></i>  
+							            返回</a>
+          			</div>
+			</div>
+			
+		</div>
+	</div>
+	
+
+</body>
+</html>

+ 181 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/ggfwxxgl/jdjc/jdjcmain.jsp

@@ -0,0 +1,181 @@
+<%@ page  contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
+<!DOCTYPE html>
+<html lang="en">
+<head>
+	<meta charset="utf-8">
+	<title>江苏省港口建设与经营管理信息系统</title>
+	<meta name="viewport" content="width=device-width, initial-scale=1">
+	<%@ include file="../../common.jsp"%>
+	<script type="text/javascript" src="${app }/static/biz/js/ggfwxxgl/jdjc/jdjcmain.js"></script>
+	<script type="text/javascript">		
+		$(document).ready(function () {
+			jdjc.main.init();
+			initszdSelect('szdsel','${szd}','showgk','80%');
+			initgkSelect('szgksel','${szgk}','${szd}','showgq','80%');
+			initgqSelect('szgqsel','${szgq}','${szd}','${szgk}',null,'80%');
+			iFrameHeightIframe('${menuid}');//自适应高度
+		});
+		function showgk(){
+			initgkSelect('szgksel','${szgk}',$('.szdselectpicker').val(),'showgq','80%');
+			showgq();
+		}
+		function showgq(){
+			initgqSelect('szgqsel','',$('.szdselectpicker').val(),$('.gkselectpicker').val(),null,'80%');
+		}
+	</script>
+</head>
+<body>
+		<div class="box" >
+		<div class="box-content" >
+<form action="${app }/jdjc/main" id="jdjcform" method="post"> 	
+					<table class="search_table" cellpadding="0" cellspacing="0">
+					<tr>
+						<th width="12%"></th>
+						<th width="22%"></th>	
+						<th width="11%"></th>
+						<th width="22%"></th>
+						<th width="11%"></th>
+						<th width="22%"></th>
+					</tr>
+					<tr>
+						<td class="right">
+		                	所在地:&nbsp;
+		                </td>
+			            <td>
+			            	<span id="szdsel">
+							</span>
+			            </td>
+						<td class="right">
+		                	所在港口:&nbsp;
+		                </td>
+			            <td>
+			            	<span id="szgksel">
+							</span>
+			            </td>
+			            <td class="right">
+		                	所在港区:&nbsp;
+		                </td>
+			            <td>
+			            	<span id="szgqsel">
+							</span>
+			            </td>
+		          	</tr>
+	                <tr>
+	                	<td class="right" >
+		                	港口经营人:&nbsp;
+		                </td>
+			            <td>
+			            	<input type="text" style="width: 80%;" class="form-control" name="ssjyr"  value="${ssjyr }">
+			            </td>
+	                	<td></td>
+	                	<td></td>
+	                	<td></td>
+	                	<td></td>
+		        	</tr>
+                    <tr>
+                       
+                        <td class="right" colspan="6">
+                        <authz:hasPermission name="${appName}:jdjc:main">
+                         			 <a class="btn btn-default btn-sm" href="#" onclick="jdjc.main.search()">
+							   <i class="glyphicon glyphicon-search"></i> 
+							            查询</a>
+						</authz:hasPermission>
+						<authz:hasPermission name="${appName}:jdjc:add">
+							             <a class="btn btn-default btn-sm" href="#"  onclick="jdjc.main.add()">
+							   <i class="glyphicon glyphicon-plus"></i> 
+							            新增</a>
+						</authz:hasPermission>	             
+                         </td>
+                    </tr>
+				</table>
+</form>	
+			</div>
+			<!-- 列表 -->
+			<div  style="background-color:#f4f4f4;">
+				<table class="main_table" cellpadding="0" cellspacing="0">
+					<tr>
+						<th width="5%">序号</th>	
+						<th width="20%">被督查单位</th>	
+						<th width="10%">所在港口</th>
+						<th width="15%">所在港区</th>
+						<th width="10%">整改期限</th>
+						<th width="10%">流程状态</th>		
+						<th width="20%">操作</th>
+						<th width="10%">办理</th>
+					</tr>
+					 <c:forEach items="${list}" var="jdjc" varStatus="status">
+						<tr class="tr_bg">
+							<td>${status.index+1 }</td>
+							<td>${jdjc.gkjyrmc }</td>
+							<td>${jdjc.szgkmc }</td>
+							<td>${jdjc.szgqmc}</td>
+							<td>${fn:substring(jdjc.zgqx,0,10)}</td>
+							<td>
+							<c:if test="${jdjc.flowflag !=null && jdjc.flowflag == 3 }">完成</c:if>
+							<c:if test="${jdjc.flowflag != null && jdjc.flowflag == 2 }">办理中</c:if> 
+							<c:if test="${jdjc.flowflag != null && jdjc.flowflag == 1 }">下发</c:if> 
+							</td>
+							<td>
+								<authz:hasPermission name="${appName}:jdjc:main">
+								<a class="btn btn-default btn-xs" href="#" onclick="jdjc.main.view('${jdjc.id}')">
+							            <i class="glyphicon glyphicon-search"></i> 
+							            查看</a>
+							    </authz:hasPermission>
+							 <c:if test="${jdjc.btnflag == 1 &&jdjc.flowflag == 0 &&jdjc.recordStatus == 1}"> 
+							  <authz:hasPermission name="${appName}:jdjc:edit">
+								 <a class="btn btn-default btn-xs" href="#"  onclick="jdjc.main.edit('${jdjc.id}')">
+									   <i class="glyphicon glyphicon-wrench"></i> 
+									          修改</a>
+								</authz:hasPermission>
+								<authz:hasPermission name="${appName}:jdjc:delete">
+							 <a class="btn btn-default btn-xs" href="#" onclick="jdjc.main.del('${jdjc.id}')">
+									   <i class="glyphicon glyphicon-trash"></i> 
+									         删除</a>
+							</authz:hasPermission>
+							 </c:if>
+							    <c:if test="${flag==1 && jdjc.btnflag == 0  &&jdjc.recordStatus == 1 || jdjc.isflag== 1 }"> 
+							    <authz:hasPermission name="${appName}:jdjc:edit">
+								 <a class="btn btn-default btn-xs" href="#"  onclick="jdjc.main.edit('${jdjc.id}')">
+									   <i class="glyphicon glyphicon-wrench"></i> 
+									          修改</a>
+								</authz:hasPermission>
+								<c:if test="${jdjc.flowflag !=1 }">
+								<authz:hasPermission name="${appName}:jdjc:delete">
+							 <a class="btn btn-default btn-xs" href="#" onclick="jdjc.main.del('${jdjc.id}')">
+									   <i class="glyphicon glyphicon-trash"></i> 
+									         删除</a>
+							</authz:hasPermission>
+							</c:if>
+							 </c:if>
+							<c:if test="${ jdjc.recordStatus  > 1 }">
+									<a class="btn btn-default btn-xs" href="#"
+									onclick="hisList('${jdjc.id}','jdjc')"> <i
+										class="glyphicon glyphicon-search"></i>流程历史
+									</a>
+								</c:if>
+							</td>
+							<td >
+							 <c:if test="${jdjc.taskState =='Y'}">
+							 <a class="btn btn-default btn-xs" href="#"  onclick="jdjc.main.banli('${jdjc.id}')">
+									   <i class="glyphicon glyphicon-check"></i> 
+									          办理</a>
+							 </c:if>
+							  <c:if test="${xkzns.taskState =='TH'}">
+							 <a class="btn btn-default btn-xs" href="#"  onclick="jdjc.main.back('${jdjc.id}')">
+									   <i class="glyphicon glyphicon-check"></i> 
+									          办理</a>
+							 </c:if>
+							</td>
+						</tr>
+					</c:forEach>
+				</table>
+			</div>
+			<!-- 分页 -->
+			<jsp:include page="../../pageinfo.jsp"></jsp:include>
+			
+		</div>
+	
+	</div>
+<jsp:include page="../../showHistory.jsp"></jsp:include>
+</body>
+</html>

+ 179 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/ggfwxxgl/jdjc/jdjcview.jsp

@@ -0,0 +1,179 @@
+<%@ page  contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
+<!DOCTYPE html>
+<html lang="en">
+<head>
+	<meta charset="utf-8">
+	<title>江苏省港口建设与经营管理信息系统</title>
+	<meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <%@ include file="../../common.jsp"%>
+	<script type="text/javascript" src="${app }/static/biz/js/ggfwxxgl/jdjc/jdjcdetail.js"></script>
+	<script type="text/javascript">
+		$(document).ready(function () {
+			iFrameHeightIframe('${menuid}');//自适应高度
+			/* initszdSelect('szdsel', '${record.szd}', 'showgk', '80%');
+			initgkSelect('gksel', '${record.szgk}','${record.szd}', 'showgq', '80%');
+			initgqSelect('gqsel','${record.szgq}', '${record.szd}','${record.szgk}','80%'); */
+		});
+		
+			
+	</script>
+</head>
+<body>
+	<div class="box" >
+		<div class="box-content" >
+			<div class="apply_fill">
+ <form  id="addform" method="post" enctype="multipart/form-data"> 	
+ 		<input type="hidden" id="id" name="id" value="${record.id }">
+ 		<input type="hidden" id="opflag" name="opflag" value="${opflag}"/>
+ 		<input type="hidden" id="fjFlag" name="fjFlag" value="0"/>
+ 		<input type="hidden" id="flag" name="flag" />
+				<table class="apply" cellpadding="0" cellspacing="0" style="table-layout: fixed;">
+						<tr>
+							<th><span class="needwrite">*</span>所在地:&nbsp;</th>
+							<td >
+								${record.szdzw }
+							</td>
+							<th><span class="needwrite">*</span>所在港口:&nbsp;</th>
+							<td >
+								${record.szgkmc } 
+							</td>
+						</tr>
+						<tr>
+							<th><span class="needwrite">*</span>所在地区:&nbsp;</th>
+							<td >
+								${record.szgqmc }
+							</td>
+							<th><span class="needwrite">*</span>申请日期:&nbsp;</th>
+							<td >
+								${fn:substring(record.sqrq,0,10)}
+							</td>
+						</tr>
+						<tr>
+	                        <th><span class="needwrite">*</span>督查单位:&nbsp;</th>
+	                        <td>
+		                        ${record.dcdw}
+	                        </td>
+	                        <th><span class="needwrite">*</span>整改期限:&nbsp;</th>
+	                        <td>
+		                        ${fn:substring(record.zgqx,0,10)}
+	                        </td>
+	                    </tr>
+	                    <tr>
+	                        <th><span class="needwrite">*</span>被督查单位:&nbsp;</th>
+	                        <td colspan="3" ">
+		                       ${record.gkjyrmc }
+											
+									
+	                        </td>
+	                    </tr>
+	                     <tr>
+	                        <th>参加督查人员:&nbsp;</th>
+	                        <td colspan="3">
+		                        ${record.cjdcry }
+	                        </td>
+	                    </tr>
+	                     <tr>
+	                        <th><span class="needwrite">*</span>被督查单位负责人:&nbsp;</th>
+	                        <td colspan="3">
+		                        ${record.bdcdwfzr }
+	                        </td>
+	                    </tr>
+	                     <tr>
+	                        <th>被督查单位参加人员:&nbsp;</th>
+	                        <td colspan="3">
+		                        ${record.bdcdwcjry }
+	                        </td>
+	                    </tr>
+	                      <tr>
+	                        <th>隐患名称:&nbsp;</th>
+	                        <td colspan="3">
+		                        ${record.yhmc }
+	                        </td>
+	                    </tr>
+	                      <tr>
+	                        <th>整改措施要求:&nbsp;</th>
+	                        <td colspan="3">
+		                        ${record.zgcsyq }
+	                        </td>
+	                    </tr>
+	                      <tr>
+	                        <th>整改说明:&nbsp;</th>
+	                        <td colspan="3">
+		                        ${record.zgsm }
+	                        </td>
+	                    </tr>
+	                      <tr>
+	                        <th>整改附件说明:&nbsp;</th>
+	                        <td colspan="3">
+						<table style="width: 100%">
+							<tr align="center">
+							<td style="width:40%;text-align: center;">上传附件名称</td>
+							</tr>
+							<c:forEach items="${zgfjlist }" var="zgfj" varStatus="status">
+							<tr align="center">
+							<td><a class='main_title' href='/jsjy/accessory/download?id=${zgfj.fjid }'>${zgfj.fjmc }</a></td>
+							</tr>
+							</c:forEach>
+						</table>
+	                        </td>
+	                    </tr>
+	                      <!-- <tr>
+	                        <th>备注:&nbsp;</th>
+	                        <td colspan="3">
+		                        <textarea class="form-control" rows="3" cols="3" name="bz"></textarea>
+	                        </td>
+	                    </tr> -->
+	                      <tr>
+	                        <th>整改后附件说明:&nbsp;</th>
+	                        <td colspan="3">
+	                    <c:if test="${flag=='audit' && jyrFlag =='1' }">
+		                    <a href="#" class="file">上传<input type="file" name="file" id="fjid" onchange="jdjc.detail.submitFile()"/></a>
+								</c:if>
+							<table  id="tableId" style="width: 100%">
+							<tr align="center">
+							<td style="width:40%;text-align: center;">上传附件名称</td>
+							 <c:if test="${flag=='audit' && jyrFlag =='1' }">
+							<td style="width:15%;text-align: center;">操作</td>
+							</c:if>
+							</tr>
+							<c:forEach items="${zghfjlist }" var="zghfj" varStatus="status">
+							<tr align="center">
+							<td><a class='main_title' href='/jsjy/accessory/download?id=${zghfj.fjid }'>${zghfj.fjmc }</a></td>
+							 <c:if test="${flag=='audit' && jyrFlag =='1' }">
+							<td><a class="btn btn-default btn-xs" href="#" onclick="jdjc.detail.delFj('${zghfj.id}',this)">删除</a></td>
+							</c:if>
+							</tr>
+							</c:forEach>
+						</table>
+					
+	                        </td>
+	                    </tr>
+					</table>
+</form>
+					<div  id="buttons">
+                    	<c:if test="${flag=='audit' }">
+					
+					 <a class="btn btn-default btn-sm" href="#"  onclick="jdjc.detail.audit('Y','${record.id}')">
+							   <i class="glyphicon glyphicon-ok-sign"></i> 
+							            同意</a>
+					</c:if>
+					<c:if test="${flag=='audit' && jyrFlag !='1' }">
+						<a class="btn btn-default btn-sm" href="#"  onclick="jdjc.detail.audit('N','${record.id}')">
+							   <i class="glyphicon glyphicon-ban-circle"></i> 
+							            退回</a>
+				          
+					</c:if>
+							            							            
+							             <a class="btn btn-default btn-sm" href="#"  onclick="jdjc.detail.back()">
+							  <i class="glyphicon glyphicon-arrow-left"></i>  
+							            返回</a>
+          			</div>
+			</div>
+			
+		</div>
+	</div>
+	
+
+</body>
+</html>

+ 208 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jgbg/jgbgadd.jsp

@@ -0,0 +1,208 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+	pageEncoding="UTF-8"%>
+
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <title>江苏省港口建设与经营管理信息系统</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <%@ include file="../../common.jsp"%>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jgbg/jgbgdetail.js"></script>
+	<script type="text/javascript">
+		$(document).ready(function () {
+			jgbg.detail.init();
+			var id = '${jyr.id}';
+			if(!isEmpty(id)){
+				jgbg.detail.szd ='${jyr.szd.id}';
+				jgbg.detail.gq ='${jyr.szgq.id}';
+				jgbg.detail.gk ='${jyr.szgk.id}';
+			}else{
+				jgbg.detail.szd ='${sz}';
+				jgbg.detail.gk ='${gk}';
+				
+			}
+			//项目类型默认新建
+				initXmlxSelect('xmlxsel','2201','80%');
+			//投资类型默认企业投资
+				initTzlxSelect('tzlxsel','1902','80%');
+				initXmhzjbSelect('xmhzjbsel','','80%');
+				initAxspjbSelect('axspjbsel','','80%');
+				jgbg.detail.initBwyt('bwytsel', '');
+				jgbg.detail.initZyhbwfl('zyhbwflsel', '','');
+				initszdSelect('szdsel', jgbg.detail.szd, 'showgk', '80%');
+				initgkSelect('gksel',jgbg.detail.gk,jgbg.detail.szd,'showgq','80%');
+				initgqSelect('gqsel',jgbg.detail.gq,jgbg.detail.szd,jgbg.detail.gk,null,'80%');
+			/* $('.close').click(function(){
+				guanbi();
+			}) */
+		});
+		
+		function showgk(){
+			initgkSelect('gksel',jgbg.detail.gk,$('.szdselectpicker').val(),"showgq",'80%');
+			showgq();
+		}
+
+		function showgq(){
+			initgqSelect('gqsel',jgbg.detail.gq,$('.szdselectpicker').val(),$('.gkselectpicker').val(),null,'80%');
+		} 
+			 
+		function jyrSel(jyrid){
+			guanbipop();
+			$.post($.app + "/gkjyr/findById", {
+				id:jyrid
+		    }, function(data) {
+		    	//返回的是经营人实体,你可以在回掉中,进行任何其他字段的默认填写
+		    	$('#jyrid').val(data.id);
+		    	$('#jyrmc').val(data.gkjyr);
+		    	$('#xmfr').val(data.fddbr);
+		    	jgbg.detail.szd =data.szd.id;
+				jgbg.detail.gq =data.szgq.id;
+				jgbg.detail.gk =data.szgk.id;
+				initszdSelect('szdsel', jgbg.detail.szd, 'showgk', '80%');
+				initgkSelect('gksel',jgbg.detail.gk,jgbg.detail.szd,'showgq','80%');
+				initgqSelect('gqsel',jgbg.detail.gq,jgbg.detail.szd,jgbg.detail.gk,null,'80%');
+		    }, "json");
+		}
+		
+		function ytsel(){
+			jgbg.detail.initZyhbwfl('zyhbwflsel', '',$('.bwytselectpicker').val()+"");
+		}
+	</script>
+</head>
+
+<body>
+<jsp:include page="../../jyrselect.jsp"></jsp:include>
+	<div class="box" >
+		<div class="box-content" >
+			<div class="apply_fill">
+ <form  id="addform" method="post" enctype="multipart/form-data"> 			
+ <input type="hidden" class="form-control"  name="fjids" id="fjids">
+					<table class="apply" cellpadding="0" cellspacing="0">
+						<tr>
+							<th><span class="needwrite">*</span>项目名称:&nbsp;</th>
+							<td colspan="4">
+								<input type="text" style="width: 92.5%;" class="form-control" name="xmmc">
+							</td>
+						</tr>
+						<tr>
+							<th><span class="needwrite">*</span>所属单位:&nbsp;</th>
+							<td colspan="4" style="position:relative;">
+								<input type="text" style="width: 92.5%;" readonly="readonly" class="form-control"  id ="jyrmc" value ="${jyr.gkjyr }">
+								<input type="hidden" class="form-control" name="ssjyrid" id ="jyrid"  value ="${jyr.id }">
+								<c:if test="${jyr.id == null }">
+										<a class="btn btn-primary btn-sm" href="#"
+										 onclick="jyrselpop('jyrSel')"  
+										style="position:absolute;right:4px;top:4px;"> <i class="glyphicon"></i>选择
+									    </a>
+							    </c:if> 
+							</td>
+						</tr>
+						<tr>
+						    <th><span class="needwrite">*</span>所在地:&nbsp;</th>
+							<td>
+								<div id="szdsel"></div>
+							</td>
+							<th><span class="needwrite">*</span>所在港口:&nbsp;</th>
+							<td >
+								<div id="gksel"></div>
+							</td>
+						</tr>
+						<tr>
+						    <th><span class="needwrite">*</span>所在港区:&nbsp;</th>
+						 	<td >
+								<div id="gqsel"></div>
+							</td>
+							<th><span class="needwrite">*</span>项目法人:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="xmfr" id="xmfr">
+							</td>
+						</tr>
+						<tr>
+						    <th><span class="needwrite">*</span>项目类型:&nbsp;</th>
+							<td >
+								<div id="xmlxsel"></div>
+							</td>
+							<th><span class="needwrite">*</span>建设地点:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="jsdd">
+							</td>
+						</tr>
+						<tr>
+						    <th>建设规模:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="jsgm">
+							</td>
+							<th>投资类型:&nbsp;</th>
+							<td >
+								<div id="tzlxsel"></div>
+							</td>
+						</tr>
+						<tr>
+						    <th>总投资 (万元):&nbsp;</th>
+							<td>
+								<input type="text" class="form-control" name="ztz">
+							</td>
+     						<th>项目核准级别:&nbsp;</th>
+							<td>
+							   <div id="xmhzjbsel"></div>
+							</td>
+						</tr>
+						<tr>
+						    <th>岸线审批级别:&nbsp;</th>
+							<td >
+								<div id="axspjbsel"></div>
+							</td>
+							<th>岸线长度 (米):&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="axcd">
+							</td>
+						</tr>
+						<tr>
+						    <th>泊位吨级 (吨):&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="bwdj">
+							</td>
+							<th>通过能力(万吨):&nbsp;</th>
+							<td colspan="3">
+								<input type="text" class="form-control" name="tgnl">
+							</td>
+						</tr>
+						
+						<tr>
+					 	    <th>泊位用途:&nbsp;</th>
+                        <td colspan="3">
+	                        <span id="bwytsel"></span>
+                        </td>
+                       
+                        <!-- <th>专业化泊位分类:&nbsp;</th>
+                        <td>
+	                        <span id="zyhbwflsel"></span>
+                        </td> -->
+						</tr>
+						
+					</table>
+				
+					<div  id="buttons">
+                    	<a class="btn btn-default btn-sm" href="#" onclick="jgbg.detail.save()">
+							   <i class="glyphicon glyphicon-floppy-disk"></i> 
+							            保存</a>
+							            
+							            <a class="btn btn-default btn-sm" href="#" onclick="jgbg.detail.submit()">
+							   <i class="glyphicon glyphicon-floppy-disk"></i> 
+							            提交</a>
+							            
+							             <a class="btn btn-default btn-sm" href="#"  onclick="jgbg.detail.back()">
+							   <i class="glyphicon glyphicon-arrow-left"></i> 
+							           返回</a>
+							            
+          			</div>
+	</form>
+				</div>
+		</div>
+
+</div>
+</body>
+
+</html>

+ 215 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jgbg/jgbgedit.jsp

@@ -0,0 +1,215 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+	pageEncoding="UTF-8"%>
+
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <title>江苏省港口建设与经营管理信息系统</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <%@ include file="../../common.jsp"%>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jgbg/jgbgdetail.js"></script>
+	<script type="text/javascript">
+		$(document).ready(function () {
+			jgbg.detail.init();
+			var id = '${jyr.id}';
+			if(!isEmpty(id)){
+				jgbg.detail.szd ='${jyr.szd.id}';
+				jgbg.detail.gq ='${jyr.szgq.id}'
+				jgbg.detail.gk ='${jyr.szgk.id}'
+			}
+			initXmlxSelect('xmlxsel', '${record.xmlx }', '80%');
+			initTzlxSelect('tzlxsel', '${record.tzlx }', '80%');
+			initXmhzjbSelect('xmhzjbsel', '${record.xmhzjb }', '80%');
+			initAxspjbSelect('axspjbsel', '${record.axspjb }', '80%');
+			initszdSelect('szdsel', jgbg.detail.szd, 'showgk', '80%');
+			initgkSelect('gksel',jgbg.detail.gk,jgbg.detail.szd,'showgq','80%');
+			initgqSelect('gqsel',jgbg.detail.gq,jgbg.detail.szd,jgbg.detail.gk,null,'80%');
+			jgbg.detail.initBwyt('bwytsel', '${record.bwyt }');
+			jgbg.detail.initZyhbwfl('zyhbwflsel', '${record.zyhbwfl }','${record.bwyt }');
+		});
+		function jyrSel(jyrid){
+			guanbipop();
+			$.post($.app + "/gkjyr/findById", {
+				id:jyrid
+		    }, function(data) {
+		    	//返回的是经营人实体,你可以在回掉中,进行任何其他字段的默认填写
+		    	$('#jyrid').val(data.id);
+		    	$('#jyrmc').val(data.gkjyr);
+		    	$('#xmfr').val(data.fddbr);
+		    	jgbg.detail.szd =data.szd.id;
+				jgbg.detail.gq =data.szgq.id;
+				jgbg.detail.gk =data.szgk.id;
+				initgkSelect('gksel',jgbg.detail.gk,$('.szdselectpicker').val(),'showgq','80%');
+				initgqSelect('gqsel',jgbg.detail.gq,$('.szdselectpicker').val(),$('.gkselectpicker').val(),$('.gkselectpicker').val(),null,'100%');
+		    }, "json");
+		}
+		
+		function showgk(){
+			initgkSelect('gksel','${record.szgk }',$('.szdselectpicker').val(),"showgq",'80%');
+			showgq();
+		}
+
+		function showgq(){
+			initgqSelect('gqsel','${record.szgq }',$('.szdselectpicker').val(),$('.gkselectpicker').val(),null,'80%');
+		}
+		
+		function guanbipop(){
+			$('.theme-popover-mask').fadeOut(100);
+			$('.theme-popover').slideUp(0);
+		}
+		function ytsel(){
+			jgbg.detail.initZyhbwfl('zyhbwflsel', '',$('.bwytselectpicker').val()+"");
+		}
+	</script>
+
+</head>
+
+<body>
+<jsp:include page="../../jyrselect.jsp"></jsp:include>
+	<div class="box" >
+		<div class="box-content" >
+			<div class="apply_fill">
+ <form  id="addform" method="post" enctype="multipart/form-data"> 		
+ <input type="hidden" name="id" value="${record.id }">		
+ <input type="hidden" name="fjids" id="fjids">	
+					<table class="apply" cellpadding="0" cellspacing="0">
+						<tr>
+							<th><span class="needwrite">*</span>项目名称:&nbsp;</th>
+							<td colspan="4" >
+								<input type="text" style="width: 92.5%;" class="form-control" name="xmmc" value="${record.xmmc }">
+							</td>
+						</tr>
+						<tr>
+							<th><span class="needwrite">*</span>所属单位:&nbsp;</th>
+							<td colspan="4" style="position:relative;">
+								<input type="text" style="width: 92.5%;" readonly="readonly" class="form-control"  id ="jyrmc" value ="${jyr.gkjyr }">
+								<input type="hidden" class="form-control" name="ssjyrid" id ="jyrid" value ="${jyr.id }">
+								<c:if test="${jyr.id == null }">
+								<a class="btn btn-primary btn-sm" href="#"
+								 onclick="jyrselpop('jyrSel')"  
+								style="position:absolute;right:4px;top:4px;"> <i class="glyphicon"></i>选择
+									   </a>
+								</c:if> 
+							</td>
+						</tr>
+						<tr>
+						    <th><span class="needwrite">*</span>所在地:&nbsp;</th>
+							<td>
+								<span id="szdsel">
+								</span>
+							</td>
+							<th><span class="needwrite">*</span>所在港口:&nbsp;</th>
+							<td >
+								<span id="gksel">
+								</span>
+							</td>
+						</tr>
+						<tr>
+					    	<th><span class="needwrite">*</span>所在港区:&nbsp;</th>
+							<td >
+								<span id="gqsel">
+								</span>
+							</td>
+							<th><span class="needwrite">*</span>项目法人:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="xmfr" value="${record.xmfr }">
+							</td>
+						</tr>
+						<tr>
+						    <th><span class="needwrite">*</span>项目类型:&nbsp;</th>
+							<td >
+								<span id="xmlxsel">
+								</span>
+							</td>
+							<th><span class="needwrite">*</span>建设地点:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="jsdd" value="${record.jsdd }">
+							</td>
+						</tr>
+						<tr>
+					    	<th>建设规模:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="jsgm" value="${record.jsgm }">
+							</td>
+							<th>投资类型:&nbsp;</th>
+							<td>
+								<span id="tzlxsel">
+								</span>
+							</td>
+						</tr>
+						<tr>
+						    <th>总投资(万元):&nbsp;</th>
+							<td>
+								<input type="text" class="form-control" name="ztz" value="${record.ztz }">
+							</td>
+							<th>项目核准级别:&nbsp;</th>
+							<td>
+								<span id="xmhzjbsel">
+								</span>
+							</td>
+						</tr>
+						<tr>
+					    	<th>岸线审批级别:&nbsp;</th>
+							<td>
+								<span id="axspjbsel">
+								</span>
+							</td>
+							<th>岸线长度 (米):&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="axcd" value="${record.axcd }">
+							</td>
+						</tr>
+						<tr>
+					    	<th>泊位吨级(吨):&nbsp;</th>
+							<td>
+								<input type="text" class="form-control" name="bwdj" value="${record.bwdj }">
+							</td>
+							<th>通过能力(万吨):&nbsp;</th>
+							<td colspan="3">
+								<input type="text" class="form-control" name="tgnl" value="${record.tgnl }">
+							</td>
+						</tr>
+						
+						<tr>
+					 	    <th>泊位用途:&nbsp;</th>
+                        <td colspan="3">
+	                        <span id="bwytsel"></span>
+                        </td>
+                       
+						</tr>
+						
+				
+					</table>
+					
+
+					<div  id="buttons">
+                    	<a class="btn btn-default btn-sm" href="#" onclick="jgbg.detail.save()">
+							   <i class="glyphicon glyphicon-floppy-disk"></i> 
+							            保存</a>
+							            
+							<c:if test="${flag == '' || flag == null}">
+  
+					      <a class="btn btn-default btn-sm" href="#" onclick="jgbg.detail.submit()">
+							   <i class="glyphicon glyphicon-floppy-disk"></i> 
+							            提交</a>
+						</c:if>
+						<c:if test="${flag=='th'}">
+						<a class="btn btn-default btn-sm" href="#"  onclick="jgbg.detail.submitAudit()">
+						   <i class="glyphicon glyphicon-ok-sign"></i> 
+						            提交</a>
+						</c:if>     
+							             <a class="btn btn-default btn-sm" href="#"  onclick="jgbg.detail.back()">
+							   <i class="glyphicon glyphicon-arrow-left"></i> 
+							            返回</a>
+					</div>		              
+	</form>							            
+          			</div>
+			
+			</div>
+		</div>
+	
+</body>
+
+</html>

+ 183 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jgbg/jgbgmain.jsp

@@ -0,0 +1,183 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+	pageEncoding="UTF-8"%>
+
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <title>江苏省港口建设与经营管理信息系统</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <%@ include file="../../common.jsp"%>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jgbg/jgbgmain.js"></script>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jgbg/jgbgdetail.js"></script>
+	<script type="text/javascript">
+		$(document).ready(function () {
+			jgbg.main.init();
+			initXmhzjbSelect('xmhzjbsel','${xmhzjbid }','80%');
+			initszdSelect('szdsel','${szd }', 'showgk', '80%');
+			initgkSelect('gksel','${szgk }','${szd }','showgq','80%');
+			initgqSelect('gqsel','${szgq }','${szd }','${szgk }',null,'80%');
+			jgbg.main.initSfyzjbzsel('sfyzjbz','${sfyzjbz}','80%');
+			iFrameHeightIframe('${menuid}');//自适应高度
+		});
+		
+		function showgk(){
+			initgkSelect('gksel','${szgk }',$('.szdselectpicker').val(),"showgq",'80%');
+			showgq();
+		}
+
+		function showgq(){
+			initgqSelect('gqsel','${szgq }',$('.szdselectpicker').val(),$('.gkselectpicker').val(),null,'80%');
+		}
+	</script>
+</head>
+
+<body>
+	<div class="box" >
+		<div class="box-content" >
+<form action="${app }/jgbg/main" id="jgbgform" method="post"> 
+<input type="hidden" name="menuid" value="${menuid }">		
+
+			<div >
+				<table class="search_table" cellpadding="0" cellspacing="0">
+				    <tr>
+							<th width="12%"></th>
+						<th width="22%"></th>	
+						<th width="11%"></th>
+						<th width="22%"></th>
+						<th width="11%"></th>
+						<th width="22%"></th>
+					</tr>
+                    <tr>
+                        <td class="right">
+                         	项目名称:&nbsp;
+                         </td>
+                        <td >
+	                        	<input type="text" class="form-control" name="xmmc"  value="${xmmc }">
+                        </td>
+                   
+                        <td class="right">
+                         	项目法人:&nbsp;
+                        </td>
+                        <td>
+	                        	<input type="text" class="form-control" name="xmfr"  value="${xmfr }">
+                        </td>
+                        <td class="right">
+                         	项目核准级别:&nbsp;
+                        </td>
+						<td>
+			            	<span id="xmhzjbsel">
+							</span>
+			            </td>
+                        
+                     </tr>
+                     <tr>
+                        <td class="right">
+                         	所在地:&nbsp;
+                        </td>
+						<td>
+			            	<span id="szdsel">
+							</span>
+			            </td>
+                        <td class="right">
+                         	所在港口:&nbsp;
+                        </td>
+						<td>
+			            	<span id="gksel">
+							</span>
+			            </td>
+			            <td class="right">
+                         	所在港区:&nbsp;
+                        </td>
+						<td>
+			            	<span id="gqsel">
+							</span>
+			            </td>
+                       
+                    </tr>
+                    <tr>
+                   		<td class="right">是否有资金补助:&nbsp;</td>
+						<td>
+							<div id="sfyzjbz"></div>
+						</td>
+							<td class="right"></td>
+							<td></td>
+                     <td class="right" colspan="2">
+                         			 <a class="btn btn-default btn-sm" href="#" onclick="jgbg.main.search()">
+							   <i class="glyphicon glyphicon-search"></i> 
+							            查询</a>
+							         <a class="btn btn-default btn-sm" href="#"  onclick="jgbg.main.add()">
+							   <i class="glyphicon glyphicon-plus"></i> 
+							            新增</a>
+                     </td>
+                         
+                    </tr>
+				</table>
+			</div>
+			<!-- 列表 -->
+			<div  style="background-color:#f4f4f4;">
+				<table class="main_table" cellpadding="0" cellspacing="0">
+					<tr>
+						<th width="4%">序号</th>	
+						<th width="10%">项目名称</th>
+						<th width="10%">所在港口</th>
+						<th width="10%">所在港区</th>
+						<th width="10%">项目法人</th>
+						<th width="10%">项目类型</th>
+						<th width="10%">是否有资金补助</th>	
+						<th width="20%">操作</th>
+						 <th width="16%">办理</th>
+					</tr>
+					 <c:forEach items="${list}" var="jgbg" varStatus="status">
+						<tr class="tr_bg">
+							<td>${status.index+1 }</td>
+							<td>${jgbg.xmmc }</td>
+							<td>${jgbg.szgkzw }</td>
+							<td>${jgbg.szgqzw }</td>
+							<td>${jgbg.xmfr }</td>
+						    <td>${jgbg.xmlxzw }</td>
+						    <td>${jgbg.sfyzjbz }</td>
+							<td>
+								<a class="btn btn-default btn-xs" href="#" onclick="jgbg.main.view('${jgbg.id}')">
+							            <i class="glyphicon glyphicon-search"></i> 
+							            查看</a>
+							             <c:if test="${jgbg.recordStatus == 1 }">
+								 <a class="btn btn-default btn-xs" href="#"  onclick="jgbg.main.edit('${jgbg.id}')">
+									   <i class="glyphicon glyphicon-wrench"></i> 
+									          修改</a>
+									          <a class="btn btn-default btn-xs" href="#" onclick="jgbg.main.del('${jgbg.id}')">
+									   <i class="glyphicon glyphicon-trash"></i> 
+									         删除</a>
+									         </c:if>
+									<c:if test="${ jgbg.recordStatus  > 1 }">
+									<a class="btn btn-default btn-xs" href="#"
+									onclick="hisList('${jgbg.id}','jgbg')"> <i
+										class="glyphicon glyphicon-search"></i>流程历史
+									</a>
+								</c:if>
+					        </td>
+							<td >
+							 <c:if test="${jgbg.taskState =='Y'}">
+							 <a class="btn btn-default btn-xs" href="#"  onclick="jgbg.main.banli('${jgbg.id}')">
+									   <i class="glyphicon glyphicon-check"></i> 
+									          办理</a>
+							 </c:if>
+							  <c:if test="${jgbg.taskState =='TH'}">
+							 <a class="btn btn-default btn-xs" href="#"  onclick="jgbg.main.back('${jgbg.id}')">
+									   <i class="glyphicon glyphicon-check"></i> 
+									          办理</a>
+							 </c:if>
+							</td>
+						</tr>
+					</c:forEach>
+				</table>
+			</div>
+			<!-- 分页 -->
+			<jsp:include page="../../pageinfo.jsp"></jsp:include>
+			</form>	
+		</div>
+	<jsp:include page="../../showHistory.jsp"></jsp:include>
+	</div>
+</body>
+</html>

+ 208 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jgsq/jgsqadd.jsp

@@ -0,0 +1,208 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+	pageEncoding="UTF-8"%>
+
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <title>江苏省港口建设与经营管理信息系统</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <%@ include file="../../common.jsp"%>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jgsq/jgsqdetail.js"></script>
+	<script type="text/javascript">
+		$(document).ready(function () {
+			jgsq.detail.init();
+			var id = '${jyr.id}';
+			if(!isEmpty(id)){
+				jgsq.detail.szd ='${jyr.szd.id}';
+				jgsq.detail.gq ='${jyr.szgq.id}';
+				jgsq.detail.gk ='${jyr.szgk.id}';
+			}else{
+				jgsq.detail.szd ='${sz}';
+				jgsq.detail.gk ='${gk}';
+				
+			}
+			//项目类型默认新建
+				initXmlxSelect('xmlxsel','2201','80%');
+			//投资类型默认企业投资
+				initTzlxSelect('tzlxsel','1902','80%');
+				initXmhzjbSelect('xmhzjbsel','','80%');
+				initAxspjbSelect('axspjbsel','','80%');
+				jgsq.detail.initBwyt('bwytsel', '');
+				jgsq.detail.initZyhbwfl('zyhbwflsel', '','');
+				initszdSelect('szdsel', jgsq.detail.szd, 'showgk', '80%');
+				initgkSelect('gksel',jgsq.detail.gk,jgsq.detail.szd,'showgq','80%');
+				initgqSelect('gqsel',jgsq.detail.gq,jgsq.detail.szd,jgsq.detail.gk,null,'80%');
+			/* $('.close').click(function(){
+				guanbi();
+			}) */
+		});
+		
+		function showgk(){
+			initgkSelect('gksel',jgsq.detail.gk,$('.szdselectpicker').val(),"showgq",'80%');
+			showgq();
+		}
+
+		function showgq(){
+			initgqSelect('gqsel',jgsq.detail.gq,$('.szdselectpicker').val(),$('.gkselectpicker').val(),null,'80%');
+		} 
+			 
+		function jyrSel(jyrid){
+			guanbipop();
+			$.post($.app + "/gkjyr/findById", {
+				id:jyrid
+		    }, function(data) {
+		    	//返回的是经营人实体,你可以在回掉中,进行任何其他字段的默认填写
+		    	$('#jyrid').val(data.id);
+		    	$('#jyrmc').val(data.gkjyr);
+		    	$('#xmfr').val(data.fddbr);
+		    	jgsq.detail.szd =data.szd.id;
+				jgsq.detail.gq =data.szgq.id;
+				jgsq.detail.gk =data.szgk.id;
+				initszdSelect('szdsel', jgsq.detail.szd, 'showgk', '80%');
+				initgkSelect('gksel',jgsq.detail.gk,jgsq.detail.szd,'showgq','80%');
+				initgqSelect('gqsel',jgsq.detail.gq,jgsq.detail.szd,jgsq.detail.gk,null,'80%');
+		    }, "json");
+		}
+		
+		function ytsel(){
+			jgsq.detail.initZyhbwfl('zyhbwflsel', '',$('.bwytselectpicker').val()+"");
+		}
+	</script>
+</head>
+
+<body>
+<jsp:include page="../../jyrselect.jsp"></jsp:include>
+	<div class="box" >
+		<div class="box-content" >
+			<div class="apply_fill">
+ <form  id="addform" method="post" enctype="multipart/form-data"> 			
+ <input type="hidden" class="form-control"  name="fjids" id="fjids">
+					<table class="apply" cellpadding="0" cellspacing="0">
+						<tr>
+							<th><span class="needwrite">*</span>项目名称:&nbsp;</th>
+							<td colspan="4">
+								<input type="text" style="width: 92.5%;" class="form-control" name="xmmc">
+							</td>
+						</tr>
+						<tr>
+							<th><span class="needwrite">*</span>所属单位:&nbsp;</th>
+							<td colspan="4" style="position:relative;">
+								<input type="text" style="width: 92.5%;" readonly="readonly" class="form-control"  id ="jyrmc" value ="${jyr.gkjyr }">
+								<input type="hidden" class="form-control" name="ssjyrid" id ="jyrid"  value ="${jyr.id }">
+								<c:if test="${jyr.id == null }">
+										<a class="btn btn-primary btn-sm" href="#"
+										 onclick="jyrselpop('jyrSel')"  
+										style="position:absolute;right:4px;top:4px;"> <i class="glyphicon"></i>选择
+									    </a>
+							    </c:if> 
+							</td>
+						</tr>
+						<tr>
+						    <th><span class="needwrite">*</span>所在地:&nbsp;</th>
+							<td>
+								<div id="szdsel"></div>
+							</td>
+							<th><span class="needwrite">*</span>所在港口:&nbsp;</th>
+							<td >
+								<div id="gksel"></div>
+							</td>
+						</tr>
+						<tr>
+						    <th><span class="needwrite">*</span>所在港区:&nbsp;</th>
+						 	<td >
+								<div id="gqsel"></div>
+							</td>
+							<th><span class="needwrite">*</span>项目法人:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="xmfr" id="xmfr">
+							</td>
+						</tr>
+						<tr>
+						    <th><span class="needwrite">*</span>项目类型:&nbsp;</th>
+							<td >
+								<div id="xmlxsel"></div>
+							</td>
+							<th><span class="needwrite">*</span>建设地点:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="jsdd">
+							</td>
+						</tr>
+						<tr>
+						    <th>建设规模:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="jsgm">
+							</td>
+							<th>投资类型:&nbsp;</th>
+							<td >
+								<div id="tzlxsel"></div>
+							</td>
+						</tr>
+						<tr>
+						    <th>总投资 (万元):&nbsp;</th>
+							<td>
+								<input type="text" class="form-control" name="ztz">
+							</td>
+     						<th>项目核准级别:&nbsp;</th>
+							<td>
+							   <div id="xmhzjbsel"></div>
+							</td>
+						</tr>
+						<tr>
+						    <th>岸线审批级别:&nbsp;</th>
+							<td >
+								<div id="axspjbsel"></div>
+							</td>
+							<th>岸线长度 (米):&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="axcd">
+							</td>
+						</tr>
+						<tr>
+						    <th>泊位吨级 (吨):&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="bwdj">
+							</td>
+							<th>通过能力(万吨):&nbsp;</th>
+							<td colspan="3">
+								<input type="text" class="form-control" name="tgnl">
+							</td>
+						</tr>
+						
+						<tr>
+					 	    <th>泊位用途:&nbsp;</th>
+                        <td colspan="3">
+	                        <span id="bwytsel"></span>
+                        </td>
+                       
+                        <!-- <th>专业化泊位分类:&nbsp;</th>
+                        <td>
+	                        <span id="zyhbwflsel"></span>
+                        </td> -->
+						</tr>
+						
+					</table>
+				
+					<div  id="buttons">
+                    	<a class="btn btn-default btn-sm" href="#" onclick="jgsq.detail.save()">
+							   <i class="glyphicon glyphicon-floppy-disk"></i> 
+							            保存</a>
+							            
+							            <a class="btn btn-default btn-sm" href="#" onclick="jgsq.detail.submit()">
+							   <i class="glyphicon glyphicon-floppy-disk"></i> 
+							            提交</a>
+							            
+							             <a class="btn btn-default btn-sm" href="#"  onclick="jgsq.detail.back()">
+							   <i class="glyphicon glyphicon-arrow-left"></i> 
+							           返回</a>
+							            
+          			</div>
+	</form>
+				</div>
+		</div>
+
+</div>
+</body>
+
+</html>

+ 215 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jgsq/jgsqedit.jsp

@@ -0,0 +1,215 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+	pageEncoding="UTF-8"%>
+
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <title>江苏省港口建设与经营管理信息系统</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <%@ include file="../../common.jsp"%>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jgsq/jgsqdetail.js"></script>
+	<script type="text/javascript">
+		$(document).ready(function () {
+			jgsq.detail.init();
+			var id = '${jyr.id}';
+			if(!isEmpty(id)){
+				jgsq.detail.szd ='${jyr.szd.id}';
+				jgsq.detail.gq ='${jyr.szgq.id}'
+				jgsq.detail.gk ='${jyr.szgk.id}'
+			}
+			initXmlxSelect('xmlxsel', '${record.xmlx }', '80%');
+			initTzlxSelect('tzlxsel', '${record.tzlx }', '80%');
+			initXmhzjbSelect('xmhzjbsel', '${record.xmhzjb }', '80%');
+			initAxspjbSelect('axspjbsel', '${record.axspjb }', '80%');
+			initszdSelect('szdsel', jgsq.detail.szd, 'showgk', '80%');
+			initgkSelect('gksel',jgsq.detail.gk,jgsq.detail.szd,'showgq','80%');
+			initgqSelect('gqsel',jgsq.detail.gq,jgsq.detail.szd,jgsq.detail.gk,null,'80%');
+			jgsq.detail.initBwyt('bwytsel', '${record.bwyt }');
+			jgsq.detail.initZyhbwfl('zyhbwflsel', '${record.zyhbwfl }','${record.bwyt }');
+		});
+		function jyrSel(jyrid){
+			guanbipop();
+			$.post($.app + "/gkjyr/findById", {
+				id:jyrid
+		    }, function(data) {
+		    	//返回的是经营人实体,你可以在回掉中,进行任何其他字段的默认填写
+		    	$('#jyrid').val(data.id);
+		    	$('#jyrmc').val(data.gkjyr);
+		    	$('#xmfr').val(data.fddbr);
+		    	jgsq.detail.szd =data.szd.id;
+				jgsq.detail.gq =data.szgq.id;
+				jgsq.detail.gk =data.szgk.id;
+				initgkSelect('gksel',jgsq.detail.gk,$('.szdselectpicker').val(),'showgq','80%');
+				initgqSelect('gqsel',jgsq.detail.gq,$('.szdselectpicker').val(),$('.gkselectpicker').val(),$('.gkselectpicker').val(),null,'100%');
+		    }, "json");
+		}
+		
+		function showgk(){
+			initgkSelect('gksel','${record.szgk }',$('.szdselectpicker').val(),"showgq",'80%');
+			showgq();
+		}
+
+		function showgq(){
+			initgqSelect('gqsel','${record.szgq }',$('.szdselectpicker').val(),$('.gkselectpicker').val(),null,'80%');
+		}
+		
+		function guanbipop(){
+			$('.theme-popover-mask').fadeOut(100);
+			$('.theme-popover').slideUp(0);
+		}
+		function ytsel(){
+			jgsq.detail.initZyhbwfl('zyhbwflsel', '',$('.bwytselectpicker').val()+"");
+		}
+	</script>
+
+</head>
+
+<body>
+<jsp:include page="../../jyrselect.jsp"></jsp:include>
+	<div class="box" >
+		<div class="box-content" >
+			<div class="apply_fill">
+ <form  id="addform" method="post" enctype="multipart/form-data"> 		
+ <input type="hidden" name="id" value="${record.id }">		
+ <input type="hidden" name="fjids" id="fjids">	
+					<table class="apply" cellpadding="0" cellspacing="0">
+						<tr>
+							<th><span class="needwrite">*</span>项目名称:&nbsp;</th>
+							<td colspan="4" >
+								<input type="text" style="width: 92.5%;" class="form-control" name="xmmc" value="${record.xmmc }">
+							</td>
+						</tr>
+						<tr>
+							<th><span class="needwrite">*</span>所属单位:&nbsp;</th>
+							<td colspan="4" style="position:relative;">
+								<input type="text" style="width: 92.5%;" readonly="readonly" class="form-control"  id ="jyrmc" value ="${jyr.gkjyr }">
+								<input type="hidden" class="form-control" name="ssjyrid" id ="jyrid" value ="${jyr.id }">
+								<c:if test="${jyr.id == null }">
+								<a class="btn btn-primary btn-sm" href="#"
+								 onclick="jyrselpop('jyrSel')"  
+								style="position:absolute;right:4px;top:4px;"> <i class="glyphicon"></i>选择
+									   </a>
+								</c:if> 
+							</td>
+						</tr>
+						<tr>
+						    <th><span class="needwrite">*</span>所在地:&nbsp;</th>
+							<td>
+								<span id="szdsel">
+								</span>
+							</td>
+							<th><span class="needwrite">*</span>所在港口:&nbsp;</th>
+							<td >
+								<span id="gksel">
+								</span>
+							</td>
+						</tr>
+						<tr>
+					    	<th><span class="needwrite">*</span>所在港区:&nbsp;</th>
+							<td >
+								<span id="gqsel">
+								</span>
+							</td>
+							<th><span class="needwrite">*</span>项目法人:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="xmfr" value="${record.xmfr }">
+							</td>
+						</tr>
+						<tr>
+						    <th><span class="needwrite">*</span>项目类型:&nbsp;</th>
+							<td >
+								<span id="xmlxsel">
+								</span>
+							</td>
+							<th><span class="needwrite">*</span>建设地点:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="jsdd" value="${record.jsdd }">
+							</td>
+						</tr>
+						<tr>
+					    	<th>建设规模:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="jsgm" value="${record.jsgm }">
+							</td>
+							<th>投资类型:&nbsp;</th>
+							<td>
+								<span id="tzlxsel">
+								</span>
+							</td>
+						</tr>
+						<tr>
+						    <th>总投资(万元):&nbsp;</th>
+							<td>
+								<input type="text" class="form-control" name="ztz" value="${record.ztz }">
+							</td>
+							<th>项目核准级别:&nbsp;</th>
+							<td>
+								<span id="xmhzjbsel">
+								</span>
+							</td>
+						</tr>
+						<tr>
+					    	<th>岸线审批级别:&nbsp;</th>
+							<td>
+								<span id="axspjbsel">
+								</span>
+							</td>
+							<th>岸线长度 (米):&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="axcd" value="${record.axcd }">
+							</td>
+						</tr>
+						<tr>
+					    	<th>泊位吨级(吨):&nbsp;</th>
+							<td>
+								<input type="text" class="form-control" name="bwdj" value="${record.bwdj }">
+							</td>
+							<th>通过能力(万吨):&nbsp;</th>
+							<td colspan="3">
+								<input type="text" class="form-control" name="tgnl" value="${record.tgnl }">
+							</td>
+						</tr>
+						
+						<tr>
+					 	    <th>泊位用途:&nbsp;</th>
+                        <td colspan="3">
+	                        <span id="bwytsel"></span>
+                        </td>
+                       
+						</tr>
+						
+				
+					</table>
+					
+
+					<div  id="buttons">
+                    	<a class="btn btn-default btn-sm" href="#" onclick="jgsq.detail.save()">
+							   <i class="glyphicon glyphicon-floppy-disk"></i> 
+							            保存</a>
+							            
+							<c:if test="${flag == '' || flag == null}">
+  
+					      <a class="btn btn-default btn-sm" href="#" onclick="jgsq.detail.submit()">
+							   <i class="glyphicon glyphicon-floppy-disk"></i> 
+							            提交</a>
+						</c:if>
+						<c:if test="${flag=='th'}">
+						<a class="btn btn-default btn-sm" href="#"  onclick="jgsq.detail.submitAudit()">
+						   <i class="glyphicon glyphicon-ok-sign"></i> 
+						            提交</a>
+						</c:if>     
+							             <a class="btn btn-default btn-sm" href="#"  onclick="jgsq.detail.back()">
+							   <i class="glyphicon glyphicon-arrow-left"></i> 
+							            返回</a>
+					</div>		              
+	</form>							            
+          			</div>
+			
+			</div>
+		</div>
+	
+</body>
+
+</html>

+ 183 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jgsq/jgsqmain.jsp

@@ -0,0 +1,183 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+	pageEncoding="UTF-8"%>
+
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <title>江苏省港口建设与经营管理信息系统</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <%@ include file="../../common.jsp"%>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jgsq/jgsqmain.js"></script>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jgsq/jgsqdetail.js"></script>
+	<script type="text/javascript">
+		$(document).ready(function () {
+			jgsq.main.init();
+			initXmhzjbSelect('xmhzjbsel','${xmhzjbid }','80%');
+			initszdSelect('szdsel','${szd }', 'showgk', '80%');
+			initgkSelect('gksel','${szgk }','${szd }','showgq','80%');
+			initgqSelect('gqsel','${szgq }','${szd }','${szgk }',null,'80%');
+			jgsq.main.initSfyzjbzsel('sfyzjbz','${sfyzjbz}','80%');
+			iFrameHeightIframe('${menuid}');//自适应高度
+		});
+		
+		function showgk(){
+			initgkSelect('gksel','${szgk }',$('.szdselectpicker').val(),"showgq",'80%');
+			showgq();
+		}
+
+		function showgq(){
+			initgqSelect('gqsel','${szgq }',$('.szdselectpicker').val(),$('.gkselectpicker').val(),null,'80%');
+		}
+	</script>
+</head>
+
+<body>
+	<div class="box" >
+		<div class="box-content" >
+<form action="${app }/jgsq/main" id="jgsqform" method="post"> 
+<input type="hidden" name="menuid" value="${menuid }">		
+
+			<div >
+				<table class="search_table" cellpadding="0" cellspacing="0">
+				    <tr>
+							<th width="12%"></th>
+						<th width="22%"></th>	
+						<th width="11%"></th>
+						<th width="22%"></th>
+						<th width="11%"></th>
+						<th width="22%"></th>
+					</tr>
+                    <tr>
+                        <td class="right">
+                         	项目名称:&nbsp;
+                         </td>
+                        <td >
+	                        	<input type="text" class="form-control" name="xmmc"  value="${xmmc }">
+                        </td>
+                   
+                        <td class="right">
+                         	项目法人:&nbsp;
+                        </td>
+                        <td>
+	                        	<input type="text" class="form-control" name="xmfr"  value="${xmfr }">
+                        </td>
+                        <td class="right">
+                         	项目核准级别:&nbsp;
+                        </td>
+						<td>
+			            	<span id="xmhzjbsel">
+							</span>
+			            </td>
+                        
+                     </tr>
+                     <tr>
+                        <td class="right">
+                         	所在地:&nbsp;
+                        </td>
+						<td>
+			            	<span id="szdsel">
+							</span>
+			            </td>
+                        <td class="right">
+                         	所在港口:&nbsp;
+                        </td>
+						<td>
+			            	<span id="gksel">
+							</span>
+			            </td>
+			            <td class="right">
+                         	所在港区:&nbsp;
+                        </td>
+						<td>
+			            	<span id="gqsel">
+							</span>
+			            </td>
+                       
+                    </tr>
+                    <tr>
+                   		<td class="right">是否有资金补助:&nbsp;</td>
+						<td>
+							<div id="sfyzjbz"></div>
+						</td>
+							<td class="right"></td>
+							<td></td>
+                     <td class="right" colspan="2">
+                         			 <a class="btn btn-default btn-sm" href="#" onclick="jgsq.main.search()">
+							   <i class="glyphicon glyphicon-search"></i> 
+							            查询</a>
+							         <a class="btn btn-default btn-sm" href="#"  onclick="jgsq.main.add()">
+							   <i class="glyphicon glyphicon-plus"></i> 
+							            新增</a>
+                     </td>
+                         
+                    </tr>
+				</table>
+			</div>
+			<!-- 列表 -->
+			<div  style="background-color:#f4f4f4;">
+				<table class="main_table" cellpadding="0" cellspacing="0">
+					<tr>
+						<th width="4%">序号</th>	
+						<th width="10%">项目名称</th>
+						<th width="10%">所在港口</th>
+						<th width="10%">所在港区</th>
+						<th width="10%">项目法人</th>
+						<th width="10%">项目类型</th>
+						<th width="10%">是否有资金补助</th>	
+						<th width="20%">操作</th>
+						 <th width="16%">办理</th>
+					</tr>
+					 <c:forEach items="${list}" var="jgsq" varStatus="status">
+						<tr class="tr_bg">
+							<td>${status.index+1 }</td>
+							<td>${jgsq.xmmc }</td>
+							<td>${jgsq.szgkzw }</td>
+							<td>${jgsq.szgqzw }</td>
+							<td>${jgsq.xmfr }</td>
+						    <td>${jgsq.xmlxzw }</td>
+						    <td>${jgsq.sfyzjbz }</td>
+							<td>
+								<a class="btn btn-default btn-xs" href="#" onclick="jgsq.main.view('${jgsq.id}')">
+							            <i class="glyphicon glyphicon-search"></i> 
+							            查看</a>
+							             <c:if test="${jgsq.recordStatus == 1 }">
+								 <a class="btn btn-default btn-xs" href="#"  onclick="jgsq.main.edit('${jgsq.id}')">
+									   <i class="glyphicon glyphicon-wrench"></i> 
+									          修改</a>
+									          <a class="btn btn-default btn-xs" href="#" onclick="jgsq.main.del('${jgsq.id}')">
+									   <i class="glyphicon glyphicon-trash"></i> 
+									         删除</a>
+									         </c:if>
+									<c:if test="${ jgsq.recordStatus  > 1 }">
+									<a class="btn btn-default btn-xs" href="#"
+									onclick="hisList('${jgsq.id}','jgsq')"> <i
+										class="glyphicon glyphicon-search"></i>流程历史
+									</a>
+								</c:if>
+					        </td>
+							<td >
+							 <c:if test="${jgsq.taskState =='Y'}">
+							 <a class="btn btn-default btn-xs" href="#"  onclick="jgsq.main.banli('${jgsq.id}')">
+									   <i class="glyphicon glyphicon-check"></i> 
+									          办理</a>
+							 </c:if>
+							  <c:if test="${jgsq.taskState =='TH'}">
+							 <a class="btn btn-default btn-xs" href="#"  onclick="jgsq.main.back('${jgsq.id}')">
+									   <i class="glyphicon glyphicon-check"></i> 
+									          办理</a>
+							 </c:if>
+							</td>
+						</tr>
+					</c:forEach>
+				</table>
+			</div>
+			<!-- 分页 -->
+			<jsp:include page="../../pageinfo.jsp"></jsp:include>
+			</form>	
+		</div>
+	<jsp:include page="../../showHistory.jsp"></jsp:include>
+	</div>
+</body>
+</html>

+ 218 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jgsq/jgsqview.jsp

@@ -0,0 +1,218 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+	pageEncoding="UTF-8"%>
+
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <title>江苏省港口建设与经营管理信息系统</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <%@ include file="../../common.jsp"%>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jgsq/jgsqdetail.js"></script>
+	<script type="text/javascript">
+		$(document).ready(function () {
+			jgsq.detail.taskKey="${taskKey}";
+			jgsq.detail.init();
+			$('.close').click(function(){
+				guanbi();
+			})
+		});
+		
+		function tanchu(){
+			//此处可以先进行ajax请求获取数据,然后再回掉中再显示弹出框
+			$('.theme-popover-mask').fadeIn(100);
+			$('.theme-popover').slideDown(0);
+		}
+		function guanbi(){
+			$('.theme-popover-mask').fadeOut(100);
+			$('.theme-popover').slideUp(0);
+		}
+		
+		function showRy(){
+			$('#selectrydiv').fadeIn(100);
+       		$('#selectry2div').slideDown(0);
+		}
+		
+		function showYj(){
+			$('.theme-popover-mask').fadeIn(100);
+       		$('.theme-popover').slideDown(0);
+		}
+	</script>
+
+</head>
+
+<body>
+	<div class="box" >
+		<div class="box-content" >
+			<div class="apply_fill">
+ <form  id="addform" method="post" enctype="multipart/form-data"> 	
+ <input type="hidden" id="userids"	name="userids"/>
+  <input type="hidden" id="yj"	name="yj"/>
+  <input type="hidden" id="accids" name="accids"/>
+					<table class="apply" cellpadding="0" cellspacing="0">
+						<tr>
+							<th>项目名称:&nbsp;</th>
+							<td colspan="4" >
+								${record.xmmc }
+							</td>
+						</tr>
+						<tr>
+							<th>所属单位:&nbsp;</th>
+							<td colspan="4" >
+								${jyr.gkjyr }
+							</td>
+						</tr>
+						<tr>
+						    <th>所在地:&nbsp;</th>
+							<td >
+								${record.szddzw }
+							</td>
+							<th>所在港口:&nbsp;</th>
+							<td>
+								${record.szgkzw }
+							</td>
+						</tr>
+						<tr>
+						    <th>所在港区:&nbsp;</th>
+							<td >
+								${record.szgqzw }
+							</td>
+							<th>项目法人:&nbsp;</th>
+							<td >
+								${record.xmfr }
+							</td>
+						</tr>
+						<tr>
+						    <th>项目类型:&nbsp;</th>
+							<td >
+								${record.xmlxzw }
+							</td>
+							<th>建设地点:&nbsp;</th>
+							<td >
+								${record.jsdd }
+							</td>
+						</tr>
+						<tr>
+						    <th>建设规模:&nbsp;</th>
+							<td >
+								${record.jsgm }
+							</td>
+							<th>投资类型:&nbsp;</th>
+							<td>
+								${record.tzlxzw }
+							</td>
+						</tr>
+						<tr>
+					    	<th>总投资 (万元):&nbsp;</th>
+							<td>
+								${record.ztz }
+							</td>
+							<th>项目核准级别:&nbsp;</th>
+							<td>
+								${record.xmhzjbzw }
+							</td>
+						</tr>
+						<tr>
+						    <th>岸线审批级别:&nbsp;</th>
+							<td >
+								${record.axspjbzw }
+							</td>
+							<th>岸线长度 (米):&nbsp;</th>
+							<td >
+								${record.axcd }
+							</td>
+						</tr>
+						<tr>
+						    <th>泊位吨级 (吨):&nbsp;</th>
+							<td >
+								${record.bwdj }
+							</td>
+							<th>通过能力(万吨):&nbsp;</th>
+							<td colspan="3">
+								${record.tgnl }
+							</td>
+						</tr>
+						
+						<tr>
+					    	<th>泊位用途:</th>
+                            <td colspan="3">
+                             ${record.bwytzw }
+                            </td>
+                           
+                       </tr>
+                       <tr>
+                       		<th>专家评审附件</th>
+                       		<td colspan="3">
+                       		
+                       		 <c:if test="${ taskKey == 'zjps'  }"> 
+	                        	<a href="#" class="file">上传<input type="file" name="file" id="fjid" onchange="jgsq.detail.submitFile()"/></a>
+	                         </c:if> 
+		                       		 
+							<table  id="tableId" style="width: 100%">
+								<tr align="center">
+								<td style="width:40%;text-align: center;">上传附件名称</td>
+								   <c:if test="${ taskKey == 'zjps'  }"> 
+								<td style="width:15%;text-align: center;">操作</td>
+								</c:if>
+								</tr>
+								<c:forEach items="${fjlist }" var="fj" varStatus="status">
+								<tr align="center">
+								<td><a class='main_title' href='/jsjy/accessory/download?id=${fj.fjid }'>${fj.fjmc }</a></td>
+								  <c:if test="${ taskKey == 'zjps'  }"> 
+								<td><a class="btn btn-default btn-xs" href="#" onclick="jgsq.detail.delFj('${fj.id}',this)">删除</a></td>
+								</c:if>
+								</tr>
+								</c:forEach>
+                       		</table>
+                       		</td>
+                       </tr>
+                       
+                       <c:forEach items="${list}" var="list" begin="1" varStatus="status">
+                       <tr>
+                       <th> ${list.currName }</th>
+                       
+                       		<td colspan="3">${list.yj }</td>
+                      
+                       </tr>
+                       </c:forEach>
+					</table>
+</form>
+
+					<div  id="buttons">
+					
+					<c:if test="${opflag == 5 || opflag == 9}">
+				
+					 <a class="btn btn-default btn-sm" href="#"  onclick="showRy()">
+							   <i class="glyphicon glyphicon-ok-sign"></i> 
+							            选择科室人员</a>
+					</c:if>
+					<c:if test="${flag=='audit' }">
+					
+					<a class="btn btn-default btn-sm" href="#"  onclick="showYj()">
+							   <i class="glyphicon glyphicon-ok-sign"></i> 
+							            意见</a>
+					
+					 <a class="btn btn-default btn-sm" href="#"  onclick="jgsq.detail.audit('Y','${record.id}')">
+							   <i class="glyphicon glyphicon-ok-sign"></i> 
+							            同意</a>
+						<a class="btn btn-default btn-sm" href="#"  onclick="jgsq.detail.audit('N','${record.id}')">
+							   <i class="glyphicon glyphicon-ban-circle"></i> 
+							            退回</a>
+				          
+					</c:if>
+					
+							             <a class="btn btn-default btn-sm" href="#"  onclick="jgsq.detail.back()">
+							   <i class="glyphicon glyphicon-arrow-left"></i> 
+							            返回</a>
+							           
+          			</div>
+			
+			</div>
+		</div>
+</div>
+<jsp:include page="../../showRy.jsp"></jsp:include>
+<jsp:include page="../../showViewOption.jsp"></jsp:include>
+</body>
+
+</html>

+ 208 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jgzx/jgzxadd.jsp

@@ -0,0 +1,208 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+	pageEncoding="UTF-8"%>
+
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <title>江苏省港口建设与经营管理信息系统</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <%@ include file="../../common.jsp"%>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jgzx/jgzxdetail.js"></script>
+	<script type="text/javascript">
+		$(document).ready(function () {
+			jgzx.detail.init();
+			var id = '${jyr.id}';
+			if(!isEmpty(id)){
+				jgzx.detail.szd ='${jyr.szd.id}';
+				jgzx.detail.gq ='${jyr.szgq.id}';
+				jgzx.detail.gk ='${jyr.szgk.id}';
+			}else{
+				jgzx.detail.szd ='${sz}';
+				jgzx.detail.gk ='${gk}';
+				
+			}
+			//项目类型默认新建
+				initXmlxSelect('xmlxsel','2201','80%');
+			//投资类型默认企业投资
+				initTzlxSelect('tzlxsel','1902','80%');
+				initXmhzjbSelect('xmhzjbsel','','80%');
+				initAxspjbSelect('axspjbsel','','80%');
+				jgzx.detail.initBwyt('bwytsel', '');
+				jgzx.detail.initZyhbwfl('zyhbwflsel', '','');
+				initszdSelect('szdsel', jgzx.detail.szd, 'showgk', '80%');
+				initgkSelect('gksel',jgzx.detail.gk,jgzx.detail.szd,'showgq','80%');
+				initgqSelect('gqsel',jgzx.detail.gq,jgzx.detail.szd,jgzx.detail.gk,null,'80%');
+			/* $('.close').click(function(){
+				guanbi();
+			}) */
+		});
+		
+		function showgk(){
+			initgkSelect('gksel',jgzx.detail.gk,$('.szdselectpicker').val(),"showgq",'80%');
+			showgq();
+		}
+
+		function showgq(){
+			initgqSelect('gqsel',jgzx.detail.gq,$('.szdselectpicker').val(),$('.gkselectpicker').val(),null,'80%');
+		} 
+			 
+		function jyrSel(jyrid){
+			guanbipop();
+			$.post($.app + "/gkjyr/findById", {
+				id:jyrid
+		    }, function(data) {
+		    	//返回的是经营人实体,你可以在回掉中,进行任何其他字段的默认填写
+		    	$('#jyrid').val(data.id);
+		    	$('#jyrmc').val(data.gkjyr);
+		    	$('#xmfr').val(data.fddbr);
+		    	jgzx.detail.szd =data.szd.id;
+				jgzx.detail.gq =data.szgq.id;
+				jgzx.detail.gk =data.szgk.id;
+				initszdSelect('szdsel', jgzx.detail.szd, 'showgk', '80%');
+				initgkSelect('gksel',jgzx.detail.gk,jgzx.detail.szd,'showgq','80%');
+				initgqSelect('gqsel',jgzx.detail.gq,jgzx.detail.szd,jgzx.detail.gk,null,'80%');
+		    }, "json");
+		}
+		
+		function ytsel(){
+			jgzx.detail.initZyhbwfl('zyhbwflsel', '',$('.bwytselectpicker').val()+"");
+		}
+	</script>
+</head>
+
+<body>
+<jsp:include page="../../jyrselect.jsp"></jsp:include>
+	<div class="box" >
+		<div class="box-content" >
+			<div class="apply_fill">
+ <form  id="addform" method="post" enctype="multipart/form-data"> 			
+ <input type="hidden" class="form-control"  name="fjids" id="fjids">
+					<table class="apply" cellpadding="0" cellspacing="0">
+						<tr>
+							<th><span class="needwrite">*</span>项目名称:&nbsp;</th>
+							<td colspan="4">
+								<input type="text" style="width: 92.5%;" class="form-control" name="xmmc">
+							</td>
+						</tr>
+						<tr>
+							<th><span class="needwrite">*</span>所属单位:&nbsp;</th>
+							<td colspan="4" style="position:relative;">
+								<input type="text" style="width: 92.5%;" readonly="readonly" class="form-control"  id ="jyrmc" value ="${jyr.gkjyr }">
+								<input type="hidden" class="form-control" name="ssjyrid" id ="jyrid"  value ="${jyr.id }">
+								<c:if test="${jyr.id == null }">
+										<a class="btn btn-primary btn-sm" href="#"
+										 onclick="jyrselpop('jyrSel')"  
+										style="position:absolute;right:4px;top:4px;"> <i class="glyphicon"></i>选择
+									    </a>
+							    </c:if> 
+							</td>
+						</tr>
+						<tr>
+						    <th><span class="needwrite">*</span>所在地:&nbsp;</th>
+							<td>
+								<div id="szdsel"></div>
+							</td>
+							<th><span class="needwrite">*</span>所在港口:&nbsp;</th>
+							<td >
+								<div id="gksel"></div>
+							</td>
+						</tr>
+						<tr>
+						    <th><span class="needwrite">*</span>所在港区:&nbsp;</th>
+						 	<td >
+								<div id="gqsel"></div>
+							</td>
+							<th><span class="needwrite">*</span>项目法人:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="xmfr" id="xmfr">
+							</td>
+						</tr>
+						<tr>
+						    <th><span class="needwrite">*</span>项目类型:&nbsp;</th>
+							<td >
+								<div id="xmlxsel"></div>
+							</td>
+							<th><span class="needwrite">*</span>建设地点:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="jsdd">
+							</td>
+						</tr>
+						<tr>
+						    <th>建设规模:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="jsgm">
+							</td>
+							<th>投资类型:&nbsp;</th>
+							<td >
+								<div id="tzlxsel"></div>
+							</td>
+						</tr>
+						<tr>
+						    <th>总投资 (万元):&nbsp;</th>
+							<td>
+								<input type="text" class="form-control" name="ztz">
+							</td>
+     						<th>项目核准级别:&nbsp;</th>
+							<td>
+							   <div id="xmhzjbsel"></div>
+							</td>
+						</tr>
+						<tr>
+						    <th>岸线审批级别:&nbsp;</th>
+							<td >
+								<div id="axspjbsel"></div>
+							</td>
+							<th>岸线长度 (米):&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="axcd">
+							</td>
+						</tr>
+						<tr>
+						    <th>泊位吨级 (吨):&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="bwdj">
+							</td>
+							<th>通过能力(万吨):&nbsp;</th>
+							<td colspan="3">
+								<input type="text" class="form-control" name="tgnl">
+							</td>
+						</tr>
+						
+						<tr>
+					 	    <th>泊位用途:&nbsp;</th>
+                        <td colspan="3">
+	                        <span id="bwytsel"></span>
+                        </td>
+                       
+                        <!-- <th>专业化泊位分类:&nbsp;</th>
+                        <td>
+	                        <span id="zyhbwflsel"></span>
+                        </td> -->
+						</tr>
+						
+					</table>
+				
+					<div  id="buttons">
+                    	<a class="btn btn-default btn-sm" href="#" onclick="jgzx.detail.save()">
+							   <i class="glyphicon glyphicon-floppy-disk"></i> 
+							            保存</a>
+							            
+							            <a class="btn btn-default btn-sm" href="#" onclick="jgzx.detail.submit()">
+							   <i class="glyphicon glyphicon-floppy-disk"></i> 
+							            提交</a>
+							            
+							             <a class="btn btn-default btn-sm" href="#"  onclick="jgzx.detail.back()">
+							   <i class="glyphicon glyphicon-arrow-left"></i> 
+							           返回</a>
+							            
+          			</div>
+	</form>
+				</div>
+		</div>
+
+</div>
+</body>
+
+</html>

+ 215 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jgzx/jgzxedit.jsp

@@ -0,0 +1,215 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+	pageEncoding="UTF-8"%>
+
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <title>江苏省港口建设与经营管理信息系统</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <%@ include file="../../common.jsp"%>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jgzx/jgzxdetail.js"></script>
+	<script type="text/javascript">
+		$(document).ready(function () {
+			jgzx.detail.init();
+			var id = '${jyr.id}';
+			if(!isEmpty(id)){
+				jgzx.detail.szd ='${jyr.szd.id}';
+				jgzx.detail.gq ='${jyr.szgq.id}'
+				jgzx.detail.gk ='${jyr.szgk.id}'
+			}
+			initXmlxSelect('xmlxsel', '${record.xmlx }', '80%');
+			initTzlxSelect('tzlxsel', '${record.tzlx }', '80%');
+			initXmhzjbSelect('xmhzjbsel', '${record.xmhzjb }', '80%');
+			initAxspjbSelect('axspjbsel', '${record.axspjb }', '80%');
+			initszdSelect('szdsel', jgzx.detail.szd, 'showgk', '80%');
+			initgkSelect('gksel',jgzx.detail.gk,jgzx.detail.szd,'showgq','80%');
+			initgqSelect('gqsel',jgzx.detail.gq,jgzx.detail.szd,jgzx.detail.gk,null,'80%');
+			jgzx.detail.initBwyt('bwytsel', '${record.bwyt }');
+			jgzx.detail.initZyhbwfl('zyhbwflsel', '${record.zyhbwfl }','${record.bwyt }');
+		});
+		function jyrSel(jyrid){
+			guanbipop();
+			$.post($.app + "/gkjyr/findById", {
+				id:jyrid
+		    }, function(data) {
+		    	//返回的是经营人实体,你可以在回掉中,进行任何其他字段的默认填写
+		    	$('#jyrid').val(data.id);
+		    	$('#jyrmc').val(data.gkjyr);
+		    	$('#xmfr').val(data.fddbr);
+		    	jgzx.detail.szd =data.szd.id;
+				jgzx.detail.gq =data.szgq.id;
+				jgzx.detail.gk =data.szgk.id;
+				initgkSelect('gksel',jgzx.detail.gk,$('.szdselectpicker').val(),'showgq','80%');
+				initgqSelect('gqsel',jgzx.detail.gq,$('.szdselectpicker').val(),$('.gkselectpicker').val(),$('.gkselectpicker').val(),null,'100%');
+		    }, "json");
+		}
+		
+		function showgk(){
+			initgkSelect('gksel','${record.szgk }',$('.szdselectpicker').val(),"showgq",'80%');
+			showgq();
+		}
+
+		function showgq(){
+			initgqSelect('gqsel','${record.szgq }',$('.szdselectpicker').val(),$('.gkselectpicker').val(),null,'80%');
+		}
+		
+		function guanbipop(){
+			$('.theme-popover-mask').fadeOut(100);
+			$('.theme-popover').slideUp(0);
+		}
+		function ytsel(){
+			jgzx.detail.initZyhbwfl('zyhbwflsel', '',$('.bwytselectpicker').val()+"");
+		}
+	</script>
+
+</head>
+
+<body>
+<jsp:include page="../../jyrselect.jsp"></jsp:include>
+	<div class="box" >
+		<div class="box-content" >
+			<div class="apply_fill">
+ <form  id="addform" method="post" enctype="multipart/form-data"> 		
+ <input type="hidden" name="id" value="${record.id }">		
+ <input type="hidden" name="fjids" id="fjids">	
+					<table class="apply" cellpadding="0" cellspacing="0">
+						<tr>
+							<th><span class="needwrite">*</span>项目名称:&nbsp;</th>
+							<td colspan="4" >
+								<input type="text" style="width: 92.5%;" class="form-control" name="xmmc" value="${record.xmmc }">
+							</td>
+						</tr>
+						<tr>
+							<th><span class="needwrite">*</span>所属单位:&nbsp;</th>
+							<td colspan="4" style="position:relative;">
+								<input type="text" style="width: 92.5%;" readonly="readonly" class="form-control"  id ="jyrmc" value ="${jyr.gkjyr }">
+								<input type="hidden" class="form-control" name="ssjyrid" id ="jyrid" value ="${jyr.id }">
+								<c:if test="${jyr.id == null }">
+								<a class="btn btn-primary btn-sm" href="#"
+								 onclick="jyrselpop('jyrSel')"  
+								style="position:absolute;right:4px;top:4px;"> <i class="glyphicon"></i>选择
+									   </a>
+								</c:if> 
+							</td>
+						</tr>
+						<tr>
+						    <th><span class="needwrite">*</span>所在地:&nbsp;</th>
+							<td>
+								<span id="szdsel">
+								</span>
+							</td>
+							<th><span class="needwrite">*</span>所在港口:&nbsp;</th>
+							<td >
+								<span id="gksel">
+								</span>
+							</td>
+						</tr>
+						<tr>
+					    	<th><span class="needwrite">*</span>所在港区:&nbsp;</th>
+							<td >
+								<span id="gqsel">
+								</span>
+							</td>
+							<th><span class="needwrite">*</span>项目法人:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="xmfr" value="${record.xmfr }">
+							</td>
+						</tr>
+						<tr>
+						    <th><span class="needwrite">*</span>项目类型:&nbsp;</th>
+							<td >
+								<span id="xmlxsel">
+								</span>
+							</td>
+							<th><span class="needwrite">*</span>建设地点:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="jsdd" value="${record.jsdd }">
+							</td>
+						</tr>
+						<tr>
+					    	<th>建设规模:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="jsgm" value="${record.jsgm }">
+							</td>
+							<th>投资类型:&nbsp;</th>
+							<td>
+								<span id="tzlxsel">
+								</span>
+							</td>
+						</tr>
+						<tr>
+						    <th>总投资(万元):&nbsp;</th>
+							<td>
+								<input type="text" class="form-control" name="ztz" value="${record.ztz }">
+							</td>
+							<th>项目核准级别:&nbsp;</th>
+							<td>
+								<span id="xmhzjbsel">
+								</span>
+							</td>
+						</tr>
+						<tr>
+					    	<th>岸线审批级别:&nbsp;</th>
+							<td>
+								<span id="axspjbsel">
+								</span>
+							</td>
+							<th>岸线长度 (米):&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="axcd" value="${record.axcd }">
+							</td>
+						</tr>
+						<tr>
+					    	<th>泊位吨级(吨):&nbsp;</th>
+							<td>
+								<input type="text" class="form-control" name="bwdj" value="${record.bwdj }">
+							</td>
+							<th>通过能力(万吨):&nbsp;</th>
+							<td colspan="3">
+								<input type="text" class="form-control" name="tgnl" value="${record.tgnl }">
+							</td>
+						</tr>
+						
+						<tr>
+					 	    <th>泊位用途:&nbsp;</th>
+                        <td colspan="3">
+	                        <span id="bwytsel"></span>
+                        </td>
+                       
+						</tr>
+						
+				
+					</table>
+					
+
+					<div  id="buttons">
+                    	<a class="btn btn-default btn-sm" href="#" onclick="jgzx.detail.save()">
+							   <i class="glyphicon glyphicon-floppy-disk"></i> 
+							            保存</a>
+							            
+							<c:if test="${flag == '' || flag == null}">
+  
+					      <a class="btn btn-default btn-sm" href="#" onclick="jgzx.detail.submit()">
+							   <i class="glyphicon glyphicon-floppy-disk"></i> 
+							            提交</a>
+						</c:if>
+						<c:if test="${flag=='th'}">
+						<a class="btn btn-default btn-sm" href="#"  onclick="jgzx.detail.submitAudit()">
+						   <i class="glyphicon glyphicon-ok-sign"></i> 
+						            提交</a>
+						</c:if>     
+							             <a class="btn btn-default btn-sm" href="#"  onclick="jgzx.detail.back()">
+							   <i class="glyphicon glyphicon-arrow-left"></i> 
+							            返回</a>
+					</div>		              
+	</form>							            
+          			</div>
+			
+			</div>
+		</div>
+	
+</body>
+
+</html>

+ 183 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jgzx/jgzxmain.jsp

@@ -0,0 +1,183 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+	pageEncoding="UTF-8"%>
+
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <title>江苏省港口建设与经营管理信息系统</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <%@ include file="../../common.jsp"%>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jgzx/jgzxmain.js"></script>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jgzx/jgzxdetail.js"></script>
+	<script type="text/javascript">
+		$(document).ready(function () {
+			jgzx.main.init();
+			initXmhzjbSelect('xmhzjbsel','${xmhzjbid }','80%');
+			initszdSelect('szdsel','${szd }', 'showgk', '80%');
+			initgkSelect('gksel','${szgk }','${szd }','showgq','80%');
+			initgqSelect('gqsel','${szgq }','${szd }','${szgk }',null,'80%');
+			jgzx.main.initSfyzjbzsel('sfyzjbz','${sfyzjbz}','80%');
+			iFrameHeightIframe('${menuid}');//自适应高度
+		});
+		
+		function showgk(){
+			initgkSelect('gksel','${szgk }',$('.szdselectpicker').val(),"showgq",'80%');
+			showgq();
+		}
+
+		function showgq(){
+			initgqSelect('gqsel','${szgq }',$('.szdselectpicker').val(),$('.gkselectpicker').val(),null,'80%');
+		}
+	</script>
+</head>
+
+<body>
+	<div class="box" >
+		<div class="box-content" >
+<form action="${app }/jgzx/main" id="jgzxform" method="post"> 
+<input type="hidden" name="menuid" value="${menuid }">		
+
+			<div >
+				<table class="search_table" cellpadding="0" cellspacing="0">
+				    <tr>
+							<th width="12%"></th>
+						<th width="22%"></th>	
+						<th width="11%"></th>
+						<th width="22%"></th>
+						<th width="11%"></th>
+						<th width="22%"></th>
+					</tr>
+                    <tr>
+                        <td class="right">
+                         	项目名称:&nbsp;
+                         </td>
+                        <td >
+	                        	<input type="text" class="form-control" name="xmmc"  value="${xmmc }">
+                        </td>
+                   
+                        <td class="right">
+                         	项目法人:&nbsp;
+                        </td>
+                        <td>
+	                        	<input type="text" class="form-control" name="xmfr"  value="${xmfr }">
+                        </td>
+                        <td class="right">
+                         	项目核准级别:&nbsp;
+                        </td>
+						<td>
+			            	<span id="xmhzjbsel">
+							</span>
+			            </td>
+                        
+                     </tr>
+                     <tr>
+                        <td class="right">
+                         	所在地:&nbsp;
+                        </td>
+						<td>
+			            	<span id="szdsel">
+							</span>
+			            </td>
+                        <td class="right">
+                         	所在港口:&nbsp;
+                        </td>
+						<td>
+			            	<span id="gksel">
+							</span>
+			            </td>
+			            <td class="right">
+                         	所在港区:&nbsp;
+                        </td>
+						<td>
+			            	<span id="gqsel">
+							</span>
+			            </td>
+                       
+                    </tr>
+                    <tr>
+                   		<td class="right">是否有资金补助:&nbsp;</td>
+						<td>
+							<div id="sfyzjbz"></div>
+						</td>
+							<td class="right"></td>
+							<td></td>
+                     <td class="right" colspan="2">
+                         			 <a class="btn btn-default btn-sm" href="#" onclick="jgzx.main.search()">
+							   <i class="glyphicon glyphicon-search"></i> 
+							            查询</a>
+							         <a class="btn btn-default btn-sm" href="#"  onclick="jgzx.main.add()">
+							   <i class="glyphicon glyphicon-plus"></i> 
+							            新增</a>
+                     </td>
+                         
+                    </tr>
+				</table>
+			</div>
+			<!-- 列表 -->
+			<div  style="background-color:#f4f4f4;">
+				<table class="main_table" cellpadding="0" cellspacing="0">
+					<tr>
+						<th width="4%">序号</th>	
+						<th width="10%">项目名称</th>
+						<th width="10%">所在港口</th>
+						<th width="10%">所在港区</th>
+						<th width="10%">项目法人</th>
+						<th width="10%">项目类型</th>
+						<th width="10%">是否有资金补助</th>	
+						<th width="20%">操作</th>
+						 <th width="16%">办理</th>
+					</tr>
+					 <c:forEach items="${list}" var="jgzx" varStatus="status">
+						<tr class="tr_bg">
+							<td>${status.index+1 }</td>
+							<td>${jgzx.xmmc }</td>
+							<td>${jgzx.szgkzw }</td>
+							<td>${jgzx.szgqzw }</td>
+							<td>${jgzx.xmfr }</td>
+						    <td>${jgzx.xmlxzw }</td>
+						    <td>${jgzx.sfyzjbz }</td>
+							<td>
+								<a class="btn btn-default btn-xs" href="#" onclick="jgzx.main.view('${jgzx.id}')">
+							            <i class="glyphicon glyphicon-search"></i> 
+							            查看</a>
+							             <c:if test="${jgzx.recordStatus == 1 }">
+								 <a class="btn btn-default btn-xs" href="#"  onclick="jgzx.main.edit('${jgzx.id}')">
+									   <i class="glyphicon glyphicon-wrench"></i> 
+									          修改</a>
+									          <a class="btn btn-default btn-xs" href="#" onclick="jgzx.main.del('${jgzx.id}')">
+									   <i class="glyphicon glyphicon-trash"></i> 
+									         删除</a>
+									         </c:if>
+									<c:if test="${ jgzx.recordStatus  > 1 }">
+									<a class="btn btn-default btn-xs" href="#"
+									onclick="hisList('${jgzx.id}','jgzx')"> <i
+										class="glyphicon glyphicon-search"></i>流程历史
+									</a>
+								</c:if>
+					        </td>
+							<td >
+							 <c:if test="${jgzx.taskState =='Y'}">
+							 <a class="btn btn-default btn-xs" href="#"  onclick="jgzx.main.banli('${jgzx.id}')">
+									   <i class="glyphicon glyphicon-check"></i> 
+									          办理</a>
+							 </c:if>
+							  <c:if test="${jgzx.taskState =='TH'}">
+							 <a class="btn btn-default btn-xs" href="#"  onclick="jgzx.main.back('${jgzx.id}')">
+									   <i class="glyphicon glyphicon-check"></i> 
+									          办理</a>
+							 </c:if>
+							</td>
+						</tr>
+					</c:forEach>
+				</table>
+			</div>
+			<!-- 分页 -->
+			<jsp:include page="../../pageinfo.jsp"></jsp:include>
+			</form>	
+		</div>
+	<jsp:include page="../../showHistory.jsp"></jsp:include>
+	</div>
+</body>
+</html>

+ 218 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jgzx/jgzxview.jsp

@@ -0,0 +1,218 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+	pageEncoding="UTF-8"%>
+
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <title>江苏省港口建设与经营管理信息系统</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <%@ include file="../../common.jsp"%>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jgzx/jgzxdetail.js"></script>
+	<script type="text/javascript">
+		$(document).ready(function () {
+			jgzx.detail.taskKey="${taskKey}";
+			jgzx.detail.init();
+			$('.close').click(function(){
+				guanbi();
+			})
+		});
+		
+		function tanchu(){
+			//此处可以先进行ajax请求获取数据,然后再回掉中再显示弹出框
+			$('.theme-popover-mask').fadeIn(100);
+			$('.theme-popover').slideDown(0);
+		}
+		function guanbi(){
+			$('.theme-popover-mask').fadeOut(100);
+			$('.theme-popover').slideUp(0);
+		}
+		
+		function showRy(){
+			$('#selectrydiv').fadeIn(100);
+       		$('#selectry2div').slideDown(0);
+		}
+		
+		function showYj(){
+			$('.theme-popover-mask').fadeIn(100);
+       		$('.theme-popover').slideDown(0);
+		}
+	</script>
+
+</head>
+
+<body>
+	<div class="box" >
+		<div class="box-content" >
+			<div class="apply_fill">
+ <form  id="addform" method="post" enctype="multipart/form-data"> 	
+ <input type="hidden" id="userids"	name="userids"/>
+  <input type="hidden" id="yj"	name="yj"/>
+  <input type="hidden" id="accids" name="accids"/>
+					<table class="apply" cellpadding="0" cellspacing="0">
+						<tr>
+							<th>项目名称:&nbsp;</th>
+							<td colspan="4" >
+								${record.xmmc }
+							</td>
+						</tr>
+						<tr>
+							<th>所属单位:&nbsp;</th>
+							<td colspan="4" >
+								${jyr.gkjyr }
+							</td>
+						</tr>
+						<tr>
+						    <th>所在地:&nbsp;</th>
+							<td >
+								${record.szddzw }
+							</td>
+							<th>所在港口:&nbsp;</th>
+							<td>
+								${record.szgkzw }
+							</td>
+						</tr>
+						<tr>
+						    <th>所在港区:&nbsp;</th>
+							<td >
+								${record.szgqzw }
+							</td>
+							<th>项目法人:&nbsp;</th>
+							<td >
+								${record.xmfr }
+							</td>
+						</tr>
+						<tr>
+						    <th>项目类型:&nbsp;</th>
+							<td >
+								${record.xmlxzw }
+							</td>
+							<th>建设地点:&nbsp;</th>
+							<td >
+								${record.jsdd }
+							</td>
+						</tr>
+						<tr>
+						    <th>建设规模:&nbsp;</th>
+							<td >
+								${record.jsgm }
+							</td>
+							<th>投资类型:&nbsp;</th>
+							<td>
+								${record.tzlxzw }
+							</td>
+						</tr>
+						<tr>
+					    	<th>总投资 (万元):&nbsp;</th>
+							<td>
+								${record.ztz }
+							</td>
+							<th>项目核准级别:&nbsp;</th>
+							<td>
+								${record.xmhzjbzw }
+							</td>
+						</tr>
+						<tr>
+						    <th>岸线审批级别:&nbsp;</th>
+							<td >
+								${record.axspjbzw }
+							</td>
+							<th>岸线长度 (米):&nbsp;</th>
+							<td >
+								${record.axcd }
+							</td>
+						</tr>
+						<tr>
+						    <th>泊位吨级 (吨):&nbsp;</th>
+							<td >
+								${record.bwdj }
+							</td>
+							<th>通过能力(万吨):&nbsp;</th>
+							<td colspan="3">
+								${record.tgnl }
+							</td>
+						</tr>
+						
+						<tr>
+					    	<th>泊位用途:</th>
+                            <td colspan="3">
+                             ${record.bwytzw }
+                            </td>
+                           
+                       </tr>
+                       <tr>
+                       		<th>专家评审附件</th>
+                       		<td colspan="3">
+                       		
+                       		 <c:if test="${ taskKey == 'zjps'  }"> 
+	                        	<a href="#" class="file">上传<input type="file" name="file" id="fjid" onchange="jgzx.detail.submitFile()"/></a>
+	                         </c:if> 
+		                       		 
+							<table  id="tableId" style="width: 100%">
+								<tr align="center">
+								<td style="width:40%;text-align: center;">上传附件名称</td>
+								   <c:if test="${ taskKey == 'zjps'  }"> 
+								<td style="width:15%;text-align: center;">操作</td>
+								</c:if>
+								</tr>
+								<c:forEach items="${fjlist }" var="fj" varStatus="status">
+								<tr align="center">
+								<td><a class='main_title' href='/jsjy/accessory/download?id=${fj.fjid }'>${fj.fjmc }</a></td>
+								  <c:if test="${ taskKey == 'zjps'  }"> 
+								<td><a class="btn btn-default btn-xs" href="#" onclick="jgzx.detail.delFj('${fj.id}',this)">删除</a></td>
+								</c:if>
+								</tr>
+								</c:forEach>
+                       		</table>
+                       		</td>
+                       </tr>
+                       
+                       <c:forEach items="${list}" var="list" begin="1" varStatus="status">
+                       <tr>
+                       <th> ${list.currName }</th>
+                       
+                       		<td colspan="3">${list.yj }</td>
+                      
+                       </tr>
+                       </c:forEach>
+					</table>
+</form>
+
+					<div  id="buttons">
+					
+					<c:if test="${opflag == 5 || opflag == 9}">
+				
+					 <a class="btn btn-default btn-sm" href="#"  onclick="showRy()">
+							   <i class="glyphicon glyphicon-ok-sign"></i> 
+							            选择科室人员</a>
+					</c:if>
+					<c:if test="${flag=='audit' }">
+					
+					<a class="btn btn-default btn-sm" href="#"  onclick="showYj()">
+							   <i class="glyphicon glyphicon-ok-sign"></i> 
+							            意见</a>
+					
+					 <a class="btn btn-default btn-sm" href="#"  onclick="jgzx.detail.audit('Y','${record.id}')">
+							   <i class="glyphicon glyphicon-ok-sign"></i> 
+							            同意</a>
+						<a class="btn btn-default btn-sm" href="#"  onclick="jgzx.detail.audit('N','${record.id}')">
+							   <i class="glyphicon glyphicon-ban-circle"></i> 
+							            退回</a>
+				          
+					</c:if>
+					
+							             <a class="btn btn-default btn-sm" href="#"  onclick="jgzx.detail.back()">
+							   <i class="glyphicon glyphicon-arrow-left"></i> 
+							            返回</a>
+							           
+          			</div>
+			
+			</div>
+		</div>
+</div>
+<jsp:include page="../../showRy.jsp"></jsp:include>
+<jsp:include page="../../showViewOption.jsp"></jsp:include>
+</body>
+
+</html>

+ 215 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jsjdbg/jsjdbgedit.jsp

@@ -0,0 +1,215 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+	pageEncoding="UTF-8"%>
+
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <title>江苏省港口建设与经营管理信息系统</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <%@ include file="../../common.jsp"%>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jsjdbg/jsjdbgdetail.js"></script>
+	<script type="text/javascript">
+		$(document).ready(function () {
+			jsjdbg.detail.init();
+			var id = '${jyr.id}';
+			if(!isEmpty(id)){
+				jsjdbg.detail.szd ='${jyr.szd.id}';
+				jsjdbg.detail.gq ='${jyr.szgq.id}'
+				jsjdbg.detail.gk ='${jyr.szgk.id}'
+			}
+			initXmlxSelect('xmlxsel', '${record.xmlx }', '80%');
+			initTzlxSelect('tzlxsel', '${record.tzlx }', '80%');
+			initXmhzjbSelect('xmhzjbsel', '${record.xmhzjb }', '80%');
+			initAxspjbSelect('axspjbsel', '${record.axspjb }', '80%');
+			initszdSelect('szdsel', jsjdbg.detail.szd, 'showgk', '80%');
+			initgkSelect('gksel',jsjdbg.detail.gk,jsjdbg.detail.szd,'showgq','80%');
+			initgqSelect('gqsel',jsjdbg.detail.gq,jsjdbg.detail.szd,jsjdbg.detail.gk,null,'80%');
+			jsjdbg.detail.initBwyt('bwytsel', '${record.bwyt }');
+			jsjdbg.detail.initZyhbwfl('zyhbwflsel', '${record.zyhbwfl }','${record.bwyt }');
+		});
+		function jyrSel(jyrid){
+			guanbipop();
+			$.post($.app + "/gkjyr/findById", {
+				id:jyrid
+		    }, function(data) {
+		    	//返回的是经营人实体,你可以在回掉中,进行任何其他字段的默认填写
+		    	$('#jyrid').val(data.id);
+		    	$('#jyrmc').val(data.gkjyr);
+		    	$('#xmfr').val(data.fddbr);
+		    	jsjdbg.detail.szd =data.szd.id;
+				jsjdbg.detail.gq =data.szgq.id;
+				jsjdbg.detail.gk =data.szgk.id;
+				initgkSelect('gksel',jsjdbg.detail.gk,$('.szdselectpicker').val(),'showgq','80%');
+				initgqSelect('gqsel',jsjdbg.detail.gq,$('.szdselectpicker').val(),$('.gkselectpicker').val(),$('.gkselectpicker').val(),null,'100%');
+		    }, "json");
+		}
+		
+		function showgk(){
+			initgkSelect('gksel','${record.szgk }',$('.szdselectpicker').val(),"showgq",'80%');
+			showgq();
+		}
+
+		function showgq(){
+			initgqSelect('gqsel','${record.szgq }',$('.szdselectpicker').val(),$('.gkselectpicker').val(),null,'80%');
+		}
+		
+		function guanbipop(){
+			$('.theme-popover-mask').fadeOut(100);
+			$('.theme-popover').slideUp(0);
+		}
+		function ytsel(){
+			jsjdbg.detail.initZyhbwfl('zyhbwflsel', '',$('.bwytselectpicker').val()+"");
+		}
+	</script>
+
+</head>
+
+<body>
+<jsp:include page="../../jyrselect.jsp"></jsp:include>
+	<div class="box" >
+		<div class="box-content" >
+			<div class="apply_fill">
+ <form  id="addform" method="post" enctype="multipart/form-data"> 		
+ <input type="hidden" name="id" value="${record.id }">		
+ <input type="hidden" name="fjids" id="fjids">	
+					<table class="apply" cellpadding="0" cellspacing="0">
+						<tr>
+							<th><span class="needwrite">*</span>项目名称:&nbsp;</th>
+							<td colspan="4" >
+								<input type="text" style="width: 92.5%;" class="form-control" name="xmmc" value="${record.xmmc }">
+							</td>
+						</tr>
+						<tr>
+							<th><span class="needwrite">*</span>所属单位:&nbsp;</th>
+							<td colspan="4" style="position:relative;">
+								<input type="text" style="width: 92.5%;" readonly="readonly" class="form-control"  id ="jyrmc" value ="${jyr.gkjyr }">
+								<input type="hidden" class="form-control" name="ssjyrid" id ="jyrid" value ="${jyr.id }">
+								<c:if test="${jyr.id == null }">
+								<a class="btn btn-primary btn-sm" href="#"
+								 onclick="jyrselpop('jyrSel')"  
+								style="position:absolute;right:4px;top:4px;"> <i class="glyphicon"></i>选择
+									   </a>
+								</c:if> 
+							</td>
+						</tr>
+						<tr>
+						    <th><span class="needwrite">*</span>所在地:&nbsp;</th>
+							<td>
+								<span id="szdsel">
+								</span>
+							</td>
+							<th><span class="needwrite">*</span>所在港口:&nbsp;</th>
+							<td >
+								<span id="gksel">
+								</span>
+							</td>
+						</tr>
+						<tr>
+					    	<th><span class="needwrite">*</span>所在港区:&nbsp;</th>
+							<td >
+								<span id="gqsel">
+								</span>
+							</td>
+							<th><span class="needwrite">*</span>项目法人:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="xmfr" value="${record.xmfr }">
+							</td>
+						</tr>
+						<tr>
+						    <th><span class="needwrite">*</span>项目类型:&nbsp;</th>
+							<td >
+								<span id="xmlxsel">
+								</span>
+							</td>
+							<th><span class="needwrite">*</span>建设地点:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="jsdd" value="${record.jsdd }">
+							</td>
+						</tr>
+						<tr>
+					    	<th>建设规模:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="jsgm" value="${record.jsgm }">
+							</td>
+							<th>投资类型:&nbsp;</th>
+							<td>
+								<span id="tzlxsel">
+								</span>
+							</td>
+						</tr>
+						<tr>
+						    <th>总投资(万元):&nbsp;</th>
+							<td>
+								<input type="text" class="form-control" name="ztz" value="${record.ztz }">
+							</td>
+							<th>项目核准级别:&nbsp;</th>
+							<td>
+								<span id="xmhzjbsel">
+								</span>
+							</td>
+						</tr>
+						<tr>
+					    	<th>岸线审批级别:&nbsp;</th>
+							<td>
+								<span id="axspjbsel">
+								</span>
+							</td>
+							<th>岸线长度 (米):&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="axcd" value="${record.axcd }">
+							</td>
+						</tr>
+						<tr>
+					    	<th>泊位吨级(吨):&nbsp;</th>
+							<td>
+								<input type="text" class="form-control" name="bwdj" value="${record.bwdj }">
+							</td>
+							<th>通过能力(万吨):&nbsp;</th>
+							<td colspan="3">
+								<input type="text" class="form-control" name="tgnl" value="${record.tgnl }">
+							</td>
+						</tr>
+						
+						<tr>
+					 	    <th>泊位用途:&nbsp;</th>
+                        <td colspan="3">
+	                        <span id="bwytsel"></span>
+                        </td>
+                       
+						</tr>
+						
+				
+					</table>
+					
+
+					<div  id="buttons">
+                    	<a class="btn btn-default btn-sm" href="#" onclick="jsjdbg.detail.save()">
+							   <i class="glyphicon glyphicon-floppy-disk"></i> 
+							            保存</a>
+							            
+							<c:if test="${flag == '' || flag == null}">
+  
+					      <a class="btn btn-default btn-sm" href="#" onclick="jsjdbg.detail.submit()">
+							   <i class="glyphicon glyphicon-floppy-disk"></i> 
+							            提交</a>
+						</c:if>
+						<c:if test="${flag=='th'}">
+						<a class="btn btn-default btn-sm" href="#"  onclick="jsjdbg.detail.submitAudit()">
+						   <i class="glyphicon glyphicon-ok-sign"></i> 
+						            提交</a>
+						</c:if>     
+							             <a class="btn btn-default btn-sm" href="#"  onclick="jsjdbg.detail.back()">
+							   <i class="glyphicon glyphicon-arrow-left"></i> 
+							            返回</a>
+					</div>		              
+	</form>							            
+          			</div>
+			
+			</div>
+		</div>
+	
+</body>
+
+</html>

+ 183 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jsjdbg/jsjdbgmain.jsp

@@ -0,0 +1,183 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+	pageEncoding="UTF-8"%>
+
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <title>江苏省港口建设与经营管理信息系统</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <%@ include file="../../common.jsp"%>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jsjdbg/jsjdbgmain.js"></script>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jsjdbg/jsjdbgdetail.js"></script>
+	<script type="text/javascript">
+		$(document).ready(function () {
+			jsjdbg.main.init();
+			initXmhzjbSelect('xmhzjbsel','${xmhzjbid }','80%');
+			initszdSelect('szdsel','${szd }', 'showgk', '80%');
+			initgkSelect('gksel','${szgk }','${szd }','showgq','80%');
+			initgqSelect('gqsel','${szgq }','${szd }','${szgk }',null,'80%');
+			jsjdbg.main.initSfyzjbzsel('sfyzjbz','${sfyzjbz}','80%');
+			iFrameHeightIframe('${menuid}');//自适应高度
+		});
+		
+		function showgk(){
+			initgkSelect('gksel','${szgk }',$('.szdselectpicker').val(),"showgq",'80%');
+			showgq();
+		}
+
+		function showgq(){
+			initgqSelect('gqsel','${szgq }',$('.szdselectpicker').val(),$('.gkselectpicker').val(),null,'80%');
+		}
+	</script>
+</head>
+
+<body>
+	<div class="box" >
+		<div class="box-content" >
+<form action="${app }/jsjdbg/main" id="jsjdbgform" method="post"> 
+<input type="hidden" name="menuid" value="${menuid }">		
+
+			<div >
+				<table class="search_table" cellpadding="0" cellspacing="0">
+				    <tr>
+							<th width="12%"></th>
+						<th width="22%"></th>	
+						<th width="11%"></th>
+						<th width="22%"></th>
+						<th width="11%"></th>
+						<th width="22%"></th>
+					</tr>
+                    <tr>
+                        <td class="right">
+                         	项目名称:&nbsp;
+                         </td>
+                        <td >
+	                        	<input type="text" class="form-control" name="xmmc"  value="${xmmc }">
+                        </td>
+                   
+                        <td class="right">
+                         	项目法人:&nbsp;
+                        </td>
+                        <td>
+	                        	<input type="text" class="form-control" name="xmfr"  value="${xmfr }">
+                        </td>
+                        <td class="right">
+                         	项目核准级别:&nbsp;
+                        </td>
+						<td>
+			            	<span id="xmhzjbsel">
+							</span>
+			            </td>
+                        
+                     </tr>
+                     <tr>
+                        <td class="right">
+                         	所在地:&nbsp;
+                        </td>
+						<td>
+			            	<span id="szdsel">
+							</span>
+			            </td>
+                        <td class="right">
+                         	所在港口:&nbsp;
+                        </td>
+						<td>
+			            	<span id="gksel">
+							</span>
+			            </td>
+			            <td class="right">
+                         	所在港区:&nbsp;
+                        </td>
+						<td>
+			            	<span id="gqsel">
+							</span>
+			            </td>
+                       
+                    </tr>
+                    <tr>
+                   		<td class="right">是否有资金补助:&nbsp;</td>
+						<td>
+							<div id="sfyzjbz"></div>
+						</td>
+							<td class="right"></td>
+							<td></td>
+                     <td class="right" colspan="2">
+                         			 <a class="btn btn-default btn-sm" href="#" onclick="jsjdbg.main.search()">
+							   <i class="glyphicon glyphicon-search"></i> 
+							            查询</a>
+							         <a class="btn btn-default btn-sm" href="#"  onclick="jsjdbg.main.add()">
+							   <i class="glyphicon glyphicon-plus"></i> 
+							            新增</a>
+                     </td>
+                         
+                    </tr>
+				</table>
+			</div>
+			<!-- 列表 -->
+			<div  style="background-color:#f4f4f4;">
+				<table class="main_table" cellpadding="0" cellspacing="0">
+					<tr>
+						<th width="4%">序号</th>	
+						<th width="10%">项目名称</th>
+						<th width="10%">所在港口</th>
+						<th width="10%">所在港区</th>
+						<th width="10%">项目法人</th>
+						<th width="10%">项目类型</th>
+						<th width="10%">是否有资金补助</th>	
+						<th width="20%">操作</th>
+						 <th width="16%">办理</th>
+					</tr>
+					 <c:forEach items="${list}" var="jsjdbg" varStatus="status">
+						<tr class="tr_bg">
+							<td>${status.index+1 }</td>
+							<td>${jsjdbg.xmmc }</td>
+							<td>${jsjdbg.szgkzw }</td>
+							<td>${jsjdbg.szgqzw }</td>
+							<td>${jsjdbg.xmfr }</td>
+						    <td>${jsjdbg.xmlxzw }</td>
+						    <td>${jsjdbg.sfyzjbz }</td>
+							<td>
+								<a class="btn btn-default btn-xs" href="#" onclick="jsjdbg.main.view('${jsjdbg.id}')">
+							            <i class="glyphicon glyphicon-search"></i> 
+							            查看</a>
+							             <c:if test="${jsjdbg.recordStatus == 1 }">
+								 <a class="btn btn-default btn-xs" href="#"  onclick="jsjdbg.main.edit('${jsjdbg.id}')">
+									   <i class="glyphicon glyphicon-wrench"></i> 
+									          修改</a>
+									          <a class="btn btn-default btn-xs" href="#" onclick="jsjdbg.main.del('${jsjdbg.id}')">
+									   <i class="glyphicon glyphicon-trash"></i> 
+									         删除</a>
+									         </c:if>
+									<c:if test="${ jsjdbg.recordStatus  > 1 }">
+									<a class="btn btn-default btn-xs" href="#"
+									onclick="hisList('${jsjdbg.id}','jsjdbg')"> <i
+										class="glyphicon glyphicon-search"></i>流程历史
+									</a>
+								</c:if>
+					        </td>
+							<td >
+							 <c:if test="${jsjdbg.taskState =='Y'}">
+							 <a class="btn btn-default btn-xs" href="#"  onclick="jsjdbg.main.banli('${jsjdbg.id}')">
+									   <i class="glyphicon glyphicon-check"></i> 
+									          办理</a>
+							 </c:if>
+							  <c:if test="${jsjdbg.taskState =='TH'}">
+							 <a class="btn btn-default btn-xs" href="#"  onclick="jsjdbg.main.back('${jsjdbg.id}')">
+									   <i class="glyphicon glyphicon-check"></i> 
+									          办理</a>
+							 </c:if>
+							</td>
+						</tr>
+					</c:forEach>
+				</table>
+			</div>
+			<!-- 分页 -->
+			<jsp:include page="../../pageinfo.jsp"></jsp:include>
+			</form>	
+		</div>
+	<jsp:include page="../../showHistory.jsp"></jsp:include>
+	</div>
+</body>
+</html>

+ 218 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jsjdbg/jsjdbgview.jsp

@@ -0,0 +1,218 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+	pageEncoding="UTF-8"%>
+
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <title>江苏省港口建设与经营管理信息系统</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <%@ include file="../../common.jsp"%>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jsjdbg/jsjdbgdetail.js"></script>
+	<script type="text/javascript">
+		$(document).ready(function () {
+			jsjdbg.detail.taskKey="${taskKey}";
+			jsjdbg.detail.init();
+			$('.close').click(function(){
+				guanbi();
+			})
+		});
+		
+		function tanchu(){
+			//此处可以先进行ajax请求获取数据,然后再回掉中再显示弹出框
+			$('.theme-popover-mask').fadeIn(100);
+			$('.theme-popover').slideDown(0);
+		}
+		function guanbi(){
+			$('.theme-popover-mask').fadeOut(100);
+			$('.theme-popover').slideUp(0);
+		}
+		
+		function showRy(){
+			$('#selectrydiv').fadeIn(100);
+       		$('#selectry2div').slideDown(0);
+		}
+		
+		function showYj(){
+			$('.theme-popover-mask').fadeIn(100);
+       		$('.theme-popover').slideDown(0);
+		}
+	</script>
+
+</head>
+
+<body>
+	<div class="box" >
+		<div class="box-content" >
+			<div class="apply_fill">
+ <form  id="addform" method="post" enctype="multipart/form-data"> 	
+ <input type="hidden" id="userids"	name="userids"/>
+  <input type="hidden" id="yj"	name="yj"/>
+  <input type="hidden" id="accids" name="accids"/>
+					<table class="apply" cellpadding="0" cellspacing="0">
+						<tr>
+							<th>项目名称:&nbsp;</th>
+							<td colspan="4" >
+								${record.xmmc }
+							</td>
+						</tr>
+						<tr>
+							<th>所属单位:&nbsp;</th>
+							<td colspan="4" >
+								${jyr.gkjyr }
+							</td>
+						</tr>
+						<tr>
+						    <th>所在地:&nbsp;</th>
+							<td >
+								${record.szddzw }
+							</td>
+							<th>所在港口:&nbsp;</th>
+							<td>
+								${record.szgkzw }
+							</td>
+						</tr>
+						<tr>
+						    <th>所在港区:&nbsp;</th>
+							<td >
+								${record.szgqzw }
+							</td>
+							<th>项目法人:&nbsp;</th>
+							<td >
+								${record.xmfr }
+							</td>
+						</tr>
+						<tr>
+						    <th>项目类型:&nbsp;</th>
+							<td >
+								${record.xmlxzw }
+							</td>
+							<th>建设地点:&nbsp;</th>
+							<td >
+								${record.jsdd }
+							</td>
+						</tr>
+						<tr>
+						    <th>建设规模:&nbsp;</th>
+							<td >
+								${record.jsgm }
+							</td>
+							<th>投资类型:&nbsp;</th>
+							<td>
+								${record.tzlxzw }
+							</td>
+						</tr>
+						<tr>
+					    	<th>总投资 (万元):&nbsp;</th>
+							<td>
+								${record.ztz }
+							</td>
+							<th>项目核准级别:&nbsp;</th>
+							<td>
+								${record.xmhzjbzw }
+							</td>
+						</tr>
+						<tr>
+						    <th>岸线审批级别:&nbsp;</th>
+							<td >
+								${record.axspjbzw }
+							</td>
+							<th>岸线长度 (米):&nbsp;</th>
+							<td >
+								${record.axcd }
+							</td>
+						</tr>
+						<tr>
+						    <th>泊位吨级 (吨):&nbsp;</th>
+							<td >
+								${record.bwdj }
+							</td>
+							<th>通过能力(万吨):&nbsp;</th>
+							<td colspan="3">
+								${record.tgnl }
+							</td>
+						</tr>
+						
+						<tr>
+					    	<th>泊位用途:</th>
+                            <td colspan="3">
+                             ${record.bwytzw }
+                            </td>
+                           
+                       </tr>
+                       <tr>
+                       		<th>专家评审附件</th>
+                       		<td colspan="3">
+                       		
+                       		 <c:if test="${ taskKey == 'zjps'  }"> 
+	                        	<a href="#" class="file">上传<input type="file" name="file" id="fjid" onchange="jsjdbg.detail.submitFile()"/></a>
+	                         </c:if> 
+		                       		 
+							<table  id="tableId" style="width: 100%">
+								<tr align="center">
+								<td style="width:40%;text-align: center;">上传附件名称</td>
+								   <c:if test="${ taskKey == 'zjps'  }"> 
+								<td style="width:15%;text-align: center;">操作</td>
+								</c:if>
+								</tr>
+								<c:forEach items="${fjlist }" var="fj" varStatus="status">
+								<tr align="center">
+								<td><a class='main_title' href='/jsjy/accessory/download?id=${fj.fjid }'>${fj.fjmc }</a></td>
+								  <c:if test="${ taskKey == 'zjps'  }"> 
+								<td><a class="btn btn-default btn-xs" href="#" onclick="jsjdbg.detail.delFj('${fj.id}',this)">删除</a></td>
+								</c:if>
+								</tr>
+								</c:forEach>
+                       		</table>
+                       		</td>
+                       </tr>
+                       
+                       <c:forEach items="${list}" var="list" begin="1" varStatus="status">
+                       <tr>
+                       <th> ${list.currName }</th>
+                       
+                       		<td colspan="3">${list.yj }</td>
+                      
+                       </tr>
+                       </c:forEach>
+					</table>
+</form>
+
+					<div  id="buttons">
+					
+					<c:if test="${opflag == 5 || opflag == 9}">
+				
+					 <a class="btn btn-default btn-sm" href="#"  onclick="showRy()">
+							   <i class="glyphicon glyphicon-ok-sign"></i> 
+							            选择科室人员</a>
+					</c:if>
+					<c:if test="${flag=='audit' }">
+					
+					<a class="btn btn-default btn-sm" href="#"  onclick="showYj()">
+							   <i class="glyphicon glyphicon-ok-sign"></i> 
+							            意见</a>
+					
+					 <a class="btn btn-default btn-sm" href="#"  onclick="jsjdbg.detail.audit('Y','${record.id}')">
+							   <i class="glyphicon glyphicon-ok-sign"></i> 
+							            同意</a>
+						<a class="btn btn-default btn-sm" href="#"  onclick="jsjdbg.detail.audit('N','${record.id}')">
+							   <i class="glyphicon glyphicon-ban-circle"></i> 
+							            退回</a>
+				          
+					</c:if>
+					
+							             <a class="btn btn-default btn-sm" href="#"  onclick="jsjdbg.detail.back()">
+							   <i class="glyphicon glyphicon-arrow-left"></i> 
+							            返回</a>
+							           
+          			</div>
+			
+			</div>
+		</div>
+</div>
+<jsp:include page="../../showRy.jsp"></jsp:include>
+<jsp:include page="../../showViewOption.jsp"></jsp:include>
+</body>
+
+</html>

+ 208 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jsjdcbsj/jsjdcbsjadd.jsp

@@ -0,0 +1,208 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+	pageEncoding="UTF-8"%>
+
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <title>江苏省港口建设与经营管理信息系统</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <%@ include file="../../common.jsp"%>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jsjdcbsj/jsjdcbsjdetail.js"></script>
+	<script type="text/javascript">
+		$(document).ready(function () {
+			jsjdcbsj.detail.init();
+			var id = '${jyr.id}';
+			if(!isEmpty(id)){
+				jsjdcbsj.detail.szd ='${jyr.szd.id}';
+				jsjdcbsj.detail.gq ='${jyr.szgq.id}';
+				jsjdcbsj.detail.gk ='${jyr.szgk.id}';
+			}else{
+				jsjdcbsj.detail.szd ='${sz}';
+				jsjdcbsj.detail.gk ='${gk}';
+				
+			}
+			//项目类型默认新建
+				initXmlxSelect('xmlxsel','2201','80%');
+			//投资类型默认企业投资
+				initTzlxSelect('tzlxsel','1902','80%');
+				initXmhzjbSelect('xmhzjbsel','','80%');
+				initAxspjbSelect('axspjbsel','','80%');
+				jsjdcbsj.detail.initBwyt('bwytsel', '');
+				jsjdcbsj.detail.initZyhbwfl('zyhbwflsel', '','');
+				initszdSelect('szdsel', jsjdcbsj.detail.szd, 'showgk', '80%');
+				initgkSelect('gksel',jsjdcbsj.detail.gk,jsjdcbsj.detail.szd,'showgq','80%');
+				initgqSelect('gqsel',jsjdcbsj.detail.gq,jsjdcbsj.detail.szd,jsjdcbsj.detail.gk,null,'80%');
+			/* $('.close').click(function(){
+				guanbi();
+			}) */
+		});
+		
+		function showgk(){
+			initgkSelect('gksel',jsjdcbsj.detail.gk,$('.szdselectpicker').val(),"showgq",'80%');
+			showgq();
+		}
+
+		function showgq(){
+			initgqSelect('gqsel',jsjdcbsj.detail.gq,$('.szdselectpicker').val(),$('.gkselectpicker').val(),null,'80%');
+		} 
+			 
+		function jyrSel(jyrid){
+			guanbipop();
+			$.post($.app + "/gkjyr/findById", {
+				id:jyrid
+		    }, function(data) {
+		    	//返回的是经营人实体,你可以在回掉中,进行任何其他字段的默认填写
+		    	$('#jyrid').val(data.id);
+		    	$('#jyrmc').val(data.gkjyr);
+		    	$('#xmfr').val(data.fddbr);
+		    	jsjdcbsj.detail.szd =data.szd.id;
+				jsjdcbsj.detail.gq =data.szgq.id;
+				jsjdcbsj.detail.gk =data.szgk.id;
+				initszdSelect('szdsel', jsjdcbsj.detail.szd, 'showgk', '80%');
+				initgkSelect('gksel',jsjdcbsj.detail.gk,jsjdcbsj.detail.szd,'showgq','80%');
+				initgqSelect('gqsel',jsjdcbsj.detail.gq,jsjdcbsj.detail.szd,jsjdcbsj.detail.gk,null,'80%');
+		    }, "json");
+		}
+		
+		function ytsel(){
+			jsjdcbsj.detail.initZyhbwfl('zyhbwflsel', '',$('.bwytselectpicker').val()+"");
+		}
+	</script>
+</head>
+
+<body>
+<jsp:include page="../../jyrselect.jsp"></jsp:include>
+	<div class="box" >
+		<div class="box-content" >
+			<div class="apply_fill">
+ <form  id="addform" method="post" enctype="multipart/form-data"> 			
+ <input type="hidden" class="form-control"  name="fjids" id="fjids">
+					<table class="apply" cellpadding="0" cellspacing="0">
+						<tr>
+							<th><span class="needwrite">*</span>项目名称:&nbsp;</th>
+							<td colspan="4">
+								<input type="text" style="width: 92.5%;" class="form-control" name="xmmc">
+							</td>
+						</tr>
+						<tr>
+							<th><span class="needwrite">*</span>所属单位:&nbsp;</th>
+							<td colspan="4" style="position:relative;">
+								<input type="text" style="width: 92.5%;" readonly="readonly" class="form-control"  id ="jyrmc" value ="${jyr.gkjyr }">
+								<input type="hidden" class="form-control" name="ssjyrid" id ="jyrid"  value ="${jyr.id }">
+								<c:if test="${jyr.id == null }">
+										<a class="btn btn-primary btn-sm" href="#"
+										 onclick="jyrselpop('jyrSel')"  
+										style="position:absolute;right:4px;top:4px;"> <i class="glyphicon"></i>选择
+									    </a>
+							    </c:if> 
+							</td>
+						</tr>
+						<tr>
+						    <th><span class="needwrite">*</span>所在地:&nbsp;</th>
+							<td>
+								<div id="szdsel"></div>
+							</td>
+							<th><span class="needwrite">*</span>所在港口:&nbsp;</th>
+							<td >
+								<div id="gksel"></div>
+							</td>
+						</tr>
+						<tr>
+						    <th><span class="needwrite">*</span>所在港区:&nbsp;</th>
+						 	<td >
+								<div id="gqsel"></div>
+							</td>
+							<th><span class="needwrite">*</span>项目法人:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="xmfr" id="xmfr">
+							</td>
+						</tr>
+						<tr>
+						    <th><span class="needwrite">*</span>项目类型:&nbsp;</th>
+							<td >
+								<div id="xmlxsel"></div>
+							</td>
+							<th><span class="needwrite">*</span>建设地点:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="jsdd">
+							</td>
+						</tr>
+						<tr>
+						    <th>建设规模:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="jsgm">
+							</td>
+							<th>投资类型:&nbsp;</th>
+							<td >
+								<div id="tzlxsel"></div>
+							</td>
+						</tr>
+						<tr>
+						    <th>总投资 (万元):&nbsp;</th>
+							<td>
+								<input type="text" class="form-control" name="ztz">
+							</td>
+     						<th>项目核准级别:&nbsp;</th>
+							<td>
+							   <div id="xmhzjbsel"></div>
+							</td>
+						</tr>
+						<tr>
+						    <th>岸线审批级别:&nbsp;</th>
+							<td >
+								<div id="axspjbsel"></div>
+							</td>
+							<th>岸线长度 (米):&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="axcd">
+							</td>
+						</tr>
+						<tr>
+						    <th>泊位吨级 (吨):&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="bwdj">
+							</td>
+							<th>通过能力(万吨):&nbsp;</th>
+							<td colspan="3">
+								<input type="text" class="form-control" name="tgnl">
+							</td>
+						</tr>
+						
+						<tr>
+					 	    <th>泊位用途:&nbsp;</th>
+                        <td colspan="3">
+	                        <span id="bwytsel"></span>
+                        </td>
+                       
+                        <!-- <th>专业化泊位分类:&nbsp;</th>
+                        <td>
+	                        <span id="zyhbwflsel"></span>
+                        </td> -->
+						</tr>
+						
+					</table>
+				
+					<div  id="buttons">
+                    	<a class="btn btn-default btn-sm" href="#" onclick="jsjdcbsj.detail.save()">
+							   <i class="glyphicon glyphicon-floppy-disk"></i> 
+							            保存</a>
+							            
+							            <a class="btn btn-default btn-sm" href="#" onclick="jsjdcbsj.detail.submit()">
+							   <i class="glyphicon glyphicon-floppy-disk"></i> 
+							            提交</a>
+							            
+							             <a class="btn btn-default btn-sm" href="#"  onclick="jsjdcbsj.detail.back()">
+							   <i class="glyphicon glyphicon-arrow-left"></i> 
+							           返回</a>
+							            
+          			</div>
+	</form>
+				</div>
+		</div>
+
+</div>
+</body>
+
+</html>

+ 183 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jsjdcbsj/jsjdcbsjmain.jsp

@@ -0,0 +1,183 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+	pageEncoding="UTF-8"%>
+
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <title>江苏省港口建设与经营管理信息系统</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <%@ include file="../../common.jsp"%>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jsjdcbsj/jsjdcbsjmain.js"></script>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jsjdcbsj/jsjdcbsjdetail.js"></script>
+	<script type="text/javascript">
+		$(document).ready(function () {
+			jsjdcbsj.main.init();
+			initXmhzjbSelect('xmhzjbsel','${xmhzjbid }','80%');
+			initszdSelect('szdsel','${szd }', 'showgk', '80%');
+			initgkSelect('gksel','${szgk }','${szd }','showgq','80%');
+			initgqSelect('gqsel','${szgq }','${szd }','${szgk }',null,'80%');
+			jsjdcbsj.main.initSfyzjbzsel('sfyzjbz','${sfyzjbz}','80%');
+			iFrameHeightIframe('${menuid}');//自适应高度
+		});
+		
+		function showgk(){
+			initgkSelect('gksel','${szgk }',$('.szdselectpicker').val(),"showgq",'80%');
+			showgq();
+		}
+
+		function showgq(){
+			initgqSelect('gqsel','${szgq }',$('.szdselectpicker').val(),$('.gkselectpicker').val(),null,'80%');
+		}
+	</script>
+</head>
+
+<body>
+	<div class="box" >
+		<div class="box-content" >
+<form action="${app }/jsjdcbsj/main" id="jsjdcbsjform" method="post"> 
+<input type="hidden" name="menuid" value="${menuid }">		
+
+			<div >
+				<table class="search_table" cellpadding="0" cellspacing="0">
+				    <tr>
+							<th width="12%"></th>
+						<th width="22%"></th>	
+						<th width="11%"></th>
+						<th width="22%"></th>
+						<th width="11%"></th>
+						<th width="22%"></th>
+					</tr>
+                    <tr>
+                        <td class="right">
+                         	项目名称:&nbsp;
+                         </td>
+                        <td >
+	                        	<input type="text" class="form-control" name="xmmc"  value="${xmmc }">
+                        </td>
+                   
+                        <td class="right">
+                         	项目法人:&nbsp;
+                        </td>
+                        <td>
+	                        	<input type="text" class="form-control" name="xmfr"  value="${xmfr }">
+                        </td>
+                        <td class="right">
+                         	项目核准级别:&nbsp;
+                        </td>
+						<td>
+			            	<span id="xmhzjbsel">
+							</span>
+			            </td>
+                        
+                     </tr>
+                     <tr>
+                        <td class="right">
+                         	所在地:&nbsp;
+                        </td>
+						<td>
+			            	<span id="szdsel">
+							</span>
+			            </td>
+                        <td class="right">
+                         	所在港口:&nbsp;
+                        </td>
+						<td>
+			            	<span id="gksel">
+							</span>
+			            </td>
+			            <td class="right">
+                         	所在港区:&nbsp;
+                        </td>
+						<td>
+			            	<span id="gqsel">
+							</span>
+			            </td>
+                       
+                    </tr>
+                    <tr>
+                   		<td class="right"></td>
+						<td>
+							
+						</td>
+							<td class="right"></td>
+							<td></td>
+                     <td class="right" colspan="2">
+                         			 <a class="btn btn-default btn-sm" href="#" onclick="jsjdcbsj.main.search()">
+							   <i class="glyphicon glyphicon-search"></i> 
+							            查询</a>
+							         <a class="btn btn-default btn-sm" href="#"  onclick="jsjdcbsj.main.add()">
+							   <i class="glyphicon glyphicon-plus"></i> 
+							            新增</a>
+                     </td>
+                         
+                    </tr>
+				</table>
+			</div>
+			<!-- 列表 -->
+			<div  style="background-color:#f4f4f4;">
+				<table class="main_table" cellpadding="0" cellspacing="0">
+					<tr>
+						<th width="4%">序号</th>	
+						<th width="10%">项目名称</th>
+						<th width="10%">所在港口</th>
+						<th width="10%">所在港区</th>
+						<th width="10%">项目法人</th>
+						<th width="10%">项目类型</th>
+						<th width="10%">流程状态</th>	
+						<th width="20%">操作</th>
+						 <th width="16%">办理</th>
+					</tr>
+					 <c:forEach items="${list}" var="jsjdcbsj" varStatus="status">
+						<tr class="tr_bg">
+							<td>${status.index+1 }</td>
+							<td>${jsjdcbsj.xmmc }</td>
+							<td>${jsjdcbsj.szgkzw }</td>
+							<td>${jsjdcbsj.szgqzw }</td>
+							<td>${jsjdcbsj.xmfr }</td>
+						    <td>${jsjdcbsj.xmlxzw }</td>
+						    <td>${jsjdcbsj.currentname }</td>
+							<td>
+								<a class="btn btn-default btn-xs" href="#" onclick="jsjdcbsj.main.view('${jsjdcbsj.id}')">
+							            <i class="glyphicon glyphicon-search"></i> 
+							            查看</a>
+							             <c:if test="${jsjdcbsj.recordStatus == 1 }">
+								 <a class="btn btn-default btn-xs" href="#"  onclick="jsjdcbsj.main.edit('${jsjdcbsj.id}')">
+									   <i class="glyphicon glyphicon-wrench"></i> 
+									          修改</a>
+									          <a class="btn btn-default btn-xs" href="#" onclick="jsjdcbsj.main.del('${jsjdcbsj.id}')">
+									   <i class="glyphicon glyphicon-trash"></i> 
+									         删除</a>
+									         </c:if>
+									<c:if test="${ jsjdcbsj.recordStatus  > 1 }">
+									<a class="btn btn-default btn-xs" href="#"
+									onclick="hisList('${jsjdcbsj.id}','jsjdcbsj')"> <i
+										class="glyphicon glyphicon-search"></i>流程历史
+									</a>
+								</c:if>
+					        </td>
+							<td >
+							 <c:if test="${jsjdcbsj.taskState =='Y'}">
+							 <a class="btn btn-default btn-xs" href="#"  onclick="jsjdcbsj.main.banli('${jsjdcbsj.id}')">
+									   <i class="glyphicon glyphicon-check"></i> 
+									          办理</a>
+							 </c:if>
+							  <c:if test="${jsjdcbsj.taskState =='TH'}">
+							 <a class="btn btn-default btn-xs" href="#"  onclick="jsjdcbsj.main.back('${jsjdcbsj.id}')">
+									   <i class="glyphicon glyphicon-check"></i> 
+									          办理</a>
+							 </c:if>
+							</td>
+						</tr>
+					</c:forEach>
+				</table>
+			</div>
+			<!-- 分页 -->
+			<jsp:include page="../../pageinfo.jsp"></jsp:include>
+			</form>	
+		</div>
+	<jsp:include page="../../showHistory.jsp"></jsp:include>
+	</div>
+</body>
+</html>

+ 219 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jsjdcbsj/jsjdcbsjview.jsp

@@ -0,0 +1,219 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+	pageEncoding="UTF-8"%>
+
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <title>江苏省港口建设与经营管理信息系统</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <%@ include file="../../common.jsp"%>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jsjdcbsj/jsjdcbsjdetail.js"></script>
+	<script type="text/javascript">
+		$(document).ready(function () {
+			jsjdcbsj.detail.opflag="${opflag}"
+			jsjdcbsj.detail.taskKey="${taskKey}";
+			jsjdcbsj.detail.init();
+			$('.close').click(function(){
+				guanbi();
+			})
+		});
+		
+		function tanchu(){
+			//此处可以先进行ajax请求获取数据,然后再回掉中再显示弹出框
+			$('.theme-popover-mask').fadeIn(100);
+			$('.theme-popover').slideDown(0);
+		}
+		function guanbi(){
+			$('.theme-popover-mask').fadeOut(100);
+			$('.theme-popover').slideUp(0);
+		}
+		
+		function showRy(){
+			$('#selectrydiv').fadeIn(100);
+       		$('#selectry2div').slideDown(0);
+		}
+		
+		function showYj(){
+			$('.theme-popover-mask').fadeIn(100);
+       		$('.theme-popover').slideDown(0);
+		}
+	</script>
+
+</head>
+
+<body>
+	<div class="box" >
+		<div class="box-content" >
+			<div class="apply_fill">
+ <form  id="addform" method="post" enctype="multipart/form-data"> 	
+ <input type="hidden" id="userids"	name="userids"/>
+  <input type="hidden" id="yj"	name="yj"/>
+  <input type="hidden" id="accids" name="accids"/>
+					<table class="apply" cellpadding="0" cellspacing="0">
+						<tr>
+							<th>项目名称:&nbsp;</th>
+							<td colspan="4" >
+								${record.xmmc }
+							</td>
+						</tr>
+						<tr>
+							<th>所属单位:&nbsp;</th>
+							<td colspan="4" >
+								${jyr.gkjyr }
+							</td>
+						</tr>
+						<tr>
+						    <th>所在地:&nbsp;</th>
+							<td >
+								${record.szddzw }
+							</td>
+							<th>所在港口:&nbsp;</th>
+							<td>
+								${record.szgkzw }
+							</td>
+						</tr>
+						<tr>
+						    <th>所在港区:&nbsp;</th>
+							<td >
+								${record.szgqzw }
+							</td>
+							<th>项目法人:&nbsp;</th>
+							<td >
+								${record.xmfr }
+							</td>
+						</tr>
+						<tr>
+						    <th>项目类型:&nbsp;</th>
+							<td >
+								${record.xmlxzw }
+							</td>
+							<th>建设地点:&nbsp;</th>
+							<td >
+								${record.jsdd }
+							</td>
+						</tr>
+						<tr>
+						    <th>建设规模:&nbsp;</th>
+							<td >
+								${record.jsgm }
+							</td>
+							<th>投资类型:&nbsp;</th>
+							<td>
+								${record.tzlxzw }
+							</td>
+						</tr>
+						<tr>
+					    	<th>总投资 (万元):&nbsp;</th>
+							<td>
+								${record.ztz }
+							</td>
+							<th>项目核准级别:&nbsp;</th>
+							<td>
+								${record.xmhzjbzw }
+							</td>
+						</tr>
+						<tr>
+						    <th>岸线审批级别:&nbsp;</th>
+							<td >
+								${record.axspjbzw }
+							</td>
+							<th>岸线长度 (米):&nbsp;</th>
+							<td >
+								${record.axcd }
+							</td>
+						</tr>
+						<tr>
+						    <th>泊位吨级 (吨):&nbsp;</th>
+							<td >
+								${record.bwdj }
+							</td>
+							<th>通过能力(万吨):&nbsp;</th>
+							<td colspan="3">
+								${record.tgnl }
+							</td>
+						</tr>
+						
+						<tr>
+					    	<th>泊位用途:</th>
+                            <td colspan="3">
+                             ${record.bwytzw }
+                            </td>
+                           
+                       </tr>
+                       <tr>
+                       		<th>专家评审附件</th>
+                       		<td colspan="3">
+                       		
+                       		 <c:if test="${ taskKey == 'zjps'  }"> 
+	                        	<a href="#" class="file">上传<input type="file" name="file" id="fjid" onchange="jsjdcbsj.detail.submitFile()"/></a>
+	                         </c:if> 
+		                       		 
+							<table  id="tableId" style="width: 100%">
+								<tr align="center">
+								<td style="width:40%;text-align: center;">上传附件名称</td>
+								   <c:if test="${ taskKey == 'zjps'  }"> 
+								<td style="width:15%;text-align: center;">操作</td>
+								</c:if>
+								</tr>
+								<c:forEach items="${fjlist }" var="fj" varStatus="status">
+								<tr align="center">
+								<td><a class='main_title' href='/jsjy/accessory/download?id=${fj.fjid }'>${fj.fjmc }</a></td>
+								  <c:if test="${ taskKey == 'zjps'  }"> 
+								<td><a class="btn btn-default btn-xs" href="#" onclick="jsjdcbsj.detail.delFj('${fj.id}',this)">删除</a></td>
+								</c:if>
+								</tr>
+								</c:forEach>
+                       		</table>
+                       		</td>
+                       </tr>
+                       
+                       <c:forEach items="${list}" var="list" begin="1" varStatus="status">
+                       <tr>
+                       <th> ${list.currName }</th>
+                       
+                       		<td colspan="3">${list.yj }</td>
+                      
+                       </tr>
+                       </c:forEach>
+					</table>
+</form>
+
+					<div  id="buttons">
+					
+					<c:if test="${opflag == 5 || opflag == 9}">
+				 
+					 <a class="btn btn-default btn-sm" href="#"  onclick="showRy()">
+							   <i class="glyphicon glyphicon-check"></i> 
+							            选择科室人员</a>
+					</c:if> 
+					<c:if test="${flag=='audit' }">
+					
+					<a class="btn btn-default btn-sm" href="#"  onclick="showYj()">
+							   <i class="glyphicon glyphicon-check"></i> 
+							            意见</a>
+					
+					 <a class="btn btn-default btn-sm" href="#"  onclick="jsjdcbsj.detail.audit('Y','${record.id}')">
+							   <i class="glyphicon glyphicon-ok-sign"></i> 
+							            同意</a>
+						<a class="btn btn-default btn-sm" href="#"  onclick="jsjdcbsj.detail.audit('N','${record.id}')">
+							   <i class="glyphicon glyphicon-ban-circle"></i> 
+							            退回</a>
+				          
+					</c:if>
+					
+							             <a class="btn btn-default btn-sm" href="#"  onclick="jsjdcbsj.detail.back()">
+							   <i class="glyphicon glyphicon-arrow-left"></i> 
+							            返回</a>
+							           
+          			</div>
+			
+			</div>
+		</div>
+</div>
+<jsp:include page="../../showRy.jsp"></jsp:include>
+<jsp:include page="../../showViewOption.jsp"></jsp:include>
+</body>
+
+</html>

+ 208 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jsjdzx/jsjdzxadd.jsp

@@ -0,0 +1,208 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+	pageEncoding="UTF-8"%>
+
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <title>江苏省港口建设与经营管理信息系统</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <%@ include file="../../common.jsp"%>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jsjdzx/jsjdzxdetail.js"></script>
+	<script type="text/javascript">
+		$(document).ready(function () {
+			jsjdzx.detail.init();
+			var id = '${jyr.id}';
+			if(!isEmpty(id)){
+				jsjdzx.detail.szd ='${jyr.szd.id}';
+				jsjdzx.detail.gq ='${jyr.szgq.id}';
+				jsjdzx.detail.gk ='${jyr.szgk.id}';
+			}else{
+				jsjdzx.detail.szd ='${sz}';
+				jsjdzx.detail.gk ='${gk}';
+				
+			}
+			//项目类型默认新建
+				initXmlxSelect('xmlxsel','2201','80%');
+			//投资类型默认企业投资
+				initTzlxSelect('tzlxsel','1902','80%');
+				initXmhzjbSelect('xmhzjbsel','','80%');
+				initAxspjbSelect('axspjbsel','','80%');
+				jsjdzx.detail.initBwyt('bwytsel', '');
+				jsjdzx.detail.initZyhbwfl('zyhbwflsel', '','');
+				initszdSelect('szdsel', jsjdzx.detail.szd, 'showgk', '80%');
+				initgkSelect('gksel',jsjdzx.detail.gk,jsjdzx.detail.szd,'showgq','80%');
+				initgqSelect('gqsel',jsjdzx.detail.gq,jsjdzx.detail.szd,jsjdzx.detail.gk,null,'80%');
+			/* $('.close').click(function(){
+				guanbi();
+			}) */
+		});
+		
+		function showgk(){
+			initgkSelect('gksel',jsjdzx.detail.gk,$('.szdselectpicker').val(),"showgq",'80%');
+			showgq();
+		}
+
+		function showgq(){
+			initgqSelect('gqsel',jsjdzx.detail.gq,$('.szdselectpicker').val(),$('.gkselectpicker').val(),null,'80%');
+		} 
+			 
+		function jyrSel(jyrid){
+			guanbipop();
+			$.post($.app + "/gkjyr/findById", {
+				id:jyrid
+		    }, function(data) {
+		    	//返回的是经营人实体,你可以在回掉中,进行任何其他字段的默认填写
+		    	$('#jyrid').val(data.id);
+		    	$('#jyrmc').val(data.gkjyr);
+		    	$('#xmfr').val(data.fddbr);
+		    	jsjdzx.detail.szd =data.szd.id;
+				jsjdzx.detail.gq =data.szgq.id;
+				jsjdzx.detail.gk =data.szgk.id;
+				initszdSelect('szdsel', jsjdzx.detail.szd, 'showgk', '80%');
+				initgkSelect('gksel',jsjdzx.detail.gk,jsjdzx.detail.szd,'showgq','80%');
+				initgqSelect('gqsel',jsjdzx.detail.gq,jsjdzx.detail.szd,jsjdzx.detail.gk,null,'80%');
+		    }, "json");
+		}
+		
+		function ytsel(){
+			jsjdzx.detail.initZyhbwfl('zyhbwflsel', '',$('.bwytselectpicker').val()+"");
+		}
+	</script>
+</head>
+
+<body>
+<jsp:include page="../../jyrselect.jsp"></jsp:include>
+	<div class="box" >
+		<div class="box-content" >
+			<div class="apply_fill">
+ <form  id="addform" method="post" enctype="multipart/form-data"> 			
+ <input type="hidden" class="form-control"  name="fjids" id="fjids">
+					<table class="apply" cellpadding="0" cellspacing="0">
+						<tr>
+							<th><span class="needwrite">*</span>项目名称:&nbsp;</th>
+							<td colspan="4">
+								<input type="text" style="width: 92.5%;" class="form-control" name="xmmc">
+							</td>
+						</tr>
+						<tr>
+							<th><span class="needwrite">*</span>所属单位:&nbsp;</th>
+							<td colspan="4" style="position:relative;">
+								<input type="text" style="width: 92.5%;" readonly="readonly" class="form-control"  id ="jyrmc" value ="${jyr.gkjyr }">
+								<input type="hidden" class="form-control" name="ssjyrid" id ="jyrid"  value ="${jyr.id }">
+								<c:if test="${jyr.id == null }">
+										<a class="btn btn-primary btn-sm" href="#"
+										 onclick="jyrselpop('jyrSel')"  
+										style="position:absolute;right:4px;top:4px;"> <i class="glyphicon"></i>选择
+									    </a>
+							    </c:if> 
+							</td>
+						</tr>
+						<tr>
+						    <th><span class="needwrite">*</span>所在地:&nbsp;</th>
+							<td>
+								<div id="szdsel"></div>
+							</td>
+							<th><span class="needwrite">*</span>所在港口:&nbsp;</th>
+							<td >
+								<div id="gksel"></div>
+							</td>
+						</tr>
+						<tr>
+						    <th><span class="needwrite">*</span>所在港区:&nbsp;</th>
+						 	<td >
+								<div id="gqsel"></div>
+							</td>
+							<th><span class="needwrite">*</span>项目法人:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="xmfr" id="xmfr">
+							</td>
+						</tr>
+						<tr>
+						    <th><span class="needwrite">*</span>项目类型:&nbsp;</th>
+							<td >
+								<div id="xmlxsel"></div>
+							</td>
+							<th><span class="needwrite">*</span>建设地点:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="jsdd">
+							</td>
+						</tr>
+						<tr>
+						    <th>建设规模:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="jsgm">
+							</td>
+							<th>投资类型:&nbsp;</th>
+							<td >
+								<div id="tzlxsel"></div>
+							</td>
+						</tr>
+						<tr>
+						    <th>总投资 (万元):&nbsp;</th>
+							<td>
+								<input type="text" class="form-control" name="ztz">
+							</td>
+     						<th>项目核准级别:&nbsp;</th>
+							<td>
+							   <div id="xmhzjbsel"></div>
+							</td>
+						</tr>
+						<tr>
+						    <th>岸线审批级别:&nbsp;</th>
+							<td >
+								<div id="axspjbsel"></div>
+							</td>
+							<th>岸线长度 (米):&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="axcd">
+							</td>
+						</tr>
+						<tr>
+						    <th>泊位吨级 (吨):&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="bwdj">
+							</td>
+							<th>通过能力(万吨):&nbsp;</th>
+							<td colspan="3">
+								<input type="text" class="form-control" name="tgnl">
+							</td>
+						</tr>
+						
+						<tr>
+					 	    <th>泊位用途:&nbsp;</th>
+                        <td colspan="3">
+	                        <span id="bwytsel"></span>
+                        </td>
+                       
+                        <!-- <th>专业化泊位分类:&nbsp;</th>
+                        <td>
+	                        <span id="zyhbwflsel"></span>
+                        </td> -->
+						</tr>
+						
+					</table>
+				
+					<div  id="buttons">
+                    	<a class="btn btn-default btn-sm" href="#" onclick="jsjdzx.detail.save()">
+							   <i class="glyphicon glyphicon-floppy-disk"></i> 
+							            保存</a>
+							            
+							            <a class="btn btn-default btn-sm" href="#" onclick="jsjdzx.detail.submit()">
+							   <i class="glyphicon glyphicon-floppy-disk"></i> 
+							            提交</a>
+							            
+							             <a class="btn btn-default btn-sm" href="#"  onclick="jsjdzx.detail.back()">
+							   <i class="glyphicon glyphicon-arrow-left"></i> 
+							           返回</a>
+							            
+          			</div>
+	</form>
+				</div>
+		</div>
+
+</div>
+</body>
+
+</html>

+ 215 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jsjdzx/jsjdzxedit.jsp

@@ -0,0 +1,215 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+	pageEncoding="UTF-8"%>
+
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <title>江苏省港口建设与经营管理信息系统</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <%@ include file="../../common.jsp"%>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jsjdzx/jsjdzxdetail.js"></script>
+	<script type="text/javascript">
+		$(document).ready(function () {
+			jsjdzx.detail.init();
+			var id = '${jyr.id}';
+			if(!isEmpty(id)){
+				jsjdzx.detail.szd ='${jyr.szd.id}';
+				jsjdzx.detail.gq ='${jyr.szgq.id}'
+				jsjdzx.detail.gk ='${jyr.szgk.id}'
+			}
+			initXmlxSelect('xmlxsel', '${record.xmlx }', '80%');
+			initTzlxSelect('tzlxsel', '${record.tzlx }', '80%');
+			initXmhzjbSelect('xmhzjbsel', '${record.xmhzjb }', '80%');
+			initAxspjbSelect('axspjbsel', '${record.axspjb }', '80%');
+			initszdSelect('szdsel', jsjdzx.detail.szd, 'showgk', '80%');
+			initgkSelect('gksel',jsjdzx.detail.gk,jsjdzx.detail.szd,'showgq','80%');
+			initgqSelect('gqsel',jsjdzx.detail.gq,jsjdzx.detail.szd,jsjdzx.detail.gk,null,'80%');
+			jsjdzx.detail.initBwyt('bwytsel', '${record.bwyt }');
+			jsjdzx.detail.initZyhbwfl('zyhbwflsel', '${record.zyhbwfl }','${record.bwyt }');
+		});
+		function jyrSel(jyrid){
+			guanbipop();
+			$.post($.app + "/gkjyr/findById", {
+				id:jyrid
+		    }, function(data) {
+		    	//返回的是经营人实体,你可以在回掉中,进行任何其他字段的默认填写
+		    	$('#jyrid').val(data.id);
+		    	$('#jyrmc').val(data.gkjyr);
+		    	$('#xmfr').val(data.fddbr);
+		    	jsjdzx.detail.szd =data.szd.id;
+				jsjdzx.detail.gq =data.szgq.id;
+				jsjdzx.detail.gk =data.szgk.id;
+				initgkSelect('gksel',jsjdzx.detail.gk,$('.szdselectpicker').val(),'showgq','80%');
+				initgqSelect('gqsel',jsjdzx.detail.gq,$('.szdselectpicker').val(),$('.gkselectpicker').val(),$('.gkselectpicker').val(),null,'100%');
+		    }, "json");
+		}
+		
+		function showgk(){
+			initgkSelect('gksel','${record.szgk }',$('.szdselectpicker').val(),"showgq",'80%');
+			showgq();
+		}
+
+		function showgq(){
+			initgqSelect('gqsel','${record.szgq }',$('.szdselectpicker').val(),$('.gkselectpicker').val(),null,'80%');
+		}
+		
+		function guanbipop(){
+			$('.theme-popover-mask').fadeOut(100);
+			$('.theme-popover').slideUp(0);
+		}
+		function ytsel(){
+			jsjdzx.detail.initZyhbwfl('zyhbwflsel', '',$('.bwytselectpicker').val()+"");
+		}
+	</script>
+
+</head>
+
+<body>
+<jsp:include page="../../jyrselect.jsp"></jsp:include>
+	<div class="box" >
+		<div class="box-content" >
+			<div class="apply_fill">
+ <form  id="addform" method="post" enctype="multipart/form-data"> 		
+ <input type="hidden" name="id" value="${record.id }">		
+ <input type="hidden" name="fjids" id="fjids">	
+					<table class="apply" cellpadding="0" cellspacing="0">
+						<tr>
+							<th><span class="needwrite">*</span>项目名称:&nbsp;</th>
+							<td colspan="4" >
+								<input type="text" style="width: 92.5%;" class="form-control" name="xmmc" value="${record.xmmc }">
+							</td>
+						</tr>
+						<tr>
+							<th><span class="needwrite">*</span>所属单位:&nbsp;</th>
+							<td colspan="4" style="position:relative;">
+								<input type="text" style="width: 92.5%;" readonly="readonly" class="form-control"  id ="jyrmc" value ="${jyr.gkjyr }">
+								<input type="hidden" class="form-control" name="ssjyrid" id ="jyrid" value ="${jyr.id }">
+								<c:if test="${jyr.id == null }">
+								<a class="btn btn-primary btn-sm" href="#"
+								 onclick="jyrselpop('jyrSel')"  
+								style="position:absolute;right:4px;top:4px;"> <i class="glyphicon"></i>选择
+									   </a>
+								</c:if> 
+							</td>
+						</tr>
+						<tr>
+						    <th><span class="needwrite">*</span>所在地:&nbsp;</th>
+							<td>
+								<span id="szdsel">
+								</span>
+							</td>
+							<th><span class="needwrite">*</span>所在港口:&nbsp;</th>
+							<td >
+								<span id="gksel">
+								</span>
+							</td>
+						</tr>
+						<tr>
+					    	<th><span class="needwrite">*</span>所在港区:&nbsp;</th>
+							<td >
+								<span id="gqsel">
+								</span>
+							</td>
+							<th><span class="needwrite">*</span>项目法人:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="xmfr" value="${record.xmfr }">
+							</td>
+						</tr>
+						<tr>
+						    <th><span class="needwrite">*</span>项目类型:&nbsp;</th>
+							<td >
+								<span id="xmlxsel">
+								</span>
+							</td>
+							<th><span class="needwrite">*</span>建设地点:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="jsdd" value="${record.jsdd }">
+							</td>
+						</tr>
+						<tr>
+					    	<th>建设规模:&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="jsgm" value="${record.jsgm }">
+							</td>
+							<th>投资类型:&nbsp;</th>
+							<td>
+								<span id="tzlxsel">
+								</span>
+							</td>
+						</tr>
+						<tr>
+						    <th>总投资(万元):&nbsp;</th>
+							<td>
+								<input type="text" class="form-control" name="ztz" value="${record.ztz }">
+							</td>
+							<th>项目核准级别:&nbsp;</th>
+							<td>
+								<span id="xmhzjbsel">
+								</span>
+							</td>
+						</tr>
+						<tr>
+					    	<th>岸线审批级别:&nbsp;</th>
+							<td>
+								<span id="axspjbsel">
+								</span>
+							</td>
+							<th>岸线长度 (米):&nbsp;</th>
+							<td >
+								<input type="text" class="form-control" name="axcd" value="${record.axcd }">
+							</td>
+						</tr>
+						<tr>
+					    	<th>泊位吨级(吨):&nbsp;</th>
+							<td>
+								<input type="text" class="form-control" name="bwdj" value="${record.bwdj }">
+							</td>
+							<th>通过能力(万吨):&nbsp;</th>
+							<td colspan="3">
+								<input type="text" class="form-control" name="tgnl" value="${record.tgnl }">
+							</td>
+						</tr>
+						
+						<tr>
+					 	    <th>泊位用途:&nbsp;</th>
+                        <td colspan="3">
+	                        <span id="bwytsel"></span>
+                        </td>
+                       
+						</tr>
+						
+				
+					</table>
+					
+
+					<div  id="buttons">
+                    	<a class="btn btn-default btn-sm" href="#" onclick="jsjdzx.detail.save()">
+							   <i class="glyphicon glyphicon-floppy-disk"></i> 
+							            保存</a>
+							            
+							<c:if test="${flag == '' || flag == null}">
+  
+					      <a class="btn btn-default btn-sm" href="#" onclick="jsjdzx.detail.submit()">
+							   <i class="glyphicon glyphicon-floppy-disk"></i> 
+							            提交</a>
+						</c:if>
+						<c:if test="${flag=='th'}">
+						<a class="btn btn-default btn-sm" href="#"  onclick="jsjdzx.detail.submitAudit()">
+						   <i class="glyphicon glyphicon-ok-sign"></i> 
+						            提交</a>
+						</c:if>     
+							             <a class="btn btn-default btn-sm" href="#"  onclick="jsjdzx.detail.back()">
+							   <i class="glyphicon glyphicon-arrow-left"></i> 
+							            返回</a>
+					</div>		              
+	</form>							            
+          			</div>
+			
+			</div>
+		</div>
+	
+</body>
+
+</html>

+ 183 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jsjdzx/jsjdzxmain.jsp

@@ -0,0 +1,183 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+	pageEncoding="UTF-8"%>
+
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <title>江苏省港口建设与经营管理信息系统</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <%@ include file="../../common.jsp"%>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jsjdzx/jsjdzxmain.js"></script>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jsjdzx/jsjdzxdetail.js"></script>
+	<script type="text/javascript">
+		$(document).ready(function () {
+			jsjdzx.main.init();
+			initXmhzjbSelect('xmhzjbsel','${xmhzjbid }','80%');
+			initszdSelect('szdsel','${szd }', 'showgk', '80%');
+			initgkSelect('gksel','${szgk }','${szd }','showgq','80%');
+			initgqSelect('gqsel','${szgq }','${szd }','${szgk }',null,'80%');
+			jsjdzx.main.initSfyzjbzsel('sfyzjbz','${sfyzjbz}','80%');
+			iFrameHeightIframe('${menuid}');//自适应高度
+		});
+		
+		function showgk(){
+			initgkSelect('gksel','${szgk }',$('.szdselectpicker').val(),"showgq",'80%');
+			showgq();
+		}
+
+		function showgq(){
+			initgqSelect('gqsel','${szgq }',$('.szdselectpicker').val(),$('.gkselectpicker').val(),null,'80%');
+		}
+	</script>
+</head>
+
+<body>
+	<div class="box" >
+		<div class="box-content" >
+<form action="${app }/jsjdzx/main" id="jsjdzxform" method="post"> 
+<input type="hidden" name="menuid" value="${menuid }">		
+
+			<div >
+				<table class="search_table" cellpadding="0" cellspacing="0">
+				    <tr>
+							<th width="12%"></th>
+						<th width="22%"></th>	
+						<th width="11%"></th>
+						<th width="22%"></th>
+						<th width="11%"></th>
+						<th width="22%"></th>
+					</tr>
+                    <tr>
+                        <td class="right">
+                         	项目名称:&nbsp;
+                         </td>
+                        <td >
+	                        	<input type="text" class="form-control" name="xmmc"  value="${xmmc }">
+                        </td>
+                   
+                        <td class="right">
+                         	项目法人:&nbsp;
+                        </td>
+                        <td>
+	                        	<input type="text" class="form-control" name="xmfr"  value="${xmfr }">
+                        </td>
+                        <td class="right">
+                         	项目核准级别:&nbsp;
+                        </td>
+						<td>
+			            	<span id="xmhzjbsel">
+							</span>
+			            </td>
+                        
+                     </tr>
+                     <tr>
+                        <td class="right">
+                         	所在地:&nbsp;
+                        </td>
+						<td>
+			            	<span id="szdsel">
+							</span>
+			            </td>
+                        <td class="right">
+                         	所在港口:&nbsp;
+                        </td>
+						<td>
+			            	<span id="gksel">
+							</span>
+			            </td>
+			            <td class="right">
+                         	所在港区:&nbsp;
+                        </td>
+						<td>
+			            	<span id="gqsel">
+							</span>
+			            </td>
+                       
+                    </tr>
+                    <tr>
+                   		<td class="right">是否有资金补助:&nbsp;</td>
+						<td>
+							<div id="sfyzjbz"></div>
+						</td>
+							<td class="right"></td>
+							<td></td>
+                     <td class="right" colspan="2">
+                         			 <a class="btn btn-default btn-sm" href="#" onclick="jsjdzx.main.search()">
+							   <i class="glyphicon glyphicon-search"></i> 
+							            查询</a>
+							         <a class="btn btn-default btn-sm" href="#"  onclick="jsjdzx.main.add()">
+							   <i class="glyphicon glyphicon-plus"></i> 
+							            新增</a>
+                     </td>
+                         
+                    </tr>
+				</table>
+			</div>
+			<!-- 列表 -->
+			<div  style="background-color:#f4f4f4;">
+				<table class="main_table" cellpadding="0" cellspacing="0">
+					<tr>
+						<th width="4%">序号</th>	
+						<th width="10%">项目名称</th>
+						<th width="10%">所在港口</th>
+						<th width="10%">所在港区</th>
+						<th width="10%">项目法人</th>
+						<th width="10%">项目类型</th>
+						<th width="10%">是否有资金补助</th>	
+						<th width="20%">操作</th>
+						 <th width="16%">办理</th>
+					</tr>
+					 <c:forEach items="${list}" var="jsjdzx" varStatus="status">
+						<tr class="tr_bg">
+							<td>${status.index+1 }</td>
+							<td>${jsjdzx.xmmc }</td>
+							<td>${jsjdzx.szgkzw }</td>
+							<td>${jsjdzx.szgqzw }</td>
+							<td>${jsjdzx.xmfr }</td>
+						    <td>${jsjdzx.xmlxzw }</td>
+						    <td>${jsjdzx.sfyzjbz }</td>
+							<td>
+								<a class="btn btn-default btn-xs" href="#" onclick="jsjdzx.main.view('${jsjdzx.id}')">
+							            <i class="glyphicon glyphicon-search"></i> 
+							            查看</a>
+							             <c:if test="${jsjdzx.recordStatus == 1 }">
+								 <a class="btn btn-default btn-xs" href="#"  onclick="jsjdzx.main.edit('${jsjdzx.id}')">
+									   <i class="glyphicon glyphicon-wrench"></i> 
+									          修改</a>
+									          <a class="btn btn-default btn-xs" href="#" onclick="jsjdzx.main.del('${jsjdzx.id}')">
+									   <i class="glyphicon glyphicon-trash"></i> 
+									         删除</a>
+									         </c:if>
+									<c:if test="${ jsjdzx.recordStatus  > 1 }">
+									<a class="btn btn-default btn-xs" href="#"
+									onclick="hisList('${jsjdzx.id}','jsjdzx')"> <i
+										class="glyphicon glyphicon-search"></i>流程历史
+									</a>
+								</c:if>
+					        </td>
+							<td >
+							 <c:if test="${jsjdzx.taskState =='Y'}">
+							 <a class="btn btn-default btn-xs" href="#"  onclick="jsjdzx.main.banli('${jsjdzx.id}')">
+									   <i class="glyphicon glyphicon-check"></i> 
+									          办理</a>
+							 </c:if>
+							  <c:if test="${jsjdzx.taskState =='TH'}">
+							 <a class="btn btn-default btn-xs" href="#"  onclick="jsjdzx.main.back('${jsjdzx.id}')">
+									   <i class="glyphicon glyphicon-check"></i> 
+									          办理</a>
+							 </c:if>
+							</td>
+						</tr>
+					</c:forEach>
+				</table>
+			</div>
+			<!-- 分页 -->
+			<jsp:include page="../../pageinfo.jsp"></jsp:include>
+			</form>	
+		</div>
+	<jsp:include page="../../showHistory.jsp"></jsp:include>
+	</div>
+</body>
+</html>

+ 218 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/gkjsgl/jsjdzx/jsjdzxview.jsp

@@ -0,0 +1,218 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+	pageEncoding="UTF-8"%>
+
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <title>江苏省港口建设与经营管理信息系统</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <%@ include file="../../common.jsp"%>
+	<script type="text/javascript" src="${app }/static/biz/js/gkjsgl/jsjdzx/jsjdzxdetail.js"></script>
+	<script type="text/javascript">
+		$(document).ready(function () {
+			jsjdzx.detail.taskKey="${taskKey}";
+			jsjdzx.detail.init();
+			$('.close').click(function(){
+				guanbi();
+			})
+		});
+		
+		function tanchu(){
+			//此处可以先进行ajax请求获取数据,然后再回掉中再显示弹出框
+			$('.theme-popover-mask').fadeIn(100);
+			$('.theme-popover').slideDown(0);
+		}
+		function guanbi(){
+			$('.theme-popover-mask').fadeOut(100);
+			$('.theme-popover').slideUp(0);
+		}
+		
+		function showRy(){
+			$('#selectrydiv').fadeIn(100);
+       		$('#selectry2div').slideDown(0);
+		}
+		
+		function showYj(){
+			$('.theme-popover-mask').fadeIn(100);
+       		$('.theme-popover').slideDown(0);
+		}
+	</script>
+
+</head>
+
+<body>
+	<div class="box" >
+		<div class="box-content" >
+			<div class="apply_fill">
+ <form  id="addform" method="post" enctype="multipart/form-data"> 	
+ <input type="hidden" id="userids"	name="userids"/>
+  <input type="hidden" id="yj"	name="yj"/>
+  <input type="hidden" id="accids" name="accids"/>
+					<table class="apply" cellpadding="0" cellspacing="0">
+						<tr>
+							<th>项目名称:&nbsp;</th>
+							<td colspan="4" >
+								${record.xmmc }
+							</td>
+						</tr>
+						<tr>
+							<th>所属单位:&nbsp;</th>
+							<td colspan="4" >
+								${jyr.gkjyr }
+							</td>
+						</tr>
+						<tr>
+						    <th>所在地:&nbsp;</th>
+							<td >
+								${record.szddzw }
+							</td>
+							<th>所在港口:&nbsp;</th>
+							<td>
+								${record.szgkzw }
+							</td>
+						</tr>
+						<tr>
+						    <th>所在港区:&nbsp;</th>
+							<td >
+								${record.szgqzw }
+							</td>
+							<th>项目法人:&nbsp;</th>
+							<td >
+								${record.xmfr }
+							</td>
+						</tr>
+						<tr>
+						    <th>项目类型:&nbsp;</th>
+							<td >
+								${record.xmlxzw }
+							</td>
+							<th>建设地点:&nbsp;</th>
+							<td >
+								${record.jsdd }
+							</td>
+						</tr>
+						<tr>
+						    <th>建设规模:&nbsp;</th>
+							<td >
+								${record.jsgm }
+							</td>
+							<th>投资类型:&nbsp;</th>
+							<td>
+								${record.tzlxzw }
+							</td>
+						</tr>
+						<tr>
+					    	<th>总投资 (万元):&nbsp;</th>
+							<td>
+								${record.ztz }
+							</td>
+							<th>项目核准级别:&nbsp;</th>
+							<td>
+								${record.xmhzjbzw }
+							</td>
+						</tr>
+						<tr>
+						    <th>岸线审批级别:&nbsp;</th>
+							<td >
+								${record.axspjbzw }
+							</td>
+							<th>岸线长度 (米):&nbsp;</th>
+							<td >
+								${record.axcd }
+							</td>
+						</tr>
+						<tr>
+						    <th>泊位吨级 (吨):&nbsp;</th>
+							<td >
+								${record.bwdj }
+							</td>
+							<th>通过能力(万吨):&nbsp;</th>
+							<td colspan="3">
+								${record.tgnl }
+							</td>
+						</tr>
+						
+						<tr>
+					    	<th>泊位用途:</th>
+                            <td colspan="3">
+                             ${record.bwytzw }
+                            </td>
+                           
+                       </tr>
+                       <tr>
+                       		<th>专家评审附件</th>
+                       		<td colspan="3">
+                       		
+                       		 <c:if test="${ taskKey == 'zjps'  }"> 
+	                        	<a href="#" class="file">上传<input type="file" name="file" id="fjid" onchange="jsjdzx.detail.submitFile()"/></a>
+	                         </c:if> 
+		                       		 
+							<table  id="tableId" style="width: 100%">
+								<tr align="center">
+								<td style="width:40%;text-align: center;">上传附件名称</td>
+								   <c:if test="${ taskKey == 'zjps'  }"> 
+								<td style="width:15%;text-align: center;">操作</td>
+								</c:if>
+								</tr>
+								<c:forEach items="${fjlist }" var="fj" varStatus="status">
+								<tr align="center">
+								<td><a class='main_title' href='/jsjy/accessory/download?id=${fj.fjid }'>${fj.fjmc }</a></td>
+								  <c:if test="${ taskKey == 'zjps'  }"> 
+								<td><a class="btn btn-default btn-xs" href="#" onclick="jsjdzx.detail.delFj('${fj.id}',this)">删除</a></td>
+								</c:if>
+								</tr>
+								</c:forEach>
+                       		</table>
+                       		</td>
+                       </tr>
+                       
+                       <c:forEach items="${list}" var="list" begin="1" varStatus="status">
+                       <tr>
+                       <th> ${list.currName }</th>
+                       
+                       		<td colspan="3">${list.yj }</td>
+                      
+                       </tr>
+                       </c:forEach>
+					</table>
+</form>
+
+					<div  id="buttons">
+					
+					<c:if test="${opflag == 5 || opflag == 9}">
+				
+					 <a class="btn btn-default btn-sm" href="#"  onclick="showRy()">
+							   <i class="glyphicon glyphicon-ok-sign"></i> 
+							            选择科室人员</a>
+					</c:if>
+					<c:if test="${flag=='audit' }">
+					
+					<a class="btn btn-default btn-sm" href="#"  onclick="showYj()">
+							   <i class="glyphicon glyphicon-ok-sign"></i> 
+							            意见</a>
+					
+					 <a class="btn btn-default btn-sm" href="#"  onclick="jsjdzx.detail.audit('Y','${record.id}')">
+							   <i class="glyphicon glyphicon-ok-sign"></i> 
+							            同意</a>
+						<a class="btn btn-default btn-sm" href="#"  onclick="jsjdzx.detail.audit('N','${record.id}')">
+							   <i class="glyphicon glyphicon-ban-circle"></i> 
+							            退回</a>
+				          
+					</c:if>
+					
+							             <a class="btn btn-default btn-sm" href="#"  onclick="jsjdzx.detail.back()">
+							   <i class="glyphicon glyphicon-arrow-left"></i> 
+							            返回</a>
+							           
+          			</div>
+			
+			</div>
+		</div>
+</div>
+<jsp:include page="../../showRy.jsp"></jsp:include>
+<jsp:include page="../../showViewOption.jsp"></jsp:include>
+</body>
+
+</html>

+ 80 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/showRy.jsp

@@ -0,0 +1,80 @@
+<%@ page contentType="text/html;charset=UTF-8"%>
+<script>
+function savery(){
+	var treeObj = $.fn.zTree.getZTreeObj("usertree");
+	var nodes = treeObj.getCheckedNodes(true);
+	var user=new Array();
+    for(var i=0;i<nodes.length;i++) {
+    	var node = nodes[i];
+    	if(node.type=="user"){
+    		user.push(node.id);
+    	}
+    }
+    if(user.length >0){
+    	$('#userids').val(user);
+        guanbiry();
+    }else{
+    	$.alert({
+   		    title: '提示',
+   		    content: "请选择会签人员!",
+   		    confirm: function(){
+   		    }
+       	});
+    }
+    
+}
+function guanbiry(){
+	$('.theme-popover-mask').fadeOut(100);
+	$('.theme-popover').slideUp(0);
+}
+var setting = {
+		async: {
+			enable: true,
+			url:$.app+"/getUserTreeData",
+			contentType : "application/x-www-form-urlencoded", //已form的形式提交参数
+			autoParam: ["id","name"]
+		},
+		check: {
+			enable: true //表示是否显示节点前的checkbox选择框
+			},
+			data: {
+		        simpleData: {
+		            enable: true
+		        }
+		    },
+		view:{
+			showLine:false//去掉虚线
+		},
+		callback: {
+		}
+	};
+	
+$(document).ready(function () {
+	$.fn.zTree.init($("#usertree"), setting);
+});
+</script>
+<div  class="theme-popover" id="selectrydiv" style="width: 350px;height: 400px;overflow-y: auto;">
+	     <div class="theme-poptit">
+	          <div class="popTitle">
+	          	<h4>选择人员</h4>
+	          </div>
+	          <div class="close">
+	          		<a href="#" title="关闭" onclick="guanbiry()" >×</a>
+	          </div>
+	     </div>
+ 
+			<!-- 列表 -->
+			<div  style="background-color:#f4f4f4;">
+	     <ul id="usertree" class="ztree" style="width:100%; "></ul>
+	     </div>
+	     	<div align="center">
+	     	<a class="btn btn-default btn-sm" href="#"  onclick="savery()">
+							   <i class="glyphicon glyphicon-ok-sign"></i> 
+							            确认</a>
+	     	
+	     	<a class="btn btn-default btn-sm" href="#"  onclick="guanbiry()">
+							   <i class="glyphicon glyphicon-arrow-left"></i> 
+							            关闭</a>
+	     	</div>
+	</div>
+	<div class="theme-popover-mask" id="selectry2div"></div>

+ 52 - 0
gkjsjy/trunk/WebContent/WEB-INF/pages/showViewOption.jsp

@@ -0,0 +1,52 @@
+<%@ page contentType="text/html;charset=UTF-8"%>
+<script>
+function saveyj(){
+	var opstr = "${taskKey}";
+    if(!isEmpty(($('#ryyj').val()))){
+    	$('#yj').val($('#ryyj').val());
+    	$('#'+opstr).html($('#ryyj').val());
+        guanbiyj();
+    }else{
+    	$.alert({
+   		    title: '提示',
+   		    content: "请填写意见!",
+   		    confirm: function(){
+   		    }
+       	});
+    }
+    
+}
+function guanbiyj(){
+	$('.theme-popover-mask').fadeOut(100);
+	$('.theme-popover').slideUp(0);
+}
+
+	
+$(document).ready(function () {
+});
+</script>
+<div  class="theme-popover" id="selectyjdiv" style="width: 350px;height: 400px;overflow-y: auto;">
+	     <div class="theme-poptit">
+	          <div class="popTitle">
+	          	<h4>意见框</h4>
+	          </div>
+	          <div class="close">
+	          		<a href="#" title="关闭" onclick="guanbiyj()" >×</a>
+	          </div>
+	     </div>
+ 
+			<!-- 列表 -->
+			<div  style="background-color:#f4f4f4;">
+	     <textarea id="ryyj" rows="8" cols="40">同意</textarea>
+	     </div>
+	     	<div align="center">
+	     	<a class="btn btn-default btn-sm" href="#"  onclick="saveyj()">
+							   <i class="glyphicon glyphicon-ok-sign"></i> 
+							            确认</a>
+	     	
+	     	<a class="btn btn-default btn-sm" href="#"  onclick="guanbiyj()">
+							   <i class="glyphicon glyphicon-arrow-left"></i> 
+							            关闭</a>
+	     	</div>
+	</div>
+	<div class="theme-popover-mask" id="selectyj2div"></div>

+ 264 - 0
gkjsjy/trunk/WebContent/static/biz/js/ggfwxxgl/jdjc/jdjcdetail.js

@@ -0,0 +1,264 @@
+/**
+ *角色管理
+ * 
+ */
+$.namespace("jdjc.detail");
+
+
+
+jdjc.detail.init=function(set,jyrset){
+	$.fn.zTree.init($("#usertree"), set);
+	$.fn.zTree.init($("#jyrtree"), jyrset);
+}
+
+jdjc.detail.back=function(){
+	location.href=$.app+"/jdjc/main";
+}
+
+vae = function(a, b) {
+	if (isEmpty(a.val())) {
+		ts(b + "不能为空", a);
+		return false;
+	}
+	return true;
+};
+
+jdjc.detail.save=function(){
+	// 验证必填字段是否为空
+	 if(vae($('#szdsel select'),"所在地")==false){return false;}
+	 if(vae($('#gksel select'),"港口")==false){return false;}
+	 if(vae($('#gqsel select'),"港区")==false){return false;}
+	 if(vae($('#zgqx'), "整改期限 ")==false){return false;}
+	 if(vae($('#jyrmc'),"被督查单位")==false){return false;}
+	
+	 $(".btn").attr("disabled",true);
+	 $.ajax({
+         url:$.app+"/jdjc/save",
+         data:$("#addform").serialize(),
+         type:"post",
+         async:false,
+         dataType:"json",
+         success:function(data){//ajax返回的数据
+	           if (data.success) {
+		           	$.alert({
+		       		    title: '提示',
+		       		    content: '操作成功',
+		       		    confirm: function(){
+		       		    	location.href=$.app+'/jdjc/main';
+		       		    }
+		           	});
+	           }else {
+		           	$.alert({
+		       		    title: '提示',
+		       		    content: data.message,
+		       		    confirm: function(){
+		       		    	$(".btn").attr("disabled",false);
+		       		    }
+		           	});
+	           }
+	     }
+    }); 
+};
+
+jdjc.detail.savexf=function(){
+	// 验证必填字段是否为空
+	 if(vae($('#szdsel select'),"所在地")==false){return false;}
+	 if(vae($('#gksel select'),"港口")==false){return false;}
+	 if(vae($('#gqsel select'),"港区")==false){return false;}
+	 if(vae($('#zgqx'), "整改期限 ")==false){return false;}
+	 if(vae($('#jyrmc'),"被督查单位")==false){return false;}
+	
+	 $(".btn").attr("disabled",true);
+	 $.ajax({
+         url:$.app+"/jdjc/savexf",
+         data:$("#addform").serialize(),
+         type:"post",
+         async:false,
+         dataType:"json",
+         success:function(data){//ajax返回的数据
+	           if (data.success) {
+		           	$.alert({
+		       		    title: '提示',
+		       		    content: '操作成功',
+		       		    confirm: function(){
+		       		    	location.href=$.app+'/jdjc/main';
+		       		    }
+		           	});
+	           }else {
+		           	$.alert({
+		       		    title: '提示',
+		       		    content: data.message,
+		       		    confirm: function(){
+		       		    	$(".btn").attr("disabled",false);
+		       		    }
+		           	});
+	           }
+	     }
+    }); 
+};
+
+
+jdjc.detail.submit=function(){
+	// 验证必填字段是否为空
+	 if(vae($('#szdsel select'),"所在地")==false){return false;}
+	 if(vae($('#gksel select'),"港口")==false){return false;}
+	 if(vae($('#gqsel select'),"港区")==false){return false;}
+	 if(vae($('#zgqx'), "整改期限 ")==false){return false;}
+	 if(vae($('#jyrmc'),"被督查单位")==false){return false;}
+	
+	
+	 $(".btn").attr("disabled",true);
+	 $.ajax({
+         url:$.app+"/jdjc/submit",
+         data:$("#addform").serialize(),
+         type:"post",
+         dataType:"json",
+         success:function(data){//ajax返回的数据
+	           if (data.success) {
+		           	$.alert({
+		       		    title: '提示',
+		       		    content: '操作成功',
+		       		    confirm: function(){
+		       		    	location.href=$.app+'/jdjc/main';
+		       		    }
+		           	});
+	           }else {
+		           	$.alert({
+		       		    title: '提示',
+		       		    content: data.message,
+		       		    confirm: function(){
+		       		    	$(".btn").attr("disabled",false);
+		       		    }
+		           	});
+	           }
+	     }
+    }); 
+};
+
+
+jdjc.detail.audit=function(auditpass,id){
+	$(".btn").attr("disabled",true);
+	
+
+	var audit;
+	if(auditpass=="Y"){
+		audit=true;
+	}else{
+		audit=false;
+	}
+	$('#flag').val(audit);
+	
+	
+	 $(".btn").attr("disabled",true);
+	 $.ajax({
+         url:$.app + "/jdjc/audit",
+         data:$("#addform").serialize(),
+         type:"post",
+         dataType:"json",
+         success:function(data){//ajax返回的数据
+	           if (data.success) {
+	        		$.alert({
+	           		    title: '提示',
+	           		    content: '操作成功',
+	           		    confirm: function(){
+	           		    	jdjc.detail.back();
+	           		    }
+	               	});
+	           }else {
+		           	$.alert({
+		       		    title: '提示',
+		       		    content: data.message,
+		       		    confirm: function(){
+		       		    	$(".btn").attr("disabled",false);
+		       		    }
+		           	});
+	           }
+	     }
+    }); 
+	
+	/*$.post($.app + "/jdjc/audit", {
+		id:id,
+        shyj:shyj,
+        flag:audit,
+        accid:accid
+    }, function(data) {
+    	if (data.success) {
+           	$.alert({
+       		    title: '提示',
+       		    content: '操作成功',
+       		    confirm: function(){
+       		    	jdjc.detail.back();
+       		    }
+           	});
+       }else {
+           	$.alert({
+       		    title: '提示',
+       		    content: data.message,
+       		    confirm: function(){
+       		    	$(".btn").attr("disabled",false);
+       		    }
+           	});
+       }
+    	
+    }, "json");*/
+};
+
+jdjc.detail.submitFile = function(){
+	$('#addform').form('submit',{
+		url : $.app + '/jdjc/saveFile',
+		onSubmit : function() {},
+		success : function(data, status) {
+			if (data) {
+				data = data.replace("<audio controls=\"controls\" style=\"display: none;\"></audio>","");
+				data = $.parseJSON(data);
+			}
+			if (data.success) {
+				var len = $('#tableId tr').length;
+				var accContect = data.attrs.acc.fjmc;
+				var fjid = data.attrs.acc.fjid;
+				var accid = data.attrs.acc.id;
+				var str = "<tr align='center'>";
+				str =str +"<td style='width:40%'>"+ "<input id='accid' value='"
+						+ accid
+						+ "' name='accid' type='hidden'>"
+						+ "<a class='main_title' href='/jsjy/accessory/download?id="
+						+ fjid + "'> " + accContect + "</a>" +"</td>";
+				
+				str =str+"<td style='width:15%'>"+ '<a class="btn btn-default btn-xs" href="#" onclick="jdjc.detail.delFj(\''
+						+ accid
+						+ '\','
+						+ '$(this)'
+						+ ')">删除</a>' +"</td></tr>";
+				$('#tableId').append(str);
+			} else {
+				$.messager.showError(data.message);
+			}
+		}
+	});
+}
+
+//删除accid 附件关联ID,id 是第几行附件
+jdjc.detail.delFj = function(accid, tr) {
+	$.confirm({
+		title : '确认框',
+		content : '确认删除吗',
+		confirm : function() {
+			$.post($.app + "/jdjc/delFile", {
+				accid : accid
+			}, function(data) {
+				if (data.success) {
+					$(tr).parent().parent().remove();
+				} else {
+					$.alert({
+						title : '提示',
+						content : data.message,
+						confirm : function() {
+						}
+					});
+				}
+			}, "json");
+		},
+		cancel : function() {
+		}
+	});
+}

+ 79 - 0
gkjsjy/trunk/WebContent/static/biz/js/ggfwxxgl/jdjc/jdjcmain.js

@@ -0,0 +1,79 @@
+/**
+ *角色管理
+ * 
+ */
+$.namespace("jdjc.main");
+
+
+
+jdjc.main.init=function(){
+	//把form传入,构造翻页控件
+	pageinfo($("#jdjcform"));
+}
+
+jdjc.main.search=function(){
+	$('#pagejump').val(1);
+	$("#jdjcform").submit();
+}
+
+
+
+jdjc.main.del=function(data){
+	$.confirm({
+	    title: '确认框',
+	    content: '确认删除吗',
+	    confirm: function(){
+	    	 $.post($.app + "/jdjc/delete", {
+                 id : data
+             }, function(data) {
+                 if (data.success) {
+                	 $.alert({
+                		    title: '提示',
+                		    content: '操作成功',
+                		    confirm: function(){
+                		    	$("#jdjcform").submit();
+                		    }
+                	 });
+                 } else {
+                	 $.alert({
+             		    title: '提示',
+             		    content: data.message,
+             		    confirm: function(){
+             		        
+             		    }
+             	 });
+                 }
+             }, "json");
+	    },
+	    cancel: function(){
+	        
+	    }
+	});
+}
+
+
+jdjc.main.edit=function(data){
+	location.href=$.app+"/jdjc/edit?id="+data;
+}
+
+jdjc.main.view=function(data){
+	location.href=$.app+"/jdjc/view?id="+data;
+}
+
+/**
+ * 弹出新增页面
+ * */
+jdjc.main.add=function(){
+	location.href=$.app+"/jdjc/add";
+}
+
+
+jdjc.main.banli = function(data) {
+	location.href = $.app + "/jdjc/view?flag=audit&id=" + data;
+}
+
+jdjc.main.back = function(data) {
+	location.href = $.app + "/jdjc/edit?flag=th&id=" + data;
+}
+
+

+ 502 - 0
gkjsjy/trunk/WebContent/static/biz/js/gkjsgl/jsjdcbsj/jsjdcbsjdetail.js

@@ -0,0 +1,502 @@
+
+$.namespace("jsjdcbsj.detail");
+
+jsjdcbsj.detail.szd =null;
+jsjdcbsj.detail.gk=null;
+jsjdcbsj.detail.gq=null;
+jsjdcbsj.detail.taskKey=null;
+jsjdcbsj.detail.init=function(){
+}
+
+jsjdcbsj.detail.back=function(){
+	location.href=$.app+"/jsjdcbsj/main";
+}
+
+van=function(a,b){
+	if(!isFDS(a.val())){
+		ts(b+"必须为正数",a);
+		return false;
+	}
+};
+
+jsjdcbsj.detail.save=function(){
+	 //验证浮点类型
+	 if(van($('#addform input[name=ztz]'),"总投资")==false){return false;}
+	 if(van($('#addform input[name=axcd]'),"岸线长度 ")==false){return false;}
+	 if(van($('#addform input[name=bwdj]'),"泊位吨级 ")==false){return false;}
+	 if(van($('#addform input[name=tgnl]'),"通过能力")==false){return false;}
+	 
+	 $(".btn").attr("disabled",true);
+	 $.ajax({
+         url:$.app+"/jsjdcbsj/save",
+         data:$("#addform").serialize(),
+         type:"post",
+         dataType:"json",
+         success:function(data){//ajax返回的数据
+	           if (data.success) {
+		           	$.alert({
+		       		    title: '提示',
+		       		    content: '操作成功',
+		       		    confirm: function(){
+		       		    location.href=$.app+'/jsjdcbsj/main';
+		       		    }
+		           	});
+	           }else {
+		           	$.alert({
+		       		    title: '提示',
+		       		    content: data.message,
+		       		    confirm: function(){
+		       		    	$(".btn").attr("disabled",false);
+		       		    }
+		           	});
+	           }
+	     }
+    }); 
+}
+	 
+	
+
+jsjdcbsj.detail.submit=function(){
+	 //验证浮点类型
+	 if(van($('#addform input[name=ztz]'),"总投资")==false){return false;}
+	 if(van($('#addform input[name=axcd]'),"岸线长度 ")==false){return false;}
+	 if(van($('#addform input[name=bwdj]'),"泊位吨级 ")==false){return false;}
+	 if(van($('#addform input[name=tgnl]'),"通过能力")==false){return false;}
+	 
+	 $(".btn").attr("disabled",true);
+	 $.ajax({
+        url:$.app+"/jsjdcbsj/submit",
+        data:$("#addform").serialize(),
+        type:"post",
+        dataType:"json",
+        success:function(data){//ajax返回的数据
+	           if (data.success) {
+		           	$.alert({
+		       		    title: '提示',
+		       		    content: '操作成功',
+		       		    confirm: function(){
+		       		    location.href=$.app+'/jsjdcbsj/main';
+		       		    }
+		           	});
+	           }else {
+		           	$.alert({
+		       		    title: '提示',
+		       		    content: data.message,
+		       		    confirm: function(){
+		       		    	$(".btn").attr("disabled",false);
+		       		    }
+		           	});
+	           }
+	     }
+   }); 
+}
+	
+//  构建项目类型下拉	
+	function initXmlxSelect(divid,existVal,width){
+		$.post($.app+"/jsjdcbsj/selectXmlx",{
+		},function(data) {
+			var str="";
+			str+="<select class='xmlxselectpicker' name='xmlxid' id='xmlxid'>";
+			str+="<option></option>";
+			if(data){
+				for(var i=0;i<data.length;i++){
+					var xmlx=data[i];
+					if(xmlx.val==existVal){
+						str+=" <option selected='selected' value='"+xmlx.id+"' >"+xmlx.text+"</option>";
+					}else{
+						str+="<option value='"+xmlx.id+"'>"+xmlx.text+"</option>" ;
+					}
+				}
+			}
+			str+="</select>";
+			$("#"+divid).empty;
+			$("#"+divid).append(str);
+			$('.xmlxselectpicker').selectpicker({
+	    		width:width
+	    	});
+		}, "json");
+	}		
+	//  构建投资类型下拉	
+function initTzlxSelect(divid,existVal,width){
+	$.post($.app+"/jsjdcbsj/selectTzlx",{
+},function(data) {
+	var str="";
+str+="<select class='tzlxselectpicker' name='tzlxid' id='tzlxid'>";
+str+="<option></option>";
+if(data){
+	for(var i=0;i<data.length;i++){
+		var tzlx=data[i];
+		if(tzlx.val==existVal){
+			str+=" <option selected='selected' value='"+tzlx.id+"' >"+tzlx.text+"</option>";
+	}else{
+		str+="<option value='"+tzlx.id+"'>"+tzlx.text+"</option>" ;
+		}
+	}
+}
+str+="</select>";
+$("#"+divid).empty();
+$("#"+divid).append(str);
+$('.tzlxselectpicker').selectpicker({
+		width:width
+	});
+}, "json");
+}
+	//  构建项目核准级别下拉	
+function initXmhzjbSelect(divid,existVal,width){
+	$.post($.app+"/jsjdcbsj/selectXmhzjb",{
+},function(data) {
+	var str="";
+str+="<select class='xmhzjbselectpicker' name='xmhzjbid' id='xmhzjbid'>";
+str+="<option></option>";
+if(data){
+	for(var i=0;i<data.length;i++){
+		var xmhzjb=data[i];
+		if(xmhzjb.val==existVal){
+			str+=" <option selected='selected' value='"+xmhzjb.id+"' >"+xmhzjb.text+"</option>";
+		}else{
+			str+="<option value='"+xmhzjb.id+"'>"+xmhzjb.text+"</option>" ;
+		}
+	}
+}
+str+="</select>";
+$("#"+divid).empty();
+$("#"+divid).append(str);
+$('.xmhzjbselectpicker').selectpicker({
+		width:width
+	});
+}, "json");
+}
+	//  构建岸线审批级别下拉	
+function initAxspjbSelect(divid,existVal,width){
+	$.post($.app+"/jsjdcbsj/selectAxspjb",{
+},function(data) {
+	var str="";
+	str+="<select class='axspjbselectpicker' name='axspjbid' id='axspjbid'>";
+	str+="<option></option>";
+	if(data){
+		for(var i=0;i<data.length;i++){
+			var axspjb=data[i];
+			if(axspjb.val==existVal){
+				str+=" <option selected='selected' value='"+axspjb.id+"' >"+axspjb.text+"</option>";
+			}else{
+				str+="<option value='"+axspjb.id+"'>"+axspjb.text+"</option>" ;
+			}
+		}
+	}
+	str+="</select>";
+	$("#"+divid).empty();
+	$("#"+divid).append(str);
+	$('.axspjbselectpicker').selectpicker({
+		width:width
+	});
+}, "json");
+}
+	
+				jsjdcbsj.detail.initZyhbwfl=function(divid, existVal,bwytstr){
+					var flag = "2";
+//					var bwytstr = $('.bwytselectpicker').val()+"";
+if(bwytstr.indexOf("1804")>=0){
+	flag="1";
+}
+ $.post($.app + "/bw/selectZyhbwfl?flag="+flag, {
+     
+ }, function(data) {
+     if (data) {
+    	 var str = "";
+		str+="<select   class='zyhbwflselectpicker' name='zyhbwflid' id='zyhbwflid'>";
+		str+="<option></option>";
+			for(var i=0;i<data.length;i++){
+				var zyhbwfl = data[i];
+				if(zyhbwfl.id==existVal){
+					str+=" <option selected='selected' value='"+zyhbwfl.id+"' >"+zyhbwfl.text+"</option>";
+				}else{
+					str+=" <option value='"+zyhbwfl.id+"' >"+zyhbwfl.text+"</option>";
+				}
+			}
+		str+="</select>";
+		$("#"+divid).empty();
+		$("#"+divid).append(str);
+		
+		$('.zyhbwflselectpicker').selectpicker({
+			width:'80%'
+    		});
+     } else {
+    	
+     }
+ }, "json");
+};
+
+jsjdcbsj.detail.initBwyt=function(divid, existVal){
+	 $.post($.app + "/bw/selectBwyt", {
+       
+   }, function(data) {
+       if (data) {
+       	var existValArr = existVal.split(",");
+  	 	var str = "";
+  		str+="<select multiple='multiple' onchange='ytsel()' class='bwytselectpicker' name='bwyt' id='bwyt' >";
+  		str+="<option></option>";
+  			for(var i=0;i<data.length;i++){
+  				var flag = false;
+  				var bwyt = data[i];
+  				for(var j = 0; j < existValArr.length; j++){
+  					if(bwyt.id==existValArr[j]){
+  						flag = true;
+      					str+=" <option selected='selected' value='"+bwyt.id+"' >"+bwyt.text+"</option>";
+      					break;
+      				} else {
+      					flag = false;
+      				}
+  				}
+  				if(!flag){
+  					str+=" <option value='"+bwyt.id+"' >"+bwyt.text+"</option>";
+  				}
+  			}
+  		str+="</select>";
+  		$("#"+divid).empty();
+  		$("#"+divid).append(str);
+  		
+  		$('.bwytselectpicker').selectpicker({
+  			width: '80%'
+      		});
+       } else {
+      	
+       }
+   }, "json");
+};				
+
+//构建所在地的下拉
+//参数说明依次,1(必须)存放下拉的div的id,2(非必须)下拉初始选中的值,没有传没有传空字符串,3(非必须)下拉change事件,根据需要添加4(必须)下拉框的长度
+//此下拉如果跟着form一起提交后台的话,对应的是szd属性,
+jsjdcbsj.detail.initszdSelect=function(divid,existVal,changefunc,width,disable){
+	$.post($.app + "/selectSzd", {
+    
+}, function(data) {
+	var str = "";
+	if(changefunc!=null&&changefunc!=""){
+		if(disable!=null&&disable!=''){
+			str+="<select disabled   class='szdselectpicker' name='szdid' onchange='"+changefunc+"()' id='szdid'>";
+		}else{
+			str+="<select    class='szdselectpicker' name='szdid' onchange='"+changefunc+"()' id='szdid'>";
+		}
+	}else{
+		if(disable!=null&&disable!=''){
+			str+="<select  disabled class='szdselectpicker' name='szdid'  id='szdid'>";
+		}else{
+			str+="<select   class='szdselectpicker' name='szdid'  id='szdid'>";
+		}
+	}
+	str+="<option></option>";
+	if(data){
+		for(var i=0;i<data.length;i++){
+			var szd = data[i];
+			if(szd.val==existVal){
+				str+=" <option selected='selected' value='"+szd.id+"' >"+szd.text+"</option>";
+			}else{
+				str+=" <option value='"+szd.id+"' >"+szd.text+"</option>";
+			}
+		}
+	}
+	str+="</select>";
+	$("#"+divid).empty();
+	$("#"+divid).append(str);
+	$('.szdselectpicker').selectpicker({
+		width:width
+	});
+	
+}, "json");
+}
+
+//构建港口的下拉
+//参数说明依次,1(必须)存放下拉的div的id,2(非必须)下拉初始选中的值,没有传空字符串,3(非必须)参数,根据所在地过滤结果,一般级联需要4(非必须)下拉change事件5(必须)下拉框的长度
+//此下拉如果跟着form一起提交后台的话,对应的是szd属性,
+ jsjdcbsj.detail.initgkSelect=function(divid,existVal,szd,changefunc,width,disable){
+	$.post($.app + "/selectGk", {
+      szd:szd
+  }, function(data) {
+  	var str = "";
+if(changefunc!=null&&changefunc!=""){
+	if(disable!=null&&disable!=''){
+		str+="<select disabled  class='gkselectpicker' name='szgkid' onchange='"+changefunc+"()' id='szgkid'>";
+	}else{
+		str+="<select   class='gkselectpicker' name='szgkid' onchange='"+changefunc+"()' id='szgkid'>";
+	}
+	
+}else{
+	if(disable!=null&&disable!=''){
+		str+="<select disabled class='gkselectpicker' name='szgkid'  id='szgkid'>";
+	}else{
+		str+="<select class='gkselectpicker' name='szgkid'  id='szgkid'>";
+	}
+}
+
+str+="<option></option>";
+if(data){
+	for(var i=0;i<data.length;i++){
+		var gk = data[i];
+		if(gk.id==existVal){
+			str+=" <option selected='selected' value='"+gk.id+"' >"+gk.gkmc+"</option>";
+		}else{
+			str+=" <option value='"+gk.id+"' >"+gk.gkmc+"</option>";
+		}
+	}
+}
+str+="</select>";
+$("#"+divid).empty();
+$("#"+divid).append(str);
+$('.gkselectpicker').selectpicker({
+	width:width
+});
+ //如果所在地选择为空,重置港区select;
+  }, "json");
+}
+
+//构建港区的下拉
+//参数说明依次,1(必须)存放下拉的div的id,2(非必须)下拉初始选中的值,没有传空字符串,3(非必须)参数,根据所在地过滤结果,一般级联需要4(非必须)下拉change事件5(必须)下拉框的长度
+//此下拉如果跟着form一起提交后台的话,对应的是szd属性,
+ jsjdcbsj.detail.initgqSelect=function(divid,existVal,szd,gk,changefunc,width,disable){
+	$.post($.app + "/selectGq", {
+    szd:szd,
+    szgk:gk
+}, function(data) {
+	var str = "";
+	if(changefunc!=null&&changefunc!=""){
+		if(disable!=null&&disable!=''){
+			str+="<select disabled  class='gqselectpicker' name='szgqid' onchange='"+changefunc+"()' id='szgqid'>";
+		}else{
+			str+="<select   class='gqselectpicker' name='szgqid' onchange='"+changefunc+"()' id='szgqid'>";
+		}
+	}else{
+		if(disable!=null&&disable!=''){
+			str+="<select  disabled class='gqselectpicker' name='szgqid'  id='szgqid'>";
+		}else{
+			str+="<select   class='gqselectpicker' name='szgqid'  id='szgqid'>";
+		}
+	}
+	
+	str+="<option></option>";
+	if(data){
+		for(var i=0;i<data.length;i++){
+			var gq = data[i];
+			if(gq.id==existVal){
+				str+=" <option selected='selected' value='"+gq.id+"' >"+gq.gqmc+"</option>";
+			}else{
+				str+=" <option value='"+gq.id+"' >"+gq.gqmc+"</option>";
+			}
+		}
+	}
+	str+="</select>";
+	$("#"+divid).empty();
+	$("#"+divid).append(str);
+	$('.gqselectpicker').selectpicker({
+		width:width
+	});
+}, "json");
+}
+ 
+ 
+ 
+ jsjdcbsj.detail.audit=function(auditpass,id){
+	 
+	//附件
+	var accidName= document.getElementsByName("accid");
+    var accids = [];
+    for (i=0; i<accidName.length; i++){  
+    	accids.push(accidName[i].value)
+    }
+    $('#accids').val(accids);
+	$(".btn").attr("disabled",true);
+	var opflag = $('#opflag').val();
+	var shyj = $('#yj').val();
+	var audit;
+	if(auditpass=="Y"){
+		audit=true;
+	}else{
+		audit=false;
+	}
+	$.post($.app + "/jsjdcbsj/audit", {
+		id:id,
+        shyj:shyj,
+        flag:audit,
+        userids:$('#userids').val(),
+        accid:$('#accids').val()
+    }, function(data) {
+    	if (data.success) {
+           	$.alert({
+       		    title: '提示',
+       		    content: '操作成功',
+       		    confirm: function(){
+       		    	jsjdcbsj.detail.back();
+       		    }
+           	});
+       }else {
+           	$.alert({
+       		    title: '提示',
+       		    content: data.message,
+       		    confirm: function(){
+       		    	$(".btn").attr("disabled",false);
+       		    }
+           	});
+       }
+    	
+    }, "json");
+};
+
+jsjdcbsj.detail.submitFile = function(){
+	$('#addform').form('submit',{
+		url : $.app + '/jsjdcbsj/saveFile',
+		onSubmit : function() {},
+		success : function(data, status) {
+			if (data) {
+				data = data.replace("<audio controls=\"controls\" style=\"display: none;\"></audio>","");
+				data = $.parseJSON(data);
+			}
+			if (data.success) {
+				var len = $('#tableId tr').length;
+				var accContect = data.attrs.acc.fjmc;
+				var fjid = data.attrs.acc.fjid;
+				var accid = data.attrs.acc.id;
+				var str = "<tr align='center'>";
+				str =str +"<td style='width:40%'>"+ "<input id='accid' value='"
+						+ accid
+						+ "' name='accid' type='hidden'>"
+						+ "<a class='main_title' href='/jsjy/accessory/download?id="
+						+ fjid + "'> " + accContect + "</a>" +"</td>";
+				
+				str =str+"<td style='width:15%'>"+ '<a class="btn btn-default btn-xs" href="#" onclick="jsjdcbsj.detail.delFj(\''
+						+ accid
+						+ '\','
+						+ '$(this)'
+						+ ')">删除</a>' +"</td></tr>";
+				$('#tableId').append(str);
+			} else {
+				$.messager.showError(data.message);
+			}
+		}
+	});
+}
+
+//删除accid 附件关联ID,id 是第几行附件
+jsjdcbsj.detail.delFj = function(accid, tr) {
+	$.confirm({
+		title : '确认框',
+		content : '确认删除吗',
+		confirm : function() {
+			$.post($.app + "/jsjdcbsj/delFile", {
+				accid : accid
+			}, function(data) {
+				if (data.success) {
+					$(tr).parent().parent().remove();
+				} else {
+					$.alert({
+						title : '提示',
+						content : data.message,
+						confirm : function() {
+						}
+					});
+				}
+			}, "json");
+		},
+		cancel : function() {
+		}
+	});
+}

+ 106 - 0
gkjsjy/trunk/WebContent/static/biz/js/gkjsgl/jsjdcbsj/jsjdcbsjmain.js

@@ -0,0 +1,106 @@
+
+$.namespace("jsjdcbsj.main");
+
+jsjdcbsj.main.init=function(){
+	//把form传入,构造翻页控件
+	pageinfo($("#jsjdcbsjform"));	
+}
+
+jsjdcbsj.main.search=function(){
+	$('#pagejump').val(1);
+	$("#jsjdcbsjform").submit();
+}
+
+
+jsjdcbsj.main.del=function(data){
+		$.confirm({
+		    title: '确认框',
+		    content: '确认删除吗',
+		    confirm: function(){
+		    	 $.post($.app + "/jsjdcbsj/delete", {
+	                 id : data
+	             }, function(data) {
+	                 if (data.success) {
+	                	 $.alert({
+	                		    title: '提示',
+	                		    content: '删除成功',
+	                		    confirm: function(){
+	                		    $("#jsjdcbsjform").submit();
+	                		    }
+	                	 });
+	                 } else {
+	                	 $.alert({
+	             		    title: '提示',
+	             		    content: data.message,
+	             		    confirm: function(){
+	             		        
+	             		    }
+	             	 });
+	                 }
+	             }, "json");
+		    },
+		    cancel: function(){
+		        
+		    }
+		});
+}
+
+jsjdcbsj.main.edit=function(data){
+	location.href=$.app+"/jsjdcbsj/edit?id="+data;
+}
+
+jsjdcbsj.main.view=function(data){
+	location.href=$.app+"/jsjdcbsj/view?id="+data;
+}
+
+/**
+ * 弹出新增页面
+ * */
+jsjdcbsj.main.add=function(){
+	location.href=$.app+"/jsjdcbsj/add";
+}
+
+jsjdcbsj.main.back=function(){
+	location.href=$.app+"/tzjhgl/add";
+}
+
+jsjdcbsj.main.viewXmjd = function(data){
+	location.href=$.app+"/jsjdgl/view?id="+data;
+}
+
+jsjdcbsj.main.viewNdjh = function(data){
+	location.href=$.app+"/tzjhgl/main?xmid="+data;
+
+}
+
+jsjdcbsj.main.initSfyzjbzsel=function(divid,existVal,width){
+	 $.post($.app + "/tzjhgl/selectSf", {
+    
+}, function(data) {
+    if (data) {
+   	 var str = "";
+   		str+="<select   class='sfyzjbzselectpicker' name='sfyzjbzid'  >";
+   		str+="<option></option>";
+   			for(var i=0;i<data.length;i++){
+   				var sfyzjbz = data[i];
+   				if(sfyzjbz.id==existVal){
+   					str+=" <option selected='selected' value='"+sfyzjbz.id+"' >"+sfyzjbz.text+"</option>";
+   				}else{
+   					str+=" <option value='"+sfyzjbz.id+"' >"+sfyzjbz.text+"</option>";
+   				}
+   			}
+   		str+="</select>";
+   		$("#"+divid).empty();
+   		$("#"+divid).append(str);
+   		$('.sfyzjbzselectpicker').selectpicker({
+   			width:width
+   		});
+    } else {
+   	
+    }
+}, "json");
+};
+
+jsjdcbsj.main.banli = function(data) {
+	location.href = $.app + "/jsjdcbsj/view?flag=audit&id=" + data;
+}

+ 86 - 0
gkjsjy/trunk/resources/deployments/jdjc.bpmn

@@ -0,0 +1,86 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:activiti="http://activiti.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.activiti.org/test">
+  <process id="jdjc" name="督查检查" isExecutable="true">
+    <startEvent id="startevent1" name="Start" activiti:initiator="applyUserId"></startEvent>
+    <userTask id="xzrysq" name="行政人员申请" activiti:candidateGroups="${role_jdtx}">
+      <extensionElements>
+        <activiti:taskListener event="create" delegateExpression="${taskVarBean}">
+          <activiti:field name="varName">
+            <activiti:string><![CDATA[var_autoComplete]]></activiti:string>
+          </activiti:field>
+          <activiti:field name="varValue">
+            <activiti:string><![CDATA[true]]></activiti:string>
+          </activiti:field>
+        </activiti:taskListener>
+      </extensionElements>
+    </userTask>
+    <sequenceFlow id="flow1" sourceRef="startevent1" targetRef="xzrysq"></sequenceFlow>
+    <userTask id="jyrqr" name="经营人确认" activiti:candidateGroups="${role_jyr}"></userTask>
+    <sequenceFlow id="flow2" sourceRef="xzrysq" targetRef="jyrqr"></sequenceFlow>
+    <userTask id="xzrysh" name="行政人员审核" activiti:candidateGroups="${role_jdtx}"></userTask>
+    <exclusiveGateway id="exclusivegateway2" name="Exclusive Gateway"></exclusiveGateway>
+    <sequenceFlow id="flow7" sourceRef="xzrysh" targetRef="exclusivegateway2"></sequenceFlow>
+    <sequenceFlow id="flow8" name="不通过" sourceRef="exclusivegateway2" targetRef="jyrqr">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${!auditPass_xzrysh}]]></conditionExpression>
+    </sequenceFlow>
+    <endEvent id="endevent1" name="End"></endEvent>
+    <sequenceFlow id="flow9" name="通过" sourceRef="exclusivegateway2" targetRef="endevent1">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${auditPass_xzrysh}]]></conditionExpression>
+    </sequenceFlow>
+    <sequenceFlow id="flow10" sourceRef="jyrqr" targetRef="xzrysh"></sequenceFlow>
+  </process>
+  <bpmndi:BPMNDiagram id="BPMNDiagram_jdjc">
+    <bpmndi:BPMNPlane bpmnElement="jdjc" id="BPMNPlane_jdjc">
+      <bpmndi:BPMNShape bpmnElement="startevent1" id="BPMNShape_startevent1">
+        <omgdc:Bounds height="35.0" width="35.0" x="150.0" y="210.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="xzrysq" id="BPMNShape_xzrysq">
+        <omgdc:Bounds height="55.0" width="105.0" x="230.0" y="200.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="jyrqr" id="BPMNShape_jyrqr">
+        <omgdc:Bounds height="55.0" width="105.0" x="390.0" y="200.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="xzrysh" id="BPMNShape_xzrysh">
+        <omgdc:Bounds height="55.0" width="105.0" x="590.0" y="200.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="exclusivegateway2" id="BPMNShape_exclusivegateway2">
+        <omgdc:Bounds height="40.0" width="40.0" x="622.0" y="370.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="endevent1" id="BPMNShape_endevent1">
+        <omgdc:Bounds height="35.0" width="35.0" x="820.0" y="210.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge bpmnElement="flow1" id="BPMNEdge_flow1">
+        <omgdi:waypoint x="185.0" y="227.0"></omgdi:waypoint>
+        <omgdi:waypoint x="230.0" y="227.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow2" id="BPMNEdge_flow2">
+        <omgdi:waypoint x="335.0" y="227.0"></omgdi:waypoint>
+        <omgdi:waypoint x="390.0" y="227.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow7" id="BPMNEdge_flow7">
+        <omgdi:waypoint x="642.0" y="255.0"></omgdi:waypoint>
+        <omgdi:waypoint x="642.0" y="370.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow8" id="BPMNEdge_flow8">
+        <omgdi:waypoint x="622.0" y="390.0"></omgdi:waypoint>
+        <omgdi:waypoint x="442.0" y="389.0"></omgdi:waypoint>
+        <omgdi:waypoint x="442.0" y="255.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="36.0" x="524.0" y="398.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow9" id="BPMNEdge_flow9">
+        <omgdi:waypoint x="662.0" y="390.0"></omgdi:waypoint>
+        <omgdi:waypoint x="837.0" y="390.0"></omgdi:waypoint>
+        <omgdi:waypoint x="837.0" y="245.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="24.0" x="689.0" y="397.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow10" id="BPMNEdge_flow10">
+        <omgdi:waypoint x="495.0" y="227.0"></omgdi:waypoint>
+        <omgdi:waypoint x="590.0" y="227.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+    </bpmndi:BPMNPlane>
+  </bpmndi:BPMNDiagram>
+</definitions>

+ 465 - 0
gkjsjy/trunk/resources/deployments/jsjdcbsj.bpmn

@@ -0,0 +1,465 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:activiti="http://activiti.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.activiti.org/test">
+  <process id="jsjdcbsj" name="建设进度初步设计" isExecutable="true">
+    <startEvent id="startevent1" name="Start" activiti:initiator="applyUserId"></startEvent>
+    <userTask id="sljbr" name="受理经办人" activiti:assignee="${applyUserId}">
+      <extensionElements>
+        <activiti:taskListener event="create" delegateExpression="${taskVarBean}">
+          <activiti:field name="varName">
+            <activiti:string><![CDATA[var_autoComplete]]></activiti:string>
+          </activiti:field>
+          <activiti:field name="varValue">
+            <activiti:string><![CDATA[true]]></activiti:string>
+          </activiti:field>
+        </activiti:taskListener>
+      </extensionElements>
+    </userTask>
+    <sequenceFlow id="flow1" sourceRef="startevent1" targetRef="sljbr"></sequenceFlow>
+    <userTask id="fgldbl" name="分管领导办理" activiti:candidateGroups="${role_fgld}"></userTask>
+    <userTask id="kscs" name="科室初审" activiti:assignee="${assignee}">
+      <multiInstanceLoopCharacteristics isSequential="false" activiti:collection="assigneeList" activiti:elementVariable="assignee">
+        <completionCondition>${nrOfInstances==nrOfCompletedInstances||!auditPass_kscs}</completionCondition>
+      </multiInstanceLoopCharacteristics>
+    </userTask>
+    <exclusiveGateway id="exclusivegateway4" name="Exclusive Gateway"></exclusiveGateway>
+    <sequenceFlow id="flow13" sourceRef="fgldbl" targetRef="exclusivegateway4"></sequenceFlow>
+    <sequenceFlow id="flow14" name="不通过" sourceRef="exclusivegateway4" targetRef="sljbr">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${!auditPass_fgldbl}]]></conditionExpression>
+    </sequenceFlow>
+    <userTask id="ksbl" name="科室办理" activiti:candidateGroups="${role_ks}"></userTask>
+    <userTask id="ldbl" name="领导办理" activiti:candidateGroups="${role_ld}"></userTask>
+    <exclusiveGateway id="exclusivegateway6" name="Exclusive Gateway"></exclusiveGateway>
+    <sequenceFlow id="flow20" sourceRef="ldbl" targetRef="exclusivegateway6"></sequenceFlow>
+    <sequenceFlow id="flow22" name="通过" sourceRef="exclusivegateway6" targetRef="fgldbl">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${auditPass_ldbl}]]></conditionExpression>
+    </sequenceFlow>
+    <exclusiveGateway id="exclusivegateway7" name="Exclusive Gateway"></exclusiveGateway>
+    <sequenceFlow id="flow23" sourceRef="ksbl" targetRef="exclusivegateway7"></sequenceFlow>
+    <sequenceFlow id="flow24" name="不通过" sourceRef="exclusivegateway7" targetRef="sljbr">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${!auditPass_ksbl}]]></conditionExpression>
+    </sequenceFlow>
+    <sequenceFlow id="flow26" name="通过" sourceRef="exclusivegateway4" targetRef="ksbl">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${auditPass_fgldbl}]]></conditionExpression>
+    </sequenceFlow>
+    <userTask id="jbrbl" name="经办人办理" activiti:candidateGroups="${role_jbr}"></userTask>
+    <exclusiveGateway id="exclusivegateway8" name="Exclusive Gateway"></exclusiveGateway>
+    <sequenceFlow id="flow27" sourceRef="kscs" targetRef="exclusivegateway8"></sequenceFlow>
+    <sequenceFlow id="flow28" name="通过" sourceRef="exclusivegateway7" targetRef="jbrbl">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${auditPass_ksbl}]]></conditionExpression>
+    </sequenceFlow>
+    <exclusiveGateway id="exclusivegateway9" name="Exclusive Gateway"></exclusiveGateway>
+    <sequenceFlow id="flow29" sourceRef="jbrbl" targetRef="exclusivegateway9"></sequenceFlow>
+    <sequenceFlow id="flow30" name="不通过" sourceRef="exclusivegateway9" targetRef="sljbr">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${!auditPass_jbrbl}]]></conditionExpression>
+    </sequenceFlow>
+    <sequenceFlow id="flow31" name="不通过" sourceRef="exclusivegateway8" targetRef="sljbr">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${!auditPass_kscs}]]></conditionExpression>
+    </sequenceFlow>
+    <sequenceFlow id="flow32" name="通过" sourceRef="exclusivegateway9" targetRef="kscs">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${auditPass_ksbl}]]></conditionExpression>
+    </sequenceFlow>
+    <userTask id="fgldcs" name="分管领导初审" activiti:candidateGroups="${role_fgld}"></userTask>
+    <userTask id="ldcs" name="领导初审" activiti:candidateGroups="${role_ld}"></userTask>
+    <userTask id="zjps" name="专家评审" activiti:candidateGroups="${role_jbr}"></userTask>
+    <exclusiveGateway id="exclusivegateway10" name="Exclusive Gateway"></exclusiveGateway>
+    <sequenceFlow id="flow33" sourceRef="fgldcs" targetRef="exclusivegateway10"></sequenceFlow>
+    <sequenceFlow id="flow34" name="不通过" sourceRef="exclusivegateway10" targetRef="sljbr">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${!auditPass_fgldcs}]]></conditionExpression>
+    </sequenceFlow>
+    <sequenceFlow id="flow35" name="通过" sourceRef="exclusivegateway10" targetRef="ldcs">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${auditPass_fgldcs}]]></conditionExpression>
+    </sequenceFlow>
+    <exclusiveGateway id="exclusivegateway11" name="Exclusive Gateway"></exclusiveGateway>
+    <sequenceFlow id="flow36" sourceRef="ldcs" targetRef="exclusivegateway11"></sequenceFlow>
+    <sequenceFlow id="flow37" name="不通过" sourceRef="exclusivegateway11" targetRef="sljbr">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${!auditPass_ldcs}]]></conditionExpression>
+    </sequenceFlow>
+    <sequenceFlow id="flow38" name="通过" sourceRef="exclusivegateway11" targetRef="zjps">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${auditPass_ldcs}]]></conditionExpression>
+    </sequenceFlow>
+    <userTask id="fgldsh" name="分管领导审核" activiti:candidateGroups="${role_fgld}"></userTask>
+    <userTask id="cnxk" name="草拟许可" activiti:assignee="${assignee}">
+      <multiInstanceLoopCharacteristics isSequential="false" activiti:collection="assigneeList" activiti:elementVariable="assignee">
+        <completionCondition>${nrOfInstances==nrOfCompletedInstances|| !auditPass_cnxk}</completionCondition>
+      </multiInstanceLoopCharacteristics>
+    </userTask>
+    <exclusiveGateway id="exclusivegateway12" name="Exclusive Gateway"></exclusiveGateway>
+    <sequenceFlow id="flow40" sourceRef="cnxk" targetRef="exclusivegateway12"></sequenceFlow>
+    <sequenceFlow id="flow41" name="不通过" sourceRef="exclusivegateway12" targetRef="zjps">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${!auditPass_cnxk}]]></conditionExpression>
+    </sequenceFlow>
+    <sequenceFlow id="flow42" name="通过" sourceRef="exclusivegateway12" targetRef="fgldsh">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${auditPass_cnxk}]]></conditionExpression>
+    </sequenceFlow>
+    <userTask id="ldpz" name="领导批准" activiti:candidateGroups="${role_ld}"></userTask>
+    <exclusiveGateway id="exclusivegateway13" name="Exclusive Gateway"></exclusiveGateway>
+    <sequenceFlow id="flow43" sourceRef="fgldsh" targetRef="exclusivegateway13"></sequenceFlow>
+    <sequenceFlow id="flow45" name="通过" sourceRef="exclusivegateway13" targetRef="ldpz">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${auditPass_fgldsh}]]></conditionExpression>
+    </sequenceFlow>
+    <endEvent id="endevent1" name="End"></endEvent>
+    <sequenceFlow id="flow47" name="通过" sourceRef="exclusivegateway8" targetRef="fgldcs">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${auditPass_kscs}]]></conditionExpression>
+    </sequenceFlow>
+    <sequenceFlow id="flow48" name="不通过" sourceRef="exclusivegateway6" targetRef="sljbr">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${!auditPass_ldbl}]]></conditionExpression>
+    </sequenceFlow>
+    <exclusiveGateway id="exclusivegateway14" name="Exclusive Gateway"></exclusiveGateway>
+    <sequenceFlow id="flow49" sourceRef="zjps" targetRef="exclusivegateway14"></sequenceFlow>
+    <sequenceFlow id="flow50" name="通过" sourceRef="exclusivegateway14" targetRef="cnxk">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${auditPass_zjps}]]></conditionExpression>
+    </sequenceFlow>
+    <sequenceFlow id="flow52" name="不通过" sourceRef="exclusivegateway13" targetRef="zjps">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${!auditPass_fgldsh}]]></conditionExpression>
+    </sequenceFlow>
+    <sequenceFlow id="flow54" name="不通过" sourceRef="exclusivegateway14" targetRef="endevent1">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${!auditPass_zjps}]]></conditionExpression>
+    </sequenceFlow>
+    <exclusiveGateway id="exclusivegateway15" name="Exclusive Gateway"></exclusiveGateway>
+    <sequenceFlow id="flow55" sourceRef="ldpz" targetRef="exclusivegateway15"></sequenceFlow>
+    <sequenceFlow id="flow56" name="通过" sourceRef="exclusivegateway15" targetRef="endevent1">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${auditPass_ldpz}]]></conditionExpression>
+    </sequenceFlow>
+    <sequenceFlow id="flow57" name="不通过" sourceRef="exclusivegateway15" targetRef="zjps">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${!auditPass_ldpz}]]></conditionExpression>
+    </sequenceFlow>
+    <exclusiveGateway id="exclusivegateway16" name="Exclusive Gateway"></exclusiveGateway>
+    <sequenceFlow id="flow58" sourceRef="sljbr" targetRef="exclusivegateway16"></sequenceFlow>
+    <sequenceFlow id="flow59" name="不通过" sourceRef="exclusivegateway16" targetRef="endevent1">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${!auditPass_sljbr}]]></conditionExpression>
+    </sequenceFlow>
+    <sequenceFlow id="flow60" name="通过" sourceRef="exclusivegateway16" targetRef="ldbl">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${auditPass_sljbr}]]></conditionExpression>
+    </sequenceFlow>
+  </process>
+  <bpmndi:BPMNDiagram id="BPMNDiagram_jsjdcbsj">
+    <bpmndi:BPMNPlane bpmnElement="jsjdcbsj" id="BPMNPlane_jsjdcbsj">
+      <bpmndi:BPMNShape bpmnElement="startevent1" id="BPMNShape_startevent1">
+        <omgdc:Bounds height="35.0" width="35.0" x="30.0" y="270.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="sljbr" id="BPMNShape_sljbr">
+        <omgdc:Bounds height="55.0" width="105.0" x="90.0" y="260.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="fgldbl" id="BPMNShape_fgldbl">
+        <omgdc:Bounds height="55.0" width="105.0" x="399.0" y="260.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="kscs" id="BPMNShape_kscs">
+        <omgdc:Bounds height="55.0" width="105.0" x="846.0" y="264.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="exclusivegateway4" id="BPMNShape_exclusivegateway4">
+        <omgdc:Bounds height="40.0" width="40.0" x="431.0" y="397.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="ksbl" id="BPMNShape_ksbl">
+        <omgdc:Bounds height="55.0" width="105.0" x="550.0" y="264.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="ldbl" id="BPMNShape_ldbl">
+        <omgdc:Bounds height="55.0" width="105.0" x="241.0" y="260.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="exclusivegateway6" id="BPMNShape_exclusivegateway6">
+        <omgdc:Bounds height="40.0" width="40.0" x="273.0" y="145.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="exclusivegateway7" id="BPMNShape_exclusivegateway7">
+        <omgdc:Bounds height="40.0" width="40.0" x="582.0" y="99.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="jbrbl" id="BPMNShape_jbrbl">
+        <omgdc:Bounds height="55.0" width="105.0" x="700.0" y="264.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="exclusivegateway8" id="BPMNShape_exclusivegateway8">
+        <omgdc:Bounds height="40.0" width="40.0" x="878.0" y="59.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="exclusivegateway9" id="BPMNShape_exclusivegateway9">
+        <omgdc:Bounds height="40.0" width="40.0" x="732.0" y="437.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="fgldcs" id="BPMNShape_fgldcs">
+        <omgdc:Bounds height="55.0" width="105.0" x="1000.0" y="264.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="ldcs" id="BPMNShape_ldcs">
+        <omgdc:Bounds height="55.0" width="105.0" x="1150.0" y="264.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="zjps" id="BPMNShape_zjps">
+        <omgdc:Bounds height="55.0" width="105.0" x="1181.0" y="617.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="exclusivegateway10" id="BPMNShape_exclusivegateway10">
+        <omgdc:Bounds height="40.0" width="40.0" x="1032.0" y="490.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="exclusivegateway11" id="BPMNShape_exclusivegateway11">
+        <omgdc:Bounds height="40.0" width="40.0" x="1182.0" y="30.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="fgldsh" id="BPMNShape_fgldsh">
+        <omgdc:Bounds height="55.0" width="105.0" x="814.0" y="617.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="cnxk" id="BPMNShape_cnxk">
+        <omgdc:Bounds height="55.0" width="105.0" x="979.0" y="617.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="exclusivegateway12" id="BPMNShape_exclusivegateway12">
+        <omgdc:Bounds height="40.0" width="40.0" x="1011.0" y="550.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="ldpz" id="BPMNShape_ldpz">
+        <omgdc:Bounds height="55.0" width="105.0" x="633.0" y="617.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="exclusivegateway13" id="BPMNShape_exclusivegateway13">
+        <omgdc:Bounds height="40.0" width="40.0" x="846.0" y="740.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="endevent1" id="BPMNShape_endevent1">
+        <omgdc:Bounds height="35.0" width="35.0" x="420.0" y="627.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="exclusivegateway14" id="BPMNShape_exclusivegateway14">
+        <omgdc:Bounds height="40.0" width="40.0" x="1112.0" y="703.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="exclusivegateway15" id="BPMNShape_exclusivegateway15">
+        <omgdc:Bounds height="40.0" width="40.0" x="572.0" y="624.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="exclusivegateway16" id="BPMNShape_exclusivegateway16">
+        <omgdc:Bounds height="40.0" width="40.0" x="203.0" y="330.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge bpmnElement="flow1" id="BPMNEdge_flow1">
+        <omgdi:waypoint x="65.0" y="287.0"></omgdi:waypoint>
+        <omgdi:waypoint x="90.0" y="287.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow13" id="BPMNEdge_flow13">
+        <omgdi:waypoint x="451.0" y="315.0"></omgdi:waypoint>
+        <omgdi:waypoint x="451.0" y="397.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow14" id="BPMNEdge_flow14">
+        <omgdi:waypoint x="431.0" y="417.0"></omgdi:waypoint>
+        <omgdi:waypoint x="142.0" y="417.0"></omgdi:waypoint>
+        <omgdi:waypoint x="142.0" y="349.0"></omgdi:waypoint>
+        <omgdi:waypoint x="142.0" y="315.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="36.0" x="368.0" y="422.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow20" id="BPMNEdge_flow20">
+        <omgdi:waypoint x="293.0" y="260.0"></omgdi:waypoint>
+        <omgdi:waypoint x="293.0" y="185.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow22" id="BPMNEdge_flow22">
+        <omgdi:waypoint x="313.0" y="165.0"></omgdi:waypoint>
+        <omgdi:waypoint x="451.0" y="165.0"></omgdi:waypoint>
+        <omgdi:waypoint x="451.0" y="260.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="24.0" x="323.0" y="165.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow23" id="BPMNEdge_flow23">
+        <omgdi:waypoint x="602.0" y="264.0"></omgdi:waypoint>
+        <omgdi:waypoint x="602.0" y="139.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow24" id="BPMNEdge_flow24">
+        <omgdi:waypoint x="582.0" y="119.0"></omgdi:waypoint>
+        <omgdi:waypoint x="142.0" y="119.0"></omgdi:waypoint>
+        <omgdi:waypoint x="142.0" y="260.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="36.0" x="483.0" y="119.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow26" id="BPMNEdge_flow26">
+        <omgdi:waypoint x="471.0" y="417.0"></omgdi:waypoint>
+        <omgdi:waypoint x="602.0" y="417.0"></omgdi:waypoint>
+        <omgdi:waypoint x="602.0" y="319.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="24.0" x="481.0" y="417.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow27" id="BPMNEdge_flow27">
+        <omgdi:waypoint x="898.0" y="264.0"></omgdi:waypoint>
+        <omgdi:waypoint x="898.0" y="99.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow28" id="BPMNEdge_flow28">
+        <omgdi:waypoint x="622.0" y="119.0"></omgdi:waypoint>
+        <omgdi:waypoint x="752.0" y="119.0"></omgdi:waypoint>
+        <omgdi:waypoint x="752.0" y="264.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="24.0" x="632.0" y="119.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow29" id="BPMNEdge_flow29">
+        <omgdi:waypoint x="752.0" y="319.0"></omgdi:waypoint>
+        <omgdi:waypoint x="752.0" y="437.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow30" id="BPMNEdge_flow30">
+        <omgdi:waypoint x="732.0" y="457.0"></omgdi:waypoint>
+        <omgdi:waypoint x="142.0" y="457.0"></omgdi:waypoint>
+        <omgdi:waypoint x="142.0" y="315.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="36.0" x="623.0" y="456.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow31" id="BPMNEdge_flow31">
+        <omgdi:waypoint x="878.0" y="79.0"></omgdi:waypoint>
+        <omgdi:waypoint x="142.0" y="79.0"></omgdi:waypoint>
+        <omgdi:waypoint x="142.0" y="260.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="36.0" x="773.0" y="80.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow32" id="BPMNEdge_flow32">
+        <omgdi:waypoint x="772.0" y="457.0"></omgdi:waypoint>
+        <omgdi:waypoint x="898.0" y="456.0"></omgdi:waypoint>
+        <omgdi:waypoint x="898.0" y="319.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="24.0" x="803.0" y="457.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow33" id="BPMNEdge_flow33">
+        <omgdi:waypoint x="1052.0" y="319.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1052.0" y="490.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow34" id="BPMNEdge_flow34">
+        <omgdi:waypoint x="1032.0" y="510.0"></omgdi:waypoint>
+        <omgdi:waypoint x="142.0" y="510.0"></omgdi:waypoint>
+        <omgdi:waypoint x="142.0" y="315.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="36.0" x="934.0" y="510.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow35" id="BPMNEdge_flow35">
+        <omgdi:waypoint x="1072.0" y="510.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1204.0" y="510.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1202.0" y="319.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="24.0" x="1082.0" y="510.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow36" id="BPMNEdge_flow36">
+        <omgdi:waypoint x="1202.0" y="264.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1202.0" y="70.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow37" id="BPMNEdge_flow37">
+        <omgdi:waypoint x="1182.0" y="50.0"></omgdi:waypoint>
+        <omgdi:waypoint x="142.0" y="49.0"></omgdi:waypoint>
+        <omgdi:waypoint x="142.0" y="260.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="36.0" x="1052.0" y="51.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow38" id="BPMNEdge_flow38">
+        <omgdi:waypoint x="1222.0" y="50.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1335.0" y="50.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1335.0" y="643.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1286.0" y="644.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="24.0" x="1232.0" y="50.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow40" id="BPMNEdge_flow40">
+        <omgdi:waypoint x="1031.0" y="617.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1031.0" y="590.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow41" id="BPMNEdge_flow41">
+        <omgdi:waypoint x="1051.0" y="570.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1233.0" y="570.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1233.0" y="617.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="36.0" x="1061.0" y="570.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow42" id="BPMNEdge_flow42">
+        <omgdi:waypoint x="1011.0" y="570.0"></omgdi:waypoint>
+        <omgdi:waypoint x="866.0" y="570.0"></omgdi:waypoint>
+        <omgdi:waypoint x="866.0" y="617.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="24.0" x="951.0" y="570.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow43" id="BPMNEdge_flow43">
+        <omgdi:waypoint x="866.0" y="672.0"></omgdi:waypoint>
+        <omgdi:waypoint x="866.0" y="740.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow45" id="BPMNEdge_flow45">
+        <omgdi:waypoint x="846.0" y="760.0"></omgdi:waypoint>
+        <omgdi:waypoint x="685.0" y="759.0"></omgdi:waypoint>
+        <omgdi:waypoint x="685.0" y="672.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="24.0" x="788.0" y="761.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow47" id="BPMNEdge_flow47">
+        <omgdi:waypoint x="918.0" y="79.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1052.0" y="79.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1052.0" y="264.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="24.0" x="949.0" y="80.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow48" id="BPMNEdge_flow48">
+        <omgdi:waypoint x="273.0" y="165.0"></omgdi:waypoint>
+        <omgdi:waypoint x="142.0" y="165.0"></omgdi:waypoint>
+        <omgdi:waypoint x="142.0" y="260.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="36.0" x="207.0" y="165.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow49" id="BPMNEdge_flow49">
+        <omgdi:waypoint x="1181.0" y="644.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1131.0" y="644.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1132.0" y="703.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow50" id="BPMNEdge_flow50">
+        <omgdi:waypoint x="1112.0" y="723.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1031.0" y="720.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1031.0" y="672.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="24.0" x="1073.0" y="724.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow52" id="BPMNEdge_flow52">
+        <omgdi:waypoint x="886.0" y="760.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1233.0" y="760.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1233.0" y="672.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="36.0" x="896.0" y="760.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow54" id="BPMNEdge_flow54">
+        <omgdi:waypoint x="1132.0" y="743.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1132.0" y="822.0"></omgdi:waypoint>
+        <omgdi:waypoint x="437.0" y="822.0"></omgdi:waypoint>
+        <omgdi:waypoint x="437.0" y="662.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="36.0" x="1040.0" y="809.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow55" id="BPMNEdge_flow55">
+        <omgdi:waypoint x="633.0" y="644.0"></omgdi:waypoint>
+        <omgdi:waypoint x="612.0" y="644.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow56" id="BPMNEdge_flow56">
+        <omgdi:waypoint x="572.0" y="644.0"></omgdi:waypoint>
+        <omgdi:waypoint x="455.0" y="644.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="24.0" x="504.0" y="644.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow57" id="BPMNEdge_flow57">
+        <omgdi:waypoint x="592.0" y="624.0"></omgdi:waypoint>
+        <omgdi:waypoint x="592.0" y="540.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1233.0" y="540.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1233.0" y="617.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="36.0" x="622.0" y="541.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow58" id="BPMNEdge_flow58">
+        <omgdi:waypoint x="142.0" y="315.0"></omgdi:waypoint>
+        <omgdi:waypoint x="223.0" y="330.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow59" id="BPMNEdge_flow59">
+        <omgdi:waypoint x="223.0" y="370.0"></omgdi:waypoint>
+        <omgdi:waypoint x="223.0" y="644.0"></omgdi:waypoint>
+        <omgdi:waypoint x="420.0" y="644.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="100.0" x="233.0" y="370.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow60" id="BPMNEdge_flow60">
+        <omgdi:waypoint x="243.0" y="350.0"></omgdi:waypoint>
+        <omgdi:waypoint x="297.0" y="349.0"></omgdi:waypoint>
+        <omgdi:waypoint x="293.0" y="315.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="100.0" x="253.0" y="350.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+    </bpmndi:BPMNPlane>
+  </bpmndi:BPMNDiagram>
+</definitions>

+ 234 - 0
gkjsjy/trunk/resources/deployments/lh.bpmn

@@ -0,0 +1,234 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:activiti="http://activiti.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.activiti.org/test">
+  <process id="lh" name="理货" isExecutable="true">
+    <startEvent id="startevent1" name="Start"></startEvent>
+    <userTask id="ldsl" name="领导受理" activiti:assignee="${applyUserId}">
+      <extensionElements>
+        <activiti:taskListener event="create" delegateExpression="${taskVarBean}">
+          <activiti:field name="varName">
+            <activiti:string><![CDATA[var_autoComplete]]></activiti:string>
+          </activiti:field>
+          <activiti:field name="varValue">
+            <activiti:string><![CDATA[true]]></activiti:string>
+          </activiti:field>
+        </activiti:taskListener>
+      </extensionElements>
+    </userTask>
+    <sequenceFlow id="flow1" sourceRef="startevent1" targetRef="ldsl"></sequenceFlow>
+    <userTask id="fgldsl" name="分管领导受理" activiti:assignee="${fgld}"></userTask>
+    <sequenceFlow id="flow2" sourceRef="ldsl" targetRef="fgldsl"></sequenceFlow>
+    <userTask id="kshq" name="科室会签" activiti:candidateUsers="${assignee}">
+      <multiInstanceLoopCharacteristics isSequential="false" activiti:collection="assigneeList" activiti:elementVariable="assignee">
+        <completionCondition>${nrOfInstances==nrOfCompletedInstances}</completionCondition>
+      </multiInstanceLoopCharacteristics>
+    </userTask>
+    <sequenceFlow id="flow3" name="通过" sourceRef="exclusivegateway4" targetRef="kshq">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${auditPass_fgldsl}]]></conditionExpression>
+    </sequenceFlow>
+    <exclusiveGateway id="exclusivegateway1" name="Exclusive Gateway"></exclusiveGateway>
+    <sequenceFlow id="flow4" sourceRef="kshq" targetRef="exclusivegateway1"></sequenceFlow>
+    <sequenceFlow id="flow5" name="不通过" sourceRef="exclusivegateway1" targetRef="fgldsl">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${!countersign}]]></conditionExpression>
+    </sequenceFlow>
+    <userTask id="fgldqr" name="分管领导确认" activiti:assignee="${fgld}"></userTask>
+    <sequenceFlow id="flow6" name="通过" sourceRef="exclusivegateway1" targetRef="kybl">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${countersign}]]></conditionExpression>
+    </sequenceFlow>
+    <exclusiveGateway id="exclusivegateway2" name="Exclusive Gateway"></exclusiveGateway>
+    <sequenceFlow id="flow7" sourceRef="fgldqr" targetRef="exclusivegateway2"></sequenceFlow>
+    <sequenceFlow id="flow8" name="不通过" sourceRef="exclusivegateway2" targetRef="kshq2">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${!auditPass_fgldqr}]]></conditionExpression>
+    </sequenceFlow>
+    <userTask id="ldqr" name="领导确认" activiti:assignee="${applyUserId}"></userTask>
+    <sequenceFlow id="flow9" name="通过" sourceRef="exclusivegateway2" targetRef="ldqr">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${auditPass_fgldqr}]]></conditionExpression>
+    </sequenceFlow>
+    <exclusiveGateway id="exclusivegateway3" name="Exclusive Gateway"></exclusiveGateway>
+    <sequenceFlow id="flow10" sourceRef="ldqr" targetRef="exclusivegateway3"></sequenceFlow>
+    <sequenceFlow id="flow11" name="不通过" sourceRef="exclusivegateway3" targetRef="fgldqr">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${!auditPass_ldqr}]]></conditionExpression>
+    </sequenceFlow>
+    <endEvent id="endevent1" name="End"></endEvent>
+    <sequenceFlow id="flow12" name="通过" sourceRef="exclusivegateway3" targetRef="endevent1">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${auditPass_ldqr}]]></conditionExpression>
+    </sequenceFlow>
+    <exclusiveGateway id="exclusivegateway4" name="Exclusive Gateway"></exclusiveGateway>
+    <sequenceFlow id="flow13" sourceRef="fgldsl" targetRef="exclusivegateway4"></sequenceFlow>
+    <sequenceFlow id="flow14" name="不通过" sourceRef="exclusivegateway4" targetRef="ldsl">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${!auditPass_fgldsl}]]></conditionExpression>
+    </sequenceFlow>
+    <userTask id="kybl" name="科员办理" activiti:assignee="${ky}"></userTask>
+    <sequenceFlow id="flow15" name="通过" sourceRef="exclusivegateway5" targetRef="fgldqr">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${countersign}]]></conditionExpression>
+    </sequenceFlow>
+    <userTask id="kshq2" name="科室会签2" activiti:candidateUsers="${assignee}">
+      <multiInstanceLoopCharacteristics isSequential="false" activiti:collection="assigneeList" activiti:elementVariable="assignee">
+        <completionCondition>${nrOfInstances==nrOfCompletedInstances}</completionCondition>
+      </multiInstanceLoopCharacteristics>
+    </userTask>
+    <sequenceFlow id="flow16" sourceRef="kybl" targetRef="kshq2"></sequenceFlow>
+    <exclusiveGateway id="exclusivegateway5" name="Exclusive Gateway"></exclusiveGateway>
+    <sequenceFlow id="flow17" sourceRef="kshq2" targetRef="exclusivegateway5"></sequenceFlow>
+    <sequenceFlow id="flow18" name="不通过" sourceRef="exclusivegateway5" targetRef="kybl">
+      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${!countersign}]]></conditionExpression>
+    </sequenceFlow>
+  </process>
+  <bpmndi:BPMNDiagram id="BPMNDiagram_lh">
+    <bpmndi:BPMNPlane bpmnElement="lh" id="BPMNPlane_lh">
+      <bpmndi:BPMNShape bpmnElement="startevent1" id="BPMNShape_startevent1">
+        <omgdc:Bounds height="35.0" width="35.0" x="30.0" y="270.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="ldsl" id="BPMNShape_ldsl">
+        <omgdc:Bounds height="55.0" width="105.0" x="90.0" y="260.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="fgldsl" id="BPMNShape_fgldsl">
+        <omgdc:Bounds height="55.0" width="105.0" x="220.0" y="260.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="kshq" id="BPMNShape_kshq">
+        <omgdc:Bounds height="55.0" width="105.0" x="413.0" y="260.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="exclusivegateway1" id="BPMNShape_exclusivegateway1">
+        <omgdc:Bounds height="40.0" width="40.0" x="540.0" y="267.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="fgldqr" id="BPMNShape_fgldqr">
+        <omgdc:Bounds height="55.0" width="105.0" x="910.0" y="261.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="exclusivegateway2" id="BPMNShape_exclusivegateway2">
+        <omgdc:Bounds height="40.0" width="40.0" x="1040.0" y="268.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="ldqr" id="BPMNShape_ldqr">
+        <omgdc:Bounds height="55.0" width="105.0" x="1100.0" y="263.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="exclusivegateway3" id="BPMNShape_exclusivegateway3">
+        <omgdc:Bounds height="40.0" width="40.0" x="1220.0" y="271.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="endevent1" id="BPMNShape_endevent1">
+        <omgdc:Bounds height="35.0" width="35.0" x="1305.0" y="274.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="exclusivegateway4" id="BPMNShape_exclusivegateway4">
+        <omgdc:Bounds height="40.0" width="40.0" x="350.0" y="267.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="kybl" id="BPMNShape_kybl">
+        <omgdc:Bounds height="55.0" width="105.0" x="594.0" y="260.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="kshq2" id="BPMNShape_kshq2">
+        <omgdc:Bounds height="55.0" width="105.0" x="720.0" y="260.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape bpmnElement="exclusivegateway5" id="BPMNShape_exclusivegateway5">
+        <omgdc:Bounds height="40.0" width="40.0" x="840.0" y="267.0"></omgdc:Bounds>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge bpmnElement="flow1" id="BPMNEdge_flow1">
+        <omgdi:waypoint x="65.0" y="287.0"></omgdi:waypoint>
+        <omgdi:waypoint x="90.0" y="287.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow2" id="BPMNEdge_flow2">
+        <omgdi:waypoint x="195.0" y="287.0"></omgdi:waypoint>
+        <omgdi:waypoint x="220.0" y="287.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow3" id="BPMNEdge_flow3">
+        <omgdi:waypoint x="390.0" y="287.0"></omgdi:waypoint>
+        <omgdi:waypoint x="413.0" y="287.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="24.0" x="389.0" y="297.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow4" id="BPMNEdge_flow4">
+        <omgdi:waypoint x="518.0" y="287.0"></omgdi:waypoint>
+        <omgdi:waypoint x="540.0" y="287.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow5" id="BPMNEdge_flow5">
+        <omgdi:waypoint x="560.0" y="267.0"></omgdi:waypoint>
+        <omgdi:waypoint x="560.0" y="219.0"></omgdi:waypoint>
+        <omgdi:waypoint x="272.0" y="219.0"></omgdi:waypoint>
+        <omgdi:waypoint x="272.0" y="260.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="36.0" x="394.0" y="193.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow6" id="BPMNEdge_flow6">
+        <omgdi:waypoint x="580.0" y="287.0"></omgdi:waypoint>
+        <omgdi:waypoint x="594.0" y="287.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="24.0" x="570.0" y="262.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow7" id="BPMNEdge_flow7">
+        <omgdi:waypoint x="1015.0" y="288.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1040.0" y="288.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow8" id="BPMNEdge_flow8">
+        <omgdi:waypoint x="1060.0" y="308.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1059.0" y="343.0"></omgdi:waypoint>
+        <omgdi:waypoint x="772.0" y="343.0"></omgdi:waypoint>
+        <omgdi:waypoint x="772.0" y="315.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="36.0" x="835.0" y="348.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow9" id="BPMNEdge_flow9">
+        <omgdi:waypoint x="1080.0" y="288.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1100.0" y="290.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="24.0" x="1079.0" y="296.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow10" id="BPMNEdge_flow10">
+        <omgdi:waypoint x="1205.0" y="290.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1220.0" y="291.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow11" id="BPMNEdge_flow11">
+        <omgdi:waypoint x="1240.0" y="271.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1239.0" y="221.0"></omgdi:waypoint>
+        <omgdi:waypoint x="961.0" y="221.0"></omgdi:waypoint>
+        <omgdi:waypoint x="962.0" y="261.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="36.0" x="1031.0" y="195.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow12" id="BPMNEdge_flow12">
+        <omgdi:waypoint x="1260.0" y="291.0"></omgdi:waypoint>
+        <omgdi:waypoint x="1305.0" y="291.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="24.0" x="1259.0" y="298.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow13" id="BPMNEdge_flow13">
+        <omgdi:waypoint x="325.0" y="287.0"></omgdi:waypoint>
+        <omgdi:waypoint x="350.0" y="287.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow14" id="BPMNEdge_flow14">
+        <omgdi:waypoint x="370.0" y="307.0"></omgdi:waypoint>
+        <omgdi:waypoint x="370.0" y="349.0"></omgdi:waypoint>
+        <omgdi:waypoint x="142.0" y="349.0"></omgdi:waypoint>
+        <omgdi:waypoint x="142.0" y="315.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="36.0" x="196.0" y="349.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow15" id="BPMNEdge_flow15">
+        <omgdi:waypoint x="880.0" y="287.0"></omgdi:waypoint>
+        <omgdi:waypoint x="910.0" y="288.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="100.0" x="879.0" y="296.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow16" id="BPMNEdge_flow16">
+        <omgdi:waypoint x="699.0" y="287.0"></omgdi:waypoint>
+        <omgdi:waypoint x="720.0" y="287.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow17" id="BPMNEdge_flow17">
+        <omgdi:waypoint x="825.0" y="287.0"></omgdi:waypoint>
+        <omgdi:waypoint x="840.0" y="287.0"></omgdi:waypoint>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge bpmnElement="flow18" id="BPMNEdge_flow18">
+        <omgdi:waypoint x="860.0" y="267.0"></omgdi:waypoint>
+        <omgdi:waypoint x="859.0" y="222.0"></omgdi:waypoint>
+        <omgdi:waypoint x="645.0" y="222.0"></omgdi:waypoint>
+        <omgdi:waypoint x="646.0" y="260.0"></omgdi:waypoint>
+        <bpmndi:BPMNLabel>
+          <omgdc:Bounds height="14.0" width="100.0" x="710.0" y="195.0"></omgdc:Bounds>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+    </bpmndi:BPMNPlane>
+  </bpmndi:BPMNDiagram>
+</definitions>

+ 689 - 0
gkjsjy/trunk/src/com/xt/jygl/ggfwxxgl/jdjc/ctl/JdjcCtl.java

@@ -0,0 +1,689 @@
+package com.xt.jygl.ggfwxxgl.jdjc.ctl;
+
+import java.io.File;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+
+import javax.persistence.criteria.CriteriaBuilder;
+import javax.persistence.criteria.CriteriaBuilder.In;
+import javax.persistence.criteria.CriteriaQuery;
+import javax.persistence.criteria.Predicate;
+import javax.persistence.criteria.Root;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Page;
+import org.springframework.data.jpa.domain.Specification;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.Model;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.multipart.MultipartFile;
+
+import cache.CacheSearchCondition;
+
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.xt.jygl.accessory.entity.AccessoryEntity;
+import com.xt.jygl.accessory.service.AccessoryService;
+import com.xt.jygl.common.BaseWebCtl;
+import com.xt.jygl.common.Constants;
+import com.xt.jygl.common.GlobalData;
+import com.xt.jygl.common.Utils;
+import com.xt.jygl.ggfwxxgl.jdjc.entity.JdjcEntity;
+import com.xt.jygl.ggfwxxgl.jdjc.entity.JdjcfjEntity;
+import com.xt.jygl.ggfwxxgl.jdjc.service.JdjcService;
+import com.xt.jygl.ggfwxxgl.jdjc.service.JdjcfjService;
+import com.xt.jygl.ggfwxxgl.jdjc.vo.JdjcVo;
+import com.xt.jygl.gkjcxx.gk.entity.GkEntity;
+import com.xt.jygl.gkjcxx.gk.service.GkService;
+import com.xt.jygl.gkjcxx.gq.entity.GqEntity;
+import com.xt.jygl.gkjygl.gkjyr.jyrjbxx.entity.GkjyrEntity;
+import com.xt.jygl.workflow.entity.TaskInfoEntity;
+import com.xt.jygl.workflow.service.TaskInfoService;
+import com.xtframe.core.anon.auth.RequiresPermissions;
+import com.xtframe.core.base.ctl.WebJsonResult;
+import com.xtframe.core.support.SecurityMgr;
+import com.xtframe.sec.code.entity.CodeEntity;
+import com.xtframe.sec.common.BaseEntity;
+import com.xtframe.sec.common.QueryService;
+import com.xtframe.sec.common.SimplePageRequest;
+import com.xtframe.sec.user.entity.UserEntity;
+import com.xtframe.sec.utils.SecUtils;
+import com.xtframe.util.StringUtils;
+
+@Controller
+@RequestMapping("/jdjc")
+public class JdjcCtl extends BaseWebCtl {
+	@Autowired
+	private SecurityMgr securityMgr;
+	@Autowired
+	private QueryService query;
+	@Autowired
+	private JdjcService jdjcService;
+	@Autowired
+	private GkService gkService;
+	@Autowired
+	private TaskInfoService taskInfoService;
+	@Autowired
+	private AccessoryService accessoryService;
+	@Autowired
+	private JdjcfjService jdjcfjService;
+
+	@RequestMapping(value = "/main")
+	@RequiresPermissions("jdjc:main")
+	public String main(SimplePageRequest page, Model model, final HttpServletRequest request, final String ssjyr, final String szdid, final String szgkid, final String szgqid, final String menuid) throws JsonProcessingException {
+		final Map<String, Object> cacheSCmap = CacheSearchCondition.cacheSCmap(request, "jdjc");
+		Specification<JdjcEntity> spec = new Specification<JdjcEntity>() {
+			// 查询条件
+			@Override
+			public Predicate toPredicate(Root<JdjcEntity> root, CriteriaQuery<?> query, CriteriaBuilder cb) {
+				List<Predicate> list = new ArrayList<Predicate>();
+
+				if (StringUtils.isNotEmpty(szdid)) {
+					list.add(cb.like(root.get("szd").get("id").as(String.class), "%" + szdid + "%"));
+				} else if (isGET(request)) {
+					String v = (String) CacheSearchCondition.cacheSCmapVal(cacheSCmap, "szdid");
+					if (StringUtils.isNotEmpty(v)) {
+						list.add(cb.like(root.get("szd").get("id").as(String.class), "%" + v + "%"));
+					}
+				}
+				if (StringUtils.isNotEmpty(szgkid)) {
+					list.add(cb.like(root.get("szgk").get("id").as(String.class), "%" + szgkid + "%"));
+				} else if (isGET(request)) {
+					String v = (String) CacheSearchCondition.cacheSCmapVal(cacheSCmap, "szgkid");
+					if (StringUtils.isNotEmpty(v)) {
+						list.add(cb.like(root.get("szgk").get("id").as(String.class), "%" + v + "%"));
+					}
+				}
+				if (StringUtils.isNotEmpty(szgqid)) {
+					list.add(cb.like(root.get("szgq").get("id").as(String.class), "%" + szgqid + "%"));
+				} else if (isGET(request)) {
+					String v = (String) CacheSearchCondition.cacheSCmapVal(cacheSCmap, "szgqid");
+					if (StringUtils.isNotEmpty(v)) {
+						list.add(cb.like(root.get("szgq").get("id").as(String.class), "%" + v + "%"));
+					}
+				}
+				if (StringUtils.isNotEmpty(ssjyr)) {
+					list.add(cb.like(root.get("gkjyr").get("gkjyr").as(String.class), "%" + ssjyr + "%"));
+				} else if (isGET(request)) {
+					String v = (String) CacheSearchCondition.cacheSCmapVal(cacheSCmap, "ssjyr");
+					if (StringUtils.isNotEmpty(v)) {
+						list.add(cb.like(root.get("gkjyr").get("gkjyr").as(String.class), "%" + v + "%"));
+					}
+				}
+
+				// 经营人只能查看自己企业下的数据,非经营人只能查看自己所在地的数据
+				if (isJyr()) {
+					list.add(cb.like(root.get("gkjyr").get("id").as(String.class), "%" + getSsjyr().getId() + "%"));
+				} else {
+					In<String> in = cb.in(root.get("szgq").get("id").as(String.class));
+					@SuppressWarnings("unchecked")
+					List<String> gqlist = (List<String>) Utils.getSession().getAttribute("gqList");
+					if (gqlist != null && gqlist.size() > 0) {
+						for (int i = 0; i < gqlist.size(); i++) {
+							in.value(gqlist.get(i));
+						}
+						list.add(in);
+					}
+				}
+				list.add(cb.notEqual(root.get("recordStatus").as(Integer.class), BaseEntity.RECORD_STATE_DELETE));
+				return cb.and(list.toArray(new Predicate[] {}));
+			}
+		};
+		if (page.getPage() < 1) {
+			Object jdtxpage = CacheSearchCondition.cacheSCmapVal(cacheSCmap, "jdtxpage");
+			if (StringUtils.isEmpty(jdtxpage) || !org.apache.commons.lang.StringUtils.isNumeric(String.valueOf(jdtxpage))) {
+				jdtxpage = "1";
+			}
+			page.setPage(Integer.valueOf(String.valueOf(jdtxpage)));
+		}
+
+		Page<JdjcEntity> list = query.findAll(spec, toPageRequest(page), JdjcEntity.class);
+		List<JdjcVo> voList = new ArrayList<JdjcVo>();
+		for (JdjcEntity entity : list) {
+			JdjcVo vo = new JdjcVo();
+			if (null != entity) {
+				BeanUtils.copyProperties(entity, vo);
+				if (entity.getRecordStatus() != 9) {
+
+					if ((jdjcService.getTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), entity.getId().toString()) != null) || jdjcService.getCandidateTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), entity.getId().toString()) != null) {
+						List<TaskInfoEntity> lists = taskInfoService.findByBusIdAndBusKeyAndRecordStatus(entity.getId(), JdjcEntity.PROCESS_DEFINITION_KEY);
+						if (lists != null & lists.size() > 0) {
+							TaskInfoEntity taskinfo = lists.get(0);
+							if ("申请".equals(taskinfo.getCurrName())) {
+								vo.setTaskState("TH");
+							} else {
+								vo.setTaskState(Constants.IS_MY_TASK);
+							}
+						}
+
+					}
+
+				}
+
+				vo.setSzd(entity.getSzd() != null ? entity.getSzd().getId() : "");
+				vo.setSzgk(entity.getSzgk() != null ? entity.getSzgk().getId() : "");
+				vo.setSzgq(entity.getSzgq() != null ? entity.getSzgq().getId() : "");
+				vo.setSzgkmc(entity.getSzgk() != null ? entity.getSzgk().getGkmc() : "");
+				vo.setSzgqmc(entity.getSzgq() != null ? entity.getSzgq().getGqmc() : "");
+				vo.setGkjyr(entity.getGkjyr() != null ? entity.getGkjyr().getId() : "");
+				vo.setGkjyrmc(entity.getGkjyr() != null ? entity.getGkjyr().getGkjyr() : "");
+				voList.add(vo);
+			}
+		}
+		if (isPOST(request)) {
+			cacheSCmap.put("jdtxpage", page.getPage());
+			CacheSearchCondition.putCacheSCmap(request.getParameterMap(), cacheSCmap);
+		}
+		model.addAttribute("list", voList);
+		model.addAttribute("menuid", menuid);
+		model.addAttribute("ssjyr", CacheSearchCondition.cacheSCmapVal(cacheSCmap, "ssjyr"));
+		model.addAttribute("szd", CacheSearchCondition.cacheSCmapVal(cacheSCmap, "szdid"));
+		model.addAttribute("szgk", CacheSearchCondition.cacheSCmapVal(cacheSCmap, "szgkid"));
+		model.addAttribute("szgq", CacheSearchCondition.cacheSCmapVal(cacheSCmap, "szgqid"));
+		int flag = 0;
+		if (GlobalData.CITY_CODE.length() > 3) {
+			flag = 1;
+		}
+		model.addAttribute("flag", flag);
+		// 翻页共通
+		putPageInfo(model, page, list);
+		return "ggfwxxgl/jdjc/jdjcmain";
+	}
+
+	@RequestMapping(value = "/delete")
+	@ResponseBody
+	@RequiresPermissions("jdjc:delete")
+	public WebJsonResult delete(Model model, String id) {
+		WebJsonResult wr = success();
+		try {
+			jdjcService.logicDelete(id);
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("删除失败!");
+			e.printStackTrace();
+		}
+		return wr;
+	}
+
+	@RequestMapping(value = "/save")
+	@ResponseBody
+	public WebJsonResult save(Model model, JdjcEntity code, String flowflag, String szdid, String szgkid, String accid, String szgqid, String jyrid) {
+		// how:如果是新增直接保存,如果更新,先取出数据库中记录,然后更新页面传过来的字段
+		// why:这样的话一些在前台无需显示的字段保证不会丢失,同时一个个字段设置有助于bug排查
+		WebJsonResult wr = success();
+		if (StringUtils.isEmpty(szdid)) {
+			wr.setSuccess(false);
+			wr.setMessage("请选择所在地");
+			return wr;
+		}
+		if (StringUtils.isEmpty(szgkid)) {
+			wr.setSuccess(false);
+			wr.setMessage("请选择所在港口");
+			return wr;
+		}
+		if (StringUtils.isEmpty(szgqid)) {
+			wr.setSuccess(false);
+			wr.setMessage("请选择所在港区");
+			return wr;
+		}
+		if (StringUtils.isEmpty(jyrid)) {
+			wr.setSuccess(false);
+			wr.setMessage("请选择被督查单位");
+			return wr;
+		}
+		JdjcEntity entity = new JdjcEntity();
+		try {
+			if (!StringUtils.isEmpty(code.getId())) {
+				// 修改
+				entity = jdjcService.findOne(code.getId());
+				entity.setBdcdwcjry(code.getBdcdwcjry());
+				entity.setBdcdwfzr(code.getBdcdwfzr());
+				entity.setCjdcry(code.getCjdcry());
+				entity.setYhmc(code.getYhmc());
+				entity.setZgcsyq(code.getZgcsyq());
+				entity.setZgqx(code.getZgqx());
+				entity.setZgsm(code.getZgsm());
+				if (!StringUtils.isEmpty(code.getFlowflag())) {
+					entity.setFlowflag(code.getFlowflag()); // 1为下发
+					entity.setBtnflag("0");
+				}
+				entity = jdjcService.save(entity);
+			} else {
+				CodeEntity szd = new CodeEntity(szdid);
+				code.setSzd(szd);
+
+				GkEntity szgk = new GkEntity();
+				szgk.setId(szgkid);
+				code.setSzgk(szgk);
+
+				GqEntity szgq = new GqEntity();
+				szgq.setId(szgqid);
+				code.setSzgq(szgq);
+
+				GkjyrEntity ssjyr = new GkjyrEntity();
+				ssjyr.setId(jyrid);
+				code.setGkjyr(ssjyr);
+
+				if (GlobalData.CITY_CODE.length() > 3) {
+					code.setBtnflag("0");
+					code.setFlowflag("0");
+				} else {
+					code.setBtnflag("1");
+					if (StringUtils.isEmpty(code.getFlowflag())) {
+						code.setFlowflag("0");
+					}
+				}
+				entity = jdjcService.save(code);
+			}
+
+			if (!StringUtils.isEmpty(accid)) {
+				// 关联附件
+				String[] ssids = accid.split(",");
+				for (String ssid : ssids) {
+					JdjcfjEntity jdjcfj = jdjcfjService.findOne(ssid);
+					if (jdjcfj != null) {
+						jdjcfj.setJdtxid(entity.getId());
+						jdjcfjService.save(jdjcfj);
+					}
+				}
+			}
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("操作失败!");
+			e.printStackTrace();
+		}
+		return wr;
+	}
+
+	@RequestMapping(value = "/savexf")
+	@ResponseBody
+	public WebJsonResult savexf(Model model, JdjcEntity code, String flowflag, String szdid, String szgkid, String accid, String szgqid, String jyrid) {
+		// how:如果是新增直接保存,如果更新,先取出数据库中记录,然后更新页面传过来的字段
+		// why:这样的话一些在前台无需显示的字段保证不会丢失,同时一个个字段设置有助于bug排查
+		WebJsonResult wr = success();
+		if (StringUtils.isEmpty(szdid)) {
+			wr.setSuccess(false);
+			wr.setMessage("请选择所在地");
+			return wr;
+		}
+		if (StringUtils.isEmpty(szgkid)) {
+			wr.setSuccess(false);
+			wr.setMessage("请选择所在港口");
+			return wr;
+		}
+		if (StringUtils.isEmpty(szgqid)) {
+			wr.setSuccess(false);
+			wr.setMessage("请选择所在港区");
+			return wr;
+		}
+		if (StringUtils.isEmpty(jyrid)) {
+			wr.setSuccess(false);
+			wr.setMessage("请选择被督查单位");
+			return wr;
+		}
+		JdjcEntity entity = new JdjcEntity();
+		try {
+			if (!StringUtils.isEmpty(code.getId())) {
+				// 修改
+				entity = jdjcService.findOne(code.getId());
+				entity.setBdcdwcjry(code.getBdcdwcjry());
+				entity.setBdcdwfzr(code.getBdcdwfzr());
+				entity.setCjdcry(code.getCjdcry());
+				entity.setYhmc(code.getYhmc());
+				entity.setZgcsyq(code.getZgcsyq());
+				entity.setZgqx(code.getZgqx());
+				entity.setZgsm(code.getZgsm());
+				entity.setFlowflag("1"); // 1为下发
+				entity.setBtnflag("0");
+				entity = jdjcService.save(entity);
+			} else {
+				CodeEntity szd = new CodeEntity(szdid);
+				code.setSzd(szd);
+
+				GkEntity szgk = new GkEntity();
+				szgk.setId(szgkid);
+				code.setSzgk(szgk);
+
+				GqEntity szgq = new GqEntity();
+				szgq.setId(szgqid);
+				code.setSzgq(szgq);
+
+				GkjyrEntity ssjyr = new GkjyrEntity();
+				ssjyr.setId(jyrid);
+				code.setGkjyr(ssjyr);
+
+				if (Constants.GROUP_CODE_SZD.length() > 3) {
+					code.setBtnflag("0");
+					code.setFlowflag("0");
+				} else {
+					code.setBtnflag("1");
+					code.setFlowflag("1");
+				}
+				entity = jdjcService.save(code);
+			}
+
+			if (!StringUtils.isEmpty(accid)) {
+				// 关联附件
+				String[] ssids = accid.split(",");
+				for (String ssid : ssids) {
+					JdjcfjEntity jdjcfj = jdjcfjService.findOne(ssid);
+					if (jdjcfj != null) {
+						jdjcfj.setJdtxid(entity.getId());
+						jdjcfjService.save(jdjcfj);
+					}
+				}
+			}
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("操作失败!");
+			e.printStackTrace();
+		}
+		return wr;
+	}
+
+	@RequestMapping(value = "/submit")
+	@ResponseBody
+	public WebJsonResult submit(Model model, JdjcEntity code, String accid, String szdid, String szgkid, String szgqid, String jyrid) {
+		// how:如果是新增直接保存,如果更新,先取出数据库中记录,然后更新页面传过来的字段
+		// why:这样的话一些在前台无需显示的字段保证不会丢失,同时一个个字段设置有助于bug排查
+		WebJsonResult wr = success();
+		if (StringUtils.isEmpty(szdid)) {
+			wr.setSuccess(false);
+			wr.setMessage("请选择所在地");
+			return wr;
+		}
+		if (StringUtils.isEmpty(szgkid)) {
+			wr.setSuccess(false);
+			wr.setMessage("请选择所在港口");
+			return wr;
+		}
+		if (StringUtils.isEmpty(szgqid)) {
+			wr.setSuccess(false);
+			wr.setMessage("请选择所在港区");
+			return wr;
+		}
+		if (StringUtils.isEmpty(jyrid)) {
+			wr.setSuccess(false);
+			wr.setMessage("请选择被督查单位");
+			return wr;
+		}
+		JdjcEntity entity = new JdjcEntity();
+		try {
+			if (!StringUtils.isEmpty(code.getId())) {
+				// 修改
+				entity = jdjcService.findOne(code.getId());
+				entity.setBdcdwcjry(code.getBdcdwcjry());
+				entity.setBdcdwfzr(code.getBdcdwfzr());
+				entity.setCjdcry(code.getCjdcry());
+				entity.setYhmc(code.getYhmc());
+				entity.setZgcsyq(code.getZgcsyq());
+				entity.setZgqx(code.getZgqx());
+				entity.setZgsm(code.getZgsm());
+				if (GlobalData.CITY_CODE.length() > 3) {
+					code.setBtnflag("0");
+				}
+				code.setFlowflag("2");
+				entity = jdjcService.submit(entity);
+			} else {
+				CodeEntity szd = new CodeEntity(szdid);
+				code.setSzd(szd);
+
+				GkEntity szgk = new GkEntity();
+				szgk.setId(szgkid);
+				code.setSzgk(szgk);
+
+				GqEntity szgq = new GqEntity();
+				szgq.setId(szgqid);
+				code.setSzgq(szgq);
+
+				GkjyrEntity ssjyr = new GkjyrEntity();
+				ssjyr.setId(jyrid);
+				code.setGkjyr(ssjyr);
+				if (GlobalData.CITY_CODE.length() > 3) {
+					code.setBtnflag("0");
+				}
+				code.setFlowflag("2");
+				entity = jdjcService.submit(code);
+			}
+			if (!StringUtils.isEmpty(accid)) {
+				// 关联附件
+				String[] ssids = accid.split(",");
+				for (String ssid : ssids) {
+					JdjcfjEntity jdjcfj = jdjcfjService.findOne(ssid);
+					if (jdjcfj != null) {
+						jdjcfj.setJdtxid(entity.getId());
+						jdjcfjService.save(jdjcfj);
+					}
+				}
+			}
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("操作失败!");
+			e.printStackTrace();
+		}
+		return wr;
+	}
+
+	@RequestMapping(value = "/submitAudit")
+	@ResponseBody
+	public WebJsonResult submitAudit(JdjcEntity code, String accid) {
+		WebJsonResult wr = success();
+		JdjcEntity entity = new JdjcEntity();
+		try {
+			if (!StringUtils.isEmpty(code.getId())) {
+				entity = jdjcService.findOne(code.getId());
+				entity.setBdcdwcjry(code.getBdcdwcjry());
+				entity.setBdcdwfzr(code.getBdcdwfzr());
+				entity.setCjdcry(code.getCjdcry());
+				entity.setYhmc(code.getYhmc());
+				entity.setZgcsyq(code.getZgcsyq());
+				entity.setZgqx(code.getZgqx());
+				entity.setZgsm(code.getZgsm());
+				entity = jdjcService.save(entity);
+			}
+			if (!StringUtils.isEmpty(accid)) {
+				// 关联附件
+				String[] ssids = accid.split(",");
+				for (String ssid : ssids) {
+					JdjcfjEntity jdjcfj = jdjcfjService.findOne(ssid);
+					if (jdjcfj != null) {
+						jdjcfj.setJdtxid(entity.getId());
+						jdjcfjService.save(jdjcfj);
+					}
+				}
+			}
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("操作失败!");
+			e.printStackTrace();
+		}
+		try {
+			if (jdjcService.getCandidateTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), code.getId()) != null) {
+				jdjcService.claim(code.getId(), SecUtils.getCurrUser().getId().toString());
+			}
+			jdjcService.changeAudit(null, entity, true);
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("操作失败!");
+			e.printStackTrace();
+		}
+		return wr;
+	}
+
+	@RequestMapping(value = "/audit")
+	@ResponseBody
+	public WebJsonResult audit(String shyj, String id, boolean flag, String accid) {
+		WebJsonResult wr = success();
+		JdjcEntity entity = jdjcService.findOne(id);
+		if (!StringUtils.isEmpty(accid)) {
+			// 关联附件
+			String[] ssids = accid.split(",");
+			for (String ssid : ssids) {
+				JdjcfjEntity jdjcfj = jdjcfjService.findOne(ssid);
+				if (jdjcfj != null) {
+					jdjcfj.setJdtxid(entity.getId());
+					jdjcfjService.save(jdjcfj);
+				}
+			}
+		}
+		try {
+			if (jdjcService.getCandidateTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), id) != null) {
+				jdjcService.claim(id, SecUtils.getCurrUser().getId().toString());
+			}
+			jdjcService.changeAudit(shyj, entity, flag);
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("操作失败!");
+			e.printStackTrace();
+		}
+		return wr;
+	}
+
+	@RequestMapping(value = "/edit")
+	public String edit(Model model, String id, String flag) {
+		model.addAttribute("flag", flag);
+		JdjcEntity entity = jdjcService.findOne(id);
+		JdjcVo vo = new JdjcVo();
+		BeanUtils.copyProperties(entity, vo);
+		vo.setSzd(entity.getSzd() != null ? entity.getSzd().getId() : "");
+		vo.setSzgk(entity.getSzgk() != null ? entity.getSzgk().getId() : "");
+		vo.setSzgq(entity.getSzgq() != null ? entity.getSzgq().getId() : "");
+		vo.setGkjyr(entity.getGkjyr() != null ? entity.getGkjyr().getId() : "");
+		vo.setGkjyrmc(entity.getGkjyr() != null ? entity.getGkjyr().getGkjyr() : "");
+		model.addAttribute("record", vo);
+
+		List<JdjcfjEntity> list = jdjcfjService.findByJdjcid(id, "1");
+		if (list != null && list.size() > 0) {
+			model.addAttribute("fjlist", list);
+		}
+		return "ggfwxxgl/jdjc/jdjcedit";
+	}
+
+	@RequestMapping(value = "/view")
+	@RequiresPermissions("jdjc:main")
+	public String view(Model model, String id, String flag, String opflag) {
+		model.addAttribute("flag", flag);
+		JdjcEntity entity = jdjcService.findOne(id);
+		JdjcVo vo = new JdjcVo();
+		BeanUtils.copyProperties(entity, vo);
+		vo.setSzd(entity.getSzd() != null ? entity.getSzd().getId() : "");
+		vo.setSzdzw(entity.getSzd() != null ? entity.getSzd().getText() : "");
+		vo.setSzgk(entity.getSzgk() != null ? entity.getSzgk().getId() : "");
+		vo.setSzgq(entity.getSzgq() != null ? entity.getSzgq().getId() : "");
+		vo.setSzgkmc(entity.getSzgk() != null ? entity.getSzgk().getGkmc() : "");
+		vo.setSzgqmc(entity.getSzgq() != null ? entity.getSzgq().getGqmc() : "");
+		vo.setSzd(entity.getSzd() != null ? entity.getSzd().getId() : "");
+		vo.setSzgk(entity.getSzgk() != null ? entity.getSzgk().getId() : "");
+		vo.setSzgq(entity.getSzgq() != null ? entity.getSzgq().getId() : "");
+		vo.setSzgkmc(entity.getSzgk() != null ? entity.getSzgk().getGkmc() : "");
+		vo.setSzgqmc(entity.getSzgq() != null ? entity.getSzgq().getGqmc() : "");
+		vo.setGkjyr(entity.getGkjyr() != null ? entity.getGkjyr().getId() : "");
+		vo.setGkjyrmc(entity.getGkjyr() != null ? entity.getGkjyr().getGkjyr() : "");
+		vo.setGkjyr(entity.getGkjyr() != null ? entity.getGkjyr().getId() : "");
+		vo.setGkjyrmc(entity.getGkjyr() != null ? entity.getGkjyr().getGkjyr() : "");
+		model.addAttribute("record", vo);
+
+		List<TaskInfoEntity> lists = taskInfoService.findByBusIdAndBusKeyAndRecordStatus(id, JdjcEntity.PROCESS_DEFINITION_KEY);
+		if (lists != null & lists.size() > 0) {
+			TaskInfoEntity taskinfo = lists.get(0);
+			if ("年度审核材料".equals(taskinfo.getCurrName())) {
+				opflag = "1";
+			} else if ("年度审核批准".equals(taskinfo.getCurrName())) {
+				opflag = "2";
+			} else if ("".equals(taskinfo.getCurrName())) {
+				opflag = "3";
+			}
+			model.addAttribute("opflag", opflag);
+		}
+		if (isJyr()) {
+			model.addAttribute("jyrFlag", "1");
+		}
+
+		List<JdjcfjEntity> zgfjlist = jdjcfjService.findByJdjcid(id, "1");
+		if (zgfjlist != null && zgfjlist.size() > 0) {
+			model.addAttribute("zgfjlist", zgfjlist);
+		}
+		List<JdjcfjEntity> zghfjlist = jdjcfjService.findByJdjcid(id, "0");
+		if (zghfjlist != null && zghfjlist.size() > 0) {
+			model.addAttribute("zghfjlist", zghfjlist);
+		}
+		return "ggfwxxgl/jdjc/jdjcview";
+	}
+
+	@RequestMapping(value = "/add")
+	@RequiresPermissions("jdjc:add")
+	public String add(Model model) {
+		UserEntity user = securityMgr.getCurrUser();
+		model.addAttribute("user", user);
+		SimpleDateFormat dateTimeFormat = new SimpleDateFormat("yyyy-MM-dd");
+		Date today = new Date();
+		model.addAttribute("sqrq", dateTimeFormat.format(today));
+		int btnflag = 0;
+		if (GlobalData.CITY_CODE.length() > 3) {
+			btnflag = 1;
+		}
+		model.addAttribute("btnflag", btnflag);
+		return "ggfwxxgl/jdjc/jdjcadd";
+	}
+
+	// 保存附件
+	@RequestMapping(value = "/saveFile")
+	@ResponseBody
+	public WebJsonResult saveFile(@RequestParam("file") List<MultipartFile> file, String fjFlag, Model model, HttpServletRequest request, HttpServletResponse response) {
+		WebJsonResult wr = success();
+		if (file != null && file.size() > 0) {
+			JdjcfjEntity fjEntity = new JdjcfjEntity();
+			for (int i = 0; i < file.size(); i++) {
+				MultipartFile f = file.get(i);
+				if (f.getSize() > 0) {
+					AccessoryEntity acc = accessoryService.saveFile(f, "jdtx");
+					if (acc != null) {
+						fjEntity.setFjid(acc.getId());
+						fjEntity.setFjmc(acc.getName());
+						fjEntity.setType(fjFlag);
+						fjEntity = jdjcfjService.save(fjEntity);
+						break;
+					}
+				}
+			}
+			wr.setAttr("acc", fjEntity);
+		} else {
+			wr.setSuccess(false);
+			wr.setMessage("请上传附件!");
+		}
+		return wr;
+	}
+
+	@RequestMapping(value = "/delFile")
+	@ResponseBody
+	public WebJsonResult delFile(String accid, Model model) {
+		WebJsonResult wr = success();
+		try {
+			JdjcfjEntity entity = jdjcfjService.findOne(accid);
+			if (entity != null) {
+				AccessoryEntity acc = accessoryService.findOne(entity.getFjid());
+				if (acc != null) {
+					accessoryService.delete(acc);
+					if (entity != null) {
+						String path = acc.getFilepath() + acc.getFilename();
+						File file = new File(path);
+						if (file.isFile() && file.exists()) {
+							file.delete();
+						}
+					}
+				}
+				jdjcfjService.delete(entity);
+			}
+		} catch (Exception e) {
+			wr.setSuccess(false);
+		}
+		return wr;
+	}
+}

+ 8 - 0
gkjsjy/trunk/src/com/xt/jygl/ggfwxxgl/jdjc/dao/JdjcDao.java

@@ -0,0 +1,8 @@
+package com.xt.jygl.ggfwxxgl.jdjc.dao;
+
+import com.xt.jygl.ggfwxxgl.jdjc.entity.JdjcEntity;
+import com.xtframe.sec.common.SecRepository;
+
+public interface JdjcDao extends SecRepository<JdjcEntity, String> {
+
+}

+ 14 - 0
gkjsjy/trunk/src/com/xt/jygl/ggfwxxgl/jdjc/dao/JdjcfjDao.java

@@ -0,0 +1,14 @@
+package com.xt.jygl.ggfwxxgl.jdjc.dao;
+
+import java.util.List;
+
+import org.springframework.data.jpa.repository.Query;
+
+import com.xt.jygl.ggfwxxgl.jdjc.entity.JdjcfjEntity;
+import com.xtframe.sec.common.SecRepository;
+
+public interface JdjcfjDao extends SecRepository<JdjcfjEntity, String> {
+
+	@Query("SELECT m  FROM JdjcfjEntity m WHERE  m.jdtxid =?1 and m.type=?2 and m.recordStatus <> 9 ")
+	public List<JdjcfjEntity> findByJdjcid(String jdjcid ,String type);
+}

+ 203 - 0
gkjsjy/trunk/src/com/xt/jygl/ggfwxxgl/jdjc/entity/JdjcEntity.java

@@ -0,0 +1,203 @@
+package com.xt.jygl.ggfwxxgl.jdjc.entity;
+
+import java.util.Date;
+
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+
+import org.hibernate.annotations.GenericGenerator;
+
+import com.xt.jygl.gkjcxx.gk.entity.GkEntity;
+import com.xt.jygl.gkjcxx.gq.entity.GqEntity;
+import com.xt.jygl.gkjygl.gkjyr.jyrjbxx.entity.GkjyrEntity;
+import com.xtframe.sec.common.BaseEntity;
+
+@Entity
+@Table(name = "GK_OPERATION_JSJY_JDTX")
+public class JdjcEntity extends BaseEntity<String> implements Cloneable {
+
+	/**
+	 * serialVersionUID
+	 */
+	private static final long serialVersionUID = 5525311068146383639L;
+
+	public static final String PROCESS_DEFINITION_KEY = "jdjc";
+	private String id = null;
+
+	// 所在港区
+	private GqEntity szgq = null;
+
+	// 所在港口
+	private GkEntity szgk = null;
+
+	// 港口经营人
+	private GkjyrEntity gkjyr = null;
+	
+	private String dcdw=null;
+	private Date sqrq=null;
+	private String cjdcry=null;
+	private String bdcdwfzr=null;
+	private String bdcdwcjry=null;
+	private Date zgqx=null;
+	private String yhmc=null;
+	private String zgcsyq=null;
+	private String zgsm=null;
+	private String zgfj= null;
+	private String zghfj=null;
+	private String flowflag = null;
+	private String btnflag = null;
+	
+
+	@Id
+	@GenericGenerator(name = "systemUUID", strategy = "uuid")
+	@GeneratedValue(generator = "systemUUID")
+	public String getId() {
+		return id;
+	}
+
+	public void setId(String id) {
+		this.id = id;
+	}
+
+	@ManyToOne(fetch = FetchType.EAGER, targetEntity = GqEntity.class)
+	@JoinColumn(name = "szgq")
+	public GqEntity getSzgq() {
+		return szgq;
+	}
+
+	public void setSzgq(GqEntity szgq) {
+		this.szgq = szgq;
+	}
+	
+	@ManyToOne(fetch = FetchType.EAGER, targetEntity = GkEntity.class)
+	@JoinColumn(name = "szgk")
+	public GkEntity getSzgk() {
+		return szgk;
+	}
+
+	public void setSzgk(GkEntity szgk) {
+		this.szgk = szgk;
+	}
+
+	@ManyToOne(fetch = FetchType.EAGER, targetEntity = GkjyrEntity.class)
+	@JoinColumn(name = "gkjyr")
+	public GkjyrEntity getGkjyr() {
+		return gkjyr;
+	}
+
+	public void setGkjyr(GkjyrEntity gkjyr) {
+		this.gkjyr = gkjyr;
+	}
+
+	public String getDcdw() {
+		return dcdw;
+	}
+
+	public void setDcdw(String dcdw) {
+		this.dcdw = dcdw;
+	}
+
+	public String getBdcdwfzr() {
+		return bdcdwfzr;
+	}
+
+	public void setBdcdwfzr(String bdcdwfzr) {
+		this.bdcdwfzr = bdcdwfzr;
+	}
+
+	public String getBdcdwcjry() {
+		return bdcdwcjry;
+	}
+
+	public void setBdcdwcjry(String bdcdwcjry) {
+		this.bdcdwcjry = bdcdwcjry;
+	}
+
+	public Date getSqrq() {
+		return sqrq;
+	}
+
+	public void setSqrq(Date sqrq) {
+		this.sqrq = sqrq;
+	}
+
+	public String getCjdcry() {
+		return cjdcry;
+	}
+
+	public void setCjdcry(String cjdcry) {
+		this.cjdcry = cjdcry;
+	}
+
+	public Date getZgqx() {
+		return zgqx;
+	}
+
+	public void setZgqx(Date zgqx) {
+		this.zgqx = zgqx;
+	}
+
+	public String getYhmc() {
+		return yhmc;
+	}
+
+	public void setYhmc(String yhmc) {
+		this.yhmc = yhmc;
+	}
+
+	public String getZgcsyq() {
+		return zgcsyq;
+	}
+
+	public void setZgcsyq(String zgcsyq) {
+		this.zgcsyq = zgcsyq;
+	}
+
+	public String getZgsm() {
+		return zgsm;
+	}
+
+	public void setZgsm(String zgsm) {
+		this.zgsm = zgsm;
+	}
+
+
+	public String getZgfj() {
+		return zgfj;
+	}
+
+	public void setZgfj(String zgfj) {
+		this.zgfj = zgfj;
+	}
+
+	public String getZghfj() {
+		return zghfj;
+	}
+
+	public void setZghfj(String zghfj) {
+		this.zghfj = zghfj;
+	}
+
+	public String getFlowflag() {
+		return flowflag;
+	}
+
+	public void setFlowflag(String flowflag) {
+		this.flowflag = flowflag;
+	}
+
+	public String getBtnflag() {
+		return btnflag;
+	}
+
+	public void setBtnflag(String btnflag) {
+		this.btnflag = btnflag;
+	}
+
+	
+}

+ 74 - 0
gkjsjy/trunk/src/com/xt/jygl/ggfwxxgl/jdjc/entity/JdjcfjEntity.java

@@ -0,0 +1,74 @@
+package com.xt.jygl.ggfwxxgl.jdjc.entity;
+
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.Table;
+
+import org.hibernate.annotations.GenericGenerator;
+
+import com.xtframe.sec.common.BaseEntity;
+
+@Entity
+@Table(name = "GK_OPERATION_JSJY_JDTXFJ")
+public class JdjcfjEntity extends BaseEntity<String> implements Cloneable {
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+	private String id = null;
+	private String jdtxid = null;
+	private String fjid = null;
+	private String fjmc = null;
+	private String type = null;
+
+	public String getJdtxid() {
+		return jdtxid;
+	}
+
+	public void setJdtxid(String jdtxid) {
+		this.jdtxid = jdtxid;
+	}
+
+	public String getType() {
+		return type;
+	}
+
+	public void setType(String type) {
+		this.type = type;
+	}
+
+	/**
+	 * ID主键
+	 * 
+	 * @return
+	 */
+	@Id
+	@GenericGenerator(name = "systemUUID", strategy = "uuid")
+	@GeneratedValue(generator = "systemUUID")
+	public String getId() {
+		return id;
+	}
+
+	public void setId(String id) {
+		this.id = id;
+	}
+
+	public String getFjid() {
+		return fjid;
+	}
+
+	public void setFjid(String fjid) {
+		this.fjid = fjid;
+	}
+
+	public String getFjmc() {
+		return fjmc;
+	}
+
+	public void setFjmc(String fjmc) {
+		this.fjmc = fjmc;
+	}
+
+}

+ 20 - 0
gkjsjy/trunk/src/com/xt/jygl/ggfwxxgl/jdjc/service/JdjcService.java

@@ -0,0 +1,20 @@
+package com.xt.jygl.ggfwxxgl.jdjc.service;
+
+import com.xt.jygl.ggfwxxgl.jdjc.entity.JdjcEntity;
+import com.xt.jygl.workflow.service.BaseWorkFlowService;
+
+public interface JdjcService extends BaseWorkFlowService{
+	/* 逻辑删除 */
+	void logicDelete(String id);
+	
+	public <S extends JdjcEntity> S save(S entity);
+	
+	JdjcEntity findOne(String id);
+	
+	void delete(String id);
+	
+	public <S extends JdjcEntity> S submit(S entity);
+	
+	public boolean changeAudit(String shyj, JdjcEntity entity, boolean flag);
+	
+}

+ 17 - 0
gkjsjy/trunk/src/com/xt/jygl/ggfwxxgl/jdjc/service/JdjcfjService.java

@@ -0,0 +1,17 @@
+package com.xt.jygl.ggfwxxgl.jdjc.service;
+
+import java.util.List;
+
+import com.xt.jygl.ggfwxxgl.jdjc.entity.JdjcfjEntity;
+
+public interface JdjcfjService {
+	void logicDelete(String id);
+
+	public <S extends JdjcfjEntity> S save(S entity);
+
+	public void delete(JdjcfjEntity ent);
+
+	JdjcfjEntity findOne(String id);
+
+	List<JdjcfjEntity> findByJdjcid(String xkznsid,String type);
+}

+ 119 - 0
gkjsjy/trunk/src/com/xt/jygl/ggfwxxgl/jdjc/service/impl/JdjcServiceImpl.java

@@ -0,0 +1,119 @@
+package com.xt.jygl.ggfwxxgl.jdjc.service.impl;
+
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import com.xt.jygl.common.Constants;
+import com.xt.jygl.ggfwxxgl.jdjc.dao.JdjcDao;
+import com.xt.jygl.ggfwxxgl.jdjc.entity.JdjcEntity;
+import com.xt.jygl.ggfwxxgl.jdjc.service.JdjcService;
+import com.xt.jygl.workflow.entity.TaskInfoEntity;
+import com.xt.jygl.workflow.param.WorkFlowParam;
+import com.xt.jygl.workflow.service.WorkflowMangerService;
+import com.xt.jygl.workflow.service.impl.BaseWorkFlowServiceImpl;
+import com.xtframe.core.support.SecurityMgr;
+import com.xtframe.sec.common.BaseEntity;
+import com.xtframe.sec.common.SecRepository;
+import com.xtframe.sec.utils.SecUtils;
+import com.xtframe.util.StringUtils;
+
+@Service
+public class JdjcServiceImpl extends BaseWorkFlowServiceImpl<JdjcEntity, String> implements JdjcService {
+
+	@Autowired
+	private JdjcDao dao;
+	@Autowired
+	private WorkflowMangerService workService;
+	@Autowired
+	protected SecurityMgr securityMgr;
+
+	@Override
+	protected SecRepository<JdjcEntity, String> getDao() {
+
+		return this.dao;
+	}
+
+	@Override
+	public <S extends JdjcEntity> S submit(S entity) {
+		if (entity.getRecordStatus() == BaseEntity.RECORD_STATE_REJECT) {
+			entity.setRecordStatus(BaseEntity.RECORD_STATE_SUBMIT);
+			entity = this.save(entity);
+			Map<String, Object> variables = new HashMap<String, Object>();
+			WorkFlowParam param = new WorkFlowParam();
+			param.put(WorkFlowParam.BUSINESS_KEY, entity.getId());
+			param.put(WorkFlowParam.IS_AUDIT, "false");
+			param.put(WorkFlowParam.DESCRIPTION, entity.getGkjyr().getGkjyr() + "的督查检查审批");
+			complete(param, variables);
+		} else {
+			entity.setRecordStatus(BaseEntity.RECORD_STATE_SUBMIT);
+			entity = this.save(entity);
+			// 把港区id拼到role_sc后面,只有经营人所在港区的审查人员才能看到办理
+			String gqid = "";
+			if (entity.getGkjyr()!=null) {
+				gqid = entity.getSzgq().getId();
+			}
+			Map<String, Object> variables = new HashMap<String, Object>();
+			variables.put("role_jdtx", Constants.ROLE_JDTX + ":" + gqid);
+			variables.put("role_jyr", Constants.ROLE_Jyr);
+			WorkFlowParam param = new WorkFlowParam();
+			param.put(WorkFlowParam.DESCRIPTION, entity.getGkjyr().getGkjyr() + "的督查检查审批");
+
+			// 设置流程发起人
+			if (StringUtils.isEmpty(param.getString(WorkFlowParam.AUDIT_USER))) {
+				param.put(WorkFlowParam.AUDIT_USER, SecUtils.getCurrUser().getId().toString());
+			}
+
+			/*
+			 * // 设置流程发起人,设置为当前登录帐号的所属经营人id存到数据库,如果是审查人员,则用当前用户id if
+			 * (securityMgr.getCurrUser().getSfjyr().getText().equals("否")) { if
+			 * (StringUtils.isEmpty(param.getString(WorkFlowParam.AUDIT_USER)))
+			 * { param.put(WorkFlowParam.AUDIT_USER,
+			 * SecUtils.getCurrUser().getId().toString()); } } else { if
+			 * (StringUtils.isEmpty(param.getString(WorkFlowParam.AUDIT_USER)))
+			 * { param.put(WorkFlowParam.AUDIT_USER,
+			 * SecUtils.getCurrUser().getSsjyr().getId().toString()); } }
+			 */
+
+			param.put(WorkFlowParam.BUSINESS_KEY, entity.getId());
+			// 提交流程
+			create(param, variables);
+		}
+		return entity;
+	}
+
+	@Override
+	public boolean changeAudit(String shyj, JdjcEntity entity, boolean flag) {
+		Map<String, Object> variables = new HashMap<String, Object>();
+		variables.put(WorkFlowParam.AUDIT_PASS, flag);
+		WorkFlowParam param = new WorkFlowParam();
+		param.put(WorkFlowParam.AUDIT_DATE, new Date());
+		param.put(WorkFlowParam.AUDIT_TEXT, shyj == null ? "" : shyj);
+		param.put(WorkFlowParam.AUDIT_RESULT, flag);
+		param.put(WorkFlowParam.BUSINESS_KEY, entity.getId());
+		workService.getTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), entity.getId().toString(), JdjcEntity.PROCESS_DEFINITION_KEY);
+		complete(param, variables);
+		List<TaskInfoEntity> list = taskInfoService.findByBusIdAndBusKeyAndRecordStatus(entity.getId().toString(), JdjcEntity.PROCESS_DEFINITION_KEY);
+		if (list == null || list.size() == 0) {
+			entity.setRecordStatus(BaseEntity.RECORD_STATE_COMPLETED);
+			entity.setFlowflag("3");
+			entity = this.save(entity);
+			return true;
+		}
+		if (flag == false) {
+			entity.setRecordStatus(BaseEntity.RECORD_STATE_REJECT);
+			this.save(entity);
+		}
+		return false;
+	}
+
+	@Override
+	public String getProcessDefinitionKey() {
+		return JdjcEntity.PROCESS_DEFINITION_KEY;
+	}
+
+}

+ 36 - 0
gkjsjy/trunk/src/com/xt/jygl/ggfwxxgl/jdjc/service/impl/JdjcfjServiceImpl.java

@@ -0,0 +1,36 @@
+package com.xt.jygl.ggfwxxgl.jdjc.service.impl;
+
+import java.util.List;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import com.xt.jygl.common.service.JyglBaseService;
+import com.xt.jygl.ggfwxxgl.jdjc.dao.JdjcfjDao;
+import com.xt.jygl.ggfwxxgl.jdjc.entity.JdjcfjEntity;
+import com.xt.jygl.ggfwxxgl.jdjc.service.JdjcfjService;
+import com.xt.jygl.gkjygl.gkjyr.xkzns.dao.XkznsfjDao;
+import com.xt.jygl.gkjygl.gkjyr.xkzns.entity.XkznsfjEntity;
+import com.xt.jygl.gkjygl.gkjyr.xkzns.service.XkznsfjService;
+import com.xtframe.sec.common.SecRepository;
+
+@Service
+public class JdjcfjServiceImpl extends JyglBaseService<JdjcfjEntity, String> implements JdjcfjService {
+	@Autowired
+	private JdjcfjDao dao;
+
+	@Override
+	protected SecRepository<JdjcfjEntity, String> getDao() {
+
+		return this.dao;
+	}
+
+	@Override
+	public List<JdjcfjEntity> findByJdjcid(String jdjcid,String type) {
+		
+		return dao.findByJdjcid(jdjcid,type);
+	}
+
+	
+
+}

+ 204 - 0
gkjsjy/trunk/src/com/xt/jygl/ggfwxxgl/jdjc/vo/JdjcVo.java

@@ -0,0 +1,204 @@
+package com.xt.jygl.ggfwxxgl.jdjc.vo;
+
+import java.util.Date;
+
+import com.xtframe.sec.common.BaseVo;
+
+public class JdjcVo extends BaseVo {
+	private String id = null;
+
+	// 所在港区
+	private String szgq = null;
+	private String szgqmc = null;
+	// 所在港口
+	private String szgk = null;
+	private String szgkmc = null;
+	// 港口经营人
+	private String gkjyr = null;
+	private String gkjyrmc = null;
+	private String dcdw = null;
+	private Date sqrq = null;
+	private String cjdcry = null;
+	private String bdcdwfzr = null;
+	private String bdcdwcjry = null;
+	private Date zgqx = null;
+	private String yhmc = null;
+	private String zgcsyq = null;
+	private String zgsm = null;
+	private String zjfj = null;
+	private String zghfj = null;
+
+	private String taskState=null;
+	private String flowflag = null;
+	private String btnflag = null;
+	public String getTaskState() {
+		return taskState;
+	}
+
+	public void setTaskState(String taskState) {
+		this.taskState = taskState;
+	}
+
+	public String getId() {
+		return id;
+	}
+
+	public void setId(String id) {
+		this.id = id;
+	}
+
+	public String getSzgq() {
+		return szgq;
+	}
+
+	public String getSzgqmc() {
+		return szgqmc;
+	}
+
+	public void setSzgqmc(String szgqmc) {
+		this.szgqmc = szgqmc;
+	}
+
+	public String getSzgkmc() {
+		return szgkmc;
+	}
+
+	public void setSzgkmc(String szgkmc) {
+		this.szgkmc = szgkmc;
+	}
+
+	public void setSzgq(String szgq) {
+		this.szgq = szgq;
+	}
+
+	public String getSzgk() {
+		return szgk;
+	}
+
+	public void setSzgk(String szgk) {
+		this.szgk = szgk;
+	}
+
+	public String getGkjyr() {
+		return gkjyr;
+	}
+
+	public void setGkjyr(String gkjyr) {
+		this.gkjyr = gkjyr;
+	}
+
+	public String getGkjyrmc() {
+		return gkjyrmc;
+	}
+
+	public void setGkjyrmc(String gkjyrmc) {
+		this.gkjyrmc = gkjyrmc;
+	}
+
+	public Date getSqrq() {
+		return sqrq;
+	}
+
+	public void setSqrq(Date sqrq) {
+		this.sqrq = sqrq;
+	}
+
+	public String getCjdcry() {
+		return cjdcry;
+	}
+
+	public void setCjdcry(String cjdcry) {
+		this.cjdcry = cjdcry;
+	}
+
+	public Date getZgqx() {
+		return zgqx;
+	}
+
+	public void setZgqx(Date zgqx) {
+		this.zgqx = zgqx;
+	}
+
+	public String getYhmc() {
+		return yhmc;
+	}
+
+	public void setYhmc(String yhmc) {
+		this.yhmc = yhmc;
+	}
+
+	public String getZgcsyq() {
+		return zgcsyq;
+	}
+
+	public void setZgcsyq(String zgcsyq) {
+		this.zgcsyq = zgcsyq;
+	}
+
+	public String getZgsm() {
+		return zgsm;
+	}
+
+	public void setZgsm(String zgsm) {
+		this.zgsm = zgsm;
+	}
+
+	public String getZjfj() {
+		return zjfj;
+	}
+
+	public void setZjfj(String zjfj) {
+		this.zjfj = zjfj;
+	}
+
+	public String getZghfj() {
+		return zghfj;
+	}
+
+	public void setZghfj(String zghfj) {
+		this.zghfj = zghfj;
+	}
+
+	public String getDcdw() {
+		return dcdw;
+	}
+
+	public void setDcdw(String dcdw) {
+		this.dcdw = dcdw;
+	}
+
+	public String getBdcdwfzr() {
+		return bdcdwfzr;
+	}
+
+	public void setBdcdwfzr(String bdcdwfzr) {
+		this.bdcdwfzr = bdcdwfzr;
+	}
+
+	public String getBdcdwcjry() {
+		return bdcdwcjry;
+	}
+
+	public void setBdcdwcjry(String bdcdwcjry) {
+		this.bdcdwcjry = bdcdwcjry;
+	}
+
+	public String getFlowflag() {
+		return flowflag;
+	}
+
+	public void setFlowflag(String flowflag) {
+		this.flowflag = flowflag;
+	}
+
+	public String getBtnflag() {
+		return btnflag;
+	}
+
+	public void setBtnflag(String btnflag) {
+		this.btnflag = btnflag;
+	}
+
+	
+
+}

+ 966 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjsgl/jsjdcbsj/ctl/JsjdcbsjCtl.java

@@ -0,0 +1,966 @@
+package com.xt.jygl.gkjsgl.jsjdcbsj.ctl;
+
+import java.io.File;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+
+import javax.persistence.criteria.CriteriaBuilder;
+import javax.persistence.criteria.CriteriaQuery;
+import javax.persistence.criteria.Predicate;
+import javax.persistence.criteria.Root;
+import javax.persistence.criteria.Subquery;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Page;
+import org.springframework.data.jpa.domain.Specification;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.Model;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.multipart.MultipartFile;
+
+import cache.CacheSearchCondition;
+
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.xt.jygl.accessory.entity.AccessoryEntity;
+import com.xt.jygl.accessory.service.AccessoryService;
+import com.xt.jygl.common.BaseWebCtl;
+import com.xt.jygl.common.Constants;
+import com.xt.jygl.common.GlobalData;
+import com.xt.jygl.gkjcxx.gk.entity.GkEntity;
+import com.xt.jygl.gkjcxx.gk.service.GkService;
+import com.xt.jygl.gkjcxx.gq.entity.GqEntity;
+import com.xt.jygl.gkjsgl.jsjdcbsj.entity.JsjdcbsjEntity;
+import com.xt.jygl.gkjsgl.jsjdcbsj.entity.JsjdcbsjfjEntity;
+import com.xt.jygl.gkjsgl.jsjdcbsj.service.JsjdcbsjService;
+import com.xt.jygl.gkjsgl.jsjdcbsj.service.JsjdcbsjfjService;
+import com.xt.jygl.gkjsgl.jsjdcbsj.vo.JsjdcbsjVo;
+import com.xt.jygl.gkjsgl.tzjhgl.entity.TzjhglEntity;
+import com.xt.jygl.gkjsgl.tzjhgl.service.TzjhglService;
+import com.xt.jygl.gkjsgl.xmxxgl.vo.XmxxglVo;
+import com.xt.jygl.gkjygl.gkjyr.jyrjbxx.entity.GkjyrEntity;
+import com.xt.jygl.gkjygl.gkjyr.jyrjbxx.service.GkjyrService;
+import com.xt.jygl.workflow.entity.TaskInfoEntity;
+import com.xt.jygl.workflow.service.TaskInfoService;
+import com.xt.jygl.workflow.vo.TaskInfoVo;
+import com.xtframe.core.base.ctl.WebJsonResult;
+import com.xtframe.core.support.SecurityMgr;
+import com.xtframe.sec.code.entity.CodeEntity;
+import com.xtframe.sec.common.BaseEntity;
+import com.xtframe.sec.common.QueryService;
+import com.xtframe.sec.common.SimplePageRequest;
+import com.xtframe.sec.user.entity.UserEntity;
+import com.xtframe.sec.utils.SecUtils;
+import com.xtframe.util.StringUtils;
+
+@Controller
+@RequestMapping("/jsjdcbsj")
+public class JsjdcbsjCtl extends BaseWebCtl {
+	@Autowired
+	private SecurityMgr securityMgr;
+	@Autowired
+	private QueryService query;
+	@Autowired
+	private JsjdcbsjService jsjdcbsjService;
+	@Autowired
+	private AccessoryService accessoryService;
+	@Autowired
+	private GkjyrService gkjyrService;
+	@Autowired
+	protected TaskInfoService taskInfoService;
+	@Autowired
+	private TzjhglService tzjhglService;
+	@Autowired
+	private GkService gkService;
+	@Autowired
+	private JsjdcbsjfjService jsjdcbsjfjService;
+
+	@RequestMapping(value = "/main")
+	public String main(SimplePageRequest page, Model model, final HttpServletRequest request, final String xmmc, final String szgkid, final String szgqid, String menuid, final String xmhzjbid, final String xmfr, final String szdid, final String sfyzjbzid) throws JsonProcessingException {
+
+		final Map<String, Object> cacheSCmap = CacheSearchCondition.cacheSCmap(request, "xmxxgl");
+
+		Specification<JsjdcbsjEntity> spec = new Specification<JsjdcbsjEntity>() {
+			// 查询条件
+			@Override
+			public Predicate toPredicate(Root<JsjdcbsjEntity> root, CriteriaQuery<?> query, CriteriaBuilder cb) {
+				List<Predicate> list = new ArrayList<Predicate>();
+				if (StringUtils.isNotEmpty(xmmc)) {
+					list.add(cb.like(root.get("xmmc").as(String.class), "%" + xmmc + "%"));
+				} else if (isGET(request)) {
+					CacheSearchCondition.predicateList(list, cacheSCmap, root, cb, null, "xmmc");
+				}
+				if (StringUtils.isNotEmpty(xmfr)) {
+					list.add(cb.like(root.get("xmfr").as(String.class), "%" + xmfr + "%"));
+				} else if (isGET(request)) {
+					CacheSearchCondition.predicateList(list, cacheSCmap, root, cb, null, "xmfr");
+				}
+				if (StringUtils.isNotEmpty(xmhzjbid)) {
+					list.add(cb.like(root.get("xmhzjb").get("id").as(String.class), "%" + xmhzjbid + "%"));
+				} else if (isGET(request)) {
+					CacheSearchCondition.predicateList(list, cacheSCmap, root, cb, "id", "xmhzjb", "xmhzjbid");
+				}
+				if (StringUtils.isNotEmpty(szdid)) {
+					list.add(cb.like(root.get("szd").get("id").as(String.class), "%" + szdid + "%"));
+				} else if (isGET(request)) {
+					CacheSearchCondition.predicateList(list, cacheSCmap, root, cb, "id", "szd", "szdid");
+				}
+				if (StringUtils.isNotEmpty(szgkid)) {
+					list.add(cb.like(root.get("szgk").get("id").as(String.class), "%" + szgkid + "%"));
+				} else if (isGET(request)) {
+					CacheSearchCondition.predicateList(list, cacheSCmap, root, cb, "id", "szgk", "szgkid");
+				}
+				if (StringUtils.isNotEmpty(szgqid)) {
+					list.add(cb.like(root.get("szgq").get("id").as(String.class), "%" + szgqid + "%"));
+				} else if (isGET(request)) {
+					CacheSearchCondition.predicateList(list, cacheSCmap, root, cb, "id", "szgq", "szgqid");
+				}
+				if (securityMgr.getCurrUser().getSfjyr().getText().equals("是")) {
+					list.add(cb.like(root.get("jyrid").get("id").as(String.class), "%" + securityMgr.getCurrUser().getSsjyr().getId() + "%"));
+				}
+
+				Subquery<TzjhglEntity> subquery = query.subquery(TzjhglEntity.class);
+				Root<TzjhglEntity> dpRoot = subquery.from(TzjhglEntity.class);
+				subquery.select(dpRoot);
+				List<Predicate> subQueryPredicates = new ArrayList<Predicate>();
+				if (StringUtils.isNotEmpty(sfyzjbzid)) {
+					subQueryPredicates.add(cb.equal(dpRoot.get("xmid").get("id").as(String.class), root.get("id").as(String.class)));
+					if (sfyzjbzid.equals("201")) {
+						subQueryPredicates.add(cb.equal(dpRoot.get("sfyzjbz").get("id").as(String.class), sfyzjbzid));
+						subquery.where(subQueryPredicates.toArray(new Predicate[] {}));
+						list.add(cb.exists(subquery));
+					} else {
+						subQueryPredicates.add(cb.equal(dpRoot.get("sfyzjbz").get("id").as(String.class), "201"));
+						subquery.where(subQueryPredicates.toArray(new Predicate[] {}));
+						list.add(cb.exists(subquery).not());
+					}
+				} else if (isGET(request)) {
+					subQueryPredicates.add(cb.equal(dpRoot.get("xmid").get("id").as(String.class), root.get("id").as(String.class)));
+					Object val = CacheSearchCondition.cacheSCmapVal(cacheSCmap, "sfyzjbzid");
+					if (("201").equals(val) && val != "") {
+						subQueryPredicates.add(cb.equal(dpRoot.get("sfyzjbz").get("id").as(String.class), val));
+						subquery.where(subQueryPredicates.toArray(new Predicate[] {}));
+						list.add(cb.exists(subquery));
+					} else if (("202").equals(val) && val != "") {
+						subQueryPredicates.add(cb.equal(dpRoot.get("sfyzjbz").get("id").as(String.class), val));
+						subquery.where(subQueryPredicates.toArray(new Predicate[] {}));
+						list.add(cb.exists(subquery));
+					}
+
+				}
+				list.add(cb.notEqual(root.get("recordStatus").as(Integer.class), BaseEntity.RECORD_STATE_DELETE));
+				return cb.and(list.toArray(new Predicate[] {}));
+			}
+		};
+
+		if (page.getPage() < 1) {
+			Object xmxxpage = CacheSearchCondition.cacheSCmapVal(cacheSCmap, "xmxxpage");
+			if (StringUtils.isEmpty(xmxxpage) || !org.apache.commons.lang.StringUtils.isNumeric(String.valueOf(xmxxpage))) {
+				xmxxpage = "1";
+			}
+			page.setPage(Integer.valueOf(String.valueOf(xmxxpage)));
+		}
+
+		page.setSort("createDateTime");
+		page.setOrder("desc");
+		Page<JsjdcbsjEntity> list = query.findAll(spec, toPageRequest(page), JsjdcbsjEntity.class);
+		List<JsjdcbsjVo> voList = new ArrayList<JsjdcbsjVo>();
+		for (JsjdcbsjEntity entity : list) {
+			JsjdcbsjVo vo = new JsjdcbsjVo();
+			if (null != entity) {
+				BeanUtils.copyProperties(entity, vo);
+				if (entity.getRecordStatus() != 9) {
+					List<TaskInfoEntity> lists = taskInfoService.findByBusIdAndBusKeyAndRecordStatus(entity.getId(), JsjdcbsjEntity.PROCESS_DEFINITION_KEY);
+					if (lists != null & lists.size() > 0) {
+						TaskInfoEntity taskinfo = lists.get(0);
+						vo.setCurrentname(taskinfo.getCurrName());
+						if ((jsjdcbsjService.getTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), entity.getId().toString()) != null) || jsjdcbsjService.getCandidateTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), entity.getId().toString()) != null) {
+							if ("受理经办人".equals(taskinfo.getCurrName())) {
+								vo.setTaskState("TH");
+							} else {
+								vo.setTaskState(Constants.IS_MY_TASK);
+							}
+						}
+					}else{
+						if("1".equals(entity.getFlowstatus())){
+							vo.setCurrentname("退回地市");
+						}else if("2".equals(entity.getFlowstatus())){
+							vo.setCurrentname("完成");
+						}
+					}
+				}else if(entity.getRecordStatus() == BaseEntity.RECORD_STATE_COMPLETED){
+					vo.setCurrentname("完成");
+				}
+				vo.setTzlxzw(entity.getTzlx() != null ? entity.getTzlx().getText() : "");
+				vo.setXmlxzw(entity.getXmlx() != null ? entity.getXmlx().getText() : "");
+				vo.setXmhzjbzw(entity.getXmhzjb() != null ? entity.getXmhzjb().getText() : "");
+				vo.setAxspjbzw(entity.getAxspjb() != null ? entity.getAxspjb().getText() : "");
+				vo.setSzgkzw(entity.getSzgk() != null ? entity.getSzgk().getGkmc() : "");
+				vo.setSzgqzw(entity.getSzgq() != null ? entity.getSzgq().getGqmc() : "");
+				if (entity.getJyrid() != null) {
+					vo.setSzddzw(entity.getJyrid().getSzd() != null ? entity.getJyrid().getSzd().getText() : "");
+					vo.setSzd(entity.getJyrid().getSzd() != null ? entity.getJyrid().getSzd().getId() : "");
+					model.addAttribute("szddzw", vo.getSzddzw());
+					model.addAttribute("szd", vo.getSzd());
+				}
+
+				vo.setTzlx(entity.getTzlx() != null ? entity.getTzlx().getId() : "");
+				vo.setXmlx(entity.getXmlx() != null ? entity.getXmlx().getId() : "");
+				vo.setXmhzjb(entity.getXmhzjb() != null ? entity.getXmhzjb().getId() : "");
+				vo.setAxspjb(entity.getAxspjb() != null ? entity.getAxspjb().getId() : "");
+				vo.setSzgk(entity.getSzgk() != null ? entity.getSzgk().getId() : "");
+				vo.setSzgq(entity.getSzgq() != null ? entity.getSzgq().getId() : "");
+				if (entity.getRecordStatus() == 8) {
+					vo.setShowjsjd("Y");
+				} else {
+					vo.setShowjsjd("N");
+				}
+				/*
+				 * List<TzjhglEntity> tzjh =
+				 * tzjhglService.findByXmid(entity.getId() != null ?
+				 * entity.getId() : ""); if (tzjh.size() != 0) { String
+				 * flagForYear = "1"; vo.setFlagForYear(flagForYear); }
+				 */
+				List<TaskInfoEntity> listtask = taskInfoService.findByBusIdAndBusKeyAndRecordStatus(entity.getId().toString(), JsjdcbsjEntity.PROCESS_DEFINITION_KEY);
+				String flag = "";
+				if (listtask.size() != 0 || entity.getRecordStatus() == BaseEntity.RECORD_STATE_COMPLETED) {
+					flag = "1";
+					vo.setFlag(flag);
+				}
+				/*
+				 * boolean judge = false; for (TzjhglEntity tz : tzjh) { if
+				 * (("是").equals(tz.getSfyzjbz().getText())) { judge = true; }
+				 * 
+				 * } if (judge) { vo.setSfyzjbz("是"); } else {
+				 * vo.setSfyzjbz("否"); }
+				 */
+
+				voList.add(vo);
+			}
+		}
+
+		if (isPOST(request)) {
+			cacheSCmap.put("xmxxpage", page.getPage());
+			CacheSearchCondition.putCacheSCmap(request.getParameterMap(), cacheSCmap);
+			// System.out.println(JSONObject.fromObject(cacheSCmap));
+		}
+
+		model.addAttribute("list", voList);
+		model.addAttribute("xmmc", CacheSearchCondition.cacheSCmapVal(cacheSCmap, "xmmc"));
+		model.addAttribute("xmfr", CacheSearchCondition.cacheSCmapVal(cacheSCmap, "xmfr"));
+		model.addAttribute("szd", CacheSearchCondition.cacheSCmapVal(cacheSCmap, "szdid"));
+		model.addAttribute("szgk", CacheSearchCondition.cacheSCmapVal(cacheSCmap, "szgkid"));
+		model.addAttribute("szgq", CacheSearchCondition.cacheSCmapVal(cacheSCmap, "szgqid"));
+		model.addAttribute("xmhzjbid", CacheSearchCondition.cacheSCmapVal(cacheSCmap, "xmhzjbid"));
+		model.addAttribute("sfyzjbz", CacheSearchCondition.cacheSCmapVal(cacheSCmap, "sfyzjbzid"));
+		model.addAttribute("menuid", menuid);
+
+		// 翻页共通
+		putPageInfo(model, page, list);
+		return "gkjsgl/jsjdcbsj/jsjdcbsjmain";
+	}
+
+	@RequestMapping(value = "/delete")
+	@ResponseBody
+	public WebJsonResult logicdelete(Model model, String id) {
+		WebJsonResult wr = success();
+		JsjdcbsjEntity entity = jsjdcbsjService.findOne(id);
+		if (entity.getRecordStatus() != 1 && entity.getRecordStatus() != 8 && entity.getRecordStatus() != 9) {
+			wr.setSuccess(false);
+			wr.setMessage("该项目在流程中,无法删除!");
+			return wr;
+		}
+		try {
+			// 逻辑删除
+			jsjdcbsjService.logicDelete(id);
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("操作失败!");
+			e.printStackTrace();
+		}
+		return wr;
+	}
+
+	@RequestMapping(value = "/submit")
+	@ResponseBody
+	public WebJsonResult submit(Model model, JsjdcbsjEntity code, String ssjyrid, String fjids, String accid, String xmlxid, String tzlxid, String xmhzjbid, String axspjbid, String szdid, String szgkid, String szgqid, String zyhbwflid) {
+		WebJsonResult wr = success();
+		if (StringUtils.isEmpty(code.getXmmc())) {
+			wr.setSuccess(false);
+			wr.setMessage("请输入项目名称");
+			return wr;
+		}
+		if (StringUtils.isEmpty(ssjyrid)) {
+			wr.setSuccess(false);
+			wr.setMessage("请选择经营人");
+			return wr;
+		}
+		if (StringUtils.isEmpty(szdid)) {
+			wr.setSuccess(false);
+			wr.setMessage("请选择所在地");
+			return wr;
+		}
+		if (StringUtils.isEmpty(szgkid)) {
+			wr.setSuccess(false);
+			wr.setMessage("请选择所港口");
+			return wr;
+		}
+		if (StringUtils.isEmpty(szgqid)) {
+			wr.setSuccess(false);
+			wr.setMessage("请选择所港区");
+			return wr;
+		}
+		if (StringUtils.isEmpty(code.getXmfr())) {
+			wr.setSuccess(false);
+			wr.setMessage("请输入项目法人");
+			return wr;
+		}
+		if (StringUtils.isEmpty(xmlxid)) {
+			wr.setSuccess(false);
+			wr.setMessage("请选择项目类型");
+			return wr;
+		}
+		if (StringUtils.isEmpty(code.getJsdd())) {
+			wr.setSuccess(false);
+			wr.setMessage("请输入建设地点");
+			return wr;
+		}
+		try {
+			if (!StringUtils.isEmpty(code.getId())) {
+				// 修改
+				JsjdcbsjEntity jsjdcbsj = jsjdcbsjService.findOne(code.getId());
+				jsjdcbsj.setXmmc(code.getXmmc());
+				jsjdcbsj.setXmfr(code.getXmfr());
+				jsjdcbsj.setJsdd(code.getJsdd());
+				jsjdcbsj.setJsgm(code.getJsgm());
+				jsjdcbsj.setZtz(code.getZtz());
+				jsjdcbsj.setTgnl(code.getTgnl());
+				jsjdcbsj.setAxcd(code.getAxcd());
+				jsjdcbsj.setBwdj(code.getBwdj());
+				jsjdcbsj.setBwyt(code.getBwyt());
+
+				if (!StringUtils.isEmpty(ssjyrid)) {
+					GkjyrEntity jyr = new GkjyrEntity();
+					jyr.setId(ssjyrid);
+					jsjdcbsj.setJyrid(jyr);
+				}
+
+				if (!StringUtils.isEmpty(zyhbwflid)) {
+					CodeEntity zyhbwfl = new CodeEntity(zyhbwflid);
+					jsjdcbsj.setZyhbwfl(zyhbwfl);
+				}
+
+				if (!StringUtils.isEmpty(szgkid)) {
+					GkEntity szgk = new GkEntity();
+					szgk.setId(szgkid);
+					jsjdcbsj.setSzgk(szgk);
+				}
+				if (!StringUtils.isEmpty(szgqid)) {
+					GqEntity szgq = new GqEntity();
+					szgq.setId(szgqid);
+					jsjdcbsj.setSzgq(szgq);
+				}
+				if (!StringUtils.isEmpty(xmlxid)) {
+					CodeEntity xmlxdx = new CodeEntity();
+					xmlxdx.setId(xmlxid);
+					jsjdcbsj.setXmlx(xmlxdx);
+				}
+				if (!StringUtils.isEmpty(tzlxid)) {
+					CodeEntity tzlxdx = new CodeEntity();
+					tzlxdx.setId(tzlxid);
+					jsjdcbsj.setTzlx(tzlxdx);
+				} else {
+					jsjdcbsj.setTzlx(null);
+				}
+				if (!StringUtils.isEmpty(xmhzjbid)) {
+					CodeEntity xmhzjbdx = new CodeEntity();
+					xmhzjbdx.setId(xmhzjbid);
+					jsjdcbsj.setXmhzjb(xmhzjbdx);
+				} else {
+					jsjdcbsj.setXmhzjb(null);
+				}
+				if (!StringUtils.isEmpty(axspjbid)) {
+					CodeEntity axspjbdx = new CodeEntity();
+					axspjbdx.setId(axspjbid);
+					jsjdcbsj.setAxspjb(axspjbdx);
+				} else {
+					jsjdcbsj.setAxspjb(null);
+				}
+				jsjdcbsjService.submit(jsjdcbsj);
+			} else {
+				if (!StringUtils.isEmpty(ssjyrid)) {
+					GkjyrEntity jyr = new GkjyrEntity();
+					jyr.setId(ssjyrid);
+					code.setJyrid(jyr);
+				}
+
+				// 新增直接保存
+				if (!StringUtils.isEmpty(szgkid)) {
+					GkEntity szgk = new GkEntity();
+					szgk.setId(szgkid);
+					code.setSzgk(szgk);
+				}
+				if (!StringUtils.isEmpty(szgqid)) {
+					GqEntity szgq = new GqEntity();
+					szgq.setId(szgqid);
+					code.setSzgq(szgq);
+				}
+				if (!StringUtils.isEmpty(zyhbwflid)) {
+					CodeEntity zyhbwfldx = new CodeEntity();
+					zyhbwfldx.setId(zyhbwflid);
+					code.setZyhbwfl(zyhbwfldx);
+				}
+				if (!StringUtils.isEmpty(xmlxid)) {
+					CodeEntity xmlxdx = new CodeEntity();
+					xmlxdx.setId(xmlxid);
+					code.setXmlx(xmlxdx);
+				}
+				if (!StringUtils.isEmpty(tzlxid)) {
+					CodeEntity tzlxdx = new CodeEntity();
+					tzlxdx.setId(tzlxid);
+					code.setTzlx(tzlxdx);
+				}
+				if (!StringUtils.isEmpty(xmhzjbid)) {
+					CodeEntity xmhzjbdx = new CodeEntity();
+					xmhzjbdx.setId(xmhzjbid);
+					code.setXmhzjb(xmhzjbdx);
+				}
+				if (!StringUtils.isEmpty(axspjbid)) {
+					CodeEntity axspjbdx = new CodeEntity();
+					axspjbdx.setId(axspjbid);
+					code.setAxspjb(axspjbdx);
+				}
+				jsjdcbsjService.submit(code);
+
+			}
+
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("操作失败!");
+			e.printStackTrace();
+		}
+		return wr;
+	}
+
+	@RequestMapping(value = "/submitAudit")
+	@ResponseBody
+	public WebJsonResult submitAudit(JsjdcbsjEntity code, String ssjyrid, String fjids, String accid, String xmlxid, String tzlxid, String xmhzjbid, String axspjbid, String szdid, String szgkid, String szgqid, String zyhbwflid) {
+		WebJsonResult wr = success();
+		JsjdcbsjEntity jsjdcbsj = new JsjdcbsjEntity();
+		try {
+			if (!StringUtils.isEmpty(code.getId())) {
+				// 修改
+				jsjdcbsj = jsjdcbsjService.findOne(code.getId());
+				jsjdcbsj.setXmmc(code.getXmmc());
+				jsjdcbsj.setXmfr(code.getXmfr());
+				jsjdcbsj.setJsdd(code.getJsdd());
+				jsjdcbsj.setJsgm(code.getJsgm());
+				jsjdcbsj.setZtz(code.getZtz());
+				jsjdcbsj.setTgnl(code.getTgnl());
+				jsjdcbsj.setAxcd(code.getAxcd());
+				jsjdcbsj.setBwdj(code.getBwdj());
+				jsjdcbsj.setBwyt(code.getBwyt());
+
+				if (!StringUtils.isEmpty(ssjyrid)) {
+					GkjyrEntity jyr = new GkjyrEntity();
+					jyr.setId(ssjyrid);
+					jsjdcbsj.setJyrid(jyr);
+				}
+
+				if (!StringUtils.isEmpty(zyhbwflid)) {
+					CodeEntity zyhbwfl = new CodeEntity(zyhbwflid);
+					jsjdcbsj.setZyhbwfl(zyhbwfl);
+				}
+
+				if (!StringUtils.isEmpty(szgkid)) {
+					GkEntity szgk = new GkEntity();
+					szgk.setId(szgkid);
+					jsjdcbsj.setSzgk(szgk);
+				}
+				if (!StringUtils.isEmpty(szgqid)) {
+					GqEntity szgq = new GqEntity();
+					szgq.setId(szgqid);
+					jsjdcbsj.setSzgq(szgq);
+				}
+				if (!StringUtils.isEmpty(xmlxid)) {
+					CodeEntity xmlxdx = new CodeEntity();
+					xmlxdx.setId(xmlxid);
+					jsjdcbsj.setXmlx(xmlxdx);
+				}
+				if (!StringUtils.isEmpty(tzlxid)) {
+					CodeEntity tzlxdx = new CodeEntity();
+					tzlxdx.setId(tzlxid);
+					jsjdcbsj.setTzlx(tzlxdx);
+				} else {
+					jsjdcbsj.setTzlx(null);
+				}
+				if (!StringUtils.isEmpty(xmhzjbid)) {
+					CodeEntity xmhzjbdx = new CodeEntity();
+					xmhzjbdx.setId(xmhzjbid);
+					jsjdcbsj.setXmhzjb(xmhzjbdx);
+				} else {
+					jsjdcbsj.setXmhzjb(null);
+				}
+				if (!StringUtils.isEmpty(axspjbid)) {
+					CodeEntity axspjbdx = new CodeEntity();
+					axspjbdx.setId(axspjbid);
+					jsjdcbsj.setAxspjb(axspjbdx);
+				} else {
+					jsjdcbsj.setAxspjb(null);
+				}
+				jsjdcbsj = jsjdcbsjService.save(jsjdcbsj);
+			}
+
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("操作失败!");
+			e.printStackTrace();
+		}
+		try {
+			if (jsjdcbsjService.getCandidateTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), jsjdcbsj.getId()) != null) {
+				jsjdcbsjService.claim(jsjdcbsj.getId(), SecUtils.getCurrUser().getId().toString());
+			}
+			jsjdcbsjService.changeAudit(null, jsjdcbsj, true, null);
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("操作失败!");
+			e.printStackTrace();
+		}
+		return wr;
+	}
+
+	@RequestMapping(value = "/save")
+	@ResponseBody
+	public WebJsonResult save(Model model, JsjdcbsjEntity code, String ssjyrid, String fjids, String accid, String xmlxid, String tzlxid, String xmhzjbid, String axspjbid, String szdid, String szgkid, String szgqid, String zyhbwflid) {
+		WebJsonResult wr = success();
+		if (StringUtils.isEmpty(code.getXmmc())) {
+			wr.setSuccess(false);
+			wr.setMessage("请输入项目名称");
+			return wr;
+		}
+		if (StringUtils.isEmpty(ssjyrid)) {
+			wr.setSuccess(false);
+			wr.setMessage("请选择经营人");
+			return wr;
+		}
+		if (StringUtils.isEmpty(szdid)) {
+			wr.setSuccess(false);
+			wr.setMessage("请选择所在地");
+			return wr;
+		}
+		if (StringUtils.isEmpty(szgkid)) {
+			wr.setSuccess(false);
+			wr.setMessage("请选择所港口");
+			return wr;
+		}
+		if (StringUtils.isEmpty(szgqid)) {
+			wr.setSuccess(false);
+			wr.setMessage("请选择所港区");
+			return wr;
+		}
+		if (StringUtils.isEmpty(code.getXmfr())) {
+			wr.setSuccess(false);
+			wr.setMessage("请输入项目法人");
+			return wr;
+		}
+		if (StringUtils.isEmpty(xmlxid)) {
+			wr.setSuccess(false);
+			wr.setMessage("请选择项目类型");
+			return wr;
+		}
+		if (StringUtils.isEmpty(code.getJsdd())) {
+			wr.setSuccess(false);
+			wr.setMessage("请输入建设地点");
+			return wr;
+		}
+		try {
+			if (!StringUtils.isEmpty(code.getId())) {
+				// 修改
+				JsjdcbsjEntity jsjdcbsj = jsjdcbsjService.findOne(code.getId());
+				jsjdcbsj.setXmmc(code.getXmmc());
+				jsjdcbsj.setXmfr(code.getXmfr());
+				jsjdcbsj.setJsdd(code.getJsdd());
+				jsjdcbsj.setJsgm(code.getJsgm());
+				jsjdcbsj.setZtz(code.getZtz());
+				jsjdcbsj.setTgnl(code.getTgnl());
+				jsjdcbsj.setAxcd(code.getAxcd());
+				jsjdcbsj.setBwdj(code.getBwdj());
+				jsjdcbsj.setBwyt(code.getBwyt());
+
+				if (!StringUtils.isEmpty(ssjyrid)) {
+					GkjyrEntity jyr = new GkjyrEntity();
+					jyr.setId(ssjyrid);
+					jsjdcbsj.setJyrid(jyr);
+				}
+
+				if (!StringUtils.isEmpty(zyhbwflid)) {
+					CodeEntity zyhbwfl = new CodeEntity(zyhbwflid);
+					jsjdcbsj.setZyhbwfl(zyhbwfl);
+				}
+
+				if (!StringUtils.isEmpty(szgkid)) {
+					GkEntity szgk = new GkEntity();
+					szgk.setId(szgkid);
+					jsjdcbsj.setSzgk(szgk);
+				}
+				if (!StringUtils.isEmpty(szgqid)) {
+					GqEntity szgq = new GqEntity();
+					szgq.setId(szgqid);
+					jsjdcbsj.setSzgq(szgq);
+				}
+				if (!StringUtils.isEmpty(xmlxid)) {
+					CodeEntity xmlxdx = new CodeEntity();
+					xmlxdx.setId(xmlxid);
+					jsjdcbsj.setXmlx(xmlxdx);
+				}
+				if (!StringUtils.isEmpty(tzlxid)) {
+					CodeEntity tzlxdx = new CodeEntity();
+					tzlxdx.setId(tzlxid);
+					jsjdcbsj.setTzlx(tzlxdx);
+				} else {
+					jsjdcbsj.setTzlx(null);
+				}
+				if (!StringUtils.isEmpty(xmhzjbid)) {
+					CodeEntity xmhzjbdx = new CodeEntity();
+					xmhzjbdx.setId(xmhzjbid);
+					jsjdcbsj.setXmhzjb(xmhzjbdx);
+				} else {
+					jsjdcbsj.setXmhzjb(null);
+				}
+				if (!StringUtils.isEmpty(axspjbid)) {
+					CodeEntity axspjbdx = new CodeEntity();
+					axspjbdx.setId(axspjbid);
+					jsjdcbsj.setAxspjb(axspjbdx);
+				} else {
+					jsjdcbsj.setAxspjb(null);
+				}
+				jsjdcbsjService.save(jsjdcbsj);
+			} else {
+				if (!StringUtils.isEmpty(ssjyrid)) {
+					GkjyrEntity jyr = new GkjyrEntity();
+					jyr.setId(ssjyrid);
+					code.setJyrid(jyr);
+				}
+
+				// 新增直接保存
+				if (!StringUtils.isEmpty(szgkid)) {
+					GkEntity szgk = new GkEntity();
+					szgk.setId(szgkid);
+					code.setSzgk(szgk);
+				}
+				if (!StringUtils.isEmpty(szgqid)) {
+					GqEntity szgq = new GqEntity();
+					szgq.setId(szgqid);
+					code.setSzgq(szgq);
+				}
+				if (!StringUtils.isEmpty(zyhbwflid)) {
+					CodeEntity zyhbwfldx = new CodeEntity();
+					zyhbwfldx.setId(zyhbwflid);
+					code.setZyhbwfl(zyhbwfldx);
+				}
+				if (!StringUtils.isEmpty(xmlxid)) {
+					CodeEntity xmlxdx = new CodeEntity();
+					xmlxdx.setId(xmlxid);
+					code.setXmlx(xmlxdx);
+				}
+				if (!StringUtils.isEmpty(tzlxid)) {
+					CodeEntity tzlxdx = new CodeEntity();
+					tzlxdx.setId(tzlxid);
+					code.setTzlx(tzlxdx);
+				}
+				if (!StringUtils.isEmpty(xmhzjbid)) {
+					CodeEntity xmhzjbdx = new CodeEntity();
+					xmhzjbdx.setId(xmhzjbid);
+					code.setXmhzjb(xmhzjbdx);
+				}
+				if (!StringUtils.isEmpty(axspjbid)) {
+					CodeEntity axspjbdx = new CodeEntity();
+					axspjbdx.setId(axspjbid);
+					code.setAxspjb(axspjbdx);
+				}
+				jsjdcbsjService.save(code);
+
+			}
+
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("操作失败!");
+			e.printStackTrace();
+		}
+		return wr;
+	}
+
+	@RequestMapping(value = "/edit")
+	public String edit(Model model, String id, String flag) {
+		model.addAttribute("flag", flag);
+		// 附件
+		List<AccessoryEntity> accessoryList = accessoryService.queryBySsidAndSstype(id, "1");
+		model.addAttribute("fjList", accessoryList);
+
+		JsjdcbsjEntity entity = jsjdcbsjService.findOne(id);
+		XmxxglVo vo = new XmxxglVo();
+		BeanUtils.copyProperties(entity, vo);
+		vo.setTzlxzw(entity.getTzlx() != null ? entity.getTzlx().getText() : "");
+		vo.setXmlxzw(entity.getXmlx() != null ? entity.getXmlx().getText() : "");
+		vo.setXmhzjbzw(entity.getXmhzjb() != null ? entity.getXmhzjb().getText() : "");
+		vo.setAxspjbzw(entity.getAxspjb() != null ? entity.getAxspjb().getText() : "");
+		vo.setSzgkzw(entity.getSzgk() != null ? entity.getSzgk().getGkmc() : "");
+		vo.setSzgqzw(entity.getSzgq() != null ? entity.getSzgq().getGqmc() : "");
+
+		vo.setTzlx(entity.getTzlx() != null ? entity.getTzlx().getId() : "");
+		vo.setXmlx(entity.getXmlx() != null ? entity.getXmlx().getId() : "");
+		vo.setXmhzjb(entity.getXmhzjb() != null ? entity.getXmhzjb().getId() : "");
+		vo.setAxspjb(entity.getAxspjb() != null ? entity.getAxspjb().getId() : "");
+		vo.setSzgk(entity.getSzgk() != null ? entity.getSzgk().getId() : "");
+		vo.setSzgq(entity.getSzgq() != null ? entity.getSzgq().getId() : "");
+		vo.setZyhbwfl(entity.getZyhbwfl() != null ? entity.getZyhbwfl().getId() : "");
+		model.addAttribute("record", vo);
+		model.addAttribute("jyr", entity.getJyrid());
+		return "gkjsgl/jsjdcbsj/jsjdcbsjedit";
+	}
+
+	@RequestMapping(value = "/view")
+	public String view(Model model, String id, String flag, String opflag) {
+		model.addAttribute("flag", flag);
+		JsjdcbsjEntity entity = jsjdcbsjService.findOne(id);
+		JsjdcbsjVo vo = new JsjdcbsjVo();
+		BeanUtils.copyProperties(entity, vo);
+		vo.setTzlxzw(entity.getTzlx() != null ? entity.getTzlx().getText() : "");
+		vo.setXmlxzw(entity.getXmlx() != null ? entity.getXmlx().getText() : "");
+		vo.setXmhzjbzw(entity.getXmhzjb() != null ? entity.getXmhzjb().getText() : "");
+		vo.setAxspjbzw(entity.getAxspjb() != null ? entity.getAxspjb().getText() : "");
+		vo.setSzgkzw(entity.getSzgk() != null ? entity.getSzgk().getGkmc() : "");
+		vo.setSzgqzw(entity.getSzgq() != null ? entity.getSzgq().getGqmc() : "");
+		vo.setZyhbwflzw(entity.getZyhbwfl() != null ? entity.getZyhbwfl().getText() : "");
+		if (entity.getJyrid() != null) {
+			vo.setSzddzw(entity.getJyrid().getSzd() != null ? entity.getJyrid().getSzd().getText() : "");
+		}
+		if (entity.getBwyt() != null) {
+			String bwytzw = "";
+			String[] s = entity.getBwyt().split(",");
+			for (int i = 0; i < s.length; i++) {
+				CodeEntity code = securityMgr.codeService().findOne(s[i]);
+				if (code != null) {
+					bwytzw += code.getText() + ",";
+				}
+			}
+			if (!StringUtils.isEmpty(bwytzw)) {
+				bwytzw = bwytzw.substring(0, bwytzw.length() - 1);
+			}
+			vo.setBwytzw(bwytzw);
+		}
+
+		vo.setTzlx(entity.getTzlx() != null ? entity.getTzlx().getId() : "");
+		vo.setXmlx(entity.getXmlx() != null ? entity.getXmlx().getId() : "");
+		vo.setXmhzjb(entity.getXmhzjb() != null ? entity.getXmhzjb().getId() : "");
+		vo.setAxspjb(entity.getAxspjb() != null ? entity.getAxspjb().getId() : "");
+		vo.setSzgk(entity.getSzgk() != null ? entity.getSzgk().getId() : "");
+		vo.setSzgq(entity.getSzgq() != null ? entity.getSzgq().getId() : "");
+		vo.setZyhbwfl(entity.getZyhbwfl() != null ? entity.getZyhbwfl().getId() : "");
+
+		List<TaskInfoEntity> lists = taskInfoService.findByBusIdAndBusKeyAndRecordStatus(id, JsjdcbsjEntity.PROCESS_DEFINITION_KEY);
+		if (lists != null & lists.size() > 0) {
+			TaskInfoEntity taskinfo = lists.get(0);
+			if ("jbrbl".equals(taskinfo.getTaskKey())) {
+				opflag = "5";
+			} else if ("zjps".equals(taskinfo.getTaskKey())) {
+				opflag = "9";
+			}
+			model.addAttribute("taskKey", taskinfo.getTaskKey());
+			model.addAttribute("opflag", opflag);
+		}
+
+		List<TaskInfoEntity> slist = taskInfoService.findByBusIdAndBusKeyOrderByIdAsc(id, JsjdcbsjEntity.PROCESS_DEFINITION_KEY);
+		List<TaskInfoVo> volist = new ArrayList<TaskInfoVo>();
+		for (int i = 0; i < slist.size(); i++) {
+			TaskInfoEntity taskentity = slist.get(i);
+			TaskInfoVo opvo = new TaskInfoVo();
+			opvo.setCurrName(taskentity.getCurrName());
+			opvo.setTaskKey(taskentity.getTaskKey());
+			opvo.setState(taskentity.getState());
+			SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
+
+			String opStr = "";
+			int voflag = 0;
+			for (int j = 0; j < volist.size(); j++) {
+				TaskInfoVo taskvo = volist.get(j);
+				if (taskvo.getTaskKey().equals(taskentity.getTaskKey())) {
+					if ("2".equals(taskvo.getState())) {
+						opStr += taskvo.getYj();
+					}
+					voflag = j;
+					break;
+				}
+			}
+			if ("2".equals(taskentity.getState())) {
+				opStr += "<div  style = 'float:left;width:100%;text-align: left;'>" + taskentity.getAuditMsg() + "</div><div style = 'float:left;width:100%;text-align: right;'>" + taskentity.getAuditUsername() + "<br/>" + formatter.format(taskentity.getAuditTime()) + "</div>";
+				opvo.setYj(opStr);
+			} else {
+				opStr += "<div id='" + taskentity.getTaskKey() + "' style = 'float:left;width:100%;text-align: left;'>" + "</div><div style = 'float:left;width:100%;text-align: right;'>" + securityMgr.getCurrUser().getName() + "<br/>" + formatter.format(new Date()) + "</div>";
+				opvo.setYj(opStr);
+			}
+			if (voflag > 0) {
+				volist.remove(voflag);
+			}
+			volist.add(opvo);
+		}
+		model.addAttribute("list", volist);
+
+		List<JsjdcbsjfjEntity> fjlist = jsjdcbsjfjService.findBySsid(id);
+		if (fjlist != null && fjlist.size() > 0) {
+			model.addAttribute("fjlist", fjlist);
+		}
+
+		model.addAttribute("record", vo);
+		model.addAttribute("jyr", entity.getJyrid());
+		return "gkjsgl/jsjdcbsj/jsjdcbsjview";
+	}
+
+	@RequestMapping(value = "/add")
+	public String add(Model model) {
+		UserEntity user = securityMgr.getCurrUser();
+		GkjyrEntity jyr = new GkjyrEntity();
+		if (!StringUtils.isEmpty(user.getSsjyr())) {
+			jyr = gkjyrService.findOne(user.getSsjyr().getId());
+		}
+		model.addAttribute("jyr", jyr);
+		model.addAttribute("szd", user.getSzd());
+
+		if (SecUtils.getCurrUser() != null) {
+			List<CodeEntity> list = securityMgr.codeService().findValidCodesByGroupCodeAndCity(Constants.GROUP_CODE_SZD, GlobalData.CITY_CODE);
+			model.addAttribute("sz", list.size() == 1 ? list.get(0).getId() : "");
+			if (list.size() == 1) {
+				List<GkEntity> gklist = gkService.findBySzd(list.get(0).getId());
+				model.addAttribute("gk", gklist.size() == 1 ? gklist.get(0).getId() : "");
+			}
+		}
+		return "gkjsgl/jsjdcbsj/jsjdcbsjadd";
+	}
+
+	@RequestMapping(value = "/selectXmlx")
+	@ResponseBody
+	public List<CodeEntity> selectXmlx(Model model) {
+		List<CodeEntity> list = securityMgr.codeService().findValidCodesByGroupCode(Constants.GROUP_CODE_XMLX);
+		return list;
+	}
+
+	@RequestMapping(value = "/selectTzlx")
+	@ResponseBody
+	public List<CodeEntity> selectTzlx(Model model) {
+		List<CodeEntity> list = securityMgr.codeService().findValidCodesByGroupCode(Constants.GROUP_CODE_TZLX);
+		return list;
+	}
+
+	@RequestMapping(value = "/selectXmhzjb")
+	@ResponseBody
+	public List<CodeEntity> selectXmhzjb(Model model) {
+		List<CodeEntity> list = securityMgr.codeService().findValidCodesByGroupCode(Constants.GROUP_CODE_XMHZJB);
+		return list;
+	}
+
+	@RequestMapping(value = "/selectAxspjb")
+	@ResponseBody
+	public List<CodeEntity> selectAxspjb(Model model) {
+		List<CodeEntity> list = securityMgr.codeService().findValidCodesByGroupCode(Constants.GROUP_CODE_AXSPJB);
+		return list;
+	}
+
+	@RequestMapping(value = "/audit")
+	@ResponseBody
+	public WebJsonResult audit(String shyj, String id, boolean flag, String accid, String userids) {
+		WebJsonResult wr = success();
+		JsjdcbsjEntity entity = jsjdcbsjService.findOne(id);
+		if (!StringUtils.isEmpty(accid)) {
+			// 关联附件
+			String[] ssids = accid.split(",");
+			for (String ssid : ssids) {
+				JsjdcbsjfjEntity fj = jsjdcbsjfjService.findOne(ssid);
+				if (fj != null) {
+					fj.setSsid(entity.getId());
+					jsjdcbsjfjService.save(fj);
+				}
+			}
+		}
+		try {
+			if (jsjdcbsjService.getCandidateTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), id) != null) {
+				jsjdcbsjService.claim(id, SecUtils.getCurrUser().getId().toString());
+			}
+
+			boolean flowflag = jsjdcbsjService.changeAudit(shyj, entity, flag, userids);
+			if(flowflag){
+				if(flag){
+					entity.setFlowstatus("2");
+				}else{
+					entity.setFlowstatus("1");
+				}
+				jsjdcbsjService.save(entity);
+			}
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("操作失败!");
+			e.printStackTrace();
+		}
+		return wr;
+	}
+
+	// 保存附件
+	@RequestMapping(value = "/saveFile")
+	@ResponseBody
+	public WebJsonResult saveFile(@RequestParam("file") List<MultipartFile> file, String fjFlag, Model model, HttpServletRequest request, HttpServletResponse response) {
+		WebJsonResult wr = success();
+		if (file != null && file.size() > 0) {
+			JsjdcbsjfjEntity fjEntity = new JsjdcbsjfjEntity();
+			for (int i = 0; i < file.size(); i++) {
+				MultipartFile f = file.get(i);
+				if (f.getSize() > 0) {
+					AccessoryEntity acc = accessoryService.saveFile(f, "jsjdcbsj");
+					if (acc != null) {
+						fjEntity.setFjid(acc.getId());
+						fjEntity.setFjmc(acc.getName());
+						fjEntity.setType(fjFlag);
+						fjEntity = jsjdcbsjfjService.save(fjEntity);
+						break;
+					}
+				}
+			}
+			wr.setAttr("acc", fjEntity);
+		} else {
+			wr.setSuccess(false);
+			wr.setMessage("请上传附件!");
+		}
+		return wr;
+	}
+
+	@RequestMapping(value = "/delFile")
+	@ResponseBody
+	public WebJsonResult delFile(String accid, Model model) {
+		WebJsonResult wr = success();
+		try {
+			JsjdcbsjfjEntity entity = jsjdcbsjfjService.findOne(accid);
+			if (entity != null) {
+				AccessoryEntity acc = accessoryService.findOne(entity.getFjid());
+				if (acc != null) {
+					accessoryService.delete(acc);
+					if (entity != null) {
+						String path = acc.getFilepath() + acc.getFilename();
+						File file = new File(path);
+						if (file.isFile() && file.exists()) {
+							file.delete();
+						}
+					}
+				}
+				jsjdcbsjfjService.delete(entity);
+			}
+		} catch (Exception e) {
+			wr.setSuccess(false);
+		}
+		return wr;
+	}
+}

+ 30 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjsgl/jsjdcbsj/ctl/JsjdcbsjWebService.java

@@ -0,0 +1,30 @@
+package com.xt.jygl.gkjsgl.jsjdcbsj.ctl;
+
+import javax.jws.HandlerChain;
+import javax.jws.WebService;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import com.xt.jygl.gkjsgl.jsjdcbsj.entity.JsjdcbsjEntity;
+import com.xt.jygl.gkjsgl.jsjdcbsj.service.JsjdcbsjService;
+
+@Service
+@WebService(targetNamespace = "http://webService.jsjy.com/", serviceName = "jsjdcbsjService")
+@HandlerChain(file="handle-chain.xml")
+public class JsjdcbsjWebService {
+	@Autowired
+	private JsjdcbsjService jsjdcbsjService;
+	
+
+
+	/**
+	 * 保存信息
+	 */
+	public JsjdcbsjEntity save(JsjdcbsjEntity entity) {
+		JsjdcbsjEntity newjsjdcbsj = jsjdcbsjService.save(entity);
+		return newjsjdcbsj;
+	}
+	
+
+}

+ 8 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjsgl/jsjdcbsj/dao/JsjdcbsjDao.java

@@ -0,0 +1,8 @@
+package com.xt.jygl.gkjsgl.jsjdcbsj.dao;
+
+import com.xt.jygl.gkjsgl.jsjdcbsj.entity.JsjdcbsjEntity;
+import com.xtframe.sec.common.SecRepository;
+
+public interface JsjdcbsjDao extends SecRepository<JsjdcbsjEntity, String> {
+
+}

+ 14 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjsgl/jsjdcbsj/dao/JsjdcbsjfjDao.java

@@ -0,0 +1,14 @@
+package com.xt.jygl.gkjsgl.jsjdcbsj.dao;
+
+import java.util.List;
+
+import org.springframework.data.jpa.repository.Query;
+
+import com.xt.jygl.gkjsgl.jsjdcbsj.entity.JsjdcbsjfjEntity;
+import com.xtframe.sec.common.SecRepository;
+
+public interface JsjdcbsjfjDao extends SecRepository<JsjdcbsjfjEntity, String> {
+
+	@Query("SELECT m  FROM JsjdcbsjfjEntity m WHERE  m.ssid =?1  and m.recordStatus <> 9 ")
+	public List<JsjdcbsjfjEntity> findBySsid(String ssid);
+}

+ 251 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjsgl/jsjdcbsj/entity/JsjdcbsjEntity.java

@@ -0,0 +1,251 @@
+package com.xt.jygl.gkjsgl.jsjdcbsj.entity;
+
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+
+import org.hibernate.annotations.GenericGenerator;
+
+import com.xt.jygl.gkjcxx.gk.entity.GkEntity;
+import com.xt.jygl.gkjcxx.gq.entity.GqEntity;
+import com.xt.jygl.gkjygl.gkjyr.jyrjbxx.entity.GkjyrEntity;
+import com.xtframe.sec.code.entity.CodeEntity;
+import com.xtframe.sec.common.BaseEntity;
+
+@Entity
+@Table(name = "GK_OPERATION_JSJY_JSJDCBSJ")
+public class JsjdcbsjEntity extends BaseEntity<String> implements Cloneable {
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = -485787620077488727L;
+
+	public static final String PROCESS_DEFINITION_KEY = "jsjdcbsj";
+	private String id;/* 唯一标识 */
+	private String xmmc;/* 项目名称 */
+	private String xmfr;/* 项目法人 */
+	private String jsdd;/* 建设地点 */
+	private String jsgm;/* 建设规模 */
+	private CodeEntity xmlx;/* 项目类型 */
+	private CodeEntity tzlx;/* 投资类型(政府投资/企业投资) */
+	private Double ztz;/* 总投资(万元) */
+	private CodeEntity xmhzjb;/* 项目核准级别(国/省/市) */
+	private CodeEntity axspjb;/* 岸线审批级别(部/省/市/无) */
+	private Double axcd;/* 岸线长度 */
+	private Double bwdj;/* 泊位吨级 */
+	private String bwhz;/* 泊位货种 */
+	private Double tgnl;/* 通过能力 */
+	private GkEntity szgk;/* 所在港口 */
+	private GqEntity szgq;/* 所在港区 */
+	private GkjyrEntity jyrid;
+	private String bwyt;/* 泊位用途*/
+	private CodeEntity zyhbwfl;/* 专业化泊位分类*/
+	private String lcjd;/* 流程节点*/
+	private String sfqswj;/* 是否缺失文件*/
+	private String flowstatus = "0";
+	
+	@Id
+	@GenericGenerator(name = "systemUUID", strategy = "uuid")
+	@GeneratedValue(generator = "systemUUID")
+	public String getId() {
+		return id;
+	}
+
+	public void setId(String id) {
+		this.id = id;
+	}
+
+	@ManyToOne(fetch = FetchType.EAGER, targetEntity = CodeEntity.class)
+	@JoinColumn(name = "xmlx")
+	public CodeEntity getXmlx() {
+		return xmlx;
+	}
+
+	public void setXmlx(CodeEntity xmlx) {
+		this.xmlx = xmlx;
+	}
+
+	@ManyToOne(fetch = FetchType.EAGER, targetEntity = CodeEntity.class)
+	@JoinColumn(name = "tzlx")
+	public CodeEntity getTzlx() {
+		return tzlx;
+	}
+
+	public void setTzlx(CodeEntity tzlx) {
+		this.tzlx = tzlx;
+	}
+
+	@ManyToOne(fetch = FetchType.EAGER, targetEntity = CodeEntity.class)
+	@JoinColumn(name = "xmhzjb")
+	public CodeEntity getXmhzjb() {
+		return xmhzjb;
+	}
+
+	public void setXmhzjb(CodeEntity xmhzjb) {
+		this.xmhzjb = xmhzjb;
+	}
+
+	@ManyToOne(fetch = FetchType.EAGER, targetEntity = CodeEntity.class)
+	@JoinColumn(name = "axspjb")
+	public CodeEntity getAxspjb() {
+		return axspjb;
+	}
+
+	public void setAxspjb(CodeEntity axspjb) {
+		this.axspjb = axspjb;
+	}
+
+	public String getXmmc() {
+		return xmmc;
+	}
+
+	public void setXmmc(String xmmc) {
+		this.xmmc = xmmc;
+	}
+
+	public String getXmfr() {
+		return xmfr;
+	}
+
+	public void setXmfr(String xmfr) {
+		this.xmfr = xmfr;
+	}
+
+	public String getJsdd() {
+		return jsdd;
+	}
+
+	public void setJsdd(String jsdd) {
+		this.jsdd = jsdd;
+	}
+
+	public Double getZtz() {
+		return ztz;
+	}
+
+	public void setZtz(Double ztz) {
+		this.ztz = ztz;
+	}
+
+	public Double getAxcd() {
+		return axcd;
+	}
+
+	public void setAxcd(Double axcd) {
+		this.axcd = axcd;
+	}
+
+	public Double getBwdj() {
+		return bwdj;
+	}
+
+	public void setBwdj(Double bwdj) {
+		this.bwdj = bwdj;
+	}
+
+	public String getJsgm() {
+		return jsgm;
+	}
+
+	public void setJsgm(String jsgm) {
+		this.jsgm = jsgm;
+	}
+
+	public String getBwhz() {
+		return bwhz;
+	}
+
+	public void setBwhz(String bwhz) {
+		this.bwhz = bwhz;
+	}
+
+	public Double getTgnl() {
+		return tgnl;
+	}
+
+	public void setTgnl(Double tgnl) {
+		this.tgnl = tgnl;
+	}
+
+	public static long getSerialversionuid() {
+		return serialVersionUID;
+	}
+
+	@ManyToOne(fetch = FetchType.EAGER, targetEntity = GkEntity.class)
+	@JoinColumn(name = "szgk")
+	public GkEntity getSzgk() {
+		return szgk;
+	}
+
+	public void setSzgk(GkEntity szgk) {
+		this.szgk = szgk;
+	}
+
+	@ManyToOne(fetch = FetchType.EAGER, targetEntity = GqEntity.class)
+	@JoinColumn(name = "szgq")
+	public GqEntity getSzgq() {
+		return szgq;
+	}
+
+	public void setSzgq(GqEntity szgq) {
+		this.szgq = szgq;
+	}
+
+	@ManyToOne(fetch = FetchType.EAGER, targetEntity = GkjyrEntity.class)
+	@JoinColumn(name = "jyrid")
+	public GkjyrEntity getJyrid() {
+		return jyrid;
+	}
+
+	public void setJyrid(GkjyrEntity jyrid) {
+		this.jyrid = jyrid;
+	}
+
+	public String getBwyt() {
+		return bwyt;
+	}
+
+	public void setBwyt(String bwyt) {
+		this.bwyt = bwyt;
+	}
+	
+	@ManyToOne(fetch = FetchType.EAGER, targetEntity = CodeEntity.class)
+	@JoinColumn(name = "zyhbwfl")
+	public CodeEntity getZyhbwfl() {
+		return zyhbwfl;
+	}
+
+	public void setZyhbwfl(CodeEntity zyhbwfl) {
+		this.zyhbwfl = zyhbwfl;
+	}
+
+	public String getLcjd() {
+		return lcjd;
+	}
+
+	public void setLcjd(String lcjd) {
+		this.lcjd = lcjd;
+	}
+
+	public String getSfqswj() {
+		return sfqswj;
+	}
+
+	public void setSfqswj(String sfqswj) {
+		this.sfqswj = sfqswj;
+	}
+
+	public String getFlowstatus() {
+		return flowstatus;
+	}
+
+	public void setFlowstatus(String flowstatus) {
+		this.flowstatus = flowstatus;
+	}
+
+}

+ 76 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjsgl/jsjdcbsj/entity/JsjdcbsjfjEntity.java

@@ -0,0 +1,76 @@
+package com.xt.jygl.gkjsgl.jsjdcbsj.entity;
+
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.Table;
+
+import org.hibernate.annotations.GenericGenerator;
+
+import com.xtframe.sec.common.BaseEntity;
+
+@Entity
+@Table(name = "GK_OPERATION_JSJY_JSJDCBSJFJ")
+public class JsjdcbsjfjEntity extends BaseEntity<String> implements Cloneable {
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+	private String id = null;
+	private String ssid = null;
+	private String fjid = null;
+	private String fjmc = null;
+	private String type = null;
+
+	
+
+	public String getSsid() {
+		return ssid;
+	}
+
+	public void setSsid(String ssid) {
+		this.ssid = ssid;
+	}
+
+	public String getType() {
+		return type;
+	}
+
+	public void setType(String type) {
+		this.type = type;
+	}
+
+	/**
+	 * ID主键
+	 * 
+	 * @return
+	 */
+	@Id
+	@GenericGenerator(name = "systemUUID", strategy = "uuid")
+	@GeneratedValue(generator = "systemUUID")
+	public String getId() {
+		return id;
+	}
+
+	public void setId(String id) {
+		this.id = id;
+	}
+
+	public String getFjid() {
+		return fjid;
+	}
+
+	public void setFjid(String fjid) {
+		this.fjid = fjid;
+	}
+
+	public String getFjmc() {
+		return fjmc;
+	}
+
+	public void setFjmc(String fjmc) {
+		this.fjmc = fjmc;
+	}
+
+}

+ 20 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjsgl/jsjdcbsj/service/JsjdcbsjService.java

@@ -0,0 +1,20 @@
+package com.xt.jygl.gkjsgl.jsjdcbsj.service;
+
+import com.xt.jygl.gkjsgl.jsjdcbsj.entity.JsjdcbsjEntity;
+import com.xt.jygl.workflow.service.BaseWorkFlowService;
+
+public interface JsjdcbsjService extends BaseWorkFlowService {
+	/* 逻辑删除 */
+	void logicDelete(String id);
+
+	public <S extends JsjdcbsjEntity> S save(S entity);
+
+	public <S extends JsjdcbsjEntity> S submit(S gg);
+
+	JsjdcbsjEntity findOne(String id);
+
+	void delete(String id);
+
+	public boolean changeAudit(String shyj, JsjdcbsjEntity xmxx, boolean flag,String userids);
+
+}

+ 17 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjsgl/jsjdcbsj/service/JsjdcbsjfjService.java

@@ -0,0 +1,17 @@
+package com.xt.jygl.gkjsgl.jsjdcbsj.service;
+
+import java.util.List;
+
+import com.xt.jygl.gkjsgl.jsjdcbsj.entity.JsjdcbsjfjEntity;
+
+public interface JsjdcbsjfjService {
+	void logicDelete(String id);
+
+	public <S extends JsjdcbsjfjEntity> S save(S entity);
+
+	public void delete(JsjdcbsjfjEntity ent);
+
+	JsjdcbsjfjEntity findOne(String id);
+
+	List<JsjdcbsjfjEntity> findBySsid(String ssid);
+}

+ 113 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjsgl/jsjdcbsj/service/impl/JsjdcbsjServiceImpl.java

@@ -0,0 +1,113 @@
+package com.xt.jygl.gkjsgl.jsjdcbsj.service.impl;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import com.xt.jygl.common.Constants;
+import com.xt.jygl.gkjsgl.jsjdcbsj.dao.JsjdcbsjDao;
+import com.xt.jygl.gkjsgl.jsjdcbsj.entity.JsjdcbsjEntity;
+import com.xt.jygl.gkjsgl.jsjdcbsj.service.JsjdcbsjService;
+import com.xt.jygl.workflow.entity.TaskInfoEntity;
+import com.xt.jygl.workflow.param.WorkFlowParam;
+import com.xt.jygl.workflow.service.WorkflowMangerService;
+import com.xt.jygl.workflow.service.impl.BaseWorkFlowServiceImpl;
+import com.xtframe.core.support.SecurityMgr;
+import com.xtframe.sec.common.BaseEntity;
+import com.xtframe.sec.common.SecRepository;
+import com.xtframe.sec.utils.SecUtils;
+import com.xtframe.util.StringUtils;
+
+@Service
+public class JsjdcbsjServiceImpl extends BaseWorkFlowServiceImpl<JsjdcbsjEntity, String> implements JsjdcbsjService {
+
+	@Autowired
+	private JsjdcbsjDao dao;
+	@Autowired
+	private WorkflowMangerService workService;
+	@Autowired
+	protected SecurityMgr securityMgr;
+
+	@Override
+	protected SecRepository<JsjdcbsjEntity, String> getDao() {
+
+		return this.dao;
+	}
+
+	@Override
+	public <S extends JsjdcbsjEntity> S submit(S entity) {
+		if (entity.getRecordStatus() == BaseEntity.RECORD_STATE_REJECT) {
+			entity.setRecordStatus(BaseEntity.RECORD_STATE_SUBMIT);
+			entity = this.save(entity);
+			Map<String, Object> variables = new HashMap<String, Object>();
+			WorkFlowParam param = new WorkFlowParam();
+			param.put(WorkFlowParam.BUSINESS_KEY, entity.getId());
+			param.put(WorkFlowParam.IS_AUDIT, "false");
+			param.put(WorkFlowParam.DESCRIPTION, entity.getXmmc() + "的项目建设初步设计");
+			complete(param, variables);
+		} else {
+			entity.setRecordStatus(BaseEntity.RECORD_STATE_SUBMIT);
+			entity = this.save(entity);
+			Map<String, Object> variables = new HashMap<String, Object>();
+			variables.put("role_ld", Constants.ROLE_LD);
+			variables.put("role_fgld", Constants.ROLE_LD);
+			variables.put("role_ks", Constants.ROLE_LD);
+			variables.put("role_jbr", Constants.ROLE_LD);
+			WorkFlowParam param = new WorkFlowParam();
+			param.put(WorkFlowParam.DESCRIPTION, entity.getXmmc() + "的项目建设初步设计");
+
+			// 设置流程发起人
+			if (StringUtils.isEmpty(param.getString(WorkFlowParam.AUDIT_USER))) {
+				param.put(WorkFlowParam.AUDIT_USER, SecUtils.getCurrUser().getId().toString());
+			}
+
+			param.put(WorkFlowParam.BUSINESS_KEY, entity.getId());
+			// 提交流程
+			create(param, variables);
+		}
+		return entity;
+	}
+
+	@Override
+	public String getProcessDefinitionKey() {
+		return JsjdcbsjEntity.PROCESS_DEFINITION_KEY;
+	}
+
+	@Override
+	public boolean changeAudit(String shyj, JsjdcbsjEntity xmxx, boolean flag, String userids) {
+		Map<String, Object> variables = new HashMap<String, Object>();
+		List<String> lists = new ArrayList<String>();
+		if (!StringUtils.isEmpty(userids)) {
+			String[] users = userids.split(",");
+			for (String userid : users) {
+				lists.add(userid);
+			}
+		}
+		variables.put("assigneeList", lists);
+		variables.put(WorkFlowParam.AUDIT_PASS, flag);
+		WorkFlowParam param = new WorkFlowParam();
+		param.put(WorkFlowParam.AUDIT_DATE, new Date());
+		param.put(WorkFlowParam.AUDIT_TEXT, shyj == null ? "" : shyj);
+		param.put(WorkFlowParam.AUDIT_RESULT, flag);
+		param.put(WorkFlowParam.BUSINESS_KEY, xmxx.getId());
+		workService.getTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), xmxx.getId().toString(), JsjdcbsjEntity.PROCESS_DEFINITION_KEY);
+		complete(param, variables);
+		List<TaskInfoEntity> list = findByBusIdAndBusKeyAndRecordStatus(xmxx.getId().toString());
+		if (list == null || list.size() == 0) {
+			xmxx.setRecordStatus(BaseEntity.RECORD_STATE_COMPLETED);
+			xmxx = this.save(xmxx);
+			return true;
+		}
+		if (flag == false) {
+			xmxx.setRecordStatus(BaseEntity.RECORD_STATE_REJECT);
+			this.save(xmxx);
+		}
+		return false;
+	}
+
+}

+ 33 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjsgl/jsjdcbsj/service/impl/JsjdcbsjfjServiceImpl.java

@@ -0,0 +1,33 @@
+package com.xt.jygl.gkjsgl.jsjdcbsj.service.impl;
+
+import java.util.List;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import com.xt.jygl.common.service.JyglBaseService;
+import com.xt.jygl.gkjsgl.jsjdcbsj.dao.JsjdcbsjfjDao;
+import com.xt.jygl.gkjsgl.jsjdcbsj.entity.JsjdcbsjfjEntity;
+import com.xt.jygl.gkjsgl.jsjdcbsj.service.JsjdcbsjfjService;
+import com.xtframe.sec.common.SecRepository;
+
+@Service
+public class JsjdcbsjfjServiceImpl extends JyglBaseService<JsjdcbsjfjEntity, String> implements JsjdcbsjfjService {
+	@Autowired
+	private JsjdcbsjfjDao dao;
+
+	@Override
+	protected SecRepository<JsjdcbsjfjEntity, String> getDao() {
+
+		return this.dao;
+	}
+
+
+	@Override
+	public List<JsjdcbsjfjEntity> findBySsid(String ssid) {
+		return dao.findBySsid(ssid);
+	}
+
+	
+
+}

+ 449 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjsgl/jsjdcbsj/vo/JsjdcbsjVo.java

@@ -0,0 +1,449 @@
+package com.xt.jygl.gkjsgl.jsjdcbsj.vo;
+
+import com.xtframe.sec.common.BaseVo;
+
+public class JsjdcbsjVo extends BaseVo {
+	private String id;/* 唯一标识 */
+	private String xmmc;/* 项目名称 */
+	private String xmfr;/* 项目法人 */
+	private String jsdd;/* 建设地点 */
+	private String jsgm;/* 建设规模 */
+	private String tzlx;/* 投资类型(政府投资/企业投资) */
+	private String tzlxzw;/* 投资类型中文 */
+	private Double ztz;/* 总投资(万元) */
+	private String xmhzjb;/* 项目核准级别(国/省/市) */
+	private String xmhzjbzw;/* 项目核准级别中文 */
+	private String axspjb;/* 岸线审批级别(部/省/市/无) */
+	private String axspjbzw;/* 项目核准级别中文 */
+	private Double axcd;/* 岸线长度 */
+	private Double bwdj;/* 泊位吨级 */
+	private String bwhz;/* 泊位货种 */
+	private Double tgnl;/* 通过能力 */
+	private String szgk;/* 所在港口 */
+	private String szgkzw;/* 所在港口中文 */
+	private String szgq;/* 所在港区 */
+	private String szgqzw;/* 所在港区中文 */
+	private String xmlx;/* 项目类型 */
+	private String xmlxzw;/* 项目类型中文 */
+	private String szd;/* 所在地 */
+	private String szddzw;/* 所在地中文 */
+	private String taskState;/* 工作流字段 */
+	private String dqzt;/* 当前状态 */
+	private String flag;/* 用于判断列表页面是否显示项目进度 */
+	private String sfyzjbz;/* 是否有资金补助 */
+	// 流程历史字段
+	private String currentname;/* 流程节点名 */
+	private String auditusername;/* 审批人 */
+	private String audittime;/* 审批时间 */
+	private String spyj;/* 审批意见 */
+	private String jyrid;
+	private String jyrzw;
+	private String jyrxmfr;
+	private String flagForYear;// 用于判断是否显示年度计划信息
+	private String sddx;/* 上端点X */
+	private String sddy;/* 上端点Y */
+	private String xddx;/* 下端点X */
+	private String xddy;/* 下端点Y */
+	private String bwyt;/* 泊位用途 */
+	private String bwytzw;/* 泊位用途 */
+	private String zyhbwfl;/* 专业化泊位分类 */
+	private String zyhbwflzw;/* 专业化泊位分类 */
+	private String taskkey;/* 专业化泊位分类 */
+	private String lcjd;/* 流程节点 */
+	private String sfqswj;/* 是否缺失文件 */
+	private String showjsjd;/* 是否显示建设进度 */
+	private String flowstatus;
+
+	public String getId() {
+		return id;
+	}
+
+	public void setId(String id) {
+		this.id = id;
+	}
+
+	public Double getZtz() {
+		return ztz;
+	}
+
+	public void setZtz(Double ztz) {
+		this.ztz = ztz;
+	}
+
+	public Double getAxcd() {
+		return axcd;
+	}
+
+	public void setAxcd(Double axcd) {
+		this.axcd = axcd;
+	}
+
+	public Double getBwdj() {
+		return bwdj;
+	}
+
+	public void setBwdj(Double bwdj) {
+		this.bwdj = bwdj;
+	}
+
+	public String getTzlxzw() {
+		return tzlxzw;
+	}
+
+	public void setTzlxzw(String tzlxzw) {
+		this.tzlxzw = tzlxzw;
+	}
+
+	public String getXmhzjbzw() {
+		return xmhzjbzw;
+	}
+
+	public void setXmhzjbzw(String xmhzjbzw) {
+		this.xmhzjbzw = xmhzjbzw;
+	}
+
+	public String getAxspjbzw() {
+		return axspjbzw;
+	}
+
+	public void setAxspjbzw(String axspjbzw) {
+		this.axspjbzw = axspjbzw;
+	}
+
+	public String getXmlxzw() {
+		return xmlxzw;
+	}
+
+	public void setXmlxzw(String xmlxzw) {
+		this.xmlxzw = xmlxzw;
+	}
+
+	public String getXmmc() {
+		return xmmc;
+	}
+
+	public void setXmmc(String xmmc) {
+		this.xmmc = xmmc;
+	}
+
+	public String getXmfr() {
+		return xmfr;
+	}
+
+	public void setXmfr(String xmfr) {
+		this.xmfr = xmfr;
+	}
+
+	public String getJsdd() {
+		return jsdd;
+	}
+
+	public void setJsdd(String jsdd) {
+		this.jsdd = jsdd;
+	}
+
+	public String getCurrentname() {
+		return currentname;
+	}
+
+	public void setCurrentname(String currentname) {
+		this.currentname = currentname;
+	}
+
+	public String getAuditusername() {
+		return auditusername;
+	}
+
+	public void setAuditusername(String auditusername) {
+		this.auditusername = auditusername;
+	}
+
+	public String getAudittime() {
+		return audittime;
+	}
+
+	public void setAudittime(String audittime) {
+		this.audittime = audittime;
+	}
+
+	public String getSpyj() {
+		return spyj;
+	}
+
+	public void setSpyj(String spyj) {
+		this.spyj = spyj;
+	}
+
+	public String getJsgm() {
+		return jsgm;
+	}
+
+	public void setJsgm(String jsgm) {
+		this.jsgm = jsgm;
+	}
+
+	public String getTzlx() {
+		return tzlx;
+	}
+
+	public void setTzlx(String tzlx) {
+		this.tzlx = tzlx;
+	}
+
+	public String getXmhzjb() {
+		return xmhzjb;
+	}
+
+	public void setXmhzjb(String xmhzjb) {
+		this.xmhzjb = xmhzjb;
+	}
+
+	public String getDqzt() {
+		return dqzt;
+	}
+
+	public void setDqzt(String dqzt) {
+		this.dqzt = dqzt;
+	}
+
+	public String getAxspjb() {
+		return axspjb;
+	}
+
+	public void setAxspjb(String axspjb) {
+		this.axspjb = axspjb;
+	}
+
+	public String getBwhz() {
+		return bwhz;
+	}
+
+	public void setBwhz(String bwhz) {
+		this.bwhz = bwhz;
+	}
+
+	public Double getTgnl() {
+		return tgnl;
+	}
+
+	public void setTgnl(Double tgnl) {
+		this.tgnl = tgnl;
+	}
+
+	public String getSzgk() {
+		return szgk;
+	}
+
+	public void setSzgk(String szgk) {
+		this.szgk = szgk;
+	}
+
+	public String getSzgq() {
+		return szgq;
+	}
+
+	public void setSzgq(String szgq) {
+		this.szgq = szgq;
+	}
+
+	public String getXmlx() {
+		return xmlx;
+	}
+
+	public void setXmlx(String xmlx) {
+		this.xmlx = xmlx;
+	}
+
+	public String getSzgkzw() {
+		return szgkzw;
+	}
+
+	public void setSzgkzw(String szgkzw) {
+		this.szgkzw = szgkzw;
+	}
+
+	public String getTaskState() {
+		return taskState;
+	}
+
+	public void setTaskState(String taskState) {
+		this.taskState = taskState;
+	}
+
+	public String getSzgqzw() {
+		return szgqzw;
+	}
+
+	public void setSzgqzw(String szgqzw) {
+		this.szgqzw = szgqzw;
+	}
+
+	public String getJyrid() {
+		return jyrid;
+	}
+
+	public void setJyrid(String jyrid) {
+		this.jyrid = jyrid;
+	}
+
+	public String getJyrzw() {
+		return jyrzw;
+	}
+
+	public void setJyrzw(String jyrzw) {
+		this.jyrzw = jyrzw;
+	}
+
+	public String getJyrxmfr() {
+		return jyrxmfr;
+	}
+
+	public void setJyrxmfr(String jyrxmfr) {
+		this.jyrxmfr = jyrxmfr;
+	}
+
+	public String getSzd() {
+		return szd;
+	}
+
+	public void setSzd(String szd) {
+		this.szd = szd;
+	}
+
+	public String getSzddzw() {
+		return szddzw;
+	}
+
+	public void setSzddzw(String szddzw) {
+		this.szddzw = szddzw;
+	}
+
+	public String getFlag() {
+		return flag;
+	}
+
+	public void setFlag(String flag) {
+		this.flag = flag;
+	}
+
+	public String getFlagForYear() {
+		return flagForYear;
+	}
+
+	public void setFlagForYear(String flagForYear) {
+		this.flagForYear = flagForYear;
+	}
+
+	public String getSddx() {
+		return sddx;
+	}
+
+	public void setSddx(String sddx) {
+		this.sddx = sddx;
+	}
+
+	public String getSddy() {
+		return sddy;
+	}
+
+	public void setSddy(String sddy) {
+		this.sddy = sddy;
+	}
+
+	public String getXddx() {
+		return xddx;
+	}
+
+	public void setXddx(String xddx) {
+		this.xddx = xddx;
+	}
+
+	public String getXddy() {
+		return xddy;
+	}
+
+	public void setXddy(String xddy) {
+		this.xddy = xddy;
+	}
+
+	public String getSfyzjbz() {
+		return sfyzjbz;
+	}
+
+	public void setSfyzjbz(String sfyzjbz) {
+		this.sfyzjbz = sfyzjbz;
+	}
+
+	public String getBwyt() {
+		return bwyt;
+	}
+
+	public void setBwyt(String bwyt) {
+		this.bwyt = bwyt;
+	}
+
+	public String getZyhbwfl() {
+		return zyhbwfl;
+	}
+
+	public void setZyhbwfl(String zyhbwfl) {
+		this.zyhbwfl = zyhbwfl;
+	}
+
+	public String getZyhbwflzw() {
+		return zyhbwflzw;
+	}
+
+	public void setZyhbwflzw(String zyhbwflzw) {
+		this.zyhbwflzw = zyhbwflzw;
+	}
+
+	public String getBwytzw() {
+		return bwytzw;
+	}
+
+	public void setBwytzw(String bwytzw) {
+		this.bwytzw = bwytzw;
+	}
+
+	public String getTaskkey() {
+		return taskkey;
+	}
+
+	public void setTaskkey(String taskkey) {
+		this.taskkey = taskkey;
+	}
+
+	public String getLcjd() {
+		return lcjd;
+	}
+
+	public void setLcjd(String lcjd) {
+		this.lcjd = lcjd;
+	}
+
+	public String getSfqswj() {
+		return sfqswj;
+	}
+
+	public void setSfqswj(String sfqswj) {
+		this.sfqswj = sfqswj;
+	}
+
+	public String getShowjsjd() {
+		return showjsjd;
+	}
+
+	public void setShowjsjd(String showjsjd) {
+		this.showjsjd = showjsjd;
+	}
+
+	public String getFlowstatus() {
+		return flowstatus;
+	}
+
+	public void setFlowstatus(String flowstatus) {
+		this.flowstatus = flowstatus;
+	}
+
+}