Forráskód Böngészése

作业申报许可数据统计

git-svn-id: https://192.168.57.71/svn/jsgkj@31 931142cf-59ea-a443-aa0e-51397b428577
ld_liufl 9 éve
szülő
commit
87ab989b5d

+ 4 - 1
gkaq/yjpt-flex/trunk/src/com/jtgh/yjpt/common/ClassRegistry.as

@@ -111,12 +111,13 @@ package com.jtgh.yjpt.common
 	import com.jtgh.yjpt.vo.zyfzndjy.ZyrkzblhzsqbVo;
 	import com.jtgh.yjpt.vo.zyfzndjy.ZyrkznshsqbVo;
 	import com.jtgh.yjpt.vo.zyfzns.GkwxhwzyfznsVo;
+	import com.jtgh.yjpt.vo.zysqbp.FrxzxkVo;
+	import com.jtgh.yjpt.vo.zysqbp.XksbVo;
 	import com.jtgh.yjpt.vo.zysqbp.ZysqbpCountVo;
 	import com.jtgh.yjpt.vo.zysqbp.ZysqbpCountVo1;
 	import com.jtgh.yjpt.vo.zysqbp.ZysqbpGatherVo;
 	import com.jtgh.yjpt.vo.zysqbp.ZysqbpVo;
 	import com.jtgh.yjpt.vo.zysqbp.ZysqbphsdbVo;
-	import com.jtgh.yjpt.vo.zysqbp.FrxzxkVo;
 	
 	import mx.charts.ColumnChart;
 	import mx.charts.PieChart;
@@ -226,6 +227,8 @@ package com.jtgh.yjpt.common
 		HsHwVo;
 		GztxVo;
 		FrxzxkVo;
+		XksbVo;
+		
 		// Select
 		CodeSelect;
 		YesNoSelect;

+ 77 - 9
gkaq/yjpt-flex/trunk/src/com/jtgh/yjpt/view/zysqbp/ColumnChoose.mxml

@@ -22,37 +22,49 @@
 			[Bindable]
 			public var list2:ArrayCollection =  new ArrayCollection();
 			[Bindable]
-			public var flag:Boolean=true;
+			public var index:Number=0;
 			[Bindable]
 			public var arr:Array=new Array();
 			[Bindabel]
 			public var columns:String;
+			public const FRXZXK_INDEX:Number=0;
+			public const DSJ_INDEX:Number=1;
+			public const XKSB_INDEX:Number=2;
 			/**
 			 * 页面初始化
 			 */ 
 			protected function init(event:FlexEvent):void
 			{
-				if(flag){
+				if(index == FRXZXK_INDEX){
 					if(columns.length>16){
 						var frName:String="fr";
 						for(var i:int=0;i<16;i++){
 							this[frName+i].selected=columns.charAt(i+1)=="Y";
 						}
 					}
-				} else {
+				} 
+				if(index == DSJ_INDEX){
 					if(columns.length>39){
 						var bdName:String="bd";
 						for(var j:int=0;j<39;j++){
 							this[bdName+j].selected=columns.charAt(j+1)=="Y";
 						}
 					}
-				}				
+				}
+				if(index == XKSB_INDEX){
+					if(columns.length>14){
+						var xkName:String="xk";
+						for(var z:int=0;z<14;z++){
+							this[xkName+z].selected=columns.charAt(z+1)=="Y";
+						}
+					}
+				} 
 			}
 			
 			protected function button1_clickHandler(event:MouseEvent):void
 			{
 				var str:String="";
-				if(flag){
+				if(index == FRXZXK_INDEX){
 					str="N";
 					var frName:String="fr";
 					for(var i:int=0;i<16;i++){
@@ -62,7 +74,8 @@
 						Alert.show("无显示的列,请重新选择!","提示");
 						return;
 					}
-				} else {
+				} 
+				if(index == DSJ_INDEX){
 					str="Y";
 					var bdName:String="bd";
 					for(var j:int=0;j<39;j++){
@@ -73,7 +86,18 @@
 						return;
 					}
 				}	
-				Utils.callRemote("zysqbpController","saveDataMenu",null,str,flag);
+				if(index == XKSB_INDEX){
+					str="N";
+					var xkName:String="xk";
+					for(var z:int=0;z<14;z++){
+						str=str+(this[xkName+z].selected?"Y":"N");
+					}
+					if(str.indexOf("Y")==-1){
+						Alert.show("无显示的列,请重新选择!","提示");
+						return;
+					}
+				} 
+				Utils.callRemote("zysqbpController","saveDataMenu",null,str,index);
 				this.dispatchEvent(new MyEvent(MyEvent.SAVE_OK,str));
 				this.dispatchEvent(new CloseEvent(Event.CLOSE));
 			}	
@@ -83,7 +107,7 @@
 		<ui:Button label="确定" click="button1_clickHandler(event)"/>
 		<ui:Button label="关闭" click="this.dispatchEvent(new CloseEvent(Event.CLOSE))"/>
 	</s:HGroup>
-	<s:VGroup  width="100%" horizontalAlign="center" id="fr" visible="{flag}" includeInLayout="{flag}">
+	<s:VGroup  width="100%" horizontalAlign="center" id="fr" visible="{index==FRXZXK_INDEX}" includeInLayout="{index==FRXZXK_INDEX}">
 		<s:HGroup>
 			<mx:CheckBox id="fr0" width="150" label="行政许可决定书文号"/>
 		</s:HGroup>
@@ -133,7 +157,7 @@
 			<mx:CheckBox id="fr15" width="150" label="信息使用范围"  />
 		</s:HGroup>
 	</s:VGroup>
-	<s:VGroup id="bd" width="100%" horizontalAlign="center" visible="{!flag}" includeInLayout="{!flag}">
+	<s:VGroup id="bd" width="100%" horizontalAlign="center" visible="{index==DSJ_INDEX}" includeInLayout="{index==DSJ_INDEX}">
 		<s:HGroup>
 			<mx:CheckBox id="bd0" width="150" label="编号"/>
 			<mx:CheckBox id="bd1" width="150" label="所在地"/>
@@ -215,4 +239,48 @@
 			<s:Label width="150" text=""/>
 		</s:HGroup>
 	</s:VGroup>
+	<s:VGroup  width="100%" horizontalAlign="center" id="xk" visible="{index==XKSB_INDEX}" includeInLayout="{index==XKSB_INDEX}">
+		<s:HGroup>
+			<mx:CheckBox id="xk0" width="150" label="办件号"/>
+		</s:HGroup>
+		<s:HGroup>
+			<mx:CheckBox id="xk1" width="150" label="权利事项编码"  />
+		</s:HGroup>
+		<s:HGroup>
+			<mx:CheckBox id="xk2" width="150" label="业务处室"  />
+		</s:HGroup>
+		<s:HGroup>
+			<mx:CheckBox id="xk3" width="150" label="申请人(单位)"  />
+		</s:HGroup>
+		<s:HGroup>
+			<mx:CheckBox id="xk4" width="150" label="联系人" />
+		</s:HGroup>
+		<s:HGroup>
+			<mx:CheckBox id="xk5" width="150" label="申请人联系地址"  />
+		</s:HGroup>
+		<s:HGroup>
+			<mx:CheckBox id="xk6" width="150" label="联系电话"  />
+		</s:HGroup>
+		<s:HGroup>
+			<mx:CheckBox id="xk7" width="150" label="承诺时限"  />
+		</s:HGroup>
+		<s:HGroup>
+			<mx:CheckBox id="xk8" width="150" label="受理时间"  />
+		</s:HGroup>
+		<s:HGroup>
+			<mx:CheckBox id="xk9" width="150" label="办理人员姓名"  />
+		</s:HGroup>
+		<s:HGroup>
+			<mx:CheckBox id="xk10" width="150" label="办理人员姓名"  />
+		</s:HGroup>
+		<s:HGroup>
+			<mx:CheckBox id="xk11" width="150" label="办结状态"  />
+		</s:HGroup>
+		<s:HGroup>
+			<mx:CheckBox id="xk12" width="150" label="办结意见"  />
+		</s:HGroup>
+		<s:HGroup>
+			<mx:CheckBox id="xk13" width="150" label="办结时间"/>
+		</s:HGroup>
+	</s:VGroup>
 </s:VGroup>

+ 97 - 12
gkaq/yjpt-flex/trunk/src/com/jtgh/yjpt/view/zysqbp/FrxzxkLayout.mxml

@@ -18,28 +18,28 @@
 			import com.jtgh.yjpt.vo.common.SinglePageRequestVo;
 			
 			import mx.collections.ArrayCollection;
-			import mx.events.CloseEvent;
 			import mx.events.FlexEvent;
 			import mx.events.IndexChangedEvent;
 			import mx.formatters.DateFormatter;
 			import mx.managers.CursorManager;
 			import mx.rpc.events.ResultEvent;
-			import mx.utils.StringUtil;
 			
 			import spark.components.gridClasses.GridColumn;
 
 			public const FRXZXK_INDEX:Number=0;
 			public const DSJ_INDEX:Number=1;
+			public const XKSB_INDEX:Number=2;
 			[Bindable]
 			public var index:Number=FRXZXK_INDEX;
-			public var last_index:Number=DSJ_INDEX;
+			public var last_index:Number=XKSB_INDEX;
 			[Bindable]
 			public var list:ArrayCollection=new ArrayCollection();
 			[Bindable]
 			public var frList:ArrayCollection=new ArrayCollection();
 			[Bindable]
 			public var bdList:ArrayCollection=new ArrayCollection();
-			
+			[Bindable]
+			public var xkList:ArrayCollection=new ArrayCollection();
 			
 			[Bindable]
 			public var selectMode:String="singleRow";
@@ -49,6 +49,8 @@
 			public var frString:String="NYYYYYYYYYYYYYYYY";
 			[Bindable]
 			public var bdString:String="YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY";
+			[Bindable]
+			public var xkString:String="NYYYYYYYYYYYYYY";
 
 			protected function init(event:FlexEvent):void{
 				thisView=this; 
@@ -78,6 +80,15 @@
 						}
 						bdPager.doQuery();
 					}
+					if(e.newIndex==XKSB_INDEX) {						
+						if(xkString.length>14){
+							var xkName:String="xk";
+							for(var z:int=0;z<15;z++){
+								thisView[xkName+z].visible=xkString.charAt(z)=="Y";
+							}
+						}
+						xkPager.doQuery();
+					}
 				});
 			}
 			
@@ -87,7 +98,10 @@
 				}
 				if(index==DSJ_INDEX) {
 					bdPager.doQuery();
-				}				
+				}
+				if(index==XKSB_INDEX) {
+					xkPager.doQuery();
+				}	
 			}
 			
 			protected function query_fr(pager:SinglePageRequestVo):void{
@@ -126,13 +140,36 @@
 				},pager,Utils.getFunctionId(thisView),szdId,start,stop);			
 			}
 			
+			protected function query_xk(pager:SinglePageRequestVo):void{
+				pager.sortField="bgsj";
+				pager.direction="desc";
+				var szdId:Number;
+				var start:Date=null;
+				var stop:Date=null;
+				if(szd.selectedVO != null){
+					szdId=(szd.selectedVO as CodeVo).id;
+				}
+				start=startTime.dateTime;
+				stop = stopTime.dateTime;
+				Utils.callRemote("zysqbpController","listOfXksb",function(r:ResultEvent):void{
+					var bc:BusinessContext=r.result as BusinessContext;
+					xkList = bc.getAttribute("list") as ArrayCollection;
+					(thisView.xkPager.pageVo as SinglePageRequestVo).totalCount = bc.getAttribute("totalCount") as int;
+				},pager,Utils.getFunctionId(thisView),szdId,start,stop);			
+			}
+			
 			private function labelFun(item:Object,column:GridColumn):String
 			{
 				if(index == FRXZXK_INDEX){
 					return (this.frPager.pageVo.page*10+this.frGrid.dataProvider.getItemIndex(item)+1).toString();
-				}else{
+				}
+				if(index == DSJ_INDEX){
 					return (this.bdPager.pageVo.page*10+this.bdGrid.dataProvider.getItemIndex(item)+1).toString();
-				} 		
+				} 	
+				if(index == XKSB_INDEX){
+					return (this.xkPager.pageVo.page*10+this.xkGrid.dataProvider.getItemIndex(item)+1).toString();
+				} 	
+				return (this.frPager.pageVo.page*10+this.frGrid.dataProvider.getItemIndex(item)+1).toString();
 			}
 
 			public function downLond(e:MouseEvent):void{;
@@ -153,6 +190,12 @@
 					 method="printBigData";
 					 cString = bdString;
 				}
+				if(index==XKSB_INDEX){
+					title="危险货物港口作业申报许可";
+					columns=thisView.xkGrid.columns as ArrayList;
+					method="printXksb";
+					cString = xkString;
+				}
 				var headers:Array=new Array;
 				for each(var column:DataGridColumn in columns.source){
 					if(column.visible&&""!=column.headerText)
@@ -196,15 +239,21 @@
 				var width:Number=200;
 				var heigth:Number=400;
 				if(index == FRXZXK_INDEX) {
-					view.flag=true;
+					view.index=index;
 					view.columns=frString;
 					title="法人行政许可";
-				}else{
-					view.flag=false;
+				}
+				if(index == DSJ_INDEX) {
+					view.index=index;
 					view.columns=bdString;
 					title="大数据分析";
 					width=330;
 				} 
+				if(index == XKSB_INDEX) {
+					view.index=index;
+					view.columns=xkString;
+					title="危险货物港口作业申报许可";
+				} 
 				view.addEventListener(MyEvent.SAVE_OK,saveColumns)
 				Utils.popupWindow(title,view,thisView as DisplayObject,null,width,heigth);			
 			}
@@ -218,7 +267,8 @@
 							this[frName+i].visible=frString.charAt(i)=="Y";
 						}
 					}
-				}else{
+				}
+				if(index == DSJ_INDEX) {
 					bdString=e.data as String;
 					if(bdString.length>39){
 						var bdName:String="bd";
@@ -226,7 +276,16 @@
 							this[bdName+j].visible=bdString.charAt(j)=="Y";
 						}
 					}
-				}			
+				}
+				if(index == XKSB_INDEX) {
+					xkString=e.data as String;
+					if(xkString.length>14){
+						var xkName:String="xk";
+						for(var z:int=0;z<15;z++){
+							this[xkName+z].visible=xkString.charAt(z)=="Y";
+						}
+					}
+				}
 			}
 			
 		]]>			
@@ -333,6 +392,32 @@
 				<ui:Pager id="bdPager"  queryFunction="{query_bd}"/>
 			</s:VGroup>		
 		</s:NavigatorContent>
+		
+		<s:NavigatorContent label="作业申报许可">
+			<s:VGroup width="100%" gap="0" horizontalAlign="left" verticalAlign="middle">
+				<ui:DataGrid id="xkGrid" width="100%" selectionMode="{selectMode}" dataProvider="{xkList}" minHeight="330"
+							 verticalScrollPolicy="off" horizontalScrollPolicy="on">
+					<ui:columns><s:ArrayList >	
+									<ui:DataGridColumn id="xk0" labelFunction="labelFun" headerText="序号" width="50"/>
+									<ui:DataGridColumn id="xk1" dataField="bjh"  headerText="办件号"  minWidth="100" dataTipField="bjh" />
+									<ui:DataGridColumn id="xk2" dataField="qlsxbm"  headerText="权利事项编码"  minWidth="100" dataTipField="qlsxbm" />
+									<ui:DataGridColumn id="xk3" dataField="ywcs"  headerText="业务处室" minWidth="100" dataTipField="ywcs" />
+									<ui:DataGridColumn id="xk4" dataField="sqdw"  headerText="申请人(单位)" minWidth="100" dataTipField="sqdw" />
+									<ui:DataGridColumn id="xk5" dataField="lxr"  headerText="联系人" minWidth="100" dataTipField="lxr" />
+									<ui:DataGridColumn id="xk6" dataField="sqrlxdz"  headerText="申请人联系地址" minWidth="100" dataTipField="sqrlxdz" />
+									<ui:DataGridColumn id="xk7" dataField="lxdh"  headerText="联系电话" minWidth="100" dataTipField="lxdh" />
+									<ui:DataGridColumn id="xk8" dataField="cnsx"  headerText="承诺时限" minWidth="100"  dataTipField="cnsx"  />
+									<ui:DataGridColumn id="xk9" dataField="slsj"  headerText="受理时间" minWidth="100" dateFormatString="YYYY-MM-DD JJ:NN:SS"  dataTipField="slsj" />
+									<ui:DataGridColumn id="xk10" dataField="blryxm"  headerText="办理人员姓名" minWidth="100" dataTipField="blryxm" />
+									<ui:DataGridColumn id="xk11" dataField="blrygh"  headerText="办理人员工号" minWidth="100" dataTipField="blrygh" />
+									<ui:DataGridColumn id="xk12" dataField="bjzt"  headerText="办结状态" minWidth="100" dataTipField="bjzt" />
+									<ui:DataGridColumn id="xk13" dataField="bjyj"  headerText="办结意见" minWidth="100" dataTipField="bjyj" />
+									<ui:DataGridColumn id="xk14" dataField="bjsj"  headerText="办结时间" minWidth="100" dateFormatString="YYYY-MM-DD JJ:NN:SS" dataTipField="bjsj" />
+								</s:ArrayList></ui:columns>
+				</ui:DataGrid>
+				<ui:Pager id="xkPager"  queryFunction="{query_xk}"/>
+			</s:VGroup>		
+		</s:NavigatorContent>
 	</mx:TabNavigator>	
 	
 </ui:QueryLayout>

+ 43 - 0
gkaq/yjpt-flex/trunk/src/com/jtgh/yjpt/vo/zysqbp/XksbVo.as

@@ -0,0 +1,43 @@
+package com.jtgh.yjpt.vo.zysqbp
+{
+	
+	
+	[Bindable]
+	[RemoteClass(alias="com.jtgh.yjpt.entity.zysqbp.XksbEntity")]
+	
+	public class XksbVo 
+	{
+		public function XksbVo()
+		{
+			super();
+		}
+		/**办件号*/
+		public var bjh:String;
+		/**权利事项编码*/
+		public var qlsxbm:String;
+		/**业务处室*/
+		public var ywcs:String;
+		/**申请人或申请单位*/
+		public var sqdw:String;
+		/**联系人*/
+		public var lxr:String;
+		/**申请人联系地址*/
+		public var sqrlxdz:String;
+		/**联系电话*/
+		public var lxdh:String;
+		/**承诺时限(单位工作日)*/
+		public var cnsx:String;
+		/**受理时间(精确到时分秒)*/
+		public var slsj:Date;
+		/**办理人员姓名*/
+		public var blryxm:String;
+		/**办理人员工号*/
+		public var blrygh:String;
+		/**办结状态*/
+		public var bjzt:String;
+		/**办结意见*/
+		public var bjyj:String;
+		/**办结时间*/
+		public var bjsj:Date;	
+	}
+}

+ 431 - 11
gkaq/yjpt-java/trunk/java_src/com/jtgh/yjpt/controller/zysqbp/ZysqbpController.java

@@ -91,6 +91,7 @@ import com.jtgh.yjpt.entity.jyrxxgl.RyjbxxEntity;
 import com.jtgh.yjpt.entity.task.Gztx;
 import com.jtgh.yjpt.entity.zyfzndjy.GkwxhwzyfzblFzEntity;
 import com.jtgh.yjpt.entity.zysqbp.FrxzxkEntity;
+import com.jtgh.yjpt.entity.zysqbp.XksbEntity;
 import com.jtgh.yjpt.entity.zysqbp.ZysqbpBgEntity;
 import com.jtgh.yjpt.entity.zysqbp.ZysqbpCountEntity;
 import com.jtgh.yjpt.entity.zysqbp.ZysqbpCountEntity1;
@@ -251,6 +252,11 @@ public class ZysqbpController extends BaseController {
 							&& !"".equals(entity.getWxhwmcbh()))
 						list.add(cb.like(root.get("wxhwmcbh").as(String.class),
 								"%" + entity.getWxhwmcbh() + "%"));
+					if(null!=entity.getZydw()) {
+						list.add(cb.equal(
+								root.get("zydw").get("id").as(String.class),
+								entity.getZydw().getId()));
+					}
 					if (null != gkdw && !"".equals(gkdw))
 						list.add(cb.like(
 								root.get("zydw").get("gkjyr").as(String.class),
@@ -384,6 +390,11 @@ public class ZysqbpController extends BaseController {
 							&& !"".equals(entity.getWxhwmcbh()))
 						list.add(cb.like(root.get("wxhwmcbh").as(String.class),
 								"%" + entity.getWxhwmcbh() + "%"));
+					if(null!=entity.getZydw()) {
+						list.add(cb.equal(
+								root.get("zydw").get("id").as(String.class),
+								entity.getZydw().getId()));
+					}
 					if (null != gkdw && !"".equals(gkdw))
 						list.add(cb.like(
 								root.get("zydw").get("gkjyr").as(String.class),
@@ -458,6 +469,11 @@ public class ZysqbpController extends BaseController {
 							&& !"".equals(entity.getWxhwmcbh()))
 						list.add(cb.like(root.get("wxhwmcbh").as(String.class),
 								"%" + entity.getWxhwmcbh() + "%"));
+					if(null!=entity.getZydw()) {
+						list.add(cb.equal(
+								root.get("zydw").get("id").as(String.class),
+								entity.getZydw().getId()));
+					}
 					if (null != gkdw && !"".equals(gkdw))
 						list.add(cb.like(
 								root.get("zydw").get("gkjyr").as(String.class),
@@ -722,6 +738,10 @@ public class ZysqbpController extends BaseController {
 						list.add(cb.like(
 								root.get("zydw").get("gkjyr").as(String.class),
 								"%" + param.get(2) + "%"));
+					if (!"".equals(param.get(17)))
+						list.add(cb.equal(
+								root.get("zydw").get("id").as(Long.class),
+								Long.parseLong(param.get(17) ) ));
 					if (!"null".equals(param.get(7))
 							&& !"".equals(param.get(7))) {
 						list.add(cb.equal(root.get("mao").as(String.class),
@@ -3624,10 +3644,21 @@ public class ZysqbpController extends BaseController {
 					entity.setXmmc(p.get("xmmc").toString());
 					entity.setSplb(p.get("splb").toString());
 					if (null != ba.getSzd()) {
-						entity.setXkjg(p.get("xkjg-" + ba.getSzd().getId())
-								.toString());
-						entity.setXzxkqlbm(p.get(
-								"xzxkqlbm-" + ba.getSzd().getId()).toString());
+						if(p.containsKey("xkjg-" + ba.getSzd().getId())){
+							entity.setXkjg(p.get("xkjg-" + ba.getSzd().getId())
+									.toString());
+						} else if (p.containsKey("xkjg-" + ba.getSzd().getParent().getId())) {
+							entity.setXkjg(p.get("xkjg-" + ba.getSzd().getParent().getId())
+									.toString());
+						}
+						
+						if(p.containsKey("xzxkqlbm-" + ba.getSzd().getId())){
+							entity.setXzxkqlbm(p.get(
+									"xzxkqlbm-" + ba.getSzd().getId()).toString());
+						} else if (p.containsKey("xzxkqlbm-" + ba.getSzd().getParent().getId())) {
+							entity.setXzxkqlbm(p.get(
+									"xzxkqlbm-" + ba.getSzd().getParent().getId()).toString());
+						}
 						entity.setDfbm(ba.getSzd().getCode());
 					}
 					entity.setXxsyfw(p.get("xxsyfw").toString());
@@ -3780,11 +3811,22 @@ public class ZysqbpController extends BaseController {
 					entity.setXmmc(p.get("xmmc").toString());
 					entity.setSplb(p.get("splb").toString());
 					if (null != zysqbpEntity.getSzd()) {
-						entity.setXkjg(p.get("xkjg-" + ba.getSzd().getId())
-								.toString());
-						entity.setXzxkqlbm(p.get(
-								"xzxkqlbm-" + zysqbpEntity.getSzd().getId())
-								.toString());
+						//许可机关
+						if(p.containsKey("xkjg-" + ba.getSzd().getId())){
+							entity.setXkjg(p.get("xkjg-" + ba.getSzd().getId())
+									.toString());
+						} else if (p.containsKey("xkjg-" + ba.getSzd().getParent().getId())) {
+							entity.setXkjg(p.get("xkjg-" + ba.getSzd().getParent().getId())
+									.toString());
+						}
+						//行政许可权利编码
+						if(p.containsKey("xzxkqlbm-" + ba.getSzd().getId())){
+							entity.setXzxkqlbm(p.get(
+									"xzxkqlbm-" + ba.getSzd().getId()).toString());
+						} else if (p.containsKey("xzxkqlbm-" + ba.getSzd().getParent().getId())) {
+							entity.setXzxkqlbm(p.get(
+									"xzxkqlbm-" + ba.getSzd().getParent().getId()).toString());
+						}
 						entity.setDfbm(zysqbpEntity.getSzd().getCode());
 					}
 					entity.setXxsyfw(p.get("xxsyfw").toString());
@@ -4110,8 +4152,21 @@ public class ZysqbpController extends BaseController {
 		return strings;
 	}
 
-	public BusinessContext saveDataMenu(String columns, boolean flag) {
-		String type = flag ? MemType.TYPE_FRXZXK : MemType.TYPE_DSJFX;
+	public BusinessContext saveDataMenu(String columns, int index) {
+		String type = MemType.TYPE_FRXZXK;
+		switch (index) {
+		case 0:
+			 type = MemType.TYPE_FRXZXK;
+			break;
+		case 1:
+			 type = MemType.TYPE_DSJFX;
+			break;
+		case 2:
+			 type = MemType.TYPE_SBXK;
+			break;
+		default:
+			break;
+		}
 		List<MemEntity> memList = memService.findMem(type, Utils
 				.getCurrentUser().getId());
 		if (CollectionUtils.isEmpty(memList)) {
@@ -4133,6 +4188,8 @@ public class ZysqbpController extends BaseController {
 				zysqbpService.findDataMenu(MemType.TYPE_FRXZXK));
 		bContext.setAttribute("bd",
 				zysqbpService.findDataMenu(MemType.TYPE_DSJFX));
+		bContext.setAttribute("xk",
+				zysqbpService.findDataMenu(MemType.TYPE_SBXK));
 		return bContext;
 	}
 
@@ -4188,5 +4245,368 @@ public class ZysqbpController extends BaseController {
 		}
 		return createBusinessContext();
 	}
+	
+	/**
+	 * 危险货物作业许可
+	 * @param page
+	 * @param functioniId
+	 * @param szdId
+	 * @param start
+	 * @param stop
+	 * @return
+	 */
+	public BusinessContext listOfXksb( SinglePageRequest page,Long functioniId,final Long szdId,final Date start,final Date stop) {
+		BusinessContext bc = new BusinessContext();
+		try {
+			Specification<TaskInfoEntity> spec = new Specification<TaskInfoEntity>() {
+				@Override
+				public Predicate toPredicate(Root<TaskInfoEntity> root,
+						CriteriaQuery<?> query, CriteriaBuilder cb) {
+					List<Predicate> list = new ArrayList<Predicate>();
+					list.add(cb.or(new Predicate[] {
+							cb.and(new Predicate[] {
+									cb.like(root.get("busKey").as(String.class),
+											"zysbsp-city"),
+									cb.equal(
+											root.get("taskKey")
+													.as(String.class), "xssc") }),
+							cb.and(new Predicate[] {
+									cb.like(root.get("busKey").as(String.class),
+											"autoAudit"),
+									cb.equal(
+											root.get("taskKey")
+													.as(String.class), "pz") }) }));
+					list.add(cb.equal(root.get("state").as(String.class), "2"));
+					if (null != start) {
+						list.add(cb.isNotNull(root.get("auditTime")));
+						list.add(cb.greaterThanOrEqualTo(root.get("auditTime")
+								.as(Date.class), start));
+					}
+					if (null != stop) {
+						list.add(cb.isNotNull(root.get("auditTime")));
+						list.add(cb.lessThan(
+								root.get("auditTime").as(Date.class),
+								DateUtil.addDate(stop, 1)));
+					}
+					Subquery<ZysqbpEntity> subquery = query
+							.subquery(ZysqbpEntity.class);
+					Root<ZysqbpEntity> zysqbpRoot = subquery
+							.from(ZysqbpEntity.class);
+					subquery.select(zysqbpRoot);
+					List<Predicate> subQueryPredicates = new ArrayList<Predicate>();
+					subQueryPredicates.add(cb.equal(
+							root.get("busId").as(String.class),
+							zysqbpRoot.get("id").as(String.class)));
+					if (null != szdId) {
+						subQueryPredicates.add(cb.like(zysqbpRoot.get("szd")
+								.get("id").as(String.class), szdId + "%"));
+					}
+					subQueryPredicates.add(cb.or(new Predicate[] {
+							cb.equal(
+									zysqbpRoot.get("recordStatus").as(
+											String.class),
+									BaseEntity.RECORD_STATE_BGCOMPLETED),
+							cb.equal(
+									zysqbpRoot.get("recordStatus").as(
+											String.class),
+									BaseEntity.RECORD_STATE_CALEL),
+							cb.equal(
+									zysqbpRoot.get("recordStatus").as(
+											String.class),
+									BaseEntity.RECORD_STATE_COMPLETED),
+							cb.equal(
+									zysqbpRoot.get("recordStatus").as(
+											String.class),
+									BaseEntity.RECORD_STATE_REJECT) }));
+					subquery.where(subQueryPredicates
+							.toArray(new Predicate[] {}));
+					list.add(cb.exists(subquery));
+
+					return cb.and(list.toArray(new Predicate[] {}));
+				}
+			};
+			page = new SinglePageRequest(page.getPageNumber(),
+					page.getPageSize(), "desc", "auditTime");
+			Page<TaskInfoEntity> pageList = taskService
+					.findAll1(spec, page);
+			List<XksbEntity> list2 = new ArrayList<XksbEntity>();
+			InputStream in = ZysqbpController.class
+					.getResourceAsStream("/frxzxk/frxzxk.properties");
+			Properties p = new Properties();
+			if (in != null) {
+				try {
+					p.load(in);
+				} catch (IOException e) {
+					e.printStackTrace();
+				}
+			}
+			for (TaskInfoEntity ba : pageList) {
+				XksbEntity entity = new XksbEntity();
+				ZysqbpEntity zysqbpEntity = zysqbpService.findOne(Long
+						.parseLong(ba.getBusId()));
+				entity.setBjh(zysqbpEntity.getBh());
+				if (in != null) {
+					if (null != ba.getSzd()) {
+						if(p.containsKey("xzxkqlbm-" + ba.getSzd().getId())){
+							entity.setQlsxbm(p.get(
+									"xzxkqlbm-" + ba.getSzd().getId()).toString());
+						} else if (p.containsKey("xzxkqlbm-" + ba.getSzd().getParent().getId())) {
+							entity.setQlsxbm(p.get(
+									"xzxkqlbm-" + ba.getSzd().getParent().getId()).toString());
+						}
+						if(p.containsKey("xkjg-" + ba.getSzd().getId())){
+							entity.setYwcs(p.get("xkjg-" + ba.getSzd().getId())
+									.toString());
+						} else if (p.containsKey("xkjg-" + ba.getSzd().getParent().getId())) {
+							entity.setYwcs(p.get("xkjg-" + ba.getSzd().getParent().getId())
+									.toString());
+						}
+						
+						//承诺时限
+						if(p.containsKey("cnsx-" + ba.getSzd().getId())){
+							entity.setCnsx(p.get("cnsx-" + ba.getSzd().getId())
+									.toString());
+						} else if (p.containsKey("cnsx-" + ba.getSzd().getParent().getId())) {
+							entity.setCnsx(p.get("cnsx-" + ba.getSzd().getParent().getId())
+									.toString());
+						}
+					}
+				}
+				//联系人
+				entity.setLxr(zysqbpEntity.getBgr());
+				//联系电话
+				entity.setLxdh(zysqbpEntity.getLxfs());
+				if (null != zysqbpEntity.getZydw()) {
+					//申请单位
+					entity.setSqdw(zysqbpEntity.getZydw().getGkjyr());		
+					//申请人联系地址
+					entity.setSqrlxdz(zysqbpEntity.getZydw().getBgdz());
+				}
+				Date time = ba.getAuditTime();
+				//受理时间
+				entity.setSlsj(time);
+				//办结人姓名
+				entity.setBlryxm(ba.getAuditUsername());
+				//办结状态
+				entity.setBjzt(zysqbpEntity.getRecordStatus()+"");
+				//办结意见
+				entity.setBjyj(ba.getAuditMsg());
+				if (zysqbpEntity.getRecordStatus() == BaseEntity.RECORD_STATE_COMPLETED) {// 已完成作业对应的流程
+					entity.setBjyj("同意办结");
+				} else if (zysqbpEntity.getRecordStatus() == BaseEntity.RECORD_STATE_BGCOMPLETED) {// 变更完成作业对应的流程
+					entity.setBjyj("同意办结");
+				} else if (zysqbpEntity.getRecordStatus() == BaseEntity.RECORD_STATE_CALEL) {// 作废作业对应的流程
+					entity.setBjyj("不同意办结");
+				} else if (zysqbpEntity.getRecordStatus() == BaseEntity.RECORD_STATE_REJECT) {// 作废作业对应的流程
+					entity.setBjyj("不同意办结");
+				}
+				//办结时间
+				entity.setBjsj(time);
+				list2.add(entity);
+			}
+			bc = createBusinessContext(pageList);
+			bc.setAttribute("list", list2);
+			return bc;
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
+		return null;
+	}
+	
+	/**
+	 * 作业申报许可打印
+	 * @param param
+	 * @return
+	 * @throws ParseException
+	 */
+	public Collection<String[]> printXksb(final List<String> param)
+			throws ParseException {
+		Collection<TaskInfoEntity> dataset = null;
+		try {
+			Specification<TaskInfoEntity> spec = new Specification<TaskInfoEntity>() {
+				@Override
+				public Predicate toPredicate(Root<TaskInfoEntity> root,
+						CriteriaQuery<?> query, CriteriaBuilder cb) {
+					List<Predicate> list = new ArrayList<Predicate>();
+					list.add(cb.or(new Predicate[] {
+							cb.and(new Predicate[] {
+									cb.like(root.get("busKey").as(String.class),
+											"zysbsp-city"),
+									cb.equal(
+											root.get("taskKey")
+													.as(String.class), "xssc") }),
+							cb.and(new Predicate[] {
+									cb.like(root.get("busKey").as(String.class),
+											"autoAudit"),
+									cb.equal(
+											root.get("taskKey")
+													.as(String.class), "pz") }) }));
+					list.add(cb.equal(root.get("state").as(String.class), "2"));
+					if (null != param.get(2) && !"".equals(param.get(2))) {
+						try {
+							list.add(cb.isNotNull(root.get("auditTime")));
+							list.add(cb.greaterThanOrEqualTo(
+									root.get("auditTime").as(Date.class),
+									sdf.parse(param.get(2))));
+						} catch (ParseException e) {
+							e.printStackTrace();
+						}
+					}
+					if (null != param.get(3) && !"".equals(param.get(3))) {
+						try {
+							list.add(cb.isNotNull(root.get("auditTime")));
+							list.add(cb
+									.lessThan(
+											root.get("auditTime")
+													.as(Date.class), DateUtil
+													.addDate(sdf.parse(param
+															.get(3)), 1)));
+						} catch (ParseException e) {
+							e.printStackTrace();
+						}
+					}
+					Subquery<ZysqbpEntity> subquery = query
+							.subquery(ZysqbpEntity.class);
+					Root<ZysqbpEntity> zysqbpRoot = subquery
+							.from(ZysqbpEntity.class);
+					subquery.select(zysqbpRoot);
+					List<Predicate> subQueryPredicates = new ArrayList<Predicate>();
+					subQueryPredicates.add(cb.equal(
+							root.get("busId").as(String.class),
+							zysqbpRoot.get("id").as(String.class)));
+					if (null != param.get(0) && !"".equals(param.get(0))) {
+						subQueryPredicates
+								.add(cb.like(zysqbpRoot.get("szd").get("id")
+										.as(String.class), param.get(0) + "%"));
+					}
+					subQueryPredicates.add(cb.or(new Predicate[] {
+							cb.equal(
+									zysqbpRoot.get("recordStatus").as(
+											String.class),
+									BaseEntity.RECORD_STATE_BGCOMPLETED),
+							cb.equal(
+									zysqbpRoot.get("recordStatus").as(
+											String.class),
+									BaseEntity.RECORD_STATE_CALEL),
+							cb.equal(
+									zysqbpRoot.get("recordStatus").as(
+											String.class),
+									BaseEntity.RECORD_STATE_COMPLETED),
+							cb.equal(
+									zysqbpRoot.get("recordStatus").as(
+											String.class),
+									BaseEntity.RECORD_STATE_REJECT) }));
+					subquery.where(subQueryPredicates
+							.toArray(new Predicate[] {}));
+					list.add(cb.exists(subquery));
+
+					return cb.and(list.toArray(new Predicate[] {}));
+				}
+			};
+			Sort sort1 = new Sort(Direction.ASC, "auditTime");
+			dataset = taskService.findAll2(spec, sort1);
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
+		Collection<String[]> strings = new ArrayList<String[]>();
+		if (dataset != null) {
+			InputStream in = ZysqbpController.class
+					.getResourceAsStream("/frxzxk/frxzxk.properties");
+			Properties p = new Properties();
+			if (in != null) {
+				try {
+					p.load(in);
+				} catch (IOException e) {
+					e.printStackTrace();
+				}
+			}
+			for (TaskInfoEntity ba : dataset) {
+				XksbEntity entity = new XksbEntity();
+				ZysqbpEntity zysqbpEntity = zysqbpService.findOne(Long
+						.parseLong(ba.getBusId()));
+				entity.setBjh(zysqbpEntity.getBh());
+				if (in != null) {
+					if (null != ba.getSzd()) {
+						if(p.containsKey("xzxkqlbm-" + ba.getSzd().getId())){
+							entity.setQlsxbm(p.get(
+									"xzxkqlbm-" + ba.getSzd().getId()).toString());
+						} else if (p.containsKey("xzxkqlbm-" + ba.getSzd().getParent().getId())) {
+							entity.setQlsxbm(p.get(
+									"xzxkqlbm-" + ba.getSzd().getParent().getId()).toString());
+						}
+						if(p.containsKey("xkjg-" + ba.getSzd().getId())){
+							entity.setYwcs(p.get("xkjg-" + ba.getSzd().getId())
+									.toString());
+						} else if (p.containsKey("xkjg-" + ba.getSzd().getParent().getId())) {
+							entity.setYwcs(p.get("xkjg-" + ba.getSzd().getParent().getId())
+									.toString());
+						}
+						
+						//承诺时限
+						if(p.containsKey("cnsx-" + ba.getSzd().getId())){
+							entity.setCnsx(p.get("cnsx-" + ba.getSzd().getId())
+									.toString());
+						} else if (p.containsKey("cnsx-" + ba.getSzd().getParent().getId())) {
+							entity.setCnsx(p.get("cnsx-" + ba.getSzd().getParent().getId())
+									.toString());
+						}
+					}
+				}
+				//联系人
+				entity.setLxr(zysqbpEntity.getBgr());
+				//联系电话
+				entity.setLxdh(zysqbpEntity.getLxfs());
+				if (null != zysqbpEntity.getZydw()) {
+					//申请单位
+					entity.setSqdw(zysqbpEntity.getZydw().getGkjyr());		
+					//申请人联系地址
+					entity.setSqrlxdz(zysqbpEntity.getZydw().getBgdz());
+				}
+				Date time = ba.getAuditTime();
+				//受理时间
+				entity.setSlsj(time);
+				//办理人姓名
+				entity.setBlryxm(ba.getAuditUsername());
+				//办结状态
+				entity.setBjzt(zysqbpEntity.getRecordStatus()+"");
+				//办结意见
+				entity.setBjyj(ba.getAuditMsg());
+				if (zysqbpEntity.getRecordStatus() == BaseEntity.RECORD_STATE_COMPLETED) {// 已完成作业对应的流程
+					entity.setBjyj("同意办结");
+				} else if (zysqbpEntity.getRecordStatus() == BaseEntity.RECORD_STATE_BGCOMPLETED) {// 变更完成作业对应的流程
+					entity.setBjyj("同意办结");
+				} else if (zysqbpEntity.getRecordStatus() == BaseEntity.RECORD_STATE_CALEL) {// 作废作业对应的流程
+					entity.setBjyj("不同意办结");
+				} else if (zysqbpEntity.getRecordStatus() == BaseEntity.RECORD_STATE_REJECT) {// 作废作业对应的流程
+					entity.setBjyj("不同意办结");
+				}
+				//办结时间
+				entity.setBjsj(time);
+				int i = 1;
+				if (true) {
+					String[] ss = new String[] {
+							i + "",
+							entity.getBjh(),
+							entity.getQlsxbm(),
+							entity.getYwcs(),
+							entity.getSqdw(),
+							entity.getLxr(),
+							entity.getSqrlxdz(),
+							entity.getLxdh(),
+							entity.getCnsx(),
+							null == entity.getSlsj()? "" : sdf3.format(entity
+									.getSlsj()), 
+							entity.getBlryxm(),
+							entity.getBlrygh(), 
+							entity.getBjzt(), entity.getBjyj(),
+							null == entity.getBjsj()? "" : sdf3.format(entity
+									.getBjsj())};
+					strings.add(ss);
+					i++;
+				}
+			}
+		}
+		return strings;
+	}
 
 }

+ 1 - 0
gkaq/yjpt-java/trunk/java_src/com/jtgh/yjpt/entity/common/MemType.java

@@ -8,6 +8,7 @@ public interface MemType {
 	String TYPE_WXWPM = "wxwpm";
 	String TYPE_FRXZXK = "frxzxk";
 	String TYPE_DSJFX = "dsjfx";
+	String TYPE_SBXK = "sbxk";
 	String TYPE_LHXZ="lhxz";
 	String TYPE_AQFFCS="aqffcs";
 }

+ 152 - 0
gkaq/yjpt-java/trunk/java_src/com/jtgh/yjpt/entity/zysqbp/XksbEntity.java

@@ -0,0 +1,152 @@
+package com.jtgh.yjpt.entity.zysqbp;
+
+import java.util.Date;
+
+
+/**
+ * 危险货物港口作业申报许可
+ */
+public class XksbEntity{
+
+	/**办件号*/
+	private String bjh;
+	/**权利事项编码*/
+	private String qlsxbm;
+	/**业务处室*/
+	private String ywcs;
+	/**申请人或申请单位*/
+	private String sqdw;
+	/**联系人*/
+	private String lxr;
+	/**申请人联系地址*/
+	private String sqrlxdz;
+	/**联系电话*/
+	private String lxdh;
+	/**承诺时限(单位工作日)*/
+	private String cnsx;
+	/**受理时间(精确到时分秒)*/
+	private Date slsj;
+	/**办理人员姓名*/
+	private String blryxm;
+	/**办理人员工号*/
+	private String blrygh;
+	/**办结状态*/
+	private String bjzt;
+	/**办结意见*/
+	private String bjyj;
+	/**办结时间*/
+	private Date bjsj;	
+	public String getBjh() {
+		return bjh;
+	}
+	public void setBjh(String bjh) {
+		this.bjh = bjh;
+	}
+	public String getQlsxbm() {
+		return qlsxbm;
+	}
+	public void setQlsxbm(String qlsxbm) {
+		this.qlsxbm = qlsxbm;
+	}
+	public String getYwcs() {
+		return ywcs;
+	}
+	public void setYwcs(String ywcs) {
+		this.ywcs = ywcs;
+	}
+	public String getSqdw() {
+		return sqdw;
+	}
+	public void setSqdw(String sqdw) {
+		this.sqdw = sqdw;
+	}
+	public String getLxr() {
+		return lxr;
+	}
+	public void setLxr(String lxr) {
+		this.lxr = lxr;
+	}
+	public String getSqrlxdz() {
+		return sqrlxdz;
+	}
+	public void setSqrlxdz(String sqrlxdz) {
+		this.sqrlxdz = sqrlxdz;
+	}
+	public String getLxdh() {
+		return lxdh;
+	}
+	public void setLxdh(String lxdh) {
+		this.lxdh = lxdh;
+	}
+	public Date getSlsj() {
+		return slsj;
+	}
+	public void setSlsj(Date slsj) {
+		this.slsj = slsj;
+	}
+	public String getBlryxm() {
+		return blryxm;
+	}
+	public void setBlryxm(String blryxm) {
+		this.blryxm = blryxm;
+	}
+	public String getBlrygh() {
+		return blrygh;
+	}
+	public void setBlrygh(String blrygh) {
+		this.blrygh = blrygh;
+	}
+	public String getBjzt() {
+		return bjzt;
+	}
+	public void setBjzt(String bjzt) {
+		this.bjzt = bjzt;
+	}
+	public String getBjyj() {
+		return bjyj;
+	}
+	public void setBjyj(String bjyj) {
+		this.bjyj = bjyj;
+	}
+	public Date getBjsj() {
+		return bjsj;
+	}
+	public void setBjsj(Date bjsj) {
+		this.bjsj = bjsj;
+	}
+	public String getCnsx() {
+		return cnsx;
+	}
+	public void setCnsx(String cnsx) {
+		this.cnsx = cnsx;
+	}
+	
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+

+ 33 - 1
gkaq/yjpt-java/trunk/resources/frxzxk/frxzxk.properties

@@ -7,15 +7,47 @@ xzxdrmc-90014=\u5357\u4eac\u5e02\u6e2f\u653f\u5904
 xzxdrmc-9001401=\u5357\u4eac\u5e02\u6e2f\u653f\u5904
 xzxdrmc-9001402=\u5357\u4eac\u5e02\u6e2f\u653f\u5904
 xzxdrmc-90011=\u9547\u6c5f\u5e02\u4ea4\u901a\u8fd0\u8f93\u5c40
+xzxdrmc-9001101=\u9547\u6c5f\u5e02\u4ea4\u901a\u8fd0\u8f93\u5c40
+xzxdrmc-9001102=\u9547\u6c5f\u5e02\u4ea4\u901a\u8fd0\u8f93\u5c40
 #\u8bb8\u53ef\u673a\u5173
 xkjg-90014=\u5357\u4eac\u5e02\u4ea4\u901a\u8fd0\u8f93\u5c40
 xkjg-9001401=\u5357\u4eac\u5e02\u4ea4\u901a\u8fd0\u8f93\u5c40
 xkjg-9001402=\u5357\u4eac\u5e02\u4ea4\u901a\u8fd0\u8f93\u5c40
 xkjg-90011=\u9547\u6c5f\u5e02\u4ea4\u901a\u8fd0\u8f93\u5c40
+xkjg-9001101=\u9547\u6c5f\u5e02\u4ea4\u901a\u8fd0\u8f93\u5c40
+xkjg-9001102=\u9547\u6c5f\u5e02\u4ea4\u901a\u8fd0\u8f93\u5c40
+xkjg-90015=\u5b89\u76d1\u5904
+xkjg-9001501=\u5b89\u76d1\u5904
+xkjg-9001502=\u5b89\u76d1\u5904
+xkjg-9001503=\u5b89\u76d1\u5904
+xkjg-9001504=\u5b89\u76d1\u5904
+xkjg-9001505=\u5b89\u76d1\u5904
+xkjg-9001506=\u5b89\u76d1\u5904
+xkjg-9001507=\u5b89\u76d1\u5904
+xkjg-9001508=\u5b89\u76d1\u5904
+xkjg-9001509=\u5b89\u76d1\u5904
+xkjg-9001510=\u5b89\u76d1\u5904
 #\u884c\u653f\u8bb8\u53ef\u6743\u5229\u7f16\u7801
+xzxkqlbm-90011=JS01000-XK-2015
+xzxkqlbm-9001101=JS01000-XK-2015
+xzxkqlbm-9001102=JS01000-XK-2015
 xzxkqlbm-90014=JS01000-XK-2015
 xzxkqlbm-9001401=JS01000-XK-2015
 xzxkqlbm-9001402=JS01000-XK-2015
-xzxkqlbm-90011=JS01000-XK-2015
+xzxkqlbm-90015=JS060000GW-XK-0005
+xzxkqlbm-9001501=JS060000GW-XK-0005
+xzxkqlbm-9001502=JS060000GW-XK-0005
+xzxkqlbm-9001503=JS060000GW-XK-0005
+xzxkqlbm-9001504=JS060000GW-XK-0005
+xzxkqlbm-9001505=JS060000GW-XK-0005
+xzxkqlbm-9001506=JS060000GW-XK-0005
+xzxkqlbm-9001507=JS060000GW-XK-0005
+xzxkqlbm-9001508=JS060000GW-XK-0005
+xzxkqlbm-9001509=JS060000GW-XK-0005
+xzxkqlbm-9001510=JS060000GW-XK-0005
 #\u4fe1\u606f\u4f7f\u7528\u8303\u56f4
 xxsyfw=\u516c\u793a
+#\u627f\u8bfa\u65f6\u9650
+cnsx-90011=1
+cnsx-90014=1
+cnsx-90015=1