Bläddra i källkod

添加氢气充装数据查询接口

yangxiuhe 3 år sedan
förälder
incheckning
79b54c05f6

BIN
WebRoot/WEB-INF/classes/com/runzhixing/action/FillingDataQueryAction.class


BIN
WebRoot/WEB-INF/classes/com/runzhixing/bean/CHGFillLog.class


BIN
WebRoot/WEB-INF/classes/com/runzhixing/packageProcedure/FillingDataQueryProcedure.class


+ 721 - 718
WebRoot/WEB-INF/classes/struts.xml

@@ -1,718 +1,721 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE struts PUBLIC
-    "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
-    "http://struts.apache.org/dtds/struts-2.5.dtd">
-
-<struts>
-
-	<!--<constant name="struts.enable.DynamicMethodInvocation" value="false" 
-		/> <constant name="struts.devMode" value="false" /> <include file="example.xml"/> -->
-	<constant name="struts.enable.DynamicMethodInvocation" value="true" />
-	<!-- 为修复struts2 s2-016、s2-017漏洞,重写DefaultActionMapper -->
-	<bean type="org.apache.struts2.dispatcher.mapper.ActionMapper"
-		name="myDefaultActionMapper" class="com.runzhixing.tool.MyDefaultActionMapper" />
-	<constant name="struts.mapper.class" value="myDefaultActionMapper" />
-	<constant name="struts.custom.i18n.resources" value="global" />
-	<constant name="struts.multipart.maxSize" value="100000000" />
-
-
-	<package name="login" namespace="/" extends="struts-default"
-		strict-method-invocation="false">
-		<action name="validateLogin" class="com.runzhixing.action.LoginAction"
-			method="validateLogin">
-			<result name="success">/jsp/rzx/bgman.jsp</result>
-			<result name="fail">/jsp/fail/loginfail.jsp</result>
-		</action>
-	</package>
-	<package name="wxCert" namespace="/" extends="struts-default"
-		strict-method-invocation="false">
-		<action name="useCert" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="useCert">
-			<result name="success">
-				/wxUseCert.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/500.jsp
-			</result>
-		</action>
-		<action name="electronicsCert" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="electronicsCert">
-			<result name="success">
-				/wxElectronicsCert.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/500.jsp
-			</result>
-		</action>
-
-	</package>
-	<package name="/" namespace="/" extends="json-default"
-		strict-method-invocation="false">
-		<action name="nxlogin" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="nxlogin"></action>
-	</package>
-	<package name="wx" namespace="/" extends="json-default"
-		strict-method-invocation="false">
-		<action name="checkSignature" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="checkSignature"></action>
-		<action name="crud_single_cylinder_info" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="crud_single_cylinder_info"></action>
-		<action name="query_car_info" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="query_car_info"></action>
-		<action name="use_Cert" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="use_Cert"></action>
-		<action name="wx_Login" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="wx_Login"></action>
-		<action name="wx_register" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="wx_register"></action>
-		<action name="city_country_inifo" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="city_country_inifo"></action>
-		<action name="cert_install_Info" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="cert_install_Info"></action>
-		<action name="base_info" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="base_info"></action>
-		<action name="crud_car_info" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="crud_car_info"></action>
-		<action name="car_info_by_user" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="car_info_by_user"></action>
-		<action name="crud_cylinder_info" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="crud_cylinder_info">
-		</action>
-		<action name="cylinder_info_by_car" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="cylinder_info_by_car"></action>
-		<action name="upload_img" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="upload_img">
-			<interceptor-ref name="fileUpload">
-				<param name="allowedTypes">image/bmp,image/jpg,image/jpeg,image/png,image/gif,image/pjepg</param>
-				<param name="maximumSize">10485760</param>
-			</interceptor-ref>
-			<interceptor-ref name="defaultStack" />
-		</action>
-
-		<action name="upload_more_img" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="upload_more_img">
-			<interceptor-ref name="fileUpload">
-				<param name="allowedTypes">image/bmp,image/jpg,image/jpeg,image/png,image/gif,image/pjepg</param>
-				<param name="maximumSize">10485760</param>
-			</interceptor-ref>
-			<interceptor-ref name="defaultStack" />
-		</action>
-
-		<action name="get_car_cylinder_cert_info" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="get_car_cylinder_cert_info"></action>
-		<action name="city_Info" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="city_Info"></action>
-		<action name="clear_Cookie" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="clear_Cookie"></action>
-		<action name="getSwiperList" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="getSwiperList"></action>
-		<action name="getFunctionList" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="getFunctionList"></action>
-		<action name="lately_fill_info" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="lately_fill_info"></action>
-		<action name="getReportFormData" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="getReportFormData"></action>
-		<action name="chart1SaveAsImage" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="chart1SaveAsImage"></action>
-		<action name="generatetPDF" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="generatetPDF"></action>
-		<action name="get_cert_by_carguid" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="get_cert_by_carguid"></action>
-		<action name="remove_img" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="remove_img"></action>
-		<action name="bind_existed_car_cylinder" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="bind_existed_car_cylinder"></action>
-		<action name="unbind_car" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="unbind_car"></action>
-
-	</package>
-
-	<package name="nx" namespace="/" extends="json-default" strict-method-invocation="false">
-		<action name="city_country_inifo" class="com.runzhixing.action.NxAppCarAction" method="city_country_inifo"></action>
-		<action name="cert_install_Info" class="com.runzhixing.action.NxAppCarAction" method="cert_install_Info"></action>
-		<action name="crud_car_info" class="com.runzhixing.action.NxAppCarAction" method="crud_car_info"></action>
-		<action name="upload_img" class="com.runzhixing.action.NxAppCarAction" method="upload_img">
-			<interceptor-ref name="fileUpload">
-				<param name="allowedTypes">image/bmp,image/jpg,image/jpeg,image/png,image/gif,image/pjepg</param>
-				<param name="maximumSize">10485760</param>
-			</interceptor-ref>
-			<interceptor-ref name="defaultStack" />
-		</action>
-		<action name="remove_img" class="com.runzhixing.action.NxAppCarAction" method="remove_img"></action>
-		<action name="get_car_cylinder_cert_info" class="com.runzhixing.action.NxAppCarAction" method="get_car_cylinder_cert_info"></action>
-		<action name="crud_single_cylinder_info" class="com.runzhixing.action.NxAppCarAction" method="crud_single_cylinder_info"></action>
-		
-	</package>
-
-
-	<!-- <include file="struts-login.xml"/> -->
-	<package name="ajax" namespace="/" extends="json-default"
-		strict-method-invocation="false">
-		
-		
-		<action name="getStation2" class="com.runzhixing.action.TodayModifyAction"
-			method="getStation2"></action>
-		<action name="updateMachine" class="com.runzhixing.action.TodayModifyAction"
-			method="updateMachine"></action>
-		<action name="updateFillCheckOper" class="com.runzhixing.action.TodayModifyAction"
-			method="updateFillCheckOper"></action>
-		<action name="updateFillCheck2" class="com.runzhixing.action.TodayModifyAction"
-			method="updateFillCheck2"></action>
-		<action name="getRegister" class="com.runzhixing.action.AlterPasswordAction"
-			method="getRegister"></action>
-		<action name="examineAll" class="com.runzhixing.action.AlterPasswordAction"
-			method="examineAll"></action>
-		<action name="getInstallLocInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getInstallLocInfo"></action>
-		<action name="getInstallTypeInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getInstallTypeInfo"></action>
-		<action name="getProductInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getProductInfo"></action>
-		<action name="CRUDCarInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="CRUDCarInfo"></action>
-		<action name="getCarInfo_1" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCarInfo_1"></action>
-		<action name="getCarTypeInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCarTypeInfo"></action>
-		<action name="getCarPlateColorInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCarPlateColorInfo"></action>
-		<action name="getUnitInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getUnitInfo"></action>
-		<action name="getCountryInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCountryInfo"></action>
-		<action name="getCityInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCityInfo"></action>
-		<action name="getAppTypeInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getAppTypeInfo"></action>
-		<action name="insertWXID" class="com.runzhixing.action.AlterPasswordAction"
-			method="insertWXID"></action>
-		<action name="updateNickName" class="com.runzhixing.action.AlterPasswordAction"
-			method="updateNickName"></action>
-
-		<action name="latelyFill" class="com.runzhixing.action.AlterPasswordAction"
-			method="latelyFill"></action>
-		<action name="getPreCarNo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getPreCarNo"></action>
-		<action name="register" class="com.runzhixing.action.AlterPasswordAction"
-			method="register"></action>
-		<action name="examineCylinder" class="com.runzhixing.action.AlterPasswordAction"
-			method="examineCylinder"></action>
-		<action name="replaceRegNo" class="com.runzhixing.action.AlterPasswordAction"
-			method="replaceRegNo"></action>
-		<action name="examineSingleCylinder" class="com.runzhixing.action.AlterPasswordAction"
-			method="examineSingleCylinder"></action>
-		<action name="examineCar" class="com.runzhixing.action.AlterPasswordAction"
-			method="examineCar"></action>
-		<action name="uploadCert" class="com.runzhixing.action.AlterPasswordAction"
-			method="uploadCert">
-			<interceptor-ref name="fileUpload">
-				<param name="allowedTypes">image/bmp,image/jpg,image/jpeg,image/png,image/gif,image/pjepg</param>
-				<!-- <param name="maximumSize">5242880*2</param> -->
-				<param name="maximumSize">15242880</param>
-			</interceptor-ref>
-			<interceptor-ref name="defaultStack" />
-		</action>
-		<action name="getCylinderProduct" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCylinderProduct"></action>
-		<action name="getCylinderInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCylinderInfo"></action>
-		<action name="getCarInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCarInfo"></action>
-		<action name="deleteCarCylinder" class="com.runzhixing.action.AlterPasswordAction"
-			method="deleteCarCylinder"></action>
-		<action name="getcarcylinderbyuser" class="com.runzhixing.action.AlterPasswordAction"
-			method="getcarcylinderbyuser"></action>
-		<action name="insertCylinderInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="insertCylinderInfo"></action>
-		<action name="insertCarInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="insertCarInfo"></action>
-		<action name="insertCarCylinder" class="com.runzhixing.action.AlterPasswordAction"
-			method="insertCarCylinder">
-
-
-		</action>
-		<action name="getRedirect" class="com.runzhixing.action.AlterPasswordAction"
-			method="getRedirect"></action>
-		<action name="getPhoneCode" class="com.runzhixing.action.AlterPasswordAction"
-			method="getPhoneCode"></action>
-		<action name="getVCode" class="com.runzhixing.action.AlterPasswordAction"
-			method="getVCode"></action>
-		<action name="testVCode" class="com.runzhixing.action.AlterPasswordAction"
-			method="testVCode"></action>
-		<action name="getCity" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCity"></action>
-		<action name="getCity123" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCity123"></action>
-		<action name="getCounty123" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCounty123"></action>
-		<action name="getUnit123" class="com.runzhixing.action.AlterPasswordAction"
-			method="getUnit123"></action>
-		<action name="getCountry" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCountry"></action>
-		<action name="getUnit" class="com.runzhixing.action.AlterPasswordAction"
-			method="getUnit"></action>
-		<action name="getCarCylinderInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCarCylinderInfo"></action>
-
-		<action name="modifyWorkPersonInfoCheck"
-			class="com.runzhixing.action.ModifyWorkPersonInfoCheckAction" method="modifyWorkPersonInfoCheck"></action>
-		<action name="modifyStationInfoCheck"
-			class="com.runzhixing.action.ModifyStationInfoCheckAction" method="modifyStationInfoCheck"></action>
-		<action name="testingStationInfoCheck"
-			class="com.runzhixing.action.TestingStationInfoCheckAction" method="testingStationInfoCheck"></action>
-		<action name="modifyCompanyform" class="com.runzhixing.action.ModifyCompanyformAction"
-			method="modifyCompanyform"></action>
-		<action name="todayModify" class="com.runzhixing.action.TodayModifyAction"
-			method="todayModify"></action>
-		<action name="todayModify123" class="com.runzhixing.action.TodayModifyAction"
-			method="todayModify123"></action>
-		<action name="testingworkPersonInfo" class="com.runzhixing.action.WorkPersonInfoAction"
-			method="testingworkPersonInfo"></action>
-		<action name="TagdataStatis" class="com.runzhixing.action.TagdataStatisAction"
-			method="TagdataStatis"></action>
-		<action name="tagIssuingfrom" class="com.runzhixing.action.TagIssuingfromAction"
-			method="tagIssuingfrom"></action>
-		<action name="tagIssuingStatistics" class="com.runzhixing.action.TagIssuingfromAction"
-			method="tagIssuingStatistics"></action>
-		<action name="checkSeedataform" class="com.runzhixing.action.CheckSeedataQueryAction"
-			method="checkSeedataQuery"></action>
-		<action name="workPersonInfo" class="com.runzhixing.action.WorkPersonInfoAction"
-			method="workPersonInfo"></action>
-		<action name="fillingMachineInfo" class="com.runzhixing.action.FillingMachineInfoAction"
-			method="fillingMachineInfo"></action>
-		<action name="checkStationInfo" class="com.runzhixing.action.CheckStationInfoAction"
-			method="checkStationInfo"></action>
-		<action name="kaoqinDateStatist" class="com.runzhixing.action.KaoqinDateStatistAction"
-			method="kaoqinDateStatist"></action>
-
-		<action name="CNGQualityInto" class="com.runzhixing.action.CNGQualityIntoAction"
-			method="CNGQualityInto"></action>
-		<action name="specialInto" class="com.runzhixing.action.SpecialIntoAction"
-			method="specialInto"></action>
-		<action name="nonlocalQuery" class="com.runzhixing.action.NonlocalQueryAction"
-			method="nonlocalQuery"></action>
-		<action name="kaoqingQuery" class="com.runzhixing.action.KaoqingQueryAction"
-			method="kaoqingQuery"></action>
-		<action name="releaseAnnformform" class="com.runzhixing.action.CheckAnnounformmentAction"
-			method="releaseAnn"></action>
-		<action name="checkAnnounformment" class="com.runzhixing.action.CheckAnnounformmentAction"
-			method="checkAnnoun"></action>
-		<!-- 修改密码 -->
-		<action name="alterpassword" class="com.runzhixing.action.AlterPasswordAction"
-			method="alterpassword"></action>
-
-		<action name="infoview" class="com.runzhixing.action.InfoviewAction"
-			method="infoview"></action>
-		<!-- 查看网络情况 -->
-		<action name="getCNGStationTranInfoList" class="com.runzhixing.action.CNGStationTranInfoAction"
-			method="getCNGStationTranInfoList"></action>
-		<!-- 监察人员管理 -->
-		<action name="Supervisormanagement" class="com.runzhixing.action.SupervisormanagementAction"
-			method="supervisormanagement"></action>
-		<!-- 场所管理 -->
-		<action name="Placemanagement" class="com.runzhixing.action.PlacemanagementAction"
-			method="placemanagement"></action>
-		<!-- 得到原先的告警参数 -->
-		<action name="getoldwarningparam" class="com.runzhixing.action.WarningparasetAction"
-			method="getoldwarningparam"></action>
-		<!-- 设置新的告警参数 -->
-		<action name="warningparaset" class="com.runzhixing.action.WarningparasetAction"
-			method="warningparaset"></action>
-		<!-- 加气机运行状态 -->
-		<action name="aeratedmachinerunningstate"
-			class="com.runzhixing.action.AeratedmachinerunningstateAction"
-			method="aeratedmachinerunningstate"></action>
-		<!-- 人员巡查情况查询 -->
-		<action name="personnelInspection" class="com.runzhixing.action.PersonnelInspectionAction"
-			method="personnelInspection"></action>
-		<!-- 人员巡查情况查询 -->
-		<action name="personnelInspection1" class="com.runzhixing.action.PersonnelInspectionAction"
-			method="personnelInspection1"></action>
-		<!-- 巡查数据查询 -->
-		<action name="inspectiondataQuery" class="com.runzhixing.action.InspectiondataQueryAction"
-			method="inspectiondataQuery"></action>
-
-		<!-- 特种设备数据查询 -->
-		<action name="specialequipmentdataQuery"
-			class="com.runzhixing.action.SpecialequipmentdataQueryAction" method="specialequipmentdataQuery"></action>
-		<!-- 气瓶数据查询 -->
-		<action name="cylinderDataQuery" class="com.runzhixing.action.CylinderDataQueryAction"
-			method="cylinderDataQuery11"></action>
-		<action name="cylinderDataQuery12" class="com.runzhixing.action.CylinderDataQueryAction"
-			method="cylinderDataQuery12"></action>
-		<action name="cylinderDataQuery13" class="com.runzhixing.action.CylinderDataQueryAction"
-			method="cylinderDataQuery13"></action>
-		<action name="cylinderDataQuery14" class="com.runzhixing.action.CylinderDataQueryAction"
-			method="cylinderDataQuery14"></action>
-		<!-- 气瓶数据查询 -->
-		<action name="cylinderDataQuery1" class="com.runzhixing.action.CylinderDataQueryAction"
-			method="cylinderDataQuery1"></action>
-		<!-- 气瓶将要检测数量查询 -->
-		<action name="cylinderDataQueryagain"
-			class="com.runzhixing.action.CylinderDataQueryagainAction" method="cylinderDataQueryagain"></action>
-		<!-- 当天检验情况 -->
-		<action name="todattestingdataQuery" class="com.runzhixing.action.TestingdataQueryAction"
-			method="todaytestingdataQuery"></action>
-		<!-- 检验数据查询 -->
-		<action name="testingdataQuery" class="com.runzhixing.action.TestingdataQueryAction"
-			method="testingdataQuery"></action>
-		<!-- 车辆数据查询 -->
-		<action name="carsDataQuery" class="com.runzhixing.action.CarsDataQueryAction"
-			method="carsDataQuery"></action>
-			<!-- 车辆数据查询 -->
-		<action name="getCarsDataQuery" class="com.runzhixing.action.CarsDataQueryAction"
-			method="getCarsDataQuery"></action>
-		<!-- 车辆数据查询 -->
-		<action name="carsDataQueryagain" class="com.runzhixing.action.CarsDataQueryAction"
-			method="carsDataQueryagain"></action>
-		<!-- 黑名单查询 -->
-		<action name="blackListQuery" class="com.runzhixing.action.BlackListQueryAction"
-			method="blackListQuery"></action>
-		<!-- CNG质量查询 -->
-		<action name="CNGQualityQuery" class="com.runzhixing.action.CNGQualityQueryAction"
-			method="CNGQualityQuery"></action>
-		<!-- 充装数据查询 -->
-		<action name="fillingDataQuery" class="com.runzhixing.action.FillingDataQueryAction"
-			method="fillingDataQuery"></action>
-		<!-- 改装数据查询 -->
-		<action name="modifiedDataQuery" class="com.runzhixing.action.ModifiedDataQueryAction"
-			method="modifiedDataQuery"></action>
-
-
-		<!-- 系统告警日志 -->
-		<action name="systemWarninglog" class="com.runzhixing.action.SystemWarninglogAction"
-			method="systemWarninglog"></action>
-
-
-
-		<!-- 改装数据查询 -->
-		<action name="province" class="com.runzhixing.action.ProvinceAction"
-			method="province"></action>
-
-
-		<!-- 改装数据查询 -->
-		<action name="AdvanceSystemwarninglog" class="com.runzhixing.action.SystemWarninglogAction"
-			method="AdvanceSystemwarninglog">
-			<result name="success">/jsp/rzx/log/Systemwarninglog.jsp</result>
-		</action>
-
-		<action name="makeChart" class="com.runzhixing.action.Test"
-			method="makeChart">
-		</action>
-
-		<action name="hiddenspeStation" class="com.runzhixing.action.SpeStationAction"
-			method="speStationQuery">
-		</action>
-		<action name="hiddenspeStation1" class="com.runzhixing.action.SpeStationAction"
-			method="speStationQuery1">
-		</action>
-		<action name="hiddenspeStation2" class="com.runzhixing.action.SpeStationAction"
-			method="speStationQuery2">
-		</action>
-
-		<action name="hiddencheckStation" class="com.runzhixing.action.CheckStationAction"
-			method="checkStationQuery">
-		</action>
-		<action name="hiddenoperatorNo" class="com.runzhixing.action.JQJStationAction"
-			method="operatorNoQuery">
-		</action>
-		<action name="hiddenjqj" class="com.runzhixing.action.JQJStationAction"
-			method="jqjQuery">
-		</action>
-		<action name="hiddenCNGStation" class="com.runzhixing.action.CNGStationAction"
-			method="cngstationQuery">
-		</action>
-		<action name="hiddenStation" class="com.runzhixing.action.StationAction"
-			method="stationQuery">
-		</action>
-		<action name="hiddenUnit" class="com.runzhixing.action.UnitAction"
-			method="unitQuery">
-		</action>
-		<action name="hiddenCity" class="com.runzhixing.action.HiddenCityAction"
-			method="hiddenCity">
-		</action>
-		<action name="hiddenjiangaun" class="com.runzhixing.action.HiddenCityAction"
-			method="hiddenjiangaun">
-		</action>
-		<action name="hiddenxuncha" class="com.runzhixing.action.HiddenCityAction"
-			method="hiddenxuncha">
-		</action>
-		<action name="hiddenCountry" class="com.runzhixing.action.HiddenCityAction"
-			method="hiddenCountry">
-		</action>
-		<action name="getstationdetail" class="com.runzhixing.action.HiddenCityAction"
-			method="getstationdetail">
-		</action>
-		<action name="getstationdetailreset" class="com.runzhixing.action.HiddenCityAction"
-			method="getstationdetailreset">
-		</action>
-
-		<action name="operatorDetail" class="com.runzhixing.action.OperatorDetailAction"
-			method="operatorDetail">
-		</action>
-		<action name="machineDetail" class="com.runzhixing.action.MachineDetailActionagain"
-			method="machineDetailAgain">
-		</action>
-		<!-- 数据统计 -->
-		<!-- 充装数据统计 -->
-		<action name="FillingDataStatistics" class="com.runzhixing.action.FillingDataStatisticAction"
-			method="fillingDataStatistic">
-		</action>
-
-		<!-- 气瓶数据统计 -->
-		<action name="CylinderDataStatistics"
-			class="com.runzhixing.action.CylinderDataStatisticsAction" method="cylinderDataStatistics">
-		</action>
-		<!-- 车辆数据统计 -->
-		<action name="CarDataStatistics" class="com.runzhixing.action.CarDataStatisticsAction"
-			method="CarDataStatistics">
-		</action>
-		<!-- 车辆气瓶数量统计 -->
-		<action name="CarCyNumStatistics" class="com.runzhixing.action.CarDataStatisticsAction"
-			method="CarCyNumStatistics">
-		</action>
-		<action name="relogin" class="com.runzhixing.action.MachineDetailAction"
-			method="relogin">
-			<result name="success">
-				/jsp/login/loginType.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/500.jsp
-			</result>
-		</action>
-		<!-- 气瓶追踪 -->
-		<action name="cylinderFollow" class="com.runzhixing.action.CylinderFollowAction"
-			method="ajaxCylinderFollow">
-		</action>
-
-
-		<action name="downloadExcel" class="com.runzhixing.action.DownloadExcelAction"
-			method="downloadExcel">
-		</action>
-		<action name="checkValidity" class="com.runzhixing.action.CylinderFollowAction"
-			method="CheckValidity1">
-		</action>
-
-		<action name="exportTestingData" class="com.runzhixing.action.ExportData"
-			method="exportTestingData">
-		</action>
-		<action name="spdataList" class="com.runzhixing.action.ExportData"
-			method="spdataList">
-		</action>
-	</package>
-
-	<!-- Add packages here -->
-	<package name="default" namespace="/" extends="struts-default"
-		strict-method-invocation="false">
-		
-		
-		
-		<action name="safeExit" class="com.runzhixing.action.AlterPasswordAction"
-			method="safeExit">
-			<result name="success">
-				/jsp/login/loginre.jsp
-			</result>
-			<result name="error">
-				/jsp/login/loginre.jsp
-			</result>
-		</action>
-		<action name="wxLogin" class="com.runzhixing.action.AlterPasswordAction"
-			method="wxLogin">
-			<result name="success">
-				/jsp/applyRegister.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/500.jsp
-			</result>
-		</action>
-		<action name="getValveHistory" class="com.runzhixing.action.MachineDetailAction"
-			method="getValveHistory">
-			<result name="success">
-				/jsp/rzx/dataQuery/ValveHistory.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-		<action name="getLatelyFill" class="com.runzhixing.action.MachineDetailAction"
-			method="getLatelyFill">
-			<result name="success">
-				/jsp/rzx/dataQuery/LatelyFill.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-		
-		<action name="getQualificationPicture" class="com.runzhixing.action.MachineDetailAction"
-			method="getQualificationPicture">
-			<result name="success">
-				/jsp/rzx/dataQuery/CylinderImg.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-
-		<action name="loginCng" class="com.runzhixing.action.CylinderFollowAction"
-			method="loginCng">
-			<result name="success">
-				/jsp/rzx/dataQuery/CylinderFollow.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-
-		<action name="downloadExcel" class="com.runzhixing.action.DownloadExcelAction"
-			method="downloadExcel">
-		</action>
-		<action name="CylinderFollow" class="com.runzhixing.action.CylinderFollowAction"
-			method="cylinderFollow">
-			<result name="success">
-				/jsp/rzx/dataQuery/CylinderFollow.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-
-
-		<action name="machineDetail" class="com.runzhixing.action.MachineDetailAction"
-			method="machineDetail">
-			<result name="success">
-				/jsp/rzx/filling/CylinderdataQuery.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-
-
-
-		<action name="CheckValidity" class="com.runzhixing.action.CylinderFollowAction"
-			method="CheckValidity">
-			<result name="success">
-				/jsp/rzx/dataQuery/CheckValidity.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-
-
-		<action name="machineDetailfill" class="com.runzhixing.action.MachineDetailAction"
-			method="machineDetail1">
-			<result name="success">
-				/jsp/rzx/filling/CylinderdataQuery.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-		<action name="carpublic" class="com.runzhixing.action.MachineDetailAction"
-			method="carpublic">
-			<result name="success">
-				/jsp/carpublic.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-		<action name="carAudit" class="com.runzhixing.action.CarAuditAction"
-			method="carAudit">
-			<result name="success">
-				/jsp/rzx/dataQuery/carDuit.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-		<action name="getCarChange" class="com.runzhixing.action.CarAuditAction"
-			method="getCarChange">
-			<result name="success">
-				/jsp/rzx/dataQuery/CarChange.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-		<action name="carAuditdo" class="com.runzhixing.action.CarAuditAction"
-			method="carAuditdo">
-			<result name="success">
-				/jsp/rzx/dataQuery/carDuit.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-
-		<action name="CylinderMonitorListdo" class="com.runzhixing.action.CylinderGuidAction"
-			method="CylinderMonitorListdo">
-			<result name="success">
-				/jsp/rzx/dataQuery/CylinderMonitorListdo.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-		<action name="tagQuerydo" class="com.runzhixing.action.CylinderGuidAction"
-			method="tagQuerydo">
-			<result name="success">
-				/jsp/rzx/dataQuery/tagQuerydo.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-		<action name="cylinderGuiddo" class="com.runzhixing.action.CylinderGuidAction"
-			method="cylinderGuiddo">
-			<result name="success">
-				/jsp/rzx/dataQuery/carCylinderGuiddo.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-		<action name="cylinderGuid" class="com.runzhixing.action.CylinderGuidAction"
-			method="cylinderGuid">
-			<result name="success">
-				/jsp/rzx/dataQuery/carCylinderGuid.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-
-		<action name="relogin" class="com.runzhixing.action.MachineDetailAction"
-			method="relogin">
-			<result name="success">
-				/jsp/login/loginType.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/500.jsp
-			</result>
-		</action>
-		<action name="Detailbyid" class="com.runzhixing.action.CheckAnnounformmentAction"
-			method="detailbyID">
-			<result name="success">
-				/jsp/rzx/infoMan/detailbyid.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-
-		<action name="safeexit" class="com.runzhixing.action.SafeexitAction"
-			method="safeexit">
-			<result name="success">
-				/jsp/login/loginType.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-
-	</package>
-
-</struts>
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE struts PUBLIC
+    "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
+    "http://struts.apache.org/dtds/struts-2.5.dtd">
+
+<struts>
+
+	<!--<constant name="struts.enable.DynamicMethodInvocation" value="false" 
+		/> <constant name="struts.devMode" value="false" /> <include file="example.xml"/> -->
+	<constant name="struts.enable.DynamicMethodInvocation" value="true" />
+	<!-- 为修复struts2 s2-016、s2-017漏洞,重写DefaultActionMapper -->
+	<bean type="org.apache.struts2.dispatcher.mapper.ActionMapper"
+		name="myDefaultActionMapper" class="com.runzhixing.tool.MyDefaultActionMapper" />
+	<constant name="struts.mapper.class" value="myDefaultActionMapper" />
+	<constant name="struts.custom.i18n.resources" value="global" />
+	<constant name="struts.multipart.maxSize" value="100000000" />
+
+
+	<package name="login" namespace="/" extends="struts-default"
+		strict-method-invocation="false">
+		<action name="validateLogin" class="com.runzhixing.action.LoginAction"
+			method="validateLogin">
+			<result name="success">/jsp/rzx/bgman.jsp</result>
+			<result name="fail">/jsp/fail/loginfail.jsp</result>
+		</action>
+	</package>
+	<package name="wxCert" namespace="/" extends="struts-default"
+		strict-method-invocation="false">
+		<action name="useCert" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="useCert">
+			<result name="success">
+				/wxUseCert.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/500.jsp
+			</result>
+		</action>
+		<action name="electronicsCert" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="electronicsCert">
+			<result name="success">
+				/wxElectronicsCert.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/500.jsp
+			</result>
+		</action>
+
+	</package>
+	<package name="/" namespace="/" extends="json-default"
+		strict-method-invocation="false">
+		<action name="nxlogin" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="nxlogin"></action>
+	</package>
+	<package name="wx" namespace="/" extends="json-default"
+		strict-method-invocation="false">
+		<action name="checkSignature" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="checkSignature"></action>
+		<action name="crud_single_cylinder_info" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="crud_single_cylinder_info"></action>
+		<action name="query_car_info" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="query_car_info"></action>
+		<action name="use_Cert" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="use_Cert"></action>
+		<action name="wx_Login" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="wx_Login"></action>
+		<action name="wx_register" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="wx_register"></action>
+		<action name="city_country_inifo" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="city_country_inifo"></action>
+		<action name="cert_install_Info" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="cert_install_Info"></action>
+		<action name="base_info" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="base_info"></action>
+		<action name="crud_car_info" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="crud_car_info"></action>
+		<action name="car_info_by_user" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="car_info_by_user"></action>
+		<action name="crud_cylinder_info" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="crud_cylinder_info">
+		</action>
+		<action name="cylinder_info_by_car" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="cylinder_info_by_car"></action>
+		<action name="upload_img" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="upload_img">
+			<interceptor-ref name="fileUpload">
+				<param name="allowedTypes">image/bmp,image/jpg,image/jpeg,image/png,image/gif,image/pjepg</param>
+				<param name="maximumSize">10485760</param>
+			</interceptor-ref>
+			<interceptor-ref name="defaultStack" />
+		</action>
+
+		<action name="upload_more_img" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="upload_more_img">
+			<interceptor-ref name="fileUpload">
+				<param name="allowedTypes">image/bmp,image/jpg,image/jpeg,image/png,image/gif,image/pjepg</param>
+				<param name="maximumSize">10485760</param>
+			</interceptor-ref>
+			<interceptor-ref name="defaultStack" />
+		</action>
+
+		<action name="get_car_cylinder_cert_info" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="get_car_cylinder_cert_info"></action>
+		<action name="city_Info" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="city_Info"></action>
+		<action name="clear_Cookie" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="clear_Cookie"></action>
+		<action name="getSwiperList" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="getSwiperList"></action>
+		<action name="getFunctionList" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="getFunctionList"></action>
+		<action name="lately_fill_info" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="lately_fill_info"></action>
+		<action name="getReportFormData" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="getReportFormData"></action>
+		<action name="chart1SaveAsImage" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="chart1SaveAsImage"></action>
+		<action name="generatetPDF" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="generatetPDF"></action>
+		<action name="get_cert_by_carguid" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="get_cert_by_carguid"></action>
+		<action name="remove_img" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="remove_img"></action>
+		<action name="bind_existed_car_cylinder" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="bind_existed_car_cylinder"></action>
+		<action name="unbind_car" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="unbind_car"></action>
+
+	</package>
+
+	<package name="nx" namespace="/" extends="json-default" strict-method-invocation="false">
+		<action name="city_country_inifo" class="com.runzhixing.action.NxAppCarAction" method="city_country_inifo"></action>
+		<action name="cert_install_Info" class="com.runzhixing.action.NxAppCarAction" method="cert_install_Info"></action>
+		<action name="crud_car_info" class="com.runzhixing.action.NxAppCarAction" method="crud_car_info"></action>
+		<action name="upload_img" class="com.runzhixing.action.NxAppCarAction" method="upload_img">
+			<interceptor-ref name="fileUpload">
+				<param name="allowedTypes">image/bmp,image/jpg,image/jpeg,image/png,image/gif,image/pjepg</param>
+				<param name="maximumSize">10485760</param>
+			</interceptor-ref>
+			<interceptor-ref name="defaultStack" />
+		</action>
+		<action name="remove_img" class="com.runzhixing.action.NxAppCarAction" method="remove_img"></action>
+		<action name="get_car_cylinder_cert_info" class="com.runzhixing.action.NxAppCarAction" method="get_car_cylinder_cert_info"></action>
+		<action name="crud_single_cylinder_info" class="com.runzhixing.action.NxAppCarAction" method="crud_single_cylinder_info"></action>
+		
+	</package>
+
+
+	<!-- <include file="struts-login.xml"/> -->
+	<package name="ajax" namespace="/" extends="json-default"
+		strict-method-invocation="false">
+		
+		
+		<action name="getStation2" class="com.runzhixing.action.TodayModifyAction"
+			method="getStation2"></action>
+		<action name="updateMachine" class="com.runzhixing.action.TodayModifyAction"
+			method="updateMachine"></action>
+		<action name="updateFillCheckOper" class="com.runzhixing.action.TodayModifyAction"
+			method="updateFillCheckOper"></action>
+		<action name="updateFillCheck2" class="com.runzhixing.action.TodayModifyAction"
+			method="updateFillCheck2"></action>
+		<action name="getRegister" class="com.runzhixing.action.AlterPasswordAction"
+			method="getRegister"></action>
+		<action name="examineAll" class="com.runzhixing.action.AlterPasswordAction"
+			method="examineAll"></action>
+		<action name="getInstallLocInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getInstallLocInfo"></action>
+		<action name="getInstallTypeInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getInstallTypeInfo"></action>
+		<action name="getProductInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getProductInfo"></action>
+		<action name="CRUDCarInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="CRUDCarInfo"></action>
+		<action name="getCarInfo_1" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCarInfo_1"></action>
+		<action name="getCarTypeInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCarTypeInfo"></action>
+		<action name="getCarPlateColorInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCarPlateColorInfo"></action>
+		<action name="getUnitInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getUnitInfo"></action>
+		<action name="getCountryInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCountryInfo"></action>
+		<action name="getCityInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCityInfo"></action>
+		<action name="getAppTypeInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getAppTypeInfo"></action>
+		<action name="insertWXID" class="com.runzhixing.action.AlterPasswordAction"
+			method="insertWXID"></action>
+		<action name="updateNickName" class="com.runzhixing.action.AlterPasswordAction"
+			method="updateNickName"></action>
+
+		<action name="latelyFill" class="com.runzhixing.action.AlterPasswordAction"
+			method="latelyFill"></action>
+		<action name="getPreCarNo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getPreCarNo"></action>
+		<action name="register" class="com.runzhixing.action.AlterPasswordAction"
+			method="register"></action>
+		<action name="examineCylinder" class="com.runzhixing.action.AlterPasswordAction"
+			method="examineCylinder"></action>
+		<action name="replaceRegNo" class="com.runzhixing.action.AlterPasswordAction"
+			method="replaceRegNo"></action>
+		<action name="examineSingleCylinder" class="com.runzhixing.action.AlterPasswordAction"
+			method="examineSingleCylinder"></action>
+		<action name="examineCar" class="com.runzhixing.action.AlterPasswordAction"
+			method="examineCar"></action>
+		<action name="uploadCert" class="com.runzhixing.action.AlterPasswordAction"
+			method="uploadCert">
+			<interceptor-ref name="fileUpload">
+				<param name="allowedTypes">image/bmp,image/jpg,image/jpeg,image/png,image/gif,image/pjepg</param>
+				<!-- <param name="maximumSize">5242880*2</param> -->
+				<param name="maximumSize">15242880</param>
+			</interceptor-ref>
+			<interceptor-ref name="defaultStack" />
+		</action>
+		<action name="getCylinderProduct" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCylinderProduct"></action>
+		<action name="getCylinderInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCylinderInfo"></action>
+		<action name="getCarInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCarInfo"></action>
+		<action name="deleteCarCylinder" class="com.runzhixing.action.AlterPasswordAction"
+			method="deleteCarCylinder"></action>
+		<action name="getcarcylinderbyuser" class="com.runzhixing.action.AlterPasswordAction"
+			method="getcarcylinderbyuser"></action>
+		<action name="insertCylinderInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="insertCylinderInfo"></action>
+		<action name="insertCarInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="insertCarInfo"></action>
+		<action name="insertCarCylinder" class="com.runzhixing.action.AlterPasswordAction"
+			method="insertCarCylinder">
+
+
+		</action>
+		<action name="getRedirect" class="com.runzhixing.action.AlterPasswordAction"
+			method="getRedirect"></action>
+		<action name="getPhoneCode" class="com.runzhixing.action.AlterPasswordAction"
+			method="getPhoneCode"></action>
+		<action name="getVCode" class="com.runzhixing.action.AlterPasswordAction"
+			method="getVCode"></action>
+		<action name="testVCode" class="com.runzhixing.action.AlterPasswordAction"
+			method="testVCode"></action>
+		<action name="getCity" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCity"></action>
+		<action name="getCity123" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCity123"></action>
+		<action name="getCounty123" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCounty123"></action>
+		<action name="getUnit123" class="com.runzhixing.action.AlterPasswordAction"
+			method="getUnit123"></action>
+		<action name="getCountry" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCountry"></action>
+		<action name="getUnit" class="com.runzhixing.action.AlterPasswordAction"
+			method="getUnit"></action>
+		<action name="getCarCylinderInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCarCylinderInfo"></action>
+
+		<action name="modifyWorkPersonInfoCheck"
+			class="com.runzhixing.action.ModifyWorkPersonInfoCheckAction" method="modifyWorkPersonInfoCheck"></action>
+		<action name="modifyStationInfoCheck"
+			class="com.runzhixing.action.ModifyStationInfoCheckAction" method="modifyStationInfoCheck"></action>
+		<action name="testingStationInfoCheck"
+			class="com.runzhixing.action.TestingStationInfoCheckAction" method="testingStationInfoCheck"></action>
+		<action name="modifyCompanyform" class="com.runzhixing.action.ModifyCompanyformAction"
+			method="modifyCompanyform"></action>
+		<action name="todayModify" class="com.runzhixing.action.TodayModifyAction"
+			method="todayModify"></action>
+		<action name="todayModify123" class="com.runzhixing.action.TodayModifyAction"
+			method="todayModify123"></action>
+		<action name="testingworkPersonInfo" class="com.runzhixing.action.WorkPersonInfoAction"
+			method="testingworkPersonInfo"></action>
+		<action name="TagdataStatis" class="com.runzhixing.action.TagdataStatisAction"
+			method="TagdataStatis"></action>
+		<action name="tagIssuingfrom" class="com.runzhixing.action.TagIssuingfromAction"
+			method="tagIssuingfrom"></action>
+		<action name="tagIssuingStatistics" class="com.runzhixing.action.TagIssuingfromAction"
+			method="tagIssuingStatistics"></action>
+		<action name="checkSeedataform" class="com.runzhixing.action.CheckSeedataQueryAction"
+			method="checkSeedataQuery"></action>
+		<action name="workPersonInfo" class="com.runzhixing.action.WorkPersonInfoAction"
+			method="workPersonInfo"></action>
+		<action name="fillingMachineInfo" class="com.runzhixing.action.FillingMachineInfoAction"
+			method="fillingMachineInfo"></action>
+		<action name="checkStationInfo" class="com.runzhixing.action.CheckStationInfoAction"
+			method="checkStationInfo"></action>
+		<action name="kaoqinDateStatist" class="com.runzhixing.action.KaoqinDateStatistAction"
+			method="kaoqinDateStatist"></action>
+
+		<action name="CNGQualityInto" class="com.runzhixing.action.CNGQualityIntoAction"
+			method="CNGQualityInto"></action>
+		<action name="specialInto" class="com.runzhixing.action.SpecialIntoAction"
+			method="specialInto"></action>
+		<action name="nonlocalQuery" class="com.runzhixing.action.NonlocalQueryAction"
+			method="nonlocalQuery"></action>
+		<action name="kaoqingQuery" class="com.runzhixing.action.KaoqingQueryAction"
+			method="kaoqingQuery"></action>
+		<action name="releaseAnnformform" class="com.runzhixing.action.CheckAnnounformmentAction"
+			method="releaseAnn"></action>
+		<action name="checkAnnounformment" class="com.runzhixing.action.CheckAnnounformmentAction"
+			method="checkAnnoun"></action>
+		<!-- 修改密码 -->
+		<action name="alterpassword" class="com.runzhixing.action.AlterPasswordAction"
+			method="alterpassword"></action>
+
+		<action name="infoview" class="com.runzhixing.action.InfoviewAction"
+			method="infoview"></action>
+		<!-- 查看网络情况 -->
+		<action name="getCNGStationTranInfoList" class="com.runzhixing.action.CNGStationTranInfoAction"
+			method="getCNGStationTranInfoList"></action>
+		<!-- 监察人员管理 -->
+		<action name="Supervisormanagement" class="com.runzhixing.action.SupervisormanagementAction"
+			method="supervisormanagement"></action>
+		<!-- 场所管理 -->
+		<action name="Placemanagement" class="com.runzhixing.action.PlacemanagementAction"
+			method="placemanagement"></action>
+		<!-- 得到原先的告警参数 -->
+		<action name="getoldwarningparam" class="com.runzhixing.action.WarningparasetAction"
+			method="getoldwarningparam"></action>
+		<!-- 设置新的告警参数 -->
+		<action name="warningparaset" class="com.runzhixing.action.WarningparasetAction"
+			method="warningparaset"></action>
+		<!-- 加气机运行状态 -->
+		<action name="aeratedmachinerunningstate"
+			class="com.runzhixing.action.AeratedmachinerunningstateAction"
+			method="aeratedmachinerunningstate"></action>
+		<!-- 人员巡查情况查询 -->
+		<action name="personnelInspection" class="com.runzhixing.action.PersonnelInspectionAction"
+			method="personnelInspection"></action>
+		<!-- 人员巡查情况查询 -->
+		<action name="personnelInspection1" class="com.runzhixing.action.PersonnelInspectionAction"
+			method="personnelInspection1"></action>
+		<!-- 巡查数据查询 -->
+		<action name="inspectiondataQuery" class="com.runzhixing.action.InspectiondataQueryAction"
+			method="inspectiondataQuery"></action>
+
+		<!-- 特种设备数据查询 -->
+		<action name="specialequipmentdataQuery"
+			class="com.runzhixing.action.SpecialequipmentdataQueryAction" method="specialequipmentdataQuery"></action>
+		<!-- 气瓶数据查询 -->
+		<action name="cylinderDataQuery" class="com.runzhixing.action.CylinderDataQueryAction"
+			method="cylinderDataQuery11"></action>
+		<action name="cylinderDataQuery12" class="com.runzhixing.action.CylinderDataQueryAction"
+			method="cylinderDataQuery12"></action>
+		<action name="cylinderDataQuery13" class="com.runzhixing.action.CylinderDataQueryAction"
+			method="cylinderDataQuery13"></action>
+		<action name="cylinderDataQuery14" class="com.runzhixing.action.CylinderDataQueryAction"
+			method="cylinderDataQuery14"></action>
+		<!-- 气瓶数据查询 -->
+		<action name="cylinderDataQuery1" class="com.runzhixing.action.CylinderDataQueryAction"
+			method="cylinderDataQuery1"></action>
+		<!-- 气瓶将要检测数量查询 -->
+		<action name="cylinderDataQueryagain"
+			class="com.runzhixing.action.CylinderDataQueryagainAction" method="cylinderDataQueryagain"></action>
+		<!-- 当天检验情况 -->
+		<action name="todattestingdataQuery" class="com.runzhixing.action.TestingdataQueryAction"
+			method="todaytestingdataQuery"></action>
+		<!-- 检验数据查询 -->
+		<action name="testingdataQuery" class="com.runzhixing.action.TestingdataQueryAction"
+			method="testingdataQuery"></action>
+		<!-- 车辆数据查询 -->
+		<action name="carsDataQuery" class="com.runzhixing.action.CarsDataQueryAction"
+			method="carsDataQuery"></action>
+			<!-- 车辆数据查询 -->
+		<action name="getCarsDataQuery" class="com.runzhixing.action.CarsDataQueryAction"
+			method="getCarsDataQuery"></action>
+		<!-- 车辆数据查询 -->
+		<action name="carsDataQueryagain" class="com.runzhixing.action.CarsDataQueryAction"
+			method="carsDataQueryagain"></action>
+		<!-- 黑名单查询 -->
+		<action name="blackListQuery" class="com.runzhixing.action.BlackListQueryAction"
+			method="blackListQuery"></action>
+		<!-- CNG质量查询 -->
+		<action name="CNGQualityQuery" class="com.runzhixing.action.CNGQualityQueryAction"
+			method="CNGQualityQuery"></action>
+		<!-- 充装数据查询 -->
+		<action name="fillingDataQuery" class="com.runzhixing.action.FillingDataQueryAction"
+			method="fillingDataQuery"></action>
+		<!-- 氢气充装数据查询 -->
+		<action name="chgFillingDataQuery" class="com.runzhixing.action.FillingDataQueryAction"
+			method="chgFillingDataQuery"></action>
+		<!-- 改装数据查询 -->
+		<action name="modifiedDataQuery" class="com.runzhixing.action.ModifiedDataQueryAction"
+			method="modifiedDataQuery"></action>
+
+
+		<!-- 系统告警日志 -->
+		<action name="systemWarninglog" class="com.runzhixing.action.SystemWarninglogAction"
+			method="systemWarninglog"></action>
+
+
+
+		<!-- 改装数据查询 -->
+		<action name="province" class="com.runzhixing.action.ProvinceAction"
+			method="province"></action>
+
+
+		<!-- 改装数据查询 -->
+		<action name="AdvanceSystemwarninglog" class="com.runzhixing.action.SystemWarninglogAction"
+			method="AdvanceSystemwarninglog">
+			<result name="success">/jsp/rzx/log/Systemwarninglog.jsp</result>
+		</action>
+
+		<action name="makeChart" class="com.runzhixing.action.Test"
+			method="makeChart">
+		</action>
+
+		<action name="hiddenspeStation" class="com.runzhixing.action.SpeStationAction"
+			method="speStationQuery">
+		</action>
+		<action name="hiddenspeStation1" class="com.runzhixing.action.SpeStationAction"
+			method="speStationQuery1">
+		</action>
+		<action name="hiddenspeStation2" class="com.runzhixing.action.SpeStationAction"
+			method="speStationQuery2">
+		</action>
+
+		<action name="hiddencheckStation" class="com.runzhixing.action.CheckStationAction"
+			method="checkStationQuery">
+		</action>
+		<action name="hiddenoperatorNo" class="com.runzhixing.action.JQJStationAction"
+			method="operatorNoQuery">
+		</action>
+		<action name="hiddenjqj" class="com.runzhixing.action.JQJStationAction"
+			method="jqjQuery">
+		</action>
+		<action name="hiddenCNGStation" class="com.runzhixing.action.CNGStationAction"
+			method="cngstationQuery">
+		</action>
+		<action name="hiddenStation" class="com.runzhixing.action.StationAction"
+			method="stationQuery">
+		</action>
+		<action name="hiddenUnit" class="com.runzhixing.action.UnitAction"
+			method="unitQuery">
+		</action>
+		<action name="hiddenCity" class="com.runzhixing.action.HiddenCityAction"
+			method="hiddenCity">
+		</action>
+		<action name="hiddenjiangaun" class="com.runzhixing.action.HiddenCityAction"
+			method="hiddenjiangaun">
+		</action>
+		<action name="hiddenxuncha" class="com.runzhixing.action.HiddenCityAction"
+			method="hiddenxuncha">
+		</action>
+		<action name="hiddenCountry" class="com.runzhixing.action.HiddenCityAction"
+			method="hiddenCountry">
+		</action>
+		<action name="getstationdetail" class="com.runzhixing.action.HiddenCityAction"
+			method="getstationdetail">
+		</action>
+		<action name="getstationdetailreset" class="com.runzhixing.action.HiddenCityAction"
+			method="getstationdetailreset">
+		</action>
+
+		<action name="operatorDetail" class="com.runzhixing.action.OperatorDetailAction"
+			method="operatorDetail">
+		</action>
+		<action name="machineDetail" class="com.runzhixing.action.MachineDetailActionagain"
+			method="machineDetailAgain">
+		</action>
+		<!-- 数据统计 -->
+		<!-- 充装数据统计 -->
+		<action name="FillingDataStatistics" class="com.runzhixing.action.FillingDataStatisticAction"
+			method="fillingDataStatistic">
+		</action>
+
+		<!-- 气瓶数据统计 -->
+		<action name="CylinderDataStatistics"
+			class="com.runzhixing.action.CylinderDataStatisticsAction" method="cylinderDataStatistics">
+		</action>
+		<!-- 车辆数据统计 -->
+		<action name="CarDataStatistics" class="com.runzhixing.action.CarDataStatisticsAction"
+			method="CarDataStatistics">
+		</action>
+		<!-- 车辆气瓶数量统计 -->
+		<action name="CarCyNumStatistics" class="com.runzhixing.action.CarDataStatisticsAction"
+			method="CarCyNumStatistics">
+		</action>
+		<action name="relogin" class="com.runzhixing.action.MachineDetailAction"
+			method="relogin">
+			<result name="success">
+				/jsp/login/loginType.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/500.jsp
+			</result>
+		</action>
+		<!-- 气瓶追踪 -->
+		<action name="cylinderFollow" class="com.runzhixing.action.CylinderFollowAction"
+			method="ajaxCylinderFollow">
+		</action>
+
+
+		<action name="downloadExcel" class="com.runzhixing.action.DownloadExcelAction"
+			method="downloadExcel">
+		</action>
+		<action name="checkValidity" class="com.runzhixing.action.CylinderFollowAction"
+			method="CheckValidity1">
+		</action>
+
+		<action name="exportTestingData" class="com.runzhixing.action.ExportData"
+			method="exportTestingData">
+		</action>
+		<action name="spdataList" class="com.runzhixing.action.ExportData"
+			method="spdataList">
+		</action>
+	</package>
+
+	<!-- Add packages here -->
+	<package name="default" namespace="/" extends="struts-default"
+		strict-method-invocation="false">
+		
+		
+		
+		<action name="safeExit" class="com.runzhixing.action.AlterPasswordAction"
+			method="safeExit">
+			<result name="success">
+				/jsp/login/loginre.jsp
+			</result>
+			<result name="error">
+				/jsp/login/loginre.jsp
+			</result>
+		</action>
+		<action name="wxLogin" class="com.runzhixing.action.AlterPasswordAction"
+			method="wxLogin">
+			<result name="success">
+				/jsp/applyRegister.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/500.jsp
+			</result>
+		</action>
+		<action name="getValveHistory" class="com.runzhixing.action.MachineDetailAction"
+			method="getValveHistory">
+			<result name="success">
+				/jsp/rzx/dataQuery/ValveHistory.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+		<action name="getLatelyFill" class="com.runzhixing.action.MachineDetailAction"
+			method="getLatelyFill">
+			<result name="success">
+				/jsp/rzx/dataQuery/LatelyFill.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+		
+		<action name="getQualificationPicture" class="com.runzhixing.action.MachineDetailAction"
+			method="getQualificationPicture">
+			<result name="success">
+				/jsp/rzx/dataQuery/CylinderImg.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+
+		<action name="loginCng" class="com.runzhixing.action.CylinderFollowAction"
+			method="loginCng">
+			<result name="success">
+				/jsp/rzx/dataQuery/CylinderFollow.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+
+		<action name="downloadExcel" class="com.runzhixing.action.DownloadExcelAction"
+			method="downloadExcel">
+		</action>
+		<action name="CylinderFollow" class="com.runzhixing.action.CylinderFollowAction"
+			method="cylinderFollow">
+			<result name="success">
+				/jsp/rzx/dataQuery/CylinderFollow.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+
+
+		<action name="machineDetail" class="com.runzhixing.action.MachineDetailAction"
+			method="machineDetail">
+			<result name="success">
+				/jsp/rzx/filling/CylinderdataQuery.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+
+
+
+		<action name="CheckValidity" class="com.runzhixing.action.CylinderFollowAction"
+			method="CheckValidity">
+			<result name="success">
+				/jsp/rzx/dataQuery/CheckValidity.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+
+
+		<action name="machineDetailfill" class="com.runzhixing.action.MachineDetailAction"
+			method="machineDetail1">
+			<result name="success">
+				/jsp/rzx/filling/CylinderdataQuery.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+		<action name="carpublic" class="com.runzhixing.action.MachineDetailAction"
+			method="carpublic">
+			<result name="success">
+				/jsp/carpublic.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+		<action name="carAudit" class="com.runzhixing.action.CarAuditAction"
+			method="carAudit">
+			<result name="success">
+				/jsp/rzx/dataQuery/carDuit.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+		<action name="getCarChange" class="com.runzhixing.action.CarAuditAction"
+			method="getCarChange">
+			<result name="success">
+				/jsp/rzx/dataQuery/CarChange.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+		<action name="carAuditdo" class="com.runzhixing.action.CarAuditAction"
+			method="carAuditdo">
+			<result name="success">
+				/jsp/rzx/dataQuery/carDuit.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+
+		<action name="CylinderMonitorListdo" class="com.runzhixing.action.CylinderGuidAction"
+			method="CylinderMonitorListdo">
+			<result name="success">
+				/jsp/rzx/dataQuery/CylinderMonitorListdo.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+		<action name="tagQuerydo" class="com.runzhixing.action.CylinderGuidAction"
+			method="tagQuerydo">
+			<result name="success">
+				/jsp/rzx/dataQuery/tagQuerydo.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+		<action name="cylinderGuiddo" class="com.runzhixing.action.CylinderGuidAction"
+			method="cylinderGuiddo">
+			<result name="success">
+				/jsp/rzx/dataQuery/carCylinderGuiddo.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+		<action name="cylinderGuid" class="com.runzhixing.action.CylinderGuidAction"
+			method="cylinderGuid">
+			<result name="success">
+				/jsp/rzx/dataQuery/carCylinderGuid.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+
+		<action name="relogin" class="com.runzhixing.action.MachineDetailAction"
+			method="relogin">
+			<result name="success">
+				/jsp/login/loginType.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/500.jsp
+			</result>
+		</action>
+		<action name="Detailbyid" class="com.runzhixing.action.CheckAnnounformmentAction"
+			method="detailbyID">
+			<result name="success">
+				/jsp/rzx/infoMan/detailbyid.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+
+		<action name="safeexit" class="com.runzhixing.action.SafeexitAction"
+			method="safeexit">
+			<result name="success">
+				/jsp/login/loginType.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+
+	</package>
+
+</struts>

+ 495 - 563
WebRoot/jsp/rzx/dataQuery/HcngFillingdataQuery.jsp

@@ -1,563 +1,495 @@
-<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
-
-<%@ page import="com.runzhixing.bean.CityPlace" %>
-<%@ page import="com.runzhixing.bean.CountryPlace" %>
-<%@ page import="com.runzhixing.bean.Station" %>
-<%@ page import="com.runzhixing.bean.AuthorityRegionPlace" %>
-<%@ page import="com.runzhixing.bean.User" %>
-<%@ page import="com.runzhixing.tool.Util" %>
-<%@ page import="com.runzhixing.constant.Constant" %>
-<%
-String path = request.getContextPath();
-String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
-String username = (String) session.getAttribute("username");
-
-User user = (User)session.getAttribute(Constant.userMark); 
-List<AuthorityRegionPlace> arplist = user.getPrivilegePlaces1();
-
-List<CityPlace> cplist = new ArrayList<CityPlace>();
-List<CountryPlace> cyplist = new ArrayList<CountryPlace>();
-List<Station> slist = new ArrayList<Station>();
-String ssid = (String) session.getAttribute(Constant.Privilege);
-%>
-
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-  <head>
-    <base href="<%=basePath%>">
-    
-    <title>氢气充装数据查询</title>
-    
-	<meta http-equiv="pragma" content="no-cache">
-	<meta http-equiv="cache-control" content="no-cache">
-	<meta http-equiv="expires" content="0">    
-	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
-	<meta http-equiv="description" content="This is my page">
-	<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-	<meta http-equiv="X-UA-Compatible" content="IE=10"/>
-	<link rel="stylesheet" type="text/css" href="css/easyui/themes/default/easyui.css">
-	<link rel="stylesheet" type="text/css" href="css/easyui/themes/icon.css">
-	<link rel="stylesheet" type="text/css" href="css/easyui/demo/demo.css">
-	<script type="text/javascript" src="css/easyui/jquery.min.js"></script>
-	<script type="text/javascript" src="css/easyui/jquery.easyui.min.js"  charset="utf-8"></script>
-	<script type="text/javascript" src="css/easyui/locale/easyui-lang-zh_CN.js"  charset="utf-8"></script>
-	<link rel="stylesheet" type="text/css" href="css/common/hzbstyle.css">
-	<script type="text/javascript" src="js/easyui/export.js"></script>
-	<script type="text/javascript" src="js/common/area.js"></script>
-	<style type="text/css">
-    	.datagrid-header-row td{font-weight: bold;}
-		 #fm
-        {
-            margin: 0;
-            padding: 10px 30px;
-        }
-        .ftitle
-        {
-            font-size: 14px;
-            font-weight: bold;
-            padding: 5px 0;
-            margin-bottom: 10px;
-            border-bottom: 1px solid #ccc;
-        }
-        .fitem
-        {
-            margin-bottom: 5px;
-        }
-        .fitem label
-        {
-            display: inline-block;
-            width: 100px;
-        } 
-        
-	</style>
-	<style type="text/css">
-		 a:HOVER{
-			color: red;
-			text-decoration: none;
-		}
-		 a{
-			color: #f08300;
-			text-decoration: none;
-		}
-	</style>
-	
-	<script type="text/javascript">
-		var ssid = '<%=ssid %>';
-		var grid="";
-		var exportString="";
-		var i = 1;//第几页
-		var sum;//总条数
-		
-		var pageSize =10;
-		var totalpage;//总页数
-		$(document).ready(function(){
-			pageSize = $('#pageSize').val();
-			
-			selectCountry();
-			selectstation();
-			fLoadTable();
-			
-			
-			$('#btnadd').linkbutton('disable');
-			$('#btnadd1').linkbutton('disable');
-			//fLoadData(i,pageSize);
-			
-		});
-		
-		function show(message) {  
-	            $.messager.show({  
-	                title: '提示信息',  
-	                msg: message,  
-	                timeout: 2000,  
-	                showType: 'slide'  
-	            });  
-	        }
-		function fLoadTable(){
-				grid=$('#tt').datagrid({
-				  fit: true,//自动大小   
-					title: '',
-					width: '100%',
-					height: 580,
-					toolbar: '#toolbar',
-					fitColumns: true,
-					singleSelect:false,
-					loadMsg:'正在加载, 请稍等 …',
-	            	nowrap : true,//设置为true,当数据长度超出列宽时将会自动截取
-	            	striped : true,//设置为true将交替显示行背景
-					collapsible : false,//显示可折叠按钮
-					singleSelect:false,
-	            	fitColumns:true,//允许表格自动缩放,以适应父容器
-	            	rownumbers:true,
-	            	pagination:true,//分页控件
-	            	
-					columns:[[
-						{field:'stationName',align:'left',title:'充装站',width:'160px',rowspan:'2'},
-						{field:'machineName',align:'left',title:'加气机',width:'120px',rowspan:'2'},
-						{field:'gunNo',align:'left',title:'加气枪',width:'120px',rowspan:'2'},
-						{field:'mediaType',align:'left',title:'充装介质',width:'140px',rowspan:'2'},
-						{field:'operatorName',align:'left',title:'操作员',width:'120px',rowspan:'2',formatter: function(value, row, index){
- 							if(value=="未知工作人员"){
- 								return "";
-							}
-							
-							return value;
-						}},
-						{field:'operatorNameType',align:'left',title:'充装人员种类',width:'120px',rowspan:'2'},
- 						{field:'fillState',align:'left',title:'充装状态',width:'120px',rowspan:'2',formatter: function(value, row, index){
-							if(value=="超期未检"){
-						        return '<div  style="background-color: #f08300;">'+value+'</div>';
-						        }
-	    					return value;	
-						}},
- 						{field:'fillTime1',align:'left',title:'充装时间',width:160,rowspan:'2'},
- 						
- 						{field:'FILLCHECKNName1',align:'left',title:'充前气瓶检查人员',width:140,rowspan:'2',formatter: function(value, row, index){
- 							/*
- 							//FILLCHECKNO1如果为空时,用充装人员填充前操作员名字,否则用FILLCHECKNName1
- 							if(isEmpty(row.FILLCHECKNNo1)){
- 								if(isEmpty(row.operatorName)){
- 									return '';
- 								}else{
- 									if(row.operatorName=="未知工作人员"){
- 										return '';
- 									}else{
- 										return row.operatorName;
- 									}
- 								}
- 							}else{
- 								if(isEmpty(row.FILLCHECKNName1)){
- 									return '';
- 								}else{
- 									if(row.FILLCHECKNName1=="未知工作人员"){
- 										return '';
- 									}else{
- 										return row.FILLCHECKNName1;
- 									}
- 								}
- 							}
- 							*/
- 							return value;
-						}},
-						{field:'FILLCHECKNName2',align:'left',title:'充后气瓶检查人员',width:140,rowspan:'2',formatter: function(value, row, index){
-							/*
-							//当充装状态为充前检验失败时,充后检查必须为空
-							if(row.fillStateNum==21){
-								return '';
-							}
-							//当充装状态为充装成功且充后人员FILLCHECKNO2为空时,充装时间等于充后时间,充后检查没上来,充后必须填空
-							else if(row.fillState=="成功充装"&&isEmpty(row.FILLCHECKNNo2)&&!isEmpty(row.fillTime1)&&!isEmpty(row.endTime1)&&row.fillTime1==row.endTime1){
-								return '';
-							}
-							//FILLCHECKNO2为空时,充装时间不等于充后时间,充后已经上来,用当前充装人员CngOperatorName填充
-							else if(isEmpty(row.FILLCHECKNNo2)&&!isEmpty(row.fillTime1)&&!isEmpty(row.endTime1)&&compareDate(row.endTime1, row.fillTime1)){
-								if(isEmpty(row.operatorName)){
-									return '';
-								}else{
-									if(row.operatorName=="未知工作人员"){
-										return '';
-									}else{
-										return row.operatorName;
-									}
-								}
-							}
-							//FILLCHECKNO2不为空,FILLCHECKNName2表示充后人员
-							else if(!isEmpty(row.FILLCHECKNNo2)){
-								if(row.FILLCHECKNName2=="未知工作人员"){
-									return '';
-								}else{
-									return row.FILLCHECKNName2;
-								}
-							}else{
-								return '';
-							}
-							*/
-							return value;
-						}},
-						
-						
-						
-						{field:'carNo',align:'left',title:'车牌号',width:'120px',rowspan:'2',formatter: function(value, row, index){
-							if(value){
-								var v=0;
-								if(row.appType.indexOf("其他")!=-1) {v=0;}else
-								if(row.appType.indexOf("出租")!=-1) {v=1;}else
-								if(row.appType.indexOf("公交")!=-1) {v=2;}else
-								if(row.appType.indexOf("私用")!=-1){v=3;}else
-								if(row.appType.indexOf("货运")!=-1){v=4;}else
-								if(row.appType.indexOf("客运")!=-1) {v=5;}else
-								if(row.appType.indexOf("外地车")!=-1) {
-									v=9;
-								
-									return '<a href="carpublic?carNo='+value+'&appType='+v+'&operState=-1'+'&plateType='+row.plateType+'&fixCarNo='+row.fixCarNo+'&fillTimes='+row.fillTime1+'" target="_blank">'+value+'</a>';
-								}else
-								if(row.appType.indexOf("营转非")!=-1) {v=6;}
-								return '<a href="machineDetailfill?carNo='+value+'&appType='+v+'&operState=-1'+'&plateType='+row.plateType+'&fixCarNo='+row.fixCarNo+'&fillTimes='+row.fillTime1+'" target="_blank">'+value+'</a>';
-							}
-							return value;
-							
-						}},
-						{field:'plateTypeName',align:'left',title:'车牌类型',width:'120px',rowspan:'2'},
-						{field:'appType',align:'left',title:'应用类型',width:'120px',rowspan:'2'},
-						
-						{field:'cylinderNum',align:'left',title:'气瓶数量',width:'120px',rowspan:'2'},
-						{field:'regNo',align:'left',title:'使用登记证',width:'120px',rowspan:'2'},
-						{field:'nowNumber',align:'left',title:'已充装次数',width:'120px',rowspan:'2'},
-						
-						/* {field:'fillcheckstr',align:'left',title:'已充装次数',width:'120px',rowspan:'2',hidden:true}, */
-						
-						{field:'endTime1',align:'left',title:'结束时间',width:160,rowspan:'2'},
-						{field:'lowPress',align:'left',title:'充装前压',width:'120px',rowspan:'2'},
-						{field:'highPress',align:'left',title:'充装后压',width:'120px',rowspan:'2'},
-						{field:'flux',align:'left',title:'流量',width:'120px',rowspan:'2'},
-						{field:'money',align:'left',title:'金额(元)',width:'120px',rowspan:'2'},
-						
-						{"title":"充装前检查",align:'left',"colspan":6},
-						{"title":"充装后检查",align:'left',"colspan":3},
-						
-						
-					],
-					[
-						{"field":"taskNo1",align:'left',"title":'附件齐全'+"<br/>"+'符合安全'+"<br/>"+'要求',"rowspan":1,"colspan":1},
-						{"field":"taskNo2",align:'left',"title":'瓶内有余'+"<br/>"+'压(首次充'+"<br/>"+'装已置换)',"rowspan":1,"colspan":1},
-						{"field":"taskNo3",align:'left',"title":'外观完好、无缺陷('+"<br/>"+'裂纹、腐蚀、'+"<br/>"+'变形等)、安装稳定',"rowspan":1,"colspan":1},
-						{"field":"taskNo4",align:'left',"title":'无私改'+"<br/>"+'符合规定',"rowspan":1,"colspan":1},
-						{"field":"taskNo5",align:'left',"title":'无漏气、'+"<br/>"+'漏电、'+"<br/>"+'漏油现象',"rowspan":1,"colspan":1},
-						{"field":"taskNo6",align:'left',"title":'电子标签与车辆'+"<br/>"+'信息相符并贴于瓶'+"<br/>"+'体上(判定标签除外)',"rowspan":1,"colspan":1},
-						
-						
-						{"field":"taskNo7",align:'left',"title":'瓶内压力'+"<br/>"+'在规定范'+"<br/>"+'围内',"rowspan":1,"colspan":1},
-						{"field":"taskNo8",align:'left',"title":'附件连接'+"<br/>"+'可靠、密封'+"<br/>"+'完好',"rowspan":1,"colspan":1},
-						{"field":"taskNo9",align:'left',"title":'无鼓包、变'+"<br/>"+'形、泄露等'+"<br/>"+'异常现象',"rowspan":1,"colspan":1},
-					 ]
-					]
-				});	
-				if(ssid.substring(0, 2)!="51"){
-					$('#tt').datagrid('hideColumn','lowPress');
-					$('#tt').datagrid('hideColumn','highPress');
-					$('#tt').datagrid('hideColumn','flux');
-					$('#tt').datagrid('hideColumn','money');
-				}
-		}
-		
-		
-		
-		
-	function fLoadData(page,rows){
-		if(!$('#station option:selected').text()){
-			return false;
-		}
-	    $.messager.progress({ 
-	        title: '请等待', 
-	        msg: '正在加载数据...', 
-	        text: '查询中.......' 
-	    }); 
-		$.ajax({
-			type:"POST",
-			contentType: "application/x-www-form-urlencoded; charset=UTF-8",
-			data:$('#fillingform').serialize(),
-			url:"ajax/fillingDataQuery?page="+page+"&psize="+rows,
-			success:function (data){
-					$.messager.progress('close'); 
-					var vData = $.parseJSON(data);
-					sum = vData.total;
-					if(sum==0){
-						show("没有查询到相关信息!!!");
-					}
-					totalpage = Math.ceil(sum/rows);
-					$('#tt').datagrid('loadData', vData); //将数据绑定到datagrid   
-					var p = $('#tt').datagrid('getPager'); 
-					$(p).pagination({ 
-				        pageList: [10,20,30,100,200,400],//可以设置每页记录条数的列表 
-				        beforePageText: '第',//页数文本框前显示的汉字 
-				        afterPageText: '页    共 {pages} 页', 
-				        displayMsg: '当前显示 {from} - {to} 条记录   共 {total} 条记录', 
-						onSelectPage: function (pageNumber, pageSize) { 
-			                fLoadData(pageNumber, pageSize); 
-         					} 
-					});
-			}
-		});
-	}
-		
-	function selectCountry(){
-		var id=document.getElementById("city").value;
-		var select = document.getElementById("country");
-		for(var i=select.options.length-1;i>=0;i--) {
-			select.options.remove(i);
-		}
-		$.ajax({
-				type:"POST",
-				contentType: "application/x-www-form-urlencoded; charset=UTF-8",
-				url:"ajax/hiddenCity?cityId="+id,
-				success:function (data){
-					var obj=eval("(" + data + ")");
-					if(obj.rows.length==1){
-					select.options.add(new Option("请选择县", ""));
-					}
-					$.each(obj.rows, function(i,item){      
-						select.options.add(new Option(item.name, item.id));
- 						});
-				}
-		});
-	}
-		
-	function selectCountry1(){
-			selectCountry();
-			selectstation();
-	}
-		
-	function changeSize(){
-		fLoadData(1,10);
-	}
-	
-	function selectstation(){
-		var ii=1;
-		var id=document.getElementById("country").value;
-		var select = document.getElementById("station");
-		for(var i=select.options.length-1;i>=0;i--) {
-			select.options.remove(i);
-		}
-		$.ajax({
-				type:"POST",
-				contentType: "application/x-www-form-urlencoded; charset=UTF-8",
-				data:$('#fillingform').serialize(),
-				//url:"ajax/hiddenCNGStation?cityId="+id,
-				url:"ajax/hiddenspeStation2?type=7",
-				success:function (data){
-					var obj=eval("(" + data + ")");
-					select.options.add(new Option("全部", ""));
-					$.each(obj.rows, function(i,item){  
-					     
-						select.options.add(new Option(item.name, item.id));
- 						});
-					      
-						
-				}
-			});
-	}
-	
-	
-	
-	function selectstation1(){
-		selectstation();
-		//changeSize();
-	}
-	
-	
-	function exptSingle(){
-		if(!grid){
-			alert("数据为空");
-			return false;
-		}else{
-			expt(grid);
-		}
-		
-	}
-	function exptAll(){
-		fLoadDataAll(1,5000);
-	}
-	
-	function fLoadDataAll(page,rows){
-				var startTime1 = $('#startTime').datebox('getValue');
-				var endTime1 = $('#endTime').datebox('getValue');
-				document.getElementById("pageNumber").innerText = i;
-				document.getElementById("from").innerText = (page-1)*rows;
-				document.getElementById("to").innerText = page*rows;
-			    $.messager.progress({ 
-			        title: '请等待', 
-			        msg: '正在加载数据...', 
-			        text: '查询中.......' 
-			    }); 
-				$.ajax({
-					type:"POST",
-					contentType: "application/x-www-form-urlencoded; charset=UTF-8",
-					data:$('#fillingform').serialize(),
-					url:"ajax/fillingDataQuery?page="+page+"&psize="+rows,
-					success:function (data){
-							$.messager.progress('close'); 
-							var vData = $.parseJSON(data);
-							sum = vData.total;
-							
-							if(sum==0){
-								show("没有查询到相关信息!!!");
-							}
-							totalpage = Math.ceil(sum/rows);
-							document.getElementById("total").innerText = sum;
-							document.getElementById("totalpage").innerText = totalpage;
-							var vData = $.parseJSON(data);
-							$('#tt').datagrid('loadData', vData); //将数据绑定到datagrid   
-							var p = $('#tt').datagrid('getPager'); 
-							$(p).pagination({ 
-						        pageList: [10,20,30,100,200,400],//可以设置每页记录条数的列表 
-						        beforePageText: '第',//页数文本框前显示的汉字 
-						        afterPageText: '页    共 {pages} 页', 
-						        displayMsg: '当前显示 {from} - {to} 条记录   共 {total} 条记录', 
-								onSelectPage: function (pageNumber, pageSize) { 
-					                fLoadData(pageNumber, pageSize); 
-           						 } 
-							});
-							
-							if(!grid){
-								alert("数据为空");
-								return false;
-							}else{
-								expt(grid);
-							}
-						}
-				});
-	
-			
-		}
-		
-
-
-//判断字符是否为空的方法
-function isEmpty(obj){
-    if(typeof obj == "undefined" || obj == null || obj == ""){
-        return true;
-    }else{
-        return false;
-    }
-}
-
-//比较两个时间大小
-function compareDate(date1,date2){
-    var oDate1 = new Date(date1);
-    var oDate2 = new Date(date2);
-    if(oDate1.getTime() > oDate2.getTime()){
-        return true; //第一个大
-    } else {
-        return false; //第二个大
-    }
-}
-	</script>
-	
-  </head>
-  
-  <body>
-    <!-- 查询结果:数据表格 -->
-  	<table id="tt"  cellspacing="0" cellpadding="0" ></table>
-	<div id="toolbar" style="padding-top: 0px;height: auto;">
-  		 <form id="fillingform" action="ajax/filling" method="post">
-			<input type="text" name="fillCheck2" id="fillCheck2"   style="width: 150px;height: 34px;display: none;"  class="hzbspan" value="-1">
-			<table>
-				<tr>
-					<td>
-						<span class="hzbspan">省:</span>
-					</td>
-					<td>
-						<select  name="province" style="width: 150px;height: 34px;min-width: 100px;" class="hzbspan select">
-							<%for(AuthorityRegionPlace arp:arplist){
-								cplist = arp.getCityPlace();
-							 %>
-								<option value="<%=arp.getId() %>">
-									<%=arp.getName() %>
-								</option>
-							<%} %>
-						</select>
-					</td>
-					<td>
-						<span class="hzbspan">市:</span>
-					</td>
-					<td>
-						<select  name="city" id="city" style="width: 150px;height: 34px;min-width: 100px;" class="hzbspan select" onchange="selectCountry1()">
-							<%
-								for(CityPlace cp:cplist){
-								cyplist = cp.getSubPlaceList();
-							%>		
-								<option value="<%=cp.getId() %>">
-									<%=cp.getName() %>
-								</option>
-							<%} %>
-						</select>
-					</td>
-					<td>
-						<span class="hzbspan">县:</span>
-					</td>
-					<td>
-						<select  name="country" id = "country" style="width: 150px;height: 34px;min-width: 100px;" class="hzbspan select"  onchange="selectstation1();" >
-							<option value="">全部</option>
-						</select>
-					</td>
-				</tr>
-				<tr>
-					<td>
-						<span class="hzbspan">充装站点:</span>
-					</td>
-					<td>
-						<select  name="station" id ="station" style="width: 150px;height: 34px;min-width: 100px;" class="hzbspan select"  >
-							<option value="">全部</option>
-						</select>
-					</td>
-					<td>
-						<span  style="cursor: default"><span class="hzbspan">开始时间:</span></span>
-					</td>
-					<td>
-						<input type="text" name="startTime" id="startTime" class="easyui-datebox"  style="width: 150px;height: 34px;"  class="hzbspan" data-options="prompt:'-   -   -   -   -   -   -'">
-					</td>
-					<td>
-						<span  style="cursor: default"><span class="hzbspan">结束时间:</span></span>
-					</td>
-					<td>
-						<input type="text" name="endTime" id="endTime" class="easyui-datebox" style="width: 150px;height: 34px;"  class="hzbspan" data-options="prompt:'-   -   -   -   -   -   -'">
-					</td>
-				</tr>
-				<tr>
-					<td>
-						<span  style="cursor: default"><span class="hzbspan">车牌号:</span></span>
-					</td>
-					<td>
-						<input type="text" name="carNo" id="carNo"  style="width: 150px;height: 34px;"  class="hzbspan" placeholder="-   -   -   -   -   -   -">
-					</td>
-				</tr>
-				<tr>
-					<td colspan="5">
-						<a id="btninfosearch" onclick="changeSize();" class="easyui-linkbutton" icon="icon-search" href="javascript:void(0)" style="margin-bottom:  5px;" ><span class="hzbspan" style="color: #f08300;font-size: 16px;">查询</span></a> 
-						<a id="btninfosearch" onclick="exptSingle();" class="easyui-linkbutton" icon="icon-export" href="javascript:void(0)" style="margin-bottom:  5px;" ><span class="hzbspan" style="color: #f08300;font-size: 16px;">导出</span></a> 
-					</td>
-				</tr>
-			</table>
-		</form>	
-	</div>
-  </body>
-</html>
+<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
+
+<%@ page import="com.runzhixing.bean.CityPlace" %>
+<%@ page import="com.runzhixing.bean.CountryPlace" %>
+<%@ page import="com.runzhixing.bean.Station" %>
+<%@ page import="com.runzhixing.bean.AuthorityRegionPlace" %>
+<%@ page import="com.runzhixing.bean.User" %>
+<%@ page import="com.runzhixing.tool.Util" %>
+<%@ page import="com.runzhixing.constant.Constant" %>
+<%
+String path = request.getContextPath();
+String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
+String username = (String) session.getAttribute("username");
+
+User user = (User)session.getAttribute(Constant.userMark); 
+List<AuthorityRegionPlace> arplist = user.getPrivilegePlaces1();
+
+List<CityPlace> cplist = new ArrayList<CityPlace>();
+List<CountryPlace> cyplist = new ArrayList<CountryPlace>();
+List<Station> slist = new ArrayList<Station>();
+String ssid = (String) session.getAttribute(Constant.Privilege);
+%>
+
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+  <head>
+    <base href="<%=basePath%>">
+    
+    <title>氢气充装数据查询</title>
+    
+	<meta http-equiv="pragma" content="no-cache">
+	<meta http-equiv="cache-control" content="no-cache">
+	<meta http-equiv="expires" content="0">    
+	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
+	<meta http-equiv="description" content="This is my page">
+	<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+	<meta http-equiv="X-UA-Compatible" content="IE=10"/>
+	<link rel="stylesheet" type="text/css" href="css/easyui/themes/default/easyui.css">
+	<link rel="stylesheet" type="text/css" href="css/easyui/themes/icon.css">
+	<link rel="stylesheet" type="text/css" href="css/easyui/demo/demo.css">
+	<script type="text/javascript" src="css/easyui/jquery.min.js"></script>
+	<script type="text/javascript" src="css/easyui/jquery.easyui.min.js"  charset="utf-8"></script>
+	<script type="text/javascript" src="css/easyui/locale/easyui-lang-zh_CN.js"  charset="utf-8"></script>
+	<link rel="stylesheet" type="text/css" href="css/common/hzbstyle.css">
+	<script type="text/javascript" src="js/easyui/export.js"></script>
+	<script type="text/javascript" src="js/common/area.js"></script>
+	<style type="text/css">
+    	.datagrid-header-row td{font-weight: bold;}
+		 #fm
+        {
+            margin: 0;
+            padding: 10px 30px;
+        }
+        .ftitle
+        {
+            font-size: 14px;
+            font-weight: bold;
+            padding: 5px 0;
+            margin-bottom: 10px;
+            border-bottom: 1px solid #ccc;
+        }
+        .fitem
+        {
+            margin-bottom: 5px;
+        }
+        .fitem label
+        {
+            display: inline-block;
+            width: 100px;
+        } 
+        
+	</style>
+	<style type="text/css">
+		 a:HOVER{
+			color: red;
+			text-decoration: none;
+		}
+		 a{
+			color: #f08300;
+			text-decoration: none;
+		}
+	</style>
+	
+	<script type="text/javascript">
+		var ssid = '<%=ssid %>';
+		var grid="";
+		var exportString="";
+		var i = 1;//第几页
+		var sum;//总条数
+		
+		var pageSize =10;
+		var totalpage;//总页数
+		$(document).ready(function(){
+			pageSize = $('#pageSize').val();
+			
+			selectCountry();
+			selectstation();
+			fLoadTable();
+			
+			
+			$('#btnadd').linkbutton('disable');
+			$('#btnadd1').linkbutton('disable');
+			//fLoadData(i,pageSize);
+			
+		});
+		
+		function show(message) {  
+	            $.messager.show({  
+	                title: '提示信息',  
+	                msg: message,  
+	                timeout: 2000,  
+	                showType: 'slide'  
+	            });  
+	        }
+		function fLoadTable(){
+				grid=$('#tt').datagrid({
+				  fit: true,//自动大小   
+					title: '',
+					width: '100%',
+					height: 580,
+					toolbar: '#toolbar',
+					fitColumns: true,
+					singleSelect:false,
+					loadMsg:'正在加载, 请稍等 …',
+	            	nowrap : true,//设置为true,当数据长度超出列宽时将会自动截取
+	            	striped : true,//设置为true将交替显示行背景
+					collapsible : false,//显示可折叠按钮
+					singleSelect:false,
+	            	fitColumns:true,//允许表格自动缩放,以适应父容器
+	            	rownumbers:true,
+	            	pagination:true,//分页控件
+	            	
+					columns:[[
+						{field:'guid',align:'left',title:'UID',width:'160px',rowspan:'2'},
+						{field:'stationNo',align:'left',title:'站编号',width:'160px',rowspan:'2'},
+						{field:'stationName',align:'left',title:'站名称',width:'160px',rowspan:'2'},
+						{field:'carNo',align:'left',title:'车牌号',width:'120px',rowspan:'2'},
+						{field:'plateType',align:'left',title:'车牌类型',width:'120px',rowspan:'2'},
+						{field:'plateColor',align:'left',title:'车牌颜色',width:'120px',rowspan:'2'},
+						{field:'medium',align:'left',title:'充装介质',width:'120px',rowspan:'2'},
+						{field:'regNo',align:'left',title:'使用登记证号',width:'120px',rowspan:'2'},
+						{field:'regDate',align:'left',title:'发证时间',width:'120px',rowspan:'2'},
+						{field:'regValidity',align:'left',title:'证件有效期',width:'120px',rowspan:'2'},
+						{field:'regUnit',align:'left',title:'发证单位',width:'120px',rowspan:'2'},
+						{field:'cylinderType',align:'left',title:'气瓶类型',width:'120px',rowspan:'2'},
+						{field:'cylinderNo',align:'left',title:'气瓶出厂编号',width:'120px',rowspan:'2'},
+						{field:'productName',align:'left',title:'生产厂家',width:'120px',rowspan:'2'},
+						{field:'productDate',align:'left',title:'生产日期',width:'120px',rowspan:'2'},
+						{field:'startuseDate',align:'left',title:'投用日期',width:'120px',rowspan:'2'},
+						{field:'yearLimit',align:'left',title:'使用年限',width:'120px',rowspan:'2'},
+						{field:'productLicence',align:'left',title:'生产许可',width:'120px',rowspan:'2'},
+						{field:'productType',align:'left',title:'气瓶产品型号',width:'120px',rowspan:'2'},
+						{field:'weight',align:'left',title:'重量',width:'120px',rowspan:'2'},
+						{field:'vol',align:'left',title:'容积',width:'120px',rowspan:'2'},
+						{field:'thickness',align:'left',title:'壁厚',width:'120px',rowspan:'2'},
+						{field:'press',align:'left',title:'压力',width:'120px',rowspan:'2'},
+						{field:'material',align:'left',title:'材质',width:'120px',rowspan:'2'},
+						{field:'installStation',align:'left',title:'安装单位',width:'120px',rowspan:'2'},
+						{field:'installCert',align:'left',title:'安装合格证',width:'120px',rowspan:'2'},
+						{field:'installDate',align:'left',title:'安装时间',width:'120px',rowspan:'2'},
+						{field:'monitorStation',align:'left',title:'监检单位',width:'120px',rowspan:'2'},
+						{field:'monitorCert',align:'left',title:'监检合格证',width:'120px',rowspan:'2'},
+						{field:'monitorDate',align:'left',title:'监检时间',width:'120px',rowspan:'2'},
+						{field:'checkStation',align:'left',title:'检验单位',width:'120px',rowspan:'2'},
+						{field:'checkCert',align:'left',title:'检验合格证',width:'120px',rowspan:'2'},
+						{field:'checkDate',align:'left',title:'检验时间',width:'120px',rowspan:'2'},
+						{field:'nextCheckDate',align:'left',title:'下次检验时间',width:'120px',rowspan:'2'},
+						{field:'beforeChecker',align:'left',title:'充装检查人员',width:'120px',rowspan:'2'},
+						{field:'beforeTime',align:'left',title:'充半检查时间',width:'120px',rowspan:'2'},
+						{field:'beforeItems',align:'left',title:'充装前检查项目',width:'120px',rowspan:'2'},
+						{field:'beforeResult',align:'left',title:'充前检查结果',width:'120px',rowspan:'2'},
+						{field:'beforeException',align:'left',title:'充前检查异常项目',width:'120px',rowspan:'2'},
+						{field:'carRemark',align:'left',title:'车辆其它信息',width:'120px',rowspan:'2'},
+						{field:'cylinderRemark',align:'left',title:'气瓶其它信息',width:'120px',rowspan:'2'},
+						{field:'beforeVerifier',align:'left',title:'充前审核人员',width:'120px',rowspan:'2'},
+						{field:'operatorName',align:'left',title:'操作人员姓名',width:'120px',rowspan:'2'},
+						{field:'operatorId',align:'left',title:'操作人员身份证号',width:'120px',rowspan:'2'},
+						{field:'operatorNo',align:'left',title:'操作人员编号',width:'120px',rowspan:'2'},
+						{field:'operatorType',align:'left',title:'操作人员类型',width:'120px',rowspan:'2'},
+						{field:'operatorDoc',align:'left',title:'操作人员档案号',width:'120px',rowspan:'2'},
+						{field:'operatorCert',align:'left',title:'操作人员班证书',width:'120px',rowspan:'2'},
+						{field:'operatorLicDate',align:'left',title:'发证时间',width:'120px',rowspan:'2'},
+						{field:'operatorLicValidity',align:'left',title:'证书有效期',width:'120px',rowspan:'2'},
+						{field:'machineFactory',align:'left',title:'充装设备厂家',width:'120px',rowspan:'2'},
+						{field:'machineNo',align:'left',title:'充装设备编号',width:'120px',rowspan:'2'},
+						{field:'machineName',align:'left',title:'充装设备名称',width:'120px',rowspan:'2'},
+						{field:'gunNo',align:'left',title:'充装枪号',width:'120px',rowspan:'2'},
+						{field:'fillStartTime',align:'left',title:'充装时间',width:'120px',rowspan:'2'},
+						{field:'FillBeforePress',align:'left',title:'充前压力',width:'120px',rowspan:'2'},
+						{field:'fillEndTime',align:'left',title:'充装结束时间',width:'120px',rowspan:'2'},
+						{field:'FillEndPress',align:'left',title:'充装结束压力',width:'120px',rowspan:'2'},
+						{field:'FillUnit',align:'left',title:'充装量单位',width:'120px',rowspan:'2'},
+						{field:'FillNum',align:'left',title:'充装量',width:'120px',rowspan:'2'},
+						{field:'FillDensity',align:'left',title:'充装密度',width:'120px',rowspan:'2'},
+						{field:'money',align:'left',title:'金额',width:'120px',rowspan:'2'},
+						{field:'afterChecker',align:'left',title:'充后检查人员',width:'120px',rowspan:'2'},
+						{field:'afterTime',align:'left',title:'充后检查时间',width:'120px',rowspan:'2'},
+						{field:'afterTimes',align:'left',title:'充后检查项目',width:'120px',rowspan:'2'},
+						{field:'afterResult',align:'left',title:'充后结果',width:'120px',rowspan:'2'},
+						{field:'afterException',align:'left',title:'充后检查异常项目',width:'120px',rowspan:'2'},
+						{field:'afterVerifier',align:'left',title:'充后审核人员',width:'120px',rowspan:'2'},
+						{field:'remark',align:'left',title:'备注',width:'120px',rowspan:'2'}
+						
+					]]
+				});	
+				if(ssid.substring(0, 2)!="51"){
+					$('#tt').datagrid('hideColumn','lowPress');
+					$('#tt').datagrid('hideColumn','highPress');
+					$('#tt').datagrid('hideColumn','flux');
+					$('#tt').datagrid('hideColumn','money');
+				}
+		}
+		
+		
+		
+		
+	function fLoadData(page,rows){
+		if(!$('#station option:selected').text()){
+			return false;
+		}
+	    $.messager.progress({ 
+	        title: '请等待', 
+	        msg: '正在加载数据...', 
+	        text: '查询中.......' 
+	    }); 
+		$.ajax({
+			type:"POST",
+			contentType: "application/x-www-form-urlencoded; charset=UTF-8",
+			data:$('#fillingform').serialize(),
+			url:"ajax/fillingDataQuery?page="+page+"&psize="+rows,
+			success:function (data){
+					$.messager.progress('close'); 
+					var vData = $.parseJSON(data);
+					sum = vData.total;
+					if(sum==0){
+						show("没有查询到相关信息!!!");
+					}
+					totalpage = Math.ceil(sum/rows);
+					$('#tt').datagrid('loadData', vData); //将数据绑定到datagrid   
+					var p = $('#tt').datagrid('getPager'); 
+					$(p).pagination({ 
+				        pageList: [10,20,30,100,200,400],//可以设置每页记录条数的列表 
+				        beforePageText: '第',//页数文本框前显示的汉字 
+				        afterPageText: '页    共 {pages} 页', 
+				        displayMsg: '当前显示 {from} - {to} 条记录   共 {total} 条记录', 
+						onSelectPage: function (pageNumber, pageSize) { 
+			                fLoadData(pageNumber, pageSize); 
+         					} 
+					});
+			}
+		});
+	}
+		
+	function selectCountry(){
+		var id=document.getElementById("city").value;
+		var select = document.getElementById("country");
+		for(var i=select.options.length-1;i>=0;i--) {
+			select.options.remove(i);
+		}
+		$.ajax({
+				type:"POST",
+				contentType: "application/x-www-form-urlencoded; charset=UTF-8",
+				url:"ajax/hiddenCity?cityId="+id,
+				success:function (data){
+					var obj=eval("(" + data + ")");
+					if(obj.rows.length==1){
+					select.options.add(new Option("请选择县", ""));
+					}
+					$.each(obj.rows, function(i,item){      
+						select.options.add(new Option(item.name, item.id));
+ 						});
+				}
+		});
+	}
+		
+	function selectCountry1(){
+			selectCountry();
+			selectstation();
+	}
+		
+	function changeSize(){
+		fLoadData(1,10);
+	}
+	
+	function selectstation(){
+		var ii=1;
+		var id=document.getElementById("country").value;
+		var select = document.getElementById("station");
+		for(var i=select.options.length-1;i>=0;i--) {
+			select.options.remove(i);
+		}
+		$.ajax({
+				type:"POST",
+				contentType: "application/x-www-form-urlencoded; charset=UTF-8",
+				data:$('#fillingform').serialize(),
+				//url:"ajax/hiddenCNGStation?cityId="+id,
+				url:"ajax/hiddenspeStation2?type=7",
+				success:function (data){
+					var obj=eval("(" + data + ")");
+					select.options.add(new Option("全部", ""));
+					$.each(obj.rows, function(i,item){  
+					     
+						select.options.add(new Option(item.name, item.id));
+ 						});
+					      
+						
+				}
+			});
+	}
+	
+	
+	
+	function selectstation1(){
+		selectstation();
+		//changeSize();
+	}
+	
+	
+	function exptSingle(){
+		if(!grid){
+			alert("数据为空");
+			return false;
+		}else{
+			expt(grid);
+		}
+		
+	}
+	function exptAll(){
+		fLoadDataAll(1,5000);
+	}
+	
+	function fLoadDataAll(page,rows){
+				var startTime1 = $('#startTime').datebox('getValue');
+				var endTime1 = $('#endTime').datebox('getValue');
+				document.getElementById("pageNumber").innerText = i;
+				document.getElementById("from").innerText = (page-1)*rows;
+				document.getElementById("to").innerText = page*rows;
+			    $.messager.progress({ 
+			        title: '请等待', 
+			        msg: '正在加载数据...', 
+			        text: '查询中.......' 
+			    }); 
+				$.ajax({
+					type:"POST",
+					contentType: "application/x-www-form-urlencoded; charset=UTF-8",
+					data:$('#fillingform').serialize(),
+					url:"ajax/fillingDataQuery?page="+page+"&psize="+rows,
+					success:function (data){
+							$.messager.progress('close'); 
+							var vData = $.parseJSON(data);
+							sum = vData.total;
+							
+							if(sum==0){
+								show("没有查询到相关信息!!!");
+							}
+							totalpage = Math.ceil(sum/rows);
+							document.getElementById("total").innerText = sum;
+							document.getElementById("totalpage").innerText = totalpage;
+							var vData = $.parseJSON(data);
+							$('#tt').datagrid('loadData', vData); //将数据绑定到datagrid   
+							var p = $('#tt').datagrid('getPager'); 
+							$(p).pagination({ 
+						        pageList: [10,20,30,100,200,400],//可以设置每页记录条数的列表 
+						        beforePageText: '第',//页数文本框前显示的汉字 
+						        afterPageText: '页    共 {pages} 页', 
+						        displayMsg: '当前显示 {from} - {to} 条记录   共 {total} 条记录', 
+								onSelectPage: function (pageNumber, pageSize) { 
+					                fLoadData(pageNumber, pageSize); 
+           						 } 
+							});
+							
+							if(!grid){
+								alert("数据为空");
+								return false;
+							}else{
+								expt(grid);
+							}
+						}
+				});
+	
+			
+		}
+		
+
+
+//判断字符是否为空的方法
+function isEmpty(obj){
+    if(typeof obj == "undefined" || obj == null || obj == ""){
+        return true;
+    }else{
+        return false;
+    }
+}
+
+//比较两个时间大小
+function compareDate(date1,date2){
+    var oDate1 = new Date(date1);
+    var oDate2 = new Date(date2);
+    if(oDate1.getTime() > oDate2.getTime()){
+        return true; //第一个大
+    } else {
+        return false; //第二个大
+    }
+}
+	</script>
+	
+  </head>
+  
+  <body>
+    <!-- 查询结果:数据表格 -->
+  	<table id="tt"  cellspacing="0" cellpadding="0" ></table>
+	<div id="toolbar" style="padding-top: 0px;height: auto;">
+  		 <form id="fillingform" action="ajax/filling" method="post">
+			<input type="text" name="fillCheck2" id="fillCheck2"   style="width: 150px;height: 34px;display: none;"  class="hzbspan" value="-1">
+			<table>
+				<tr>
+					<td>
+						<span class="hzbspan">省:</span>
+					</td>
+					<td>
+						<select  name="province" style="width: 150px;height: 34px;min-width: 100px;" class="hzbspan select">
+							<%for(AuthorityRegionPlace arp:arplist){
+								cplist = arp.getCityPlace();
+							 %>
+								<option value="<%=arp.getId() %>">
+									<%=arp.getName() %>
+								</option>
+							<%} %>
+						</select>
+					</td>
+					<td>
+						<span class="hzbspan">市:</span>
+					</td>
+					<td>
+						<select  name="city" id="city" style="width: 150px;height: 34px;min-width: 100px;" class="hzbspan select" onchange="selectCountry1()">
+							<%
+								for(CityPlace cp:cplist){
+								cyplist = cp.getSubPlaceList();
+							%>		
+								<option value="<%=cp.getId() %>">
+									<%=cp.getName() %>
+								</option>
+							<%} %>
+						</select>
+					</td>
+					<td>
+						<span class="hzbspan">县:</span>
+					</td>
+					<td>
+						<select  name="country" id = "country" style="width: 150px;height: 34px;min-width: 100px;" class="hzbspan select"  onchange="selectstation1();" >
+							<option value="">全部</option>
+						</select>
+					</td>
+				</tr>
+				<tr>
+					<td>
+						<span class="hzbspan">充装站点:</span>
+					</td>
+					<td>
+						<select  name="station" id ="station" style="width: 150px;height: 34px;min-width: 100px;" class="hzbspan select"  >
+							<option value="">全部</option>
+						</select>
+					</td>
+					<td>
+						<span  style="cursor: default"><span class="hzbspan">开始时间:</span></span>
+					</td>
+					<td>
+						<input type="text" name="startTime" id="startTime" class="easyui-datebox"  style="width: 150px;height: 34px;"  class="hzbspan" data-options="prompt:'-   -   -   -   -   -   -'">
+					</td>
+					<td>
+						<span  style="cursor: default"><span class="hzbspan">结束时间:</span></span>
+					</td>
+					<td>
+						<input type="text" name="endTime" id="endTime" class="easyui-datebox" style="width: 150px;height: 34px;"  class="hzbspan" data-options="prompt:'-   -   -   -   -   -   -'">
+					</td>
+				</tr>
+				<tr>
+					<td>
+						<span  style="cursor: default"><span class="hzbspan">车牌号:</span></span>
+					</td>
+					<td>
+						<input type="text" name="carNo" id="carNo"  style="width: 150px;height: 34px;"  class="hzbspan" placeholder="-   -   -   -   -   -   -">
+					</td>
+				</tr>
+				<tr>
+					<td colspan="5">
+						<a id="btninfosearch" onclick="changeSize();" class="easyui-linkbutton" icon="icon-search" href="javascript:void(0)" style="margin-bottom:  5px;" ><span class="hzbspan" style="color: #f08300;font-size: 16px;">查询</span></a> 
+						<a id="btninfosearch" onclick="exptSingle();" class="easyui-linkbutton" icon="icon-export" href="javascript:void(0)" style="margin-bottom:  5px;" ><span class="hzbspan" style="color: #f08300;font-size: 16px;">导出</span></a> 
+					</td>
+				</tr>
+			</table>
+		</form>	
+	</div>
+  </body>
+</html>

+ 371 - 285
src/com/runzhixing/action/FillingDataQueryAction.java

@@ -1,285 +1,371 @@
-package com.runzhixing.action;
-
-import java.io.PrintWriter;
-import java.sql.Date;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
-import net.sf.json.JSONObject;
-
-import org.apache.commons.lang.StringUtils;
-import org.apache.struts2.ServletActionContext;
-
-import com.opensymphony.xwork2.ActionSupport;
-import com.runzhixing.bean.CNGFillLog;
-import com.runzhixing.bean.User;
-import com.runzhixing.constant.Constant;
-import com.runzhixing.packageProcedure.FillingDataQueryProcedure;
-import com.runzhixing.tool.Tool;
-import com.runzhixing.tool.Util;
-/**
- * 告警参数设置
- * @author 小黄
- *
- */
-@SuppressWarnings("serial")
-public class FillingDataQueryAction extends ActionSupport {
-	//设置新的告警参数
-	@SuppressWarnings({ "unchecked", "static-access" })
-	public void fillingDataQuery() throws Exception{
-		HttpServletResponse response = ServletActionContext.getResponse();
-		HttpServletRequest req = ServletActionContext.getRequest();
-		Map<String,Object> map=new HashMap<String,Object>();
-		User user = (User)req.getSession().getAttribute(Constant.userMark); 
-		
-		int moudel = user.getModule();
-		String ssid = (String) req.getSession().getAttribute(Constant.Privilege);
-		
-		//获取地址,默认全部
-		String province = req.getParameter("province");
-		String city = req.getParameter("city");
-		String country = req.getParameter("country");
-		if(province==null){
-			province = "";
-		}
-		if(city==null){
-			city = "";
-		}
-		if(country==null){
-			country = "";
-		}
-		String regionNo = province+city+country;//地区编号
-		regionNo = regionNo.replaceAll("(00)*$", "");
-		String operatorNo = req.getParameter("operatorNo");//操作员编号
-		String stationNo = req.getParameter("station");//充装点编号
-		String machineNo = req.getParameter("jqj");//设备编号
-		String gunNo = req.getParameter("gunNo");//气枪编号
-		String carNo = req.getParameter("carNo");//车牌号
-		int appType = Integer.parseInt(req.getParameter("appType"));//应用类型
-		int fillState = Integer.parseInt(req.getParameter("fillState"));//充装状态
-		int cylinderType= Integer.parseInt(req.getParameter("cylinderType")); //加气机	
-		
-		//开始时间
-		String sTime=req.getParameter("startTime");
-		String eTime=req.getParameter("endTime");
-		
-		Date startsTime = null;
-		//结束时间
-		Date endsTime = null;
-		// 0:时间无效 1:开始时间有效 2:结束时间有效 3:都有效
-		if(sTime!=null&&!sTime.equals("")){
-			startsTime = Util.dateChange(sTime);
-		}
-		if(eTime!=null&&!eTime.equals("")){
-			endsTime = Util.dateChange(eTime);
-		}
-		Long l = new java.util.Date().getTime();
-		if(startsTime==null){
-			startsTime= new java.sql.Date(l);
-		}
-		if(endsTime==null){
-			endsTime= new java.sql.Date(l+1000 * 3600 * 24L);
-		}
-		
-		
-		//根据地址获取地址编号
-		int pagesize = Integer.parseInt(req.getParameter("psize"));
-		int pageno = Integer.parseInt(req.getParameter("page"));
-		
-		if(stationNo==null||stationNo.equals("")){
-			stationNo =regionNo ;
-		}
-		if(ssid.length()==12&&moudel!=1){
-			stationNo = ssid;
-		}
-		int fillCheck2 = Integer.parseInt(req.getParameter("fillCheck2") != null?req.getParameter("fillCheck2"):"-1");
-		List<CNGFillLog>  list1 = new FillingDataQueryProcedure().fillingDataQuery(pagesize, pageno, operatorNo,stationNo,machineNo,gunNo,carNo,appType,fillState,startsTime,endsTime,cylinderType,fillCheck2);
-		if (list1 != null && list1.size() > 0) {
-			for(CNGFillLog log:list1){
-				String fillchecknNo1 = log.getFILLCHECKNNo1();
-				String operatorName = log.getOperatorName();
-				String fillchecknName1 = log.getFILLCHECKNName1();
-				if (StringUtils.isEmpty(fillchecknNo1) && StringUtils.isNotEmpty(operatorName) && !"未知工作人员".equals(operatorName)) {
-					log.setFILLCHECKNName1(operatorName);
-				}else if(StringUtils.isNotEmpty(fillchecknName1) && !"未知工作人员".equals(fillchecknName1)) {
-					log.setFILLCHECKNName1(fillchecknName1);
-				}else {
-					log.setFILLCHECKNName1("");
-				}
-				
-				String fillchecknNo2 = log.getFILLCHECKNNo2();
-				String fillchecknName2 = log.getFILLCHECKNName2();
-				
-				if (log.getFillStateNum() == 21 
-						|| ("成功充装".equals(log.getFillState()) && StringUtils.isEmpty(fillchecknNo2) && StringUtils.isEmpty(log.getFillTime1())
-								&& StringUtils.isEmpty(log.getEndTime1()) &&  log.getFillTime1().equals(log.getEndTime1())   )) {
-					log.setFILLCHECKNName2("");
-				}else if(StringUtils.isEmpty(fillchecknNo2) &&  StringUtils.isEmpty(log.getFillTime1()) && StringUtils.isEmpty(log.getEndTime1()) 
-						&& Util.str2Date(log.getEndTime1(), "yyyy-MM-dd HH:mm:ss").getTime() > Util.str2Date(log.getFillTime1(), "yyyy-MM-dd HH:mm:ss").getTime() 
-						&& StringUtils.isNotEmpty(operatorName) && !"未知工作人员".equals(operatorName)) {
-					log.setFILLCHECKNName2(operatorName);
-				}else if(StringUtils.isNotEmpty(fillchecknName2) && !"未知工作人员".equals(fillchecknName2)) {
-					log.setFILLCHECKNName2(fillchecknName2);
-				}else {
-					log.setFILLCHECKNName2("");
-				}
-				
-				String fillMonitorName = log.getFillMonitorName();
-				if (StringUtils.isEmpty(log.getFillMonitorNo())) {
-					if (StringUtils.isNotEmpty(fillchecknNo2) &&  !"未知工作人员".equals(fillchecknName2)) {
-						log.setFillMonitorName(fillchecknName2);
-					}else if (StringUtils.isNotEmpty(fillchecknNo1) &&  !"未知工作人员".equals(fillchecknName1)) {
-						log.setFillMonitorName(fillchecknName1);
-					}else if ( StringUtils.isNotEmpty(operatorName) &&  !"未知工作人员".equals(operatorName)) {
-						log.setFillMonitorName(operatorName);
-					}
-				}else {
-					if ("未知工作人员".equals(fillMonitorName)) {
-						log.setFillMonitorName("");
-					}
-				}
-				
-				if (StringUtils.isEmpty(log.getFillMonitorNo()) && StringUtils.isNotEmpty(fillchecknNo2) &&  !"未知工作人员".equals(fillchecknName2)) {
-					log.setFillMonitorName(fillchecknName2);
-				}else if (StringUtils.isEmpty(log.getFillMonitorNo()) && StringUtils.isNotEmpty(fillchecknNo1) &&  !"未知工作人员".equals(fillchecknName1)) {
-					log.setFillMonitorName(fillchecknName1);
-				}else if (StringUtils.isEmpty(log.getFillMonitorNo()) && StringUtils.isNotEmpty(operatorName) &&  !"未知工作人员".equals(operatorName)) {
-					log.setFillMonitorName(operatorName);
-				}else if(StringUtils.isNotEmpty(log.getFillMonitorNo()) && "未知工作人员".equals(fillMonitorName)){
-					log.setFillMonitorName("");
-				}
-				
-				String fillcheckstr = log.getFillcheckstr();
-				int fillStateNum = log.getFillStateNum();
-				String task1 = "✔";
-				String task2 = "✔";
-				String task3 = "✔";
-				String task4 = "✔";
-				String task5 = "✔";
-				String task6 = "✔";
-				if(!Util.isEmpty(fillcheckstr)){
-					if(fillStateNum<=0||fillStateNum>=21){
-						if(fillcheckstr.substring(fillcheckstr.length()-1,fillcheckstr.length()).equals("1")){
-							task1 = "×";
-						}
-						if(fillcheckstr.substring(fillcheckstr.length()-2,fillcheckstr.length()-1).equals("1")){
-							task2 = "×";
-						}
-						if(fillcheckstr.substring(fillcheckstr.length()-3,fillcheckstr.length()-2).equals("1")){
-							task3 = "×";
-						}
-						if(fillcheckstr.substring(fillcheckstr.length()-4,fillcheckstr.length()-3).equals("1")){
-							task4 = "×";
-						}
-						if(fillcheckstr.substring(fillcheckstr.length()-5,fillcheckstr.length()-4).equals("1")){
-							task5 = "×";
-						}
-						if(fillcheckstr.substring(fillcheckstr.length()-6,fillcheckstr.length()-5).equals("1")){
-							task6 = "×";
-						}
-						if(fillStateNum==31){
-							task1 = "✔";
-							task2 = "✔";
-							task3 = "✔";
-							task4 = "✔";
-							task5 = "✔";
-							task6 = "✔";
-						}
-					}
-				}
-				log.setTaskNo1(task1);
-				log.setTaskNo2(task2);
-				log.setTaskNo3(task3);
-				log.setTaskNo4(task4);
-				log.setTaskNo5(task5);
-				log.setTaskNo6(task6);
-				
-				//当充装状态为充前检验失败时,充后检查必须为空
-				//当充装状态为充装成功且充后人员FILLCHECKNO2为空时,充装时间等于充后时间,充后检查没上来,充后必须填空
-				//FILLCHECKNO2为空时,充装时间不等于充后时间,充后已经上来,用当前充装人员CngOperatorName填充
-				String task7 = "";
-				String task8 = "";
-				String task9 = "";
-				String task10 = "";
-				String task11 = "";
-				String task12 = "";
-				if(Util.isEmpty(log.getFILLCHECKNNo2())&&!Util.isEmpty(log.getFillTime1())&&!Util.isEmpty(log.getEndTime1())&&Tool.compare_date2(log.getEndTime1(), log.getFillTime1())){
-					if(!Util.isEmpty(log.getOperatorName()) && !"未知工作人员".equals(log.getOperatorName()) && !Util.isEmpty(fillcheckstr)){
-						task7 = "✔";
-						task8 = "✔";
-						task9 = "✔";
-						task10 = "✔";
-						task11 = "✔";
-						task12 = "✔";
-						if(fillcheckstr.substring(fillcheckstr.length()-1,fillcheckstr.length()).equals("1")){
-							task7="×";
-						}
-						if(fillcheckstr.substring(fillcheckstr.length()-2,fillcheckstr.length()-1).equals("1")){
-							task8="×";
-						}
-						if(fillcheckstr.substring(fillcheckstr.length()-3,fillcheckstr.length()-2).equals("1")){
-							task9="×";
-						}
-						if(fillcheckstr.substring(fillcheckstr.length()-6,fillcheckstr.length()-5).equals("1")){
-							task10="×";
-						}
-						if(fillcheckstr.substring(fillcheckstr.length()-7,fillcheckstr.length()-6).equals("1")){
-							task11="×";
-						}
-						if(fillcheckstr.substring(fillcheckstr.length()-8,fillcheckstr.length()-7).equals("1")){
-							task12="×";
-						}
-					}
-				}else if(!Util.isEmpty(log.getFILLCHECKNNo2())){
-					if(!"未知工作人员".equals(log.getFILLCHECKNName2()) && !Util.isEmpty(fillcheckstr)){
-						task7="✔";
-						task8="✔";
-						task9="✔";
-						task10 = "✔";
-						task11 = "✔";
-						task12 = "✔";
-						if(fillcheckstr.substring(fillcheckstr.length()-1,fillcheckstr.length()).equals("1")){
-							task7="×";
-						}
-						if(fillcheckstr.substring(fillcheckstr.length()-2,fillcheckstr.length()-1).equals("1")){
-							task8="×";
-						}
-						if(fillcheckstr.substring(fillcheckstr.length()-3,fillcheckstr.length()-2).equals("1")){
-							task9="×";
-						}
-						if(fillcheckstr.substring(fillcheckstr.length()-6,fillcheckstr.length()-5).equals("1")){
-							task10="×";
-						}
-						if(fillcheckstr.substring(fillcheckstr.length()-7,fillcheckstr.length()-6).equals("1")){
-							task11="×";
-						}
-						if(fillcheckstr.substring(fillcheckstr.length()-8,fillcheckstr.length()-7).equals("1")){
-							task12="×";
-						}
-					}
-				}
-				
-				log.setTaskNo7(task7);
-				log.setTaskNo8(task8);
-				log.setTaskNo9(task9);
-				log.setTaskNo10(task10);
-				log.setTaskNo11(task11);
-				log.setTaskNo12(task12);
-				
-			}
-		}
-		User u = (User) req.getSession().getAttribute(Constant.fillingSum);
-		
-		map.put("total", u.getFillingSum());
-		map.put("rows", list1);
-		String result = new JSONObject().fromObject(map).toString();
-		response.setContentType("text/html;charset=utf-8");
-		PrintWriter out = response.getWriter();
-		out.write(result);
-	}
-}
-		
+package com.runzhixing.action;
+
+import java.io.PrintWriter;
+import java.sql.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import net.sf.json.JSONObject;
+
+import org.apache.commons.lang.StringUtils;
+import org.apache.struts2.ServletActionContext;
+
+import com.opensymphony.xwork2.ActionSupport;
+import com.runzhixing.bean.CHGFillLog;
+import com.runzhixing.bean.CNGFillLog;
+import com.runzhixing.bean.User;
+import com.runzhixing.bean.page.Page;
+import com.runzhixing.constant.Constant;
+import com.runzhixing.packageProcedure.FillingDataQueryProcedure;
+import com.runzhixing.tool.Tool;
+import com.runzhixing.tool.Util;
+/**
+ * 告警参数设置
+ * @author 小黄
+ *
+ */
+@SuppressWarnings("serial")
+public class FillingDataQueryAction extends ActionSupport {
+	//设置新的告警参数
+	@SuppressWarnings({ "unchecked", "static-access" })
+	public void fillingDataQuery() throws Exception{
+		HttpServletResponse response = ServletActionContext.getResponse();
+		HttpServletRequest req = ServletActionContext.getRequest();
+		Map<String,Object> map=new HashMap<String,Object>();
+		User user = (User)req.getSession().getAttribute(Constant.userMark); 
+		
+		int moudel = user.getModule();
+		String ssid = (String) req.getSession().getAttribute(Constant.Privilege);
+		
+		//获取地址,默认全部
+		String province = req.getParameter("province");
+		String city = req.getParameter("city");
+		String country = req.getParameter("country");
+		if(province==null){
+			province = "";
+		}
+		if(city==null){
+			city = "";
+		}
+		if(country==null){
+			country = "";
+		}
+		String regionNo = province+city+country;//地区编号
+		regionNo = regionNo.replaceAll("(00)*$", "");
+		String operatorNo = req.getParameter("operatorNo");//操作员编号
+		String stationNo = req.getParameter("station");//充装点编号
+		String machineNo = req.getParameter("jqj");//设备编号
+		String gunNo = req.getParameter("gunNo");//气枪编号
+		String carNo = req.getParameter("carNo");//车牌号
+		int appType = Integer.parseInt(req.getParameter("appType"));//应用类型
+		int fillState = Integer.parseInt(req.getParameter("fillState"));//充装状态
+		int cylinderType= Integer.parseInt(req.getParameter("cylinderType")); //加气机	
+		
+		//开始时间
+		String sTime=req.getParameter("startTime");
+		String eTime=req.getParameter("endTime");
+		
+		Date startsTime = null;
+		//结束时间
+		Date endsTime = null;
+		// 0:时间无效 1:开始时间有效 2:结束时间有效 3:都有效
+		if(sTime!=null&&!sTime.equals("")){
+			startsTime = Util.dateChange(sTime);
+		}
+		if(eTime!=null&&!eTime.equals("")){
+			endsTime = Util.dateChange(eTime);
+		}
+		Long l = new java.util.Date().getTime();
+		if(startsTime==null){
+			startsTime= new java.sql.Date(l);
+		}
+		if(endsTime==null){
+			endsTime= new java.sql.Date(l+1000 * 3600 * 24L);
+		}
+		
+		
+		//根据地址获取地址编号
+		int pagesize = Integer.parseInt(req.getParameter("psize"));
+		int pageno = Integer.parseInt(req.getParameter("page"));
+		
+		if(stationNo==null||stationNo.equals("")){
+			stationNo =regionNo ;
+		}
+		if(ssid.length()==12&&moudel!=1){
+			stationNo = ssid;
+		}
+		int fillCheck2 = Integer.parseInt(req.getParameter("fillCheck2") != null?req.getParameter("fillCheck2"):"-1");
+		List<CNGFillLog>  list1 = new FillingDataQueryProcedure().fillingDataQuery(pagesize, pageno, operatorNo,stationNo,machineNo,gunNo,carNo,appType,fillState,startsTime,endsTime,cylinderType,fillCheck2);
+		if (list1 != null && list1.size() > 0) {
+			for(CNGFillLog log:list1){
+				String fillchecknNo1 = log.getFILLCHECKNNo1();
+				String operatorName = log.getOperatorName();
+				String fillchecknName1 = log.getFILLCHECKNName1();
+				if (StringUtils.isEmpty(fillchecknNo1) && StringUtils.isNotEmpty(operatorName) && !"未知工作人员".equals(operatorName)) {
+					log.setFILLCHECKNName1(operatorName);
+				}else if(StringUtils.isNotEmpty(fillchecknName1) && !"未知工作人员".equals(fillchecknName1)) {
+					log.setFILLCHECKNName1(fillchecknName1);
+				}else {
+					log.setFILLCHECKNName1("");
+				}
+				
+				String fillchecknNo2 = log.getFILLCHECKNNo2();
+				String fillchecknName2 = log.getFILLCHECKNName2();
+				
+				if (log.getFillStateNum() == 21 
+						|| ("成功充装".equals(log.getFillState()) && StringUtils.isEmpty(fillchecknNo2) && StringUtils.isEmpty(log.getFillTime1())
+								&& StringUtils.isEmpty(log.getEndTime1()) &&  log.getFillTime1().equals(log.getEndTime1())   )) {
+					log.setFILLCHECKNName2("");
+				}else if(StringUtils.isEmpty(fillchecknNo2) &&  StringUtils.isEmpty(log.getFillTime1()) && StringUtils.isEmpty(log.getEndTime1()) 
+						&& Util.str2Date(log.getEndTime1(), "yyyy-MM-dd HH:mm:ss").getTime() > Util.str2Date(log.getFillTime1(), "yyyy-MM-dd HH:mm:ss").getTime() 
+						&& StringUtils.isNotEmpty(operatorName) && !"未知工作人员".equals(operatorName)) {
+					log.setFILLCHECKNName2(operatorName);
+				}else if(StringUtils.isNotEmpty(fillchecknName2) && !"未知工作人员".equals(fillchecknName2)) {
+					log.setFILLCHECKNName2(fillchecknName2);
+				}else {
+					log.setFILLCHECKNName2("");
+				}
+				
+				String fillMonitorName = log.getFillMonitorName();
+				if (StringUtils.isEmpty(log.getFillMonitorNo())) {
+					if (StringUtils.isNotEmpty(fillchecknNo2) &&  !"未知工作人员".equals(fillchecknName2)) {
+						log.setFillMonitorName(fillchecknName2);
+					}else if (StringUtils.isNotEmpty(fillchecknNo1) &&  !"未知工作人员".equals(fillchecknName1)) {
+						log.setFillMonitorName(fillchecknName1);
+					}else if ( StringUtils.isNotEmpty(operatorName) &&  !"未知工作人员".equals(operatorName)) {
+						log.setFillMonitorName(operatorName);
+					}
+				}else {
+					if ("未知工作人员".equals(fillMonitorName)) {
+						log.setFillMonitorName("");
+					}
+				}
+				
+				if (StringUtils.isEmpty(log.getFillMonitorNo()) && StringUtils.isNotEmpty(fillchecknNo2) &&  !"未知工作人员".equals(fillchecknName2)) {
+					log.setFillMonitorName(fillchecknName2);
+				}else if (StringUtils.isEmpty(log.getFillMonitorNo()) && StringUtils.isNotEmpty(fillchecknNo1) &&  !"未知工作人员".equals(fillchecknName1)) {
+					log.setFillMonitorName(fillchecknName1);
+				}else if (StringUtils.isEmpty(log.getFillMonitorNo()) && StringUtils.isNotEmpty(operatorName) &&  !"未知工作人员".equals(operatorName)) {
+					log.setFillMonitorName(operatorName);
+				}else if(StringUtils.isNotEmpty(log.getFillMonitorNo()) && "未知工作人员".equals(fillMonitorName)){
+					log.setFillMonitorName("");
+				}
+				
+				String fillcheckstr = log.getFillcheckstr();
+				int fillStateNum = log.getFillStateNum();
+				String task1 = "✔";
+				String task2 = "✔";
+				String task3 = "✔";
+				String task4 = "✔";
+				String task5 = "✔";
+				String task6 = "✔";
+				if(!Util.isEmpty(fillcheckstr)){
+					if(fillStateNum<=0||fillStateNum>=21){
+						if(fillcheckstr.substring(fillcheckstr.length()-1,fillcheckstr.length()).equals("1")){
+							task1 = "×";
+						}
+						if(fillcheckstr.substring(fillcheckstr.length()-2,fillcheckstr.length()-1).equals("1")){
+							task2 = "×";
+						}
+						if(fillcheckstr.substring(fillcheckstr.length()-3,fillcheckstr.length()-2).equals("1")){
+							task3 = "×";
+						}
+						if(fillcheckstr.substring(fillcheckstr.length()-4,fillcheckstr.length()-3).equals("1")){
+							task4 = "×";
+						}
+						if(fillcheckstr.substring(fillcheckstr.length()-5,fillcheckstr.length()-4).equals("1")){
+							task5 = "×";
+						}
+						if(fillcheckstr.substring(fillcheckstr.length()-6,fillcheckstr.length()-5).equals("1")){
+							task6 = "×";
+						}
+						if(fillStateNum==31){
+							task1 = "✔";
+							task2 = "✔";
+							task3 = "✔";
+							task4 = "✔";
+							task5 = "✔";
+							task6 = "✔";
+						}
+					}
+				}
+				log.setTaskNo1(task1);
+				log.setTaskNo2(task2);
+				log.setTaskNo3(task3);
+				log.setTaskNo4(task4);
+				log.setTaskNo5(task5);
+				log.setTaskNo6(task6);
+				
+				//当充装状态为充前检验失败时,充后检查必须为空
+				//当充装状态为充装成功且充后人员FILLCHECKNO2为空时,充装时间等于充后时间,充后检查没上来,充后必须填空
+				//FILLCHECKNO2为空时,充装时间不等于充后时间,充后已经上来,用当前充装人员CngOperatorName填充
+				String task7 = "";
+				String task8 = "";
+				String task9 = "";
+				String task10 = "";
+				String task11 = "";
+				String task12 = "";
+				if(Util.isEmpty(log.getFILLCHECKNNo2())&&!Util.isEmpty(log.getFillTime1())&&!Util.isEmpty(log.getEndTime1())&&Tool.compare_date2(log.getEndTime1(), log.getFillTime1())){
+					if(!Util.isEmpty(log.getOperatorName()) && !"未知工作人员".equals(log.getOperatorName()) && !Util.isEmpty(fillcheckstr)){
+						task7 = "✔";
+						task8 = "✔";
+						task9 = "✔";
+						task10 = "✔";
+						task11 = "✔";
+						task12 = "✔";
+						if(fillcheckstr.substring(fillcheckstr.length()-1,fillcheckstr.length()).equals("1")){
+							task7="×";
+						}
+						if(fillcheckstr.substring(fillcheckstr.length()-2,fillcheckstr.length()-1).equals("1")){
+							task8="×";
+						}
+						if(fillcheckstr.substring(fillcheckstr.length()-3,fillcheckstr.length()-2).equals("1")){
+							task9="×";
+						}
+						if(fillcheckstr.substring(fillcheckstr.length()-6,fillcheckstr.length()-5).equals("1")){
+							task10="×";
+						}
+						if(fillcheckstr.substring(fillcheckstr.length()-7,fillcheckstr.length()-6).equals("1")){
+							task11="×";
+						}
+						if(fillcheckstr.substring(fillcheckstr.length()-8,fillcheckstr.length()-7).equals("1")){
+							task12="×";
+						}
+					}
+				}else if(!Util.isEmpty(log.getFILLCHECKNNo2())){
+					if(!"未知工作人员".equals(log.getFILLCHECKNName2()) && !Util.isEmpty(fillcheckstr)){
+						task7="✔";
+						task8="✔";
+						task9="✔";
+						task10 = "✔";
+						task11 = "✔";
+						task12 = "✔";
+						if(fillcheckstr.substring(fillcheckstr.length()-1,fillcheckstr.length()).equals("1")){
+							task7="×";
+						}
+						if(fillcheckstr.substring(fillcheckstr.length()-2,fillcheckstr.length()-1).equals("1")){
+							task8="×";
+						}
+						if(fillcheckstr.substring(fillcheckstr.length()-3,fillcheckstr.length()-2).equals("1")){
+							task9="×";
+						}
+						if(fillcheckstr.substring(fillcheckstr.length()-6,fillcheckstr.length()-5).equals("1")){
+							task10="×";
+						}
+						if(fillcheckstr.substring(fillcheckstr.length()-7,fillcheckstr.length()-6).equals("1")){
+							task11="×";
+						}
+						if(fillcheckstr.substring(fillcheckstr.length()-8,fillcheckstr.length()-7).equals("1")){
+							task12="×";
+						}
+					}
+				}
+				
+				log.setTaskNo7(task7);
+				log.setTaskNo8(task8);
+				log.setTaskNo9(task9);
+				log.setTaskNo10(task10);
+				log.setTaskNo11(task11);
+				log.setTaskNo12(task12);
+				
+			}
+		}
+		User u = (User) req.getSession().getAttribute(Constant.fillingSum);
+		
+		map.put("total", u.getFillingSum());
+		map.put("rows", list1);
+		String result = new JSONObject().fromObject(map).toString();
+		response.setContentType("text/html;charset=utf-8");
+		PrintWriter out = response.getWriter();
+		out.write(result);
+	}
+	
+	/**
+	 * 氢气充装数据查询
+	 * @throws Exception 
+	 * @return void 
+	 * @author yxh
+	 * @date 2022年9月17日下午8:13:01
+	 * @throws
+	 */
+	public void chgFillingDataQuery() throws Exception{
+		HttpServletResponse response = ServletActionContext.getResponse();
+		HttpServletRequest req = ServletActionContext.getRequest();
+		Map<String,Object> map=new HashMap<String,Object>();
+		User user = (User)req.getSession().getAttribute(Constant.userMark); 
+		int moudel = user.getModule();
+		String ssid = (String) req.getSession().getAttribute(Constant.Privilege);
+		
+		//获取地址,默认全部
+		String province = req.getParameter("province");
+		String city = req.getParameter("city");
+		String country = req.getParameter("country");
+		if(province==null){
+			province = "";
+		}
+		if(city==null){
+			city = "";
+		}
+		if(country==null){
+			country = "";
+		}
+		String regionNo = province+city+country;//地区编号
+		regionNo = regionNo.replaceAll("(00)*$", "");
+		
+		String stationNo = req.getParameter("station");//充装点编号
+		String carNo = req.getParameter("carNo");//车牌号
+		//开始时间
+		String sTime=req.getParameter("startTime");
+		String eTime=req.getParameter("endTime");
+		Date startsTime = null;
+		//结束时间
+		Date endsTime = null;
+		// 0:时间无效 1:开始时间有效 2:结束时间有效 3:都有效
+		if(sTime!=null&&!sTime.equals("")){
+			startsTime = Util.dateChange(sTime);
+		}
+		if(eTime!=null&&!eTime.equals("")){
+			endsTime = Util.dateChange(eTime);
+		}
+		Long l = new java.util.Date().getTime();
+		if(startsTime==null){
+			startsTime= new java.sql.Date(l);
+		}
+		if(endsTime==null){
+			endsTime= new java.sql.Date(l+1000 * 3600 * 24L);
+		}
+		//根据地址获取地址编号
+		int pagesize = Integer.parseInt(req.getParameter("psize"));
+		int pageno = Integer.parseInt(req.getParameter("page"));
+		
+		if(stationNo==null||stationNo.equals("")){
+			stationNo =regionNo ;
+		}
+		if(ssid.length()==12&&moudel!=1){
+			stationNo = ssid;
+		}
+		
+		List<CHGFillLog>  list1 = new FillingDataQueryProcedure().chgFillingDataQuery(pagesize, pageno,stationNo,carNo,startsTime,endsTime);
+		User u = (User) req.getSession().getAttribute(Constant.fillingSum);
+		map.put("total", u.getFillingSum());
+		map.put("rows", list1);
+		String result = new JSONObject().fromObject(map).toString();
+		response.setContentType("text/html;charset=utf-8");
+		PrintWriter out = response.getWriter();
+		out.write(result);
+	}
+	
+	
+	
+	
+	
+	
+	
+	
+	
+}
+		

+ 503 - 0
src/com/runzhixing/bean/CHGFillLog.java

@@ -0,0 +1,503 @@
+package com.runzhixing.bean;
+
+import java.util.Date;
+
+/**
+ * 氢气充装数据
+ * @ClassName: CHGFillLog
+ * @Description: TODO
+ * @author yxh
+ * @date 2022年9月17日
+ */
+public class CHGFillLog {
+
+	private String guid;
+	private String stationNo;//STATIONNO站编号
+	private String carNo;//CARNO车牌号
+	private int plateType;//PLATETYPE车牌类型
+	private int plateColor;//PLATECOLOR车牌颜色
+	private String medium;//MEDIUM充装介质
+	private String regNo;//REGNO使用登记证号
+	private Date regDate;//REGDATE发证时间
+	private Date regValidity;//REGVALIDITY证件有效期
+	private String regUnit;//REGUNIT发证单位
+	private int cylinderType;//CYLINDERTYPE气瓶类型
+	private String cylinderNo;//CYLINDERNO气瓶出厂编号
+	private String productName;//PRODUCTNAME生产厂家
+	private Date productDate;//PRODUCTDATE生产日期
+	private Date startuseDate;//STARTUSEDATE投用日期
+	private Date yearLimit;//YEARLIMIT使用年限
+	private String productLicence;//PRODUCTLICENCE生产许可
+	private String productType;//PRODUCTTYPE气瓶产品型号
+	private float weight;//WEIGHT重量
+	private float vol;//VOL容积
+	private float thickness;//THICKNESS壁厚
+	private float press;//PRESS压力
+	private String material;//MATERIAL材质
+	private String installStation;//INSTALLSTATION安装单位
+	private String installCert;//INSTALLCERT安装合格证
+	private Date installDate;//INSTALLDATE安装时间
+	private String monitorStation;//MONITORSTATION监检单位
+	private String monitorCert;//MONITORCERT监检合格证
+	private Date monitorDate;//MONITORDATE监检时间
+	private String checkStation;//CHECKSTATION检验单位
+	private String checkCert;//CHECKCERT检验合格证
+	private Date checkDate;//CHECKDATE检验时间
+	private Date nextCheckDate;//NEXTCHECKDATE下次检验时间
+	private String beforeChecker;//BEFORECHECKER充装检查人员
+	private Date beforeTime;//BEFORETIME充半检查时间
+	private String beforeItems;//BEFOREITEMS充装前检查项目
+	private int beforeResult;//BEFORERESULT充前检查结果
+	private String beforeException;//BEFOREEXCEPTION充前检查异常项目
+	private String carRemark;//CARREMARK车辆其它信息
+	private String cylinderRemark;//CYLINDERREMARK气瓶其它信息
+	private String beforeVerifier;//BEFOREVERIFIER充前审核人员
+	private String operatorName;//OPERATORNAME操作人员姓名
+	private String operatorId;//OPERATORID操作人员身份证号
+	private String operatorNo;//OPERATORNO操作人员编号
+	private String operatorType;//OPERATORTYPE操作人员类型
+	private String operatorDoc;//OPERATORDOC操作人员档案号
+	private String operatorCert;//OPERATORCERT操作人员班证书
+	private Date operatorLicDate;//OPERATORLICDATE发证时间
+	private Date operatorLicValidity;//OPERATORLICVALIDITY证书有效期
+	private String machineFactory;//MACHINEFACTORY充装设备厂家
+	private String machineNo;//MACHINENO充装设备编号
+	private String machineName;//MACHINENAME充装设备名称
+	private String gunNo;//GUNNO充装枪号
+	private Date fillStartTime;//FILLSTARTTIME充装时间
+	private int FillBeforePress;//FILLBEFOREPRESS充前压力
+	private Date fillEndTime;//FILLENDTIME充装结束时间
+	private int FillEndPress;//FILLENDPRESS充装结束压力
+	private int FillUnit;//FILLUNIT充装量单位
+	private int FillNum;//FILLNUM充装量
+	private int FillDensity;//FILLDENSITY充装密度
+	private float money;//MONEY金额
+	private String afterChecker;//AFTERCHECKER充后检查人员
+	private Date afterTime;//AFTERTIME充后检查时间
+	private String afterTimes;//AFTERITEMS充后检查项目
+	private int afterResult;//AFTERRESULT充后结果
+	private String afterException;//AFTEREXCEPTION充后检查异常项目
+	private String afterVerifier;//AFTERVERIFIER充后审核人员
+	private String remark;//REMARK备注及其它信息
+	
+	
+	private String stationName;//STATIONNAME站名称
+	
+	
+	public String getGuid() {
+		return guid;
+	}
+	public void setGuid(String guid) {
+		this.guid = guid;
+	}
+	public String getStationNo() {
+		return stationNo;
+	}
+	public void setStationNo(String stationNo) {
+		this.stationNo = stationNo;
+	}
+	public String getCarNo() {
+		return carNo;
+	}
+	public void setCarNo(String carNo) {
+		this.carNo = carNo;
+	}
+	public int getPlateType() {
+		return plateType;
+	}
+	public void setPlateType(int plateType) {
+		this.plateType = plateType;
+	}
+	public int getPlateColor() {
+		return plateColor;
+	}
+	public void setPlateColor(int plateColor) {
+		this.plateColor = plateColor;
+	}
+	public String getMedium() {
+		return medium;
+	}
+	public void setMedium(String medium) {
+		this.medium = medium;
+	}
+	public String getRegNo() {
+		return regNo;
+	}
+	public void setRegNo(String regNo) {
+		this.regNo = regNo;
+	}
+	public Date getRegDate() {
+		return regDate;
+	}
+	public void setRegDate(Date regDate) {
+		this.regDate = regDate;
+	}
+	public Date getRegValidity() {
+		return regValidity;
+	}
+	public void setRegValidity(Date regValidity) {
+		this.regValidity = regValidity;
+	}
+	public String getRegUnit() {
+		return regUnit;
+	}
+	public void setRegUnit(String regUnit) {
+		this.regUnit = regUnit;
+	}
+	public int getCylinderType() {
+		return cylinderType;
+	}
+	public void setCylinderType(int cylinderType) {
+		this.cylinderType = cylinderType;
+	}
+	public String getCylinderNo() {
+		return cylinderNo;
+	}
+	public void setCylinderNo(String cylinderNo) {
+		this.cylinderNo = cylinderNo;
+	}
+	public String getProductName() {
+		return productName;
+	}
+	public void setProductName(String productName) {
+		this.productName = productName;
+	}
+	public Date getProductDate() {
+		return productDate;
+	}
+	public void setProductDate(Date productDate) {
+		this.productDate = productDate;
+	}
+	public Date getStartuseDate() {
+		return startuseDate;
+	}
+	public void setStartuseDate(Date startuseDate) {
+		this.startuseDate = startuseDate;
+	}
+	public Date getYearLimit() {
+		return yearLimit;
+	}
+	public void setYearLimit(Date yearLimit) {
+		this.yearLimit = yearLimit;
+	}
+	public String getProductLicence() {
+		return productLicence;
+	}
+	public void setProductLicence(String productLicence) {
+		this.productLicence = productLicence;
+	}
+	public String getProductType() {
+		return productType;
+	}
+	public void setProductType(String productType) {
+		this.productType = productType;
+	}
+	public float getWeight() {
+		return weight;
+	}
+	public void setWeight(float weight) {
+		this.weight = weight;
+	}
+	public float getVol() {
+		return vol;
+	}
+	public void setVol(float vol) {
+		this.vol = vol;
+	}
+	public float getThickness() {
+		return thickness;
+	}
+	public void setThickness(float thickness) {
+		this.thickness = thickness;
+	}
+	public float getPress() {
+		return press;
+	}
+	public void setPress(float press) {
+		this.press = press;
+	}
+	public String getMaterial() {
+		return material;
+	}
+	public void setMaterial(String material) {
+		this.material = material;
+	}
+	public String getInstallStation() {
+		return installStation;
+	}
+	public void setInstallStation(String installStation) {
+		this.installStation = installStation;
+	}
+	public String getInstallCert() {
+		return installCert;
+	}
+	public void setInstallCert(String installCert) {
+		this.installCert = installCert;
+	}
+	public Date getInstallDate() {
+		return installDate;
+	}
+	public void setInstallDate(Date installDate) {
+		this.installDate = installDate;
+	}
+	public String getMonitorStation() {
+		return monitorStation;
+	}
+	public void setMonitorStation(String monitorStation) {
+		this.monitorStation = monitorStation;
+	}
+	public String getMonitorCert() {
+		return monitorCert;
+	}
+	public void setMonitorCert(String monitorCert) {
+		this.monitorCert = monitorCert;
+	}
+	public Date getMonitorDate() {
+		return monitorDate;
+	}
+	public void setMonitorDate(Date monitorDate) {
+		this.monitorDate = monitorDate;
+	}
+	public String getCheckStation() {
+		return checkStation;
+	}
+	public void setCheckStation(String checkStation) {
+		this.checkStation = checkStation;
+	}
+	public String getCheckCert() {
+		return checkCert;
+	}
+	public void setCheckCert(String checkCert) {
+		this.checkCert = checkCert;
+	}
+	public Date getCheckDate() {
+		return checkDate;
+	}
+	public void setCheckDate(Date checkDate) {
+		this.checkDate = checkDate;
+	}
+	public Date getNextCheckDate() {
+		return nextCheckDate;
+	}
+	public void setNextCheckDate(Date nextCheckDate) {
+		this.nextCheckDate = nextCheckDate;
+	}
+	public String getBeforeChecker() {
+		return beforeChecker;
+	}
+	public void setBeforeChecker(String beforeChecker) {
+		this.beforeChecker = beforeChecker;
+	}
+	public Date getBeforeTime() {
+		return beforeTime;
+	}
+	public void setBeforeTime(Date beforeTime) {
+		this.beforeTime = beforeTime;
+	}
+	public String getBeforeItems() {
+		return beforeItems;
+	}
+	public void setBeforeItems(String beforeItems) {
+		this.beforeItems = beforeItems;
+	}
+	public int getBeforeResult() {
+		return beforeResult;
+	}
+	public void setBeforeResult(int beforeResult) {
+		this.beforeResult = beforeResult;
+	}
+	public String getBeforeException() {
+		return beforeException;
+	}
+	public void setBeforeException(String beforeException) {
+		this.beforeException = beforeException;
+	}
+	public String getCarRemark() {
+		return carRemark;
+	}
+	public void setCarRemark(String carRemark) {
+		this.carRemark = carRemark;
+	}
+	public String getCylinderRemark() {
+		return cylinderRemark;
+	}
+	public void setCylinderRemark(String cylinderRemark) {
+		this.cylinderRemark = cylinderRemark;
+	}
+	public String getBeforeVerifier() {
+		return beforeVerifier;
+	}
+	public void setBeforeVerifier(String beforeVerifier) {
+		this.beforeVerifier = beforeVerifier;
+	}
+	public String getOperatorName() {
+		return operatorName;
+	}
+	public void setOperatorName(String operatorName) {
+		this.operatorName = operatorName;
+	}
+	public String getOperatorId() {
+		return operatorId;
+	}
+	public void setOperatorId(String operatorId) {
+		this.operatorId = operatorId;
+	}
+	public String getOperatorNo() {
+		return operatorNo;
+	}
+	public void setOperatorNo(String operatorNo) {
+		this.operatorNo = operatorNo;
+	}
+	public String getOperatorType() {
+		return operatorType;
+	}
+	public void setOperatorType(String operatorType) {
+		this.operatorType = operatorType;
+	}
+	public String getOperatorDoc() {
+		return operatorDoc;
+	}
+	public void setOperatorDoc(String operatorDoc) {
+		this.operatorDoc = operatorDoc;
+	}
+	public String getOperatorCert() {
+		return operatorCert;
+	}
+	public void setOperatorCert(String operatorCert) {
+		this.operatorCert = operatorCert;
+	}
+	public Date getOperatorLicDate() {
+		return operatorLicDate;
+	}
+	public void setOperatorLicDate(Date operatorLicDate) {
+		this.operatorLicDate = operatorLicDate;
+	}
+	public Date getOperatorLicValidity() {
+		return operatorLicValidity;
+	}
+	public void setOperatorLicValidity(Date operatorLicValidity) {
+		this.operatorLicValidity = operatorLicValidity;
+	}
+	public String getMachineFactory() {
+		return machineFactory;
+	}
+	public void setMachineFactory(String machineFactory) {
+		this.machineFactory = machineFactory;
+	}
+	public String getMachineNo() {
+		return machineNo;
+	}
+	public void setMachineNo(String machineNo) {
+		this.machineNo = machineNo;
+	}
+	public String getMachineName() {
+		return machineName;
+	}
+	public void setMachineName(String machineName) {
+		this.machineName = machineName;
+	}
+	public String getGunNo() {
+		return gunNo;
+	}
+	public void setGunNo(String gunNo) {
+		this.gunNo = gunNo;
+	}
+	public Date getFillStartTime() {
+		return fillStartTime;
+	}
+	public void setFillStartTime(Date fillStartTime) {
+		this.fillStartTime = fillStartTime;
+	}
+	public int getFillBeforePress() {
+		return FillBeforePress;
+	}
+	public void setFillBeforePress(int fillBeforePress) {
+		FillBeforePress = fillBeforePress;
+	}
+	public Date getFillEndTime() {
+		return fillEndTime;
+	}
+	public void setFillEndTime(Date fillEndTime) {
+		this.fillEndTime = fillEndTime;
+	}
+	public int getFillEndPress() {
+		return FillEndPress;
+	}
+	public void setFillEndPress(int fillEndPress) {
+		FillEndPress = fillEndPress;
+	}
+	public int getFillUnit() {
+		return FillUnit;
+	}
+	public void setFillUnit(int fillUnit) {
+		FillUnit = fillUnit;
+	}
+	public int getFillNum() {
+		return FillNum;
+	}
+	public void setFillNum(int fillNum) {
+		FillNum = fillNum;
+	}
+	public int getFillDensity() {
+		return FillDensity;
+	}
+	public void setFillDensity(int fillDensity) {
+		FillDensity = fillDensity;
+	}
+	public float getMoney() {
+		return money;
+	}
+	public void setMoney(float money) {
+		this.money = money;
+	}
+	public String getAfterChecker() {
+		return afterChecker;
+	}
+	public void setAfterChecker(String afterChecker) {
+		this.afterChecker = afterChecker;
+	}
+	public Date getAfterTime() {
+		return afterTime;
+	}
+	public void setAfterTime(Date afterTime) {
+		this.afterTime = afterTime;
+	}
+	public String getAfterTimes() {
+		return afterTimes;
+	}
+	public void setAfterTimes(String afterTimes) {
+		this.afterTimes = afterTimes;
+	}
+	public int getAfterResult() {
+		return afterResult;
+	}
+	public void setAfterResult(int afterResult) {
+		this.afterResult = afterResult;
+	}
+	public String getAfterException() {
+		return afterException;
+	}
+	public void setAfterException(String afterException) {
+		this.afterException = afterException;
+	}
+	public String getAfterVerifier() {
+		return afterVerifier;
+	}
+	public void setAfterVerifier(String afterVerifier) {
+		this.afterVerifier = afterVerifier;
+	}
+	public String getRemark() {
+		return remark;
+	}
+	public void setRemark(String remark) {
+		this.remark = remark;
+	}
+	public String getStationName() {
+		return stationName;
+	}
+	public void setStationName(String stationName) {
+		this.stationName = stationName;
+	}
+	
+	
+}

+ 553 - 395
src/com/runzhixing/packageProcedure/FillingDataQueryProcedure.java

@@ -1,395 +1,553 @@
-package com.runzhixing.packageProcedure;
-
-import java.io.UnsupportedEncodingException;
-import java.sql.CallableStatement;
-import java.sql.Connection;
-import java.sql.Date;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.sql.Types;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import javax.servlet.http.HttpServletRequest;
-
-import org.apache.struts2.ServletActionContext;
-
-import java.sql.ResultSetMetaData;
-
-import com.runzhixing.bean.CNGFillLog;
-import com.runzhixing.bean.CNGFillLog1;
-import com.runzhixing.bean.CNGMachineState;
-import com.runzhixing.bean.CngFillLogs;
-import com.runzhixing.bean.User;
-import com.runzhixing.constant.Constant;
-import com.runzhixing.db.JDBCUtils;
-import com.runzhixing.tool.Tool;
-import com.runzhixing.tool.Util;
-
-import oracle.jdbc.OracleTypes;
-
-
-/**
- * 充装数据查询存储函数
- * @author 小黄
- *
- */
-public class FillingDataQueryProcedure {
-	
-	/**
-	 * 外部调用充装数据接口
-	 * @param un
-	 * @param ps
-	 * @return
-	 */
-	@SuppressWarnings("unchecked")
-	public List<CngFillLogs> fillDataQuery(int pagesize, int pageno,String operatorNo, String stationNo, String machineNo,String gunNo, String carNo, int appType, int fillState,Date startsTime, Date endsTime,int cylinderType){
-		List<CngFillLogs> list=new ArrayList<CngFillLogs>();
-		Map<Integer, Object> reValues = new HashMap<Integer, Object>();
-//		String sql = "{?=call PA_CNGSTATION_NEW.GetFillLog(?,?,?,?,?,?,?,?,?,?,?,?,?,?)}";
-		String sql = "{?=call PA_CNGSTATION_NEW.GetFillLog(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)}";
-		Connection conn =null;
-		CallableStatement call = null;
-		ResultSet rs = null;
-		try {
-			conn = JDBCUtils.getConnection();
-			call = (CallableStatement) conn.prepareCall(sql);
-			call.registerOutParameter(1, Types.INTEGER);//返回值
-			call.setInt(2 ,pagesize);//每次取的行数
-			call.setInt(3, pageno);//第几页
-			call.setString(4,operatorNo);//操作员编号
-			call.setString(5,stationNo);//充装点编号
-			call.setString(6,machineNo);//设备编号
-			call.setString(7,gunNo);//气枪编号
-			call.setString(8,carNo);//车牌号
-			call.setInt(9,appType);//应用类型
-			call.setInt(10, fillState);//充装状态
-			call.setDate(11, startsTime);
-			call.setDate(12, endsTime);
-			call.setInt(13, cylinderType);
-			call.setInt(14, -1);
-			call.registerOutParameter(15,Types.INTEGER);//总行数
-			call.registerOutParameter(16, OracleTypes.CURSOR);//结果集
-			call.execute();
-			int total = ((Integer) call.getObject(15)).intValue();
-			HttpServletRequest req = ServletActionContext.getRequest();
-			User user = new User();
-			user.setFillingSum(total);
-			req.getSession().setAttribute(Constant.fillingSum+"123", user);
-			rs = (ResultSet) call.getObject(16);
-			while(rs.next()){
-				CngFillLogs log = new CngFillLogs();
-//				log.setStationNo(rs.getString("cngstationno"));
-				log.setStationNo(rs.getString("cngstationname"));
-//				log.setMachineNo(rs.getString("cngmachineno"));
-				log.setMachineNo(rs.getString("cngmachinename"));
-				log.setGunNo(rs.getInt("cnggunno"));
-				log.setMedia(rs.getInt("BENEFITTYPE"));
-//				log.setOperator(rs.getString("cngoperatorno"));
-				log.setOperator(rs.getString("cngoperatorname"));
-				log.setFillState(rs.getString("fillstate"));
-				log.setFillTime(rs.getTimestamp("filltime"));
-				log.setEndTime(rs.getTimestamp("endtime"));
-				log.setFillCheckName1(rs.getString("FILLCHECKNNAME1"));
-				log.setFillCheckName2(rs.getString("FILLCHECKNAME2"));
-				log.setCarNo(rs.getString("carno"));
-				log.setAppType(rs.getString("apptype"));
-				log.setPlateType(rs.getString("platetypename"));
-				log.setCylinderNum(rs.getInt("cylindernum"));
-				log.setRegNo(rs.getString("regno"));
-				log.setNowNumber(rs.getInt("nownumber"));
-				log.setLowPress(rs.getFloat("lowpress"));
-				log.setHighPress(rs.getFloat("highpress"));
-				log.setFlux(rs.getFloat("flux"));
-				log.setMoney(rs.getFloat("money"));
-				
-				list.add(log);
-				log=null;
-				
-				
-				
-			}	
-			reValues.put(1, list);
-		} catch (Exception e) {
-			e.printStackTrace();
-		}
-		finally{
-			JDBCUtils.release(conn, call, rs);
-		}
-		return (List<CngFillLogs>) reValues.get(1);
-	}
-	
-	/**
-	 * 充装数据查询存储函数
-	 * @param un
-	 * @param ps
-	 * @return
-	 */
-	@SuppressWarnings("unchecked")
-	public List<CNGFillLog> fillingDataQuery(int pagesize, int pageno,String operatorNo, String stationNo, String machineNo,String gunNo, String carNo, int appType, int fillState,Date startsTime, Date endsTime,int cylinderType,int fillCheck2){
-		List<CNGFillLog> list=new ArrayList<CNGFillLog>();
-		Map<Integer, Object> reValues = new HashMap<Integer, Object>();
-//		String sql = "{?=call PA_CNGSTATION_NEW.GetFillLog(?,?,?,?,?,?,?,?,?,?,?,?,?,?)}";
-		String sql = "{?=call PA_CNGSTATION_NEW.GetFillLog(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)}";
-		Connection conn =null;
-		
-		CallableStatement call = null;
-		
-		ResultSet rs = null;
-		try {
-			conn = JDBCUtils.getConnection();
-			
-			call = (CallableStatement) conn.prepareCall(sql);
-			call.registerOutParameter(1, Types.INTEGER);//返回值
-			
-			call.setInt(2 ,pagesize);//每次取的行数
-			call.setInt(3, pageno);//第几页
-			call.setString(4,operatorNo);//操作员编号
-			call.setString(5,stationNo);//充装点编号
-			call.setString(6,machineNo);//设备编号
-			call.setString(7,gunNo);//气枪编号
-			call.setString(8,carNo);//车牌号
-			call.setInt(9,appType);//应用类型
-			call.setInt(10, fillState);//充装状态
-			call.setDate(11, startsTime);
-			call.setDate(12, endsTime);
-			call.setInt(13, cylinderType);
-			call.setInt(14, fillCheck2);//充后检查人员  -1全部  0无  1有
-			call.registerOutParameter(15,Types.INTEGER);//总行数
-			call.registerOutParameter(16, OracleTypes.CURSOR);//结果集
-			call.execute();
-			
-			int total = ((Integer) call.getObject(15)).intValue();
-			HttpServletRequest req = ServletActionContext.getRequest();
-			User user = new User();
-			user.setFillingSum(total);
-			req.getSession().setAttribute(Constant.fillingSum, user);
-			
-			rs = (ResultSet) call.getObject(16);
-//			Tool.printRsDetail(rs);
-			while(rs.next()){
-				CNGFillLog obj=new CNGFillLog();
-				obj.setAppType(rs.getString("apptype"));
-				obj.setCarNo(rs.getString("carno"));
-				obj.setFixCarNo(fixCarNo(rs.getString("carno")));
-				obj.setCylinderNum(rs.getInt("cylindernum"));
-				obj.setEndTime(rs.getTimestamp("endtime"));
-				obj.setEndTime1(Util.jiequString(rs.getString("endtime"), 19));
-				obj.setFillState(rs.getString("fillstate"));
-				obj.setFillTime(rs.getTimestamp("filltime"));
-				obj.setFillTime1(Util.jiequString(rs.getString("filltime"), 19));
-				obj.setGunNo(rs.getInt("cnggunno"));
-				obj.setMachineNo(rs.getString("cngmachineno"));
-				obj.setMachineName(rs.getString("cngmachinename"));
-				
-				obj.setOperatorName(rs.getString("cngoperatorname"));
-				obj.setOperatorNo(rs.getString("cngoperatorno"));
-				
-				obj.setRegNo(rs.getString("regno"));
-				obj.setStationNo(rs.getString("cngstationno"));
-				obj.setStationName(rs.getString("cngstationname"));
-				
-				obj.setTagNo(rs.getString("tagno"));
-				obj.setTagType(rs.getInt("tagtype"));
-				obj.setTagUid(rs.getString("taguid"));
-				obj.setTac(rs.getString("tac"));
-				obj.setLeftNumber(rs.getString("leftnumber"));
-				obj.setNowNumber(rs.getInt("nownumber"));
-				obj.setLowPress(rs.getFloat("lowpress"));
-				obj.setHighPress(rs.getFloat("highpress"));
-				obj.setFlux(rs.getFloat("flux"));
-				obj.setMoney(rs.getFloat("money"));
-				obj.setPlateType(rs.getInt("platetype"));
-				obj.setPlateTypeName(rs.getString("platetypename"));
-				obj.setMedia(rs.getInt("BENEFITTYPE"));
-				obj.setFillStateNum(rs.getInt("fillstatenum"));
-				obj.setFillcheck(rs.getInt("FILLCHECK"));
-				obj.setFillcheckstr(Util.toBinary(rs.getInt("FILLCHECK"), 8));
-				
-				obj.setFILLCHECKNName1(rs.getString("FILLCHECKNNAME1"));
-				obj.setFILLCHECKNName2(rs.getString("FILLCHECKNAME2"));
-				obj.setFillMonitorName(rs.getString("FillMonitorName"));
-				
-				obj.setFILLCHECKNNo1(rs.getString("FILLCHECKNO1"));
-				obj.setFILLCHECKNNo2(rs.getString("FILLCHECKNO2"));
-				obj.setFillMonitorNo(rs.getString("FillMonitorNo"));
-				list.add(obj);
-				obj=null;
-				
-				
-				
-			}	
-			reValues.put(1, list);
-		} catch (Exception e) {
-			e.printStackTrace();
-		}
-		finally{
-			JDBCUtils.release(conn, call, rs);
-		}
-		return (List<CNGFillLog>) reValues.get(1);
-	}
-	
-	
-	private String fixCarNo(String carNo) {
-	    StringBuilder result = new StringBuilder();
-	    if (carNo!=null && !carNo.equals("")) {
-		byte[] t;
-		try {
-		    t = carNo.getBytes("utf-8");
-		    for (int i = 0;i < t.length; ++i) {
-			result.append(String.format("%02X", t[i]));
-		    }
-		} catch (UnsupportedEncodingException e) {
-		    // TODO Auto-generated catch block
-		    e.printStackTrace();
-		}
-		
-	    }
-	    return result.toString();
-	}
-
-	public List<CNGFillLog> latelyFill(String day1, String day2,
-			String carGuid, String cylinderGuid) {
-		List<CNGFillLog> list=new ArrayList<CNGFillLog>();
-		Map<Integer, Object> reValues = new HashMap<Integer, Object>();
-		String sql = "{?=call PA_CNGSTATION_NEW.GetFillLogByDay(?,?,?,?,?)}";
-		
-		Connection conn =null;
-		
-		CallableStatement call = null;
-		
-		ResultSet rs = null;
-		try {
-			conn = JDBCUtils.getConnection();
-			
-			call = (CallableStatement) conn.prepareCall(sql);
-			int index=1;
-			call.registerOutParameter(index, Types.INTEGER);index++;
-			call.setString(index,carGuid);index++;
-			call.setString(index,cylinderGuid);index++;
-			call.setInt(index ,Integer.parseInt(day1));index++;
-			call.setInt(index, Integer.parseInt(day2));index++;
-			call.registerOutParameter(index, OracleTypes.CURSOR);
-			call.execute();
-			
-			
-			rs = (ResultSet) call.getObject(index);
-			while(rs.next()){
-				CNGFillLog obj=new CNGFillLog();
-				obj.setAppType(rs.getString("apptype"));
-				obj.setCarNo(rs.getString("carno"));
-				obj.setFixCarNo(fixCarNo(rs.getString("carno")));
-				obj.setCylinderNum(rs.getInt("cylindernum"));
-//				obj.setEndTime(rs.getTimestamp("endtime"));
-				obj.setEndTime1(Util.jiequString(rs.getString("endtime"), 19));
-				obj.setFillState(rs.getString("fillstate"));
-//				obj.setFillTime(rs.getTimestamp("filltime"));
-				obj.setFillTime1(Util.jiequString(rs.getString("filltime"), 19));
-				obj.setGunNo(rs.getInt("cnggunno"));
-				obj.setMachineNo(rs.getString("cngmachineno"));
-				obj.setOperatorName(rs.getString("cngoperatorno"));
-				obj.setRegNo(rs.getString("regno"));
-				obj.setStationNo(rs.getString("cngstationno"));
-				obj.setTagNo(rs.getString("tagno"));
-				obj.setTagType(rs.getInt("tagtype"));
-				obj.setTagUid(rs.getString("taguid"));
-				obj.setLeftNumber(rs.getString("leftnumber"));
-				obj.setNowNumber(rs.getInt("nownumber"));
-				obj.setLowPress(rs.getFloat("lowpress"));
-				obj.setHighPress(rs.getFloat("highpress"));
-				obj.setFlux(rs.getFloat("flux"));
-				obj.setMoney(rs.getFloat("money"));
-				obj.setPlateType(rs.getInt("platetype"));
-				obj.setPlateTypeName(rs.getString("platetypename"));
-				obj.setMedia(rs.getInt("BENEFITTYPE"));
-				obj.setFillStateNum(rs.getInt("fillstatenum"));
-				obj.setFillcheck(rs.getInt("FILLCHECK"));
-				obj.setFillcheckstr(Util.toBinary(rs.getInt("FILLCHECK"), 8));
-				list.add(obj);
-				obj=null;
-				
-				
-				
-			}	
-			reValues.put(1, list);
-		} catch (Exception e) {
-			e.printStackTrace();
-		}
-		finally{
-			JDBCUtils.release(conn, call, rs);
-		}
-		return (List<CNGFillLog>) reValues.get(1);
-	}
-	public List<CNGFillLog1> latelyFill123(String day1, String day2,
-			String carGuid, String cylinderGuid) {
-		List<CNGFillLog1> list=new ArrayList<CNGFillLog1>();
-		Map<Integer, Object> reValues = new HashMap<Integer, Object>();
-		String sql = "{?=call PA_CNGSTATION_NEW.GetFillLogByDay(?,?,?,?,?)}";
-		Connection conn =null;
-		
-		CallableStatement call = null;
-		
-		ResultSet rs = null;
-		try {
-			conn = JDBCUtils.getConnection();
-			
-			call = (CallableStatement) conn.prepareCall(sql);
-			int index=1;
-			call.registerOutParameter(index, Types.INTEGER);index++;
-			call.setString(index,carGuid);index++;
-			call.setString(index,cylinderGuid);index++;
-			call.setInt(index ,Integer.parseInt(day1));index++;
-			call.setInt(index, Integer.parseInt(day2));index++;
-			call.registerOutParameter(index, OracleTypes.CURSOR);
-			call.execute();
-			
-			
-			rs = (ResultSet) call.getObject(index);
-			while(rs.next()){
-				CNGFillLog1 obj = new CNGFillLog1();
-				obj.setAppType(rs.getString("apptype"));
-				obj.setCarNo(rs.getString("carno"));
-				obj.setFixCarNo(fixCarNo(rs.getString("carno")));
-				obj.setCylinderNum(rs.getInt("cylindernum"));
-				obj.setEndTime(Util.jiequString(rs.getString("endtime"), 19));
-				obj.setFillState(rs.getString("fillstate"));
-				obj.setFillTime(Util.jiequString(rs.getString("filltime"), 19));
-				obj.setGunNo(rs.getInt("cnggunno"));
-				obj.setMachineNo(rs.getString("cngmachineno"));
-				obj.setOperatorName(rs.getString("cngoperatorno"));
-				obj.setRegNo(rs.getString("regno"));
-				obj.setStationNo(rs.getString("cngstationno"));
-				obj.setTagNo(rs.getString("tagno"));
-				obj.setTagType(rs.getInt("tagtype"));
-				obj.setTagUid(rs.getString("taguid"));
-				obj.setLeftNumber(rs.getString("leftnumber"));
-				obj.setNowNumber(rs.getInt("nownumber"));
-				obj.setLowPress(rs.getFloat("lowpress"));
-				obj.setHighPress(rs.getFloat("highpress"));
-				obj.setFlux(rs.getFloat("flux"));
-				obj.setMoney(rs.getFloat("money"));
-				obj.setPlateType(rs.getInt("platetype"));
-				obj.setPlateTypeName(rs.getString("platetypename"));
-				obj.setMedia(rs.getInt("BENEFITTYPE"));
-				obj.setFillStateNum(rs.getInt("fillstatenum"));
-				obj.setFillcheck(rs.getInt("FILLCHECK"));
-				obj.setFillcheckstr(Util.toBinary(rs.getInt("FILLCHECK"), 8));
-				list.add(obj);
-				obj=null;
-				
-				
-				
-			}	
-			reValues.put(1, list);
-		} catch (Exception e) {
-			e.printStackTrace();
-		}
-		finally{
-			JDBCUtils.release(conn, call, rs);
-		}
-		return (List<CNGFillLog1>) reValues.get(1);
-	}
-
-}
+package com.runzhixing.packageProcedure;
+
+import java.io.UnsupportedEncodingException;
+import java.sql.CallableStatement;
+import java.sql.Connection;
+import java.sql.Date;
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.sql.Statement;
+import java.sql.Types;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import javax.servlet.http.HttpServletRequest;
+
+import org.apache.commons.lang3.ObjectUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.struts2.ServletActionContext;
+
+import java.sql.ResultSetMetaData;
+
+import com.runzhixing.bean.CHGFillLog;
+import com.runzhixing.bean.CNGFillLog;
+import com.runzhixing.bean.CNGFillLog1;
+import com.runzhixing.bean.CNGMachineState;
+import com.runzhixing.bean.CngFillLogs;
+import com.runzhixing.bean.User;
+import com.runzhixing.constant.Constant;
+import com.runzhixing.db.JDBCUtils;
+import com.runzhixing.tool.StringUtil;
+import com.runzhixing.tool.Tool;
+import com.runzhixing.tool.Util;
+import com.sun.xml.internal.ws.util.xml.ContentHandlerToXMLStreamWriter;
+
+import oracle.jdbc.OracleTypes;
+import sun.util.logging.resources.logging;
+
+
+/**
+ * 充装数据查询存储函数
+ * @author 小黄
+ *
+ */
+public class FillingDataQueryProcedure {
+	
+	/**
+	 * 外部调用充装数据接口
+	 * @param un
+	 * @param ps
+	 * @return
+	 */
+	@SuppressWarnings("unchecked")
+	public List<CngFillLogs> fillDataQuery(int pagesize, int pageno,String operatorNo, String stationNo, String machineNo,String gunNo, String carNo, int appType, int fillState,Date startsTime, Date endsTime,int cylinderType){
+		List<CngFillLogs> list=new ArrayList<CngFillLogs>();
+		Map<Integer, Object> reValues = new HashMap<Integer, Object>();
+//		String sql = "{?=call PA_CNGSTATION_NEW.GetFillLog(?,?,?,?,?,?,?,?,?,?,?,?,?,?)}";
+		String sql = "{?=call PA_CNGSTATION_NEW.GetFillLog(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)}";
+		Connection conn =null;
+		CallableStatement call = null;
+		ResultSet rs = null;
+		try {
+			conn = JDBCUtils.getConnection();
+			call = (CallableStatement) conn.prepareCall(sql);
+			call.registerOutParameter(1, Types.INTEGER);//返回值
+			call.setInt(2 ,pagesize);//每次取的行数
+			call.setInt(3, pageno);//第几页
+			call.setString(4,operatorNo);//操作员编号
+			call.setString(5,stationNo);//充装点编号
+			call.setString(6,machineNo);//设备编号
+			call.setString(7,gunNo);//气枪编号
+			call.setString(8,carNo);//车牌号
+			call.setInt(9,appType);//应用类型
+			call.setInt(10, fillState);//充装状态
+			call.setDate(11, startsTime);
+			call.setDate(12, endsTime);
+			call.setInt(13, cylinderType);
+			call.setInt(14, -1);
+			call.registerOutParameter(15,Types.INTEGER);//总行数
+			call.registerOutParameter(16, OracleTypes.CURSOR);//结果集
+			call.execute();
+			int total = ((Integer) call.getObject(15)).intValue();
+			HttpServletRequest req = ServletActionContext.getRequest();
+			User user = new User();
+			user.setFillingSum(total);
+			req.getSession().setAttribute(Constant.fillingSum+"123", user);
+			rs = (ResultSet) call.getObject(16);
+			while(rs.next()){
+				CngFillLogs log = new CngFillLogs();
+//				log.setStationNo(rs.getString("cngstationno"));
+				log.setStationNo(rs.getString("cngstationname"));
+//				log.setMachineNo(rs.getString("cngmachineno"));
+				log.setMachineNo(rs.getString("cngmachinename"));
+				log.setGunNo(rs.getInt("cnggunno"));
+				log.setMedia(rs.getInt("BENEFITTYPE"));
+//				log.setOperator(rs.getString("cngoperatorno"));
+				log.setOperator(rs.getString("cngoperatorname"));
+				log.setFillState(rs.getString("fillstate"));
+				log.setFillTime(rs.getTimestamp("filltime"));
+				log.setEndTime(rs.getTimestamp("endtime"));
+				log.setFillCheckName1(rs.getString("FILLCHECKNNAME1"));
+				log.setFillCheckName2(rs.getString("FILLCHECKNAME2"));
+				log.setCarNo(rs.getString("carno"));
+				log.setAppType(rs.getString("apptype"));
+				log.setPlateType(rs.getString("platetypename"));
+				log.setCylinderNum(rs.getInt("cylindernum"));
+				log.setRegNo(rs.getString("regno"));
+				log.setNowNumber(rs.getInt("nownumber"));
+				log.setLowPress(rs.getFloat("lowpress"));
+				log.setHighPress(rs.getFloat("highpress"));
+				log.setFlux(rs.getFloat("flux"));
+				log.setMoney(rs.getFloat("money"));
+				
+				list.add(log);
+				log=null;
+				
+				
+				
+			}	
+			reValues.put(1, list);
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
+		finally{
+			JDBCUtils.release(conn, call, rs);
+		}
+		return (List<CngFillLogs>) reValues.get(1);
+	}
+	
+	/**
+	 * 充装数据查询存储函数
+	 * @param un
+	 * @param ps
+	 * @return
+	 */
+	@SuppressWarnings("unchecked")
+	public List<CNGFillLog> fillingDataQuery(int pagesize, int pageno,String operatorNo, String stationNo, String machineNo,String gunNo, String carNo, int appType, int fillState,Date startsTime, Date endsTime,int cylinderType,int fillCheck2){
+		List<CNGFillLog> list=new ArrayList<CNGFillLog>();
+		Map<Integer, Object> reValues = new HashMap<Integer, Object>();
+//		String sql = "{?=call PA_CNGSTATION_NEW.GetFillLog(?,?,?,?,?,?,?,?,?,?,?,?,?,?)}";
+		String sql = "{?=call PA_CNGSTATION_NEW.GetFillLog(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)}";
+		Connection conn =null;
+		
+		CallableStatement call = null;
+		
+		ResultSet rs = null;
+		try {
+			conn = JDBCUtils.getConnection();
+			
+			call = (CallableStatement) conn.prepareCall(sql);
+			call.registerOutParameter(1, Types.INTEGER);//返回值
+			
+			call.setInt(2 ,pagesize);//每次取的行数
+			call.setInt(3, pageno);//第几页
+			call.setString(4,operatorNo);//操作员编号
+			call.setString(5,stationNo);//充装点编号
+			call.setString(6,machineNo);//设备编号
+			call.setString(7,gunNo);//气枪编号
+			call.setString(8,carNo);//车牌号
+			call.setInt(9,appType);//应用类型
+			call.setInt(10, fillState);//充装状态
+			call.setDate(11, startsTime);
+			call.setDate(12, endsTime);
+			call.setInt(13, cylinderType);
+			call.setInt(14, fillCheck2);//充后检查人员  -1全部  0无  1有
+			call.registerOutParameter(15,Types.INTEGER);//总行数
+			call.registerOutParameter(16, OracleTypes.CURSOR);//结果集
+			call.execute();
+			
+			int total = ((Integer) call.getObject(15)).intValue();
+			HttpServletRequest req = ServletActionContext.getRequest();
+			User user = new User();
+			user.setFillingSum(total);
+			req.getSession().setAttribute(Constant.fillingSum, user);
+			
+			rs = (ResultSet) call.getObject(16);
+//			Tool.printRsDetail(rs);
+			while(rs.next()){
+				CNGFillLog obj=new CNGFillLog();
+				obj.setAppType(rs.getString("apptype"));
+				obj.setCarNo(rs.getString("carno"));
+				obj.setFixCarNo(fixCarNo(rs.getString("carno")));
+				obj.setCylinderNum(rs.getInt("cylindernum"));
+				obj.setEndTime(rs.getTimestamp("endtime"));
+				obj.setEndTime1(Util.jiequString(rs.getString("endtime"), 19));
+				obj.setFillState(rs.getString("fillstate"));
+				obj.setFillTime(rs.getTimestamp("filltime"));
+				obj.setFillTime1(Util.jiequString(rs.getString("filltime"), 19));
+				obj.setGunNo(rs.getInt("cnggunno"));
+				obj.setMachineNo(rs.getString("cngmachineno"));
+				obj.setMachineName(rs.getString("cngmachinename"));
+				
+				obj.setOperatorName(rs.getString("cngoperatorname"));
+				obj.setOperatorNo(rs.getString("cngoperatorno"));
+				
+				obj.setRegNo(rs.getString("regno"));
+				obj.setStationNo(rs.getString("cngstationno"));
+				obj.setStationName(rs.getString("cngstationname"));
+				
+				obj.setTagNo(rs.getString("tagno"));
+				obj.setTagType(rs.getInt("tagtype"));
+				obj.setTagUid(rs.getString("taguid"));
+				obj.setTac(rs.getString("tac"));
+				obj.setLeftNumber(rs.getString("leftnumber"));
+				obj.setNowNumber(rs.getInt("nownumber"));
+				obj.setLowPress(rs.getFloat("lowpress"));
+				obj.setHighPress(rs.getFloat("highpress"));
+				obj.setFlux(rs.getFloat("flux"));
+				obj.setMoney(rs.getFloat("money"));
+				obj.setPlateType(rs.getInt("platetype"));
+				obj.setPlateTypeName(rs.getString("platetypename"));
+				obj.setMedia(rs.getInt("BENEFITTYPE"));
+				obj.setFillStateNum(rs.getInt("fillstatenum"));
+				obj.setFillcheck(rs.getInt("FILLCHECK"));
+				obj.setFillcheckstr(Util.toBinary(rs.getInt("FILLCHECK"), 8));
+				
+				obj.setFILLCHECKNName1(rs.getString("FILLCHECKNNAME1"));
+				obj.setFILLCHECKNName2(rs.getString("FILLCHECKNAME2"));
+				obj.setFillMonitorName(rs.getString("FillMonitorName"));
+				
+				obj.setFILLCHECKNNo1(rs.getString("FILLCHECKNO1"));
+				obj.setFILLCHECKNNo2(rs.getString("FILLCHECKNO2"));
+				obj.setFillMonitorNo(rs.getString("FillMonitorNo"));
+				list.add(obj);
+				obj=null;
+				
+				
+				
+			}	
+			reValues.put(1, list);
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
+		finally{
+			JDBCUtils.release(conn, call, rs);
+		}
+		return (List<CNGFillLog>) reValues.get(1);
+	}
+	
+	
+	private String fixCarNo(String carNo) {
+	    StringBuilder result = new StringBuilder();
+	    if (carNo!=null && !carNo.equals("")) {
+		byte[] t;
+		try {
+		    t = carNo.getBytes("utf-8");
+		    for (int i = 0;i < t.length; ++i) {
+			result.append(String.format("%02X", t[i]));
+		    }
+		} catch (UnsupportedEncodingException e) {
+		    // TODO Auto-generated catch block
+		    e.printStackTrace();
+		}
+		
+	    }
+	    return result.toString();
+	}
+
+	public List<CNGFillLog> latelyFill(String day1, String day2,
+			String carGuid, String cylinderGuid) {
+		List<CNGFillLog> list=new ArrayList<CNGFillLog>();
+		Map<Integer, Object> reValues = new HashMap<Integer, Object>();
+		String sql = "{?=call PA_CNGSTATION_NEW.GetFillLogByDay(?,?,?,?,?)}";
+		
+		Connection conn =null;
+		
+		CallableStatement call = null;
+		
+		ResultSet rs = null;
+		try {
+			conn = JDBCUtils.getConnection();
+			
+			call = (CallableStatement) conn.prepareCall(sql);
+			int index=1;
+			call.registerOutParameter(index, Types.INTEGER);index++;
+			call.setString(index,carGuid);index++;
+			call.setString(index,cylinderGuid);index++;
+			call.setInt(index ,Integer.parseInt(day1));index++;
+			call.setInt(index, Integer.parseInt(day2));index++;
+			call.registerOutParameter(index, OracleTypes.CURSOR);
+			call.execute();
+			
+			
+			rs = (ResultSet) call.getObject(index);
+			while(rs.next()){
+				CNGFillLog obj=new CNGFillLog();
+				obj.setAppType(rs.getString("apptype"));
+				obj.setCarNo(rs.getString("carno"));
+				obj.setFixCarNo(fixCarNo(rs.getString("carno")));
+				obj.setCylinderNum(rs.getInt("cylindernum"));
+//				obj.setEndTime(rs.getTimestamp("endtime"));
+				obj.setEndTime1(Util.jiequString(rs.getString("endtime"), 19));
+				obj.setFillState(rs.getString("fillstate"));
+//				obj.setFillTime(rs.getTimestamp("filltime"));
+				obj.setFillTime1(Util.jiequString(rs.getString("filltime"), 19));
+				obj.setGunNo(rs.getInt("cnggunno"));
+				obj.setMachineNo(rs.getString("cngmachineno"));
+				obj.setOperatorName(rs.getString("cngoperatorno"));
+				obj.setRegNo(rs.getString("regno"));
+				obj.setStationNo(rs.getString("cngstationno"));
+				obj.setTagNo(rs.getString("tagno"));
+				obj.setTagType(rs.getInt("tagtype"));
+				obj.setTagUid(rs.getString("taguid"));
+				obj.setLeftNumber(rs.getString("leftnumber"));
+				obj.setNowNumber(rs.getInt("nownumber"));
+				obj.setLowPress(rs.getFloat("lowpress"));
+				obj.setHighPress(rs.getFloat("highpress"));
+				obj.setFlux(rs.getFloat("flux"));
+				obj.setMoney(rs.getFloat("money"));
+				obj.setPlateType(rs.getInt("platetype"));
+				obj.setPlateTypeName(rs.getString("platetypename"));
+				obj.setMedia(rs.getInt("BENEFITTYPE"));
+				obj.setFillStateNum(rs.getInt("fillstatenum"));
+				obj.setFillcheck(rs.getInt("FILLCHECK"));
+				obj.setFillcheckstr(Util.toBinary(rs.getInt("FILLCHECK"), 8));
+				list.add(obj);
+				obj=null;
+				
+				
+				
+			}	
+			reValues.put(1, list);
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
+		finally{
+			JDBCUtils.release(conn, call, rs);
+		}
+		return (List<CNGFillLog>) reValues.get(1);
+	}
+	public List<CNGFillLog1> latelyFill123(String day1, String day2,
+			String carGuid, String cylinderGuid) {
+		List<CNGFillLog1> list=new ArrayList<CNGFillLog1>();
+		Map<Integer, Object> reValues = new HashMap<Integer, Object>();
+		String sql = "{?=call PA_CNGSTATION_NEW.GetFillLogByDay(?,?,?,?,?)}";
+		Connection conn =null;
+		
+		CallableStatement call = null;
+		
+		ResultSet rs = null;
+		try {
+			conn = JDBCUtils.getConnection();
+			
+			call = (CallableStatement) conn.prepareCall(sql);
+			int index=1;
+			call.registerOutParameter(index, Types.INTEGER);index++;
+			call.setString(index,carGuid);index++;
+			call.setString(index,cylinderGuid);index++;
+			call.setInt(index ,Integer.parseInt(day1));index++;
+			call.setInt(index, Integer.parseInt(day2));index++;
+			call.registerOutParameter(index, OracleTypes.CURSOR);
+			call.execute();
+			
+			
+			rs = (ResultSet) call.getObject(index);
+			while(rs.next()){
+				CNGFillLog1 obj = new CNGFillLog1();
+				obj.setAppType(rs.getString("apptype"));
+				obj.setCarNo(rs.getString("carno"));
+				obj.setFixCarNo(fixCarNo(rs.getString("carno")));
+				obj.setCylinderNum(rs.getInt("cylindernum"));
+				obj.setEndTime(Util.jiequString(rs.getString("endtime"), 19));
+				obj.setFillState(rs.getString("fillstate"));
+				obj.setFillTime(Util.jiequString(rs.getString("filltime"), 19));
+				obj.setGunNo(rs.getInt("cnggunno"));
+				obj.setMachineNo(rs.getString("cngmachineno"));
+				obj.setOperatorName(rs.getString("cngoperatorno"));
+				obj.setRegNo(rs.getString("regno"));
+				obj.setStationNo(rs.getString("cngstationno"));
+				obj.setTagNo(rs.getString("tagno"));
+				obj.setTagType(rs.getInt("tagtype"));
+				obj.setTagUid(rs.getString("taguid"));
+				obj.setLeftNumber(rs.getString("leftnumber"));
+				obj.setNowNumber(rs.getInt("nownumber"));
+				obj.setLowPress(rs.getFloat("lowpress"));
+				obj.setHighPress(rs.getFloat("highpress"));
+				obj.setFlux(rs.getFloat("flux"));
+				obj.setMoney(rs.getFloat("money"));
+				obj.setPlateType(rs.getInt("platetype"));
+				obj.setPlateTypeName(rs.getString("platetypename"));
+				obj.setMedia(rs.getInt("BENEFITTYPE"));
+				obj.setFillStateNum(rs.getInt("fillstatenum"));
+				obj.setFillcheck(rs.getInt("FILLCHECK"));
+				obj.setFillcheckstr(Util.toBinary(rs.getInt("FILLCHECK"), 8));
+				list.add(obj);
+				obj=null;
+				
+				
+				
+			}	
+			reValues.put(1, list);
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
+		finally{
+			JDBCUtils.release(conn, call, rs);
+		}
+		return (List<CNGFillLog1>) reValues.get(1);
+	}
+
+	/**
+	 * 查询氢气充装数据
+	 * @param pagesize
+	 * @param pageno
+	 * @param stationNo
+	 * @param carNo
+	 * @param startsTime
+	 * @param endsTime
+	 * @return 
+	 * @return List<CNGFillLog> 
+	 * @author yxh
+	 * @date 2022年9月17日下午9:08:01
+	 * @throws
+	 */
+	public List<CHGFillLog> chgFillingDataQuery(int pagesize, int pageno,String stationNo, String carNo,Date startsTime, Date endsTime) {
+		List<CHGFillLog> list=new ArrayList<CHGFillLog>();
+		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+		int start = pagesize * (pageno-1);
+	    int end = pagesize * pageno;
+	    if (StringUtils.isEmpty(stationNo)) {
+	    	stationNo="";
+	    }
+	    
+		String sql = "select ROWNUM AS rn,cl.GUID,cl.STATIONNO,cl.CARNO,cl.PLATETYPE,cl.PLATECOLOR,cl.MEDIUM,cl.REGNO,cl.REGDATE,cl.REGVALIDITY,"
+				+ "cl.REGUNIT,cl.CYLINDERTYPE,cl.CYLINDERNO,cl.PRODUCTNAME,cl.PRODUCTDATE,cl.STARTUSEDATE,cl.YEARLIMIT,cl.PRODUCTLICENCE,"
+				+ "cl.PRODUCTTYPE,cl.WEIGHT,cl.VOL,cl.THICKNESS,cl.PRESS,cl.MATERIAL,cl.INSTALLSTATION,cl.INSTALLCERT,cl.INSTALLDATE,cl.MONITORSTATION,"
+				+ "cl.MONITORCERT,cl.MONITORDATE,cl.CHECKSTATION,cl.CHECKCERT,cl.CHECKDATE,cl.NEXTCHECKDATE,cl.BEFORECHECKER,cl.BEFORETIME,"
+				+ "cl.BEFOREITEMS,cl.BEFORERESULT,cl.BEFOREEXCEPTION,cl.CARREMARK,cl.CYLINDERREMARK,cl.BEFOREVERIFIER,cl.OPERATORNAME,cl.OPERATORID,"
+				+ "cl.OPERATORNO,cl.OPERATORTYPE,cl.OPERATORDOC,cl.OPERATORCERT,cl.OPERATORLICDATE,cl.OPERATORLICVALIDITY,cl.MACHINEFACTORY,"
+				+ "cl.MACHINENO,cl.MACHINENAME,cl.GUNNO,cl.FILLSTARTTIME,cl.FILLBEFOREPRESS,cl.FILLENDTIME,cl.FILLENDPRESS,cl.FILLUNIT,cl.FILLNUM,"
+				+ "cl.FILLDENSITY,cl.MONEY,cl.AFTERCHECKER,cl.AFTERTIME,cl.AFTERITEMS,cl.AFTERRESULT,cl.AFTEREXCEPTION,cl.AFTERVERIFIER,cl.REMARK,"
+				+ "s.STATIONNAME "
+				+ "from dyndba.tb_chgfill_log cl "
+				+ " LEFT JOIN CNGDBA.TB_CNGSTATION s ON cl.STATIONNO = s.STATIONNO"
+				+ " WHERE cl.STATIONNO like CONCAT('"+stationNo+"', '%')  ";
+		if (StringUtils.isNotEmpty(carNo)) {
+			sql += " AND cl.CARNO LIKE CONCAT('%',CONCAT('"+carNo+"', '%')) ";
+		}
+		if (ObjectUtils.isNotEmpty(startsTime)) {
+			sql += " AND cl.FILLSTARTTIME > TO_DATE('"+sdf.format(startsTime)+"', 'yyyy-MM-dd HH:MI:ss') ";
+		}
+		if (ObjectUtils.isNotEmpty(endsTime)) {
+			sql += " AND cl.FILLSTARTTIME <= TO_DATE('"+sdf.format(endsTime)+"', 'yyyy-MM-dd HH:MI:ss') ";
+		}
+		
+		String countSql = "select count(0) as count from ("+sql+")";
+		Connection conn =null;
+		PreparedStatement ps0 =null;
+		PreparedStatement ps =null;
+		ResultSet rs0 = null;
+		ResultSet rs = null;
+		try {
+			HttpServletRequest req = ServletActionContext.getRequest();
+			conn = JDBCUtils.getConnection();
+			ps0 = conn.prepareStatement(countSql);
+			rs0 = ps0.executeQuery();
+			while(rs0.next()) {
+				User user = new User();
+				user.setFillingSum(rs0.getInt("count"));
+				req.getSession().setAttribute(Constant.fillingSum, user);
+			}
+			String pageSql = "SELECT * FROM ("+sql+") WHERE rn BETWEEN "+start+" AND "+end;
+			ps = conn.prepareStatement(pageSql);
+			rs = ps.executeQuery();
+			while(rs.next()){
+				CHGFillLog obj=new CHGFillLog();
+				obj.setGuid(rs.getString("GUID"));
+				obj.setStationNo(rs.getString("STATIONNO"));//STATIONNO站编号
+				obj.setCarNo(rs.getString("CARNO"));//CARNO车牌号
+				obj.setPlateType(rs.getInt("PLATETYPE"));//PLATETYPE车牌类型
+				obj.setPlateColor(rs.getInt("PLATECOLOR"));//PLATECOLOR车牌颜色
+				obj.setMedium(rs.getString("MEDIUM"));//MEDIUM充装介质
+				obj.setRegNo(rs.getString("REGNO"));//REGNO使用登记证号
+				obj.setRegDate(rs.getDate("REGDATE"));//REGDATE发证时间
+				obj.setRegValidity(rs.getDate("REGVALIDITY"));//REGVALIDITY证件有效期
+				obj.setRegUnit(rs.getString("REGUNIT"));//REGUNIT发证单位
+				obj.setCylinderType(rs.getInt("CYLINDERTYPE"));//CYLINDERTYPE气瓶类型
+				obj.setCylinderNo(rs.getString("CYLINDERNO"));//CYLINDERNO气瓶出厂编号
+				obj.setProductName(rs.getString("PRODUCTNAME"));//PRODUCTNAME生产厂家
+				obj.setProductDate(rs.getDate("PRODUCTDATE"));//PRODUCTDATE生产日期
+				obj.setStartuseDate(rs.getDate("STARTUSEDATE"));//STARTUSEDATE投用日期
+				obj.setYearLimit(rs.getDate("YEARLIMIT"));//YEARLIMIT使用年限
+				obj.setProductLicence(rs.getString("PRODUCTLICENCE"));//PRODUCTLICENCE生产许可
+				obj.setProductType(rs.getString("PRODUCTTYPE"));//PRODUCTTYPE气瓶产品型号
+				obj.setWeight(rs.getFloat("WEIGHT"));//WEIGHT重量
+				obj.setVol(rs.getFloat("VOL"));//VOL容积
+				obj.setThickness(rs.getFloat("THICKNESS"));//THICKNESS壁厚
+				obj.setPress(rs.getFloat("PRESS"));//PRESS压力
+				obj.setMaterial(rs.getString("MATERIAL"));//MATERIAL材质
+				obj.setInstallStation(rs.getString("INSTALLSTATION"));//INSTALLSTATION安装单位
+				obj.setInstallCert(rs.getString("INSTALLCERT"));//INSTALLCERT安装合格证
+				obj.setInstallDate(rs.getDate("INSTALLDATE"));//INSTALLDATE安装时间
+				obj.setMonitorStation(rs.getString("MONITORSTATION"));//MONITORSTATION监检单位
+				obj.setMonitorCert(rs.getString("MONITORCERT"));//MONITORCERT监检合格证
+				obj.setMonitorDate(rs.getDate("MONITORDATE"));//MONITORDATE监检时间
+				obj.setCheckStation(rs.getString("CHECKSTATION"));//CHECKSTATION检验单位
+				obj.setCheckCert(rs.getString("CHECKCERT"));//CHECKCERT检验合格证
+				obj.setCheckDate(rs.getDate("CHECKDATE"));//CHECKDATE检验时间
+				obj.setNextCheckDate(rs.getDate("NEXTCHECKDATE"));//NEXTCHECKDATE下次检验时间
+				obj.setBeforeChecker(rs.getString("BEFORECHECKER"));//BEFORECHECKER充装检查人员
+				obj.setBeforeTime(rs.getDate("BEFORETIME"));//BEFORETIME充半检查时间
+				obj.setBeforeItems(rs.getString("BEFOREITEMS"));//BEFOREITEMS充装前检查项目
+				obj.setBeforeResult(rs.getInt("BEFORERESULT"));//BEFORERESULT充前检查结果
+				obj.setBeforeException(rs.getString("BEFOREEXCEPTION"));//BEFOREEXCEPTION充前检查异常项目
+				obj.setCarRemark(rs.getString("CARREMARK"));//CARREMARK车辆其它信息
+				obj.setCylinderRemark(rs.getString("CYLINDERREMARK"));//CYLINDERREMARK气瓶其它信息
+				obj.setBeforeVerifier(rs.getString("BEFOREVERIFIER"));//BEFOREVERIFIER充前审核人员
+				obj.setOperatorName(rs.getString("OPERATORNAME"));//OPERATORNAME操作人员姓名
+				obj.setOperatorId(rs.getString("OPERATORID"));//OPERATORID操作人员身份证号
+				obj.setOperatorNo(rs.getString("OPERATORNO"));//OPERATORNO操作人员编号
+				obj.setOperatorType(rs.getString("OPERATORTYPE"));//OPERATORTYPE操作人员类型
+				obj.setOperatorDoc(rs.getString("OPERATORDOC"));//OPERATORDOC操作人员档案号
+				obj.setOperatorCert(rs.getString("OPERATORCERT"));//OPERATORCERT操作人员班证书
+				obj.setOperatorLicDate(rs.getDate("OPERATORLICDATE"));//OPERATORLICDATE发证时间
+				obj.setOperatorLicValidity(rs.getDate("OPERATORLICVALIDITY"));//OPERATORLICVALIDITY证书有效期
+				obj.setMachineFactory(rs.getString("MACHINEFACTORY"));//MACHINEFACTORY充装设备厂家
+				obj.setMachineNo(rs.getString("MACHINENO"));//MACHINENO充装设备编号
+				obj.setMachineName(rs.getString("MACHINENAME"));//MACHINENAME充装设备名称
+				obj.setGunNo(rs.getString("GUNNO"));//GUNNO充装枪号
+				obj.setFillStartTime(rs.getDate("FILLSTARTTIME"));//FILLSTARTTIME充装时间
+				obj.setFillBeforePress(rs.getInt("FILLBEFOREPRESS"));//FILLBEFOREPRESS充前压力
+				obj.setFillEndTime(rs.getDate("FILLENDTIME"));//FILLENDTIME充装结束时间
+				obj.setFillEndPress(rs.getInt("FILLENDPRESS"));//FILLENDPRESS充装结束压力
+				obj.setFillUnit(rs.getInt("FILLUNIT"));//FILLUNIT充装量单位
+				obj.setFillNum(rs.getInt("FILLNUM"));//FILLNUM充装量
+				obj.setFillDensity(rs.getInt("FILLDENSITY"));//FILLDENSITY充装密度
+				obj.setMoney(rs.getFloat("MONEY"));//MONEY金额
+				obj.setAfterChecker(rs.getString("AFTERCHECKER"));//AFTERCHECKER充后检查人员
+				obj.setAfterTime(rs.getDate("AFTERTIME"));//AFTERTIME充后检查时间
+				obj.setAfterTimes(rs.getString("AFTERITEMS"));//AFTERITEMS充后检查项目
+				obj.setAfterResult(rs.getInt("AFTERRESULT"));//AFTERRESULT充后结果
+				obj.setAfterException(rs.getString("AFTEREXCEPTION"));//AFTEREXCEPTION充后检查异常项目
+				obj.setAfterVerifier(rs.getString("AFTERVERIFIER"));//AFTERVERIFIER充后审核人员
+				obj.setRemark(rs.getString("REMARK"));//REMARK备注及其它信息
+				
+				obj.setStationName(rs.getString("STATIONNAME"));//STATIONNAME站名称
+				list.add(obj);
+				obj=null;
+			}	
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
+		finally{
+			JDBCUtils.release(conn, ps, rs);
+			JDBCUtils.release(conn, ps0, rs0);
+		}
+		return list;
+	}
+
+}

+ 721 - 718
src/struts.xml

@@ -1,718 +1,721 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE struts PUBLIC
-    "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
-    "http://struts.apache.org/dtds/struts-2.5.dtd">
-
-<struts>
-
-	<!--<constant name="struts.enable.DynamicMethodInvocation" value="false" 
-		/> <constant name="struts.devMode" value="false" /> <include file="example.xml"/> -->
-	<constant name="struts.enable.DynamicMethodInvocation" value="true" />
-	<!-- 为修复struts2 s2-016、s2-017漏洞,重写DefaultActionMapper -->
-	<bean type="org.apache.struts2.dispatcher.mapper.ActionMapper"
-		name="myDefaultActionMapper" class="com.runzhixing.tool.MyDefaultActionMapper" />
-	<constant name="struts.mapper.class" value="myDefaultActionMapper" />
-	<constant name="struts.custom.i18n.resources" value="global" />
-	<constant name="struts.multipart.maxSize" value="100000000" />
-
-
-	<package name="login" namespace="/" extends="struts-default"
-		strict-method-invocation="false">
-		<action name="validateLogin" class="com.runzhixing.action.LoginAction"
-			method="validateLogin">
-			<result name="success">/jsp/rzx/bgman.jsp</result>
-			<result name="fail">/jsp/fail/loginfail.jsp</result>
-		</action>
-	</package>
-	<package name="wxCert" namespace="/" extends="struts-default"
-		strict-method-invocation="false">
-		<action name="useCert" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="useCert">
-			<result name="success">
-				/wxUseCert.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/500.jsp
-			</result>
-		</action>
-		<action name="electronicsCert" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="electronicsCert">
-			<result name="success">
-				/wxElectronicsCert.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/500.jsp
-			</result>
-		</action>
-
-	</package>
-	<package name="/" namespace="/" extends="json-default"
-		strict-method-invocation="false">
-		<action name="nxlogin" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="nxlogin"></action>
-	</package>
-	<package name="wx" namespace="/" extends="json-default"
-		strict-method-invocation="false">
-		<action name="checkSignature" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="checkSignature"></action>
-		<action name="crud_single_cylinder_info" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="crud_single_cylinder_info"></action>
-		<action name="query_car_info" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="query_car_info"></action>
-		<action name="use_Cert" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="use_Cert"></action>
-		<action name="wx_Login" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="wx_Login"></action>
-		<action name="wx_register" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="wx_register"></action>
-		<action name="city_country_inifo" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="city_country_inifo"></action>
-		<action name="cert_install_Info" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="cert_install_Info"></action>
-		<action name="base_info" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="base_info"></action>
-		<action name="crud_car_info" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="crud_car_info"></action>
-		<action name="car_info_by_user" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="car_info_by_user"></action>
-		<action name="crud_cylinder_info" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="crud_cylinder_info">
-		</action>
-		<action name="cylinder_info_by_car" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="cylinder_info_by_car"></action>
-		<action name="upload_img" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="upload_img">
-			<interceptor-ref name="fileUpload">
-				<param name="allowedTypes">image/bmp,image/jpg,image/jpeg,image/png,image/gif,image/pjepg</param>
-				<param name="maximumSize">10485760</param>
-			</interceptor-ref>
-			<interceptor-ref name="defaultStack" />
-		</action>
-
-		<action name="upload_more_img" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="upload_more_img">
-			<interceptor-ref name="fileUpload">
-				<param name="allowedTypes">image/bmp,image/jpg,image/jpeg,image/png,image/gif,image/pjepg</param>
-				<param name="maximumSize">10485760</param>
-			</interceptor-ref>
-			<interceptor-ref name="defaultStack" />
-		</action>
-
-		<action name="get_car_cylinder_cert_info" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="get_car_cylinder_cert_info"></action>
-		<action name="city_Info" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="city_Info"></action>
-		<action name="clear_Cookie" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="clear_Cookie"></action>
-		<action name="getSwiperList" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="getSwiperList"></action>
-		<action name="getFunctionList" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="getFunctionList"></action>
-		<action name="lately_fill_info" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="lately_fill_info"></action>
-		<action name="getReportFormData" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="getReportFormData"></action>
-		<action name="chart1SaveAsImage" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="chart1SaveAsImage"></action>
-		<action name="generatetPDF" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="generatetPDF"></action>
-		<action name="get_cert_by_carguid" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="get_cert_by_carguid"></action>
-		<action name="remove_img" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="remove_img"></action>
-		<action name="bind_existed_car_cylinder" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="bind_existed_car_cylinder"></action>
-		<action name="unbind_car" class="com.runzhixing.action.ThirdInterfaceAction"
-			method="unbind_car"></action>
-
-	</package>
-
-	<package name="nx" namespace="/" extends="json-default" strict-method-invocation="false">
-		<action name="city_country_inifo" class="com.runzhixing.action.NxAppCarAction" method="city_country_inifo"></action>
-		<action name="cert_install_Info" class="com.runzhixing.action.NxAppCarAction" method="cert_install_Info"></action>
-		<action name="crud_car_info" class="com.runzhixing.action.NxAppCarAction" method="crud_car_info"></action>
-		<action name="upload_img" class="com.runzhixing.action.NxAppCarAction" method="upload_img">
-			<interceptor-ref name="fileUpload">
-				<param name="allowedTypes">image/bmp,image/jpg,image/jpeg,image/png,image/gif,image/pjepg</param>
-				<param name="maximumSize">10485760</param>
-			</interceptor-ref>
-			<interceptor-ref name="defaultStack" />
-		</action>
-		<action name="remove_img" class="com.runzhixing.action.NxAppCarAction" method="remove_img"></action>
-		<action name="get_car_cylinder_cert_info" class="com.runzhixing.action.NxAppCarAction" method="get_car_cylinder_cert_info"></action>
-		<action name="crud_single_cylinder_info" class="com.runzhixing.action.NxAppCarAction" method="crud_single_cylinder_info"></action>
-		
-	</package>
-
-
-	<!-- <include file="struts-login.xml"/> -->
-	<package name="ajax" namespace="/" extends="json-default"
-		strict-method-invocation="false">
-		
-		
-		<action name="getStation2" class="com.runzhixing.action.TodayModifyAction"
-			method="getStation2"></action>
-		<action name="updateMachine" class="com.runzhixing.action.TodayModifyAction"
-			method="updateMachine"></action>
-		<action name="updateFillCheckOper" class="com.runzhixing.action.TodayModifyAction"
-			method="updateFillCheckOper"></action>
-		<action name="updateFillCheck2" class="com.runzhixing.action.TodayModifyAction"
-			method="updateFillCheck2"></action>
-		<action name="getRegister" class="com.runzhixing.action.AlterPasswordAction"
-			method="getRegister"></action>
-		<action name="examineAll" class="com.runzhixing.action.AlterPasswordAction"
-			method="examineAll"></action>
-		<action name="getInstallLocInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getInstallLocInfo"></action>
-		<action name="getInstallTypeInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getInstallTypeInfo"></action>
-		<action name="getProductInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getProductInfo"></action>
-		<action name="CRUDCarInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="CRUDCarInfo"></action>
-		<action name="getCarInfo_1" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCarInfo_1"></action>
-		<action name="getCarTypeInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCarTypeInfo"></action>
-		<action name="getCarPlateColorInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCarPlateColorInfo"></action>
-		<action name="getUnitInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getUnitInfo"></action>
-		<action name="getCountryInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCountryInfo"></action>
-		<action name="getCityInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCityInfo"></action>
-		<action name="getAppTypeInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getAppTypeInfo"></action>
-		<action name="insertWXID" class="com.runzhixing.action.AlterPasswordAction"
-			method="insertWXID"></action>
-		<action name="updateNickName" class="com.runzhixing.action.AlterPasswordAction"
-			method="updateNickName"></action>
-
-		<action name="latelyFill" class="com.runzhixing.action.AlterPasswordAction"
-			method="latelyFill"></action>
-		<action name="getPreCarNo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getPreCarNo"></action>
-		<action name="register" class="com.runzhixing.action.AlterPasswordAction"
-			method="register"></action>
-		<action name="examineCylinder" class="com.runzhixing.action.AlterPasswordAction"
-			method="examineCylinder"></action>
-		<action name="replaceRegNo" class="com.runzhixing.action.AlterPasswordAction"
-			method="replaceRegNo"></action>
-		<action name="examineSingleCylinder" class="com.runzhixing.action.AlterPasswordAction"
-			method="examineSingleCylinder"></action>
-		<action name="examineCar" class="com.runzhixing.action.AlterPasswordAction"
-			method="examineCar"></action>
-		<action name="uploadCert" class="com.runzhixing.action.AlterPasswordAction"
-			method="uploadCert">
-			<interceptor-ref name="fileUpload">
-				<param name="allowedTypes">image/bmp,image/jpg,image/jpeg,image/png,image/gif,image/pjepg</param>
-				<!-- <param name="maximumSize">5242880*2</param> -->
-				<param name="maximumSize">15242880</param>
-			</interceptor-ref>
-			<interceptor-ref name="defaultStack" />
-		</action>
-		<action name="getCylinderProduct" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCylinderProduct"></action>
-		<action name="getCylinderInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCylinderInfo"></action>
-		<action name="getCarInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCarInfo"></action>
-		<action name="deleteCarCylinder" class="com.runzhixing.action.AlterPasswordAction"
-			method="deleteCarCylinder"></action>
-		<action name="getcarcylinderbyuser" class="com.runzhixing.action.AlterPasswordAction"
-			method="getcarcylinderbyuser"></action>
-		<action name="insertCylinderInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="insertCylinderInfo"></action>
-		<action name="insertCarInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="insertCarInfo"></action>
-		<action name="insertCarCylinder" class="com.runzhixing.action.AlterPasswordAction"
-			method="insertCarCylinder">
-
-
-		</action>
-		<action name="getRedirect" class="com.runzhixing.action.AlterPasswordAction"
-			method="getRedirect"></action>
-		<action name="getPhoneCode" class="com.runzhixing.action.AlterPasswordAction"
-			method="getPhoneCode"></action>
-		<action name="getVCode" class="com.runzhixing.action.AlterPasswordAction"
-			method="getVCode"></action>
-		<action name="testVCode" class="com.runzhixing.action.AlterPasswordAction"
-			method="testVCode"></action>
-		<action name="getCity" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCity"></action>
-		<action name="getCity123" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCity123"></action>
-		<action name="getCounty123" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCounty123"></action>
-		<action name="getUnit123" class="com.runzhixing.action.AlterPasswordAction"
-			method="getUnit123"></action>
-		<action name="getCountry" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCountry"></action>
-		<action name="getUnit" class="com.runzhixing.action.AlterPasswordAction"
-			method="getUnit"></action>
-		<action name="getCarCylinderInfo" class="com.runzhixing.action.AlterPasswordAction"
-			method="getCarCylinderInfo"></action>
-
-		<action name="modifyWorkPersonInfoCheck"
-			class="com.runzhixing.action.ModifyWorkPersonInfoCheckAction" method="modifyWorkPersonInfoCheck"></action>
-		<action name="modifyStationInfoCheck"
-			class="com.runzhixing.action.ModifyStationInfoCheckAction" method="modifyStationInfoCheck"></action>
-		<action name="testingStationInfoCheck"
-			class="com.runzhixing.action.TestingStationInfoCheckAction" method="testingStationInfoCheck"></action>
-		<action name="modifyCompanyform" class="com.runzhixing.action.ModifyCompanyformAction"
-			method="modifyCompanyform"></action>
-		<action name="todayModify" class="com.runzhixing.action.TodayModifyAction"
-			method="todayModify"></action>
-		<action name="todayModify123" class="com.runzhixing.action.TodayModifyAction"
-			method="todayModify123"></action>
-		<action name="testingworkPersonInfo" class="com.runzhixing.action.WorkPersonInfoAction"
-			method="testingworkPersonInfo"></action>
-		<action name="TagdataStatis" class="com.runzhixing.action.TagdataStatisAction"
-			method="TagdataStatis"></action>
-		<action name="tagIssuingfrom" class="com.runzhixing.action.TagIssuingfromAction"
-			method="tagIssuingfrom"></action>
-		<action name="tagIssuingStatistics" class="com.runzhixing.action.TagIssuingfromAction"
-			method="tagIssuingStatistics"></action>
-		<action name="checkSeedataform" class="com.runzhixing.action.CheckSeedataQueryAction"
-			method="checkSeedataQuery"></action>
-		<action name="workPersonInfo" class="com.runzhixing.action.WorkPersonInfoAction"
-			method="workPersonInfo"></action>
-		<action name="fillingMachineInfo" class="com.runzhixing.action.FillingMachineInfoAction"
-			method="fillingMachineInfo"></action>
-		<action name="checkStationInfo" class="com.runzhixing.action.CheckStationInfoAction"
-			method="checkStationInfo"></action>
-		<action name="kaoqinDateStatist" class="com.runzhixing.action.KaoqinDateStatistAction"
-			method="kaoqinDateStatist"></action>
-
-		<action name="CNGQualityInto" class="com.runzhixing.action.CNGQualityIntoAction"
-			method="CNGQualityInto"></action>
-		<action name="specialInto" class="com.runzhixing.action.SpecialIntoAction"
-			method="specialInto"></action>
-		<action name="nonlocalQuery" class="com.runzhixing.action.NonlocalQueryAction"
-			method="nonlocalQuery"></action>
-		<action name="kaoqingQuery" class="com.runzhixing.action.KaoqingQueryAction"
-			method="kaoqingQuery"></action>
-		<action name="releaseAnnformform" class="com.runzhixing.action.CheckAnnounformmentAction"
-			method="releaseAnn"></action>
-		<action name="checkAnnounformment" class="com.runzhixing.action.CheckAnnounformmentAction"
-			method="checkAnnoun"></action>
-		<!-- 修改密码 -->
-		<action name="alterpassword" class="com.runzhixing.action.AlterPasswordAction"
-			method="alterpassword"></action>
-
-		<action name="infoview" class="com.runzhixing.action.InfoviewAction"
-			method="infoview"></action>
-		<!-- 查看网络情况 -->
-		<action name="getCNGStationTranInfoList" class="com.runzhixing.action.CNGStationTranInfoAction"
-			method="getCNGStationTranInfoList"></action>
-		<!-- 监察人员管理 -->
-		<action name="Supervisormanagement" class="com.runzhixing.action.SupervisormanagementAction"
-			method="supervisormanagement"></action>
-		<!-- 场所管理 -->
-		<action name="Placemanagement" class="com.runzhixing.action.PlacemanagementAction"
-			method="placemanagement"></action>
-		<!-- 得到原先的告警参数 -->
-		<action name="getoldwarningparam" class="com.runzhixing.action.WarningparasetAction"
-			method="getoldwarningparam"></action>
-		<!-- 设置新的告警参数 -->
-		<action name="warningparaset" class="com.runzhixing.action.WarningparasetAction"
-			method="warningparaset"></action>
-		<!-- 加气机运行状态 -->
-		<action name="aeratedmachinerunningstate"
-			class="com.runzhixing.action.AeratedmachinerunningstateAction"
-			method="aeratedmachinerunningstate"></action>
-		<!-- 人员巡查情况查询 -->
-		<action name="personnelInspection" class="com.runzhixing.action.PersonnelInspectionAction"
-			method="personnelInspection"></action>
-		<!-- 人员巡查情况查询 -->
-		<action name="personnelInspection1" class="com.runzhixing.action.PersonnelInspectionAction"
-			method="personnelInspection1"></action>
-		<!-- 巡查数据查询 -->
-		<action name="inspectiondataQuery" class="com.runzhixing.action.InspectiondataQueryAction"
-			method="inspectiondataQuery"></action>
-
-		<!-- 特种设备数据查询 -->
-		<action name="specialequipmentdataQuery"
-			class="com.runzhixing.action.SpecialequipmentdataQueryAction" method="specialequipmentdataQuery"></action>
-		<!-- 气瓶数据查询 -->
-		<action name="cylinderDataQuery" class="com.runzhixing.action.CylinderDataQueryAction"
-			method="cylinderDataQuery11"></action>
-		<action name="cylinderDataQuery12" class="com.runzhixing.action.CylinderDataQueryAction"
-			method="cylinderDataQuery12"></action>
-		<action name="cylinderDataQuery13" class="com.runzhixing.action.CylinderDataQueryAction"
-			method="cylinderDataQuery13"></action>
-		<action name="cylinderDataQuery14" class="com.runzhixing.action.CylinderDataQueryAction"
-			method="cylinderDataQuery14"></action>
-		<!-- 气瓶数据查询 -->
-		<action name="cylinderDataQuery1" class="com.runzhixing.action.CylinderDataQueryAction"
-			method="cylinderDataQuery1"></action>
-		<!-- 气瓶将要检测数量查询 -->
-		<action name="cylinderDataQueryagain"
-			class="com.runzhixing.action.CylinderDataQueryagainAction" method="cylinderDataQueryagain"></action>
-		<!-- 当天检验情况 -->
-		<action name="todattestingdataQuery" class="com.runzhixing.action.TestingdataQueryAction"
-			method="todaytestingdataQuery"></action>
-		<!-- 检验数据查询 -->
-		<action name="testingdataQuery" class="com.runzhixing.action.TestingdataQueryAction"
-			method="testingdataQuery"></action>
-		<!-- 车辆数据查询 -->
-		<action name="carsDataQuery" class="com.runzhixing.action.CarsDataQueryAction"
-			method="carsDataQuery"></action>
-			<!-- 车辆数据查询 -->
-		<action name="getCarsDataQuery" class="com.runzhixing.action.CarsDataQueryAction"
-			method="getCarsDataQuery"></action>
-		<!-- 车辆数据查询 -->
-		<action name="carsDataQueryagain" class="com.runzhixing.action.CarsDataQueryAction"
-			method="carsDataQueryagain"></action>
-		<!-- 黑名单查询 -->
-		<action name="blackListQuery" class="com.runzhixing.action.BlackListQueryAction"
-			method="blackListQuery"></action>
-		<!-- CNG质量查询 -->
-		<action name="CNGQualityQuery" class="com.runzhixing.action.CNGQualityQueryAction"
-			method="CNGQualityQuery"></action>
-		<!-- 充装数据查询 -->
-		<action name="fillingDataQuery" class="com.runzhixing.action.FillingDataQueryAction"
-			method="fillingDataQuery"></action>
-		<!-- 改装数据查询 -->
-		<action name="modifiedDataQuery" class="com.runzhixing.action.ModifiedDataQueryAction"
-			method="modifiedDataQuery"></action>
-
-
-		<!-- 系统告警日志 -->
-		<action name="systemWarninglog" class="com.runzhixing.action.SystemWarninglogAction"
-			method="systemWarninglog"></action>
-
-
-
-		<!-- 改装数据查询 -->
-		<action name="province" class="com.runzhixing.action.ProvinceAction"
-			method="province"></action>
-
-
-		<!-- 改装数据查询 -->
-		<action name="AdvanceSystemwarninglog" class="com.runzhixing.action.SystemWarninglogAction"
-			method="AdvanceSystemwarninglog">
-			<result name="success">/jsp/rzx/log/Systemwarninglog.jsp</result>
-		</action>
-
-		<action name="makeChart" class="com.runzhixing.action.Test"
-			method="makeChart">
-		</action>
-
-		<action name="hiddenspeStation" class="com.runzhixing.action.SpeStationAction"
-			method="speStationQuery">
-		</action>
-		<action name="hiddenspeStation1" class="com.runzhixing.action.SpeStationAction"
-			method="speStationQuery1">
-		</action>
-		<action name="hiddenspeStation2" class="com.runzhixing.action.SpeStationAction"
-			method="speStationQuery2">
-		</action>
-
-		<action name="hiddencheckStation" class="com.runzhixing.action.CheckStationAction"
-			method="checkStationQuery">
-		</action>
-		<action name="hiddenoperatorNo" class="com.runzhixing.action.JQJStationAction"
-			method="operatorNoQuery">
-		</action>
-		<action name="hiddenjqj" class="com.runzhixing.action.JQJStationAction"
-			method="jqjQuery">
-		</action>
-		<action name="hiddenCNGStation" class="com.runzhixing.action.CNGStationAction"
-			method="cngstationQuery">
-		</action>
-		<action name="hiddenStation" class="com.runzhixing.action.StationAction"
-			method="stationQuery">
-		</action>
-		<action name="hiddenUnit" class="com.runzhixing.action.UnitAction"
-			method="unitQuery">
-		</action>
-		<action name="hiddenCity" class="com.runzhixing.action.HiddenCityAction"
-			method="hiddenCity">
-		</action>
-		<action name="hiddenjiangaun" class="com.runzhixing.action.HiddenCityAction"
-			method="hiddenjiangaun">
-		</action>
-		<action name="hiddenxuncha" class="com.runzhixing.action.HiddenCityAction"
-			method="hiddenxuncha">
-		</action>
-		<action name="hiddenCountry" class="com.runzhixing.action.HiddenCityAction"
-			method="hiddenCountry">
-		</action>
-		<action name="getstationdetail" class="com.runzhixing.action.HiddenCityAction"
-			method="getstationdetail">
-		</action>
-		<action name="getstationdetailreset" class="com.runzhixing.action.HiddenCityAction"
-			method="getstationdetailreset">
-		</action>
-
-		<action name="operatorDetail" class="com.runzhixing.action.OperatorDetailAction"
-			method="operatorDetail">
-		</action>
-		<action name="machineDetail" class="com.runzhixing.action.MachineDetailActionagain"
-			method="machineDetailAgain">
-		</action>
-		<!-- 数据统计 -->
-		<!-- 充装数据统计 -->
-		<action name="FillingDataStatistics" class="com.runzhixing.action.FillingDataStatisticAction"
-			method="fillingDataStatistic">
-		</action>
-
-		<!-- 气瓶数据统计 -->
-		<action name="CylinderDataStatistics"
-			class="com.runzhixing.action.CylinderDataStatisticsAction" method="cylinderDataStatistics">
-		</action>
-		<!-- 车辆数据统计 -->
-		<action name="CarDataStatistics" class="com.runzhixing.action.CarDataStatisticsAction"
-			method="CarDataStatistics">
-		</action>
-		<!-- 车辆气瓶数量统计 -->
-		<action name="CarCyNumStatistics" class="com.runzhixing.action.CarDataStatisticsAction"
-			method="CarCyNumStatistics">
-		</action>
-		<action name="relogin" class="com.runzhixing.action.MachineDetailAction"
-			method="relogin">
-			<result name="success">
-				/jsp/login/loginType.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/500.jsp
-			</result>
-		</action>
-		<!-- 气瓶追踪 -->
-		<action name="cylinderFollow" class="com.runzhixing.action.CylinderFollowAction"
-			method="ajaxCylinderFollow">
-		</action>
-
-
-		<action name="downloadExcel" class="com.runzhixing.action.DownloadExcelAction"
-			method="downloadExcel">
-		</action>
-		<action name="checkValidity" class="com.runzhixing.action.CylinderFollowAction"
-			method="CheckValidity1">
-		</action>
-
-		<action name="exportTestingData" class="com.runzhixing.action.ExportData"
-			method="exportTestingData">
-		</action>
-		<action name="spdataList" class="com.runzhixing.action.ExportData"
-			method="spdataList">
-		</action>
-	</package>
-
-	<!-- Add packages here -->
-	<package name="default" namespace="/" extends="struts-default"
-		strict-method-invocation="false">
-		
-		
-		
-		<action name="safeExit" class="com.runzhixing.action.AlterPasswordAction"
-			method="safeExit">
-			<result name="success">
-				/jsp/login/loginre.jsp
-			</result>
-			<result name="error">
-				/jsp/login/loginre.jsp
-			</result>
-		</action>
-		<action name="wxLogin" class="com.runzhixing.action.AlterPasswordAction"
-			method="wxLogin">
-			<result name="success">
-				/jsp/applyRegister.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/500.jsp
-			</result>
-		</action>
-		<action name="getValveHistory" class="com.runzhixing.action.MachineDetailAction"
-			method="getValveHistory">
-			<result name="success">
-				/jsp/rzx/dataQuery/ValveHistory.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-		<action name="getLatelyFill" class="com.runzhixing.action.MachineDetailAction"
-			method="getLatelyFill">
-			<result name="success">
-				/jsp/rzx/dataQuery/LatelyFill.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-		
-		<action name="getQualificationPicture" class="com.runzhixing.action.MachineDetailAction"
-			method="getQualificationPicture">
-			<result name="success">
-				/jsp/rzx/dataQuery/CylinderImg.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-
-		<action name="loginCng" class="com.runzhixing.action.CylinderFollowAction"
-			method="loginCng">
-			<result name="success">
-				/jsp/rzx/dataQuery/CylinderFollow.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-
-		<action name="downloadExcel" class="com.runzhixing.action.DownloadExcelAction"
-			method="downloadExcel">
-		</action>
-		<action name="CylinderFollow" class="com.runzhixing.action.CylinderFollowAction"
-			method="cylinderFollow">
-			<result name="success">
-				/jsp/rzx/dataQuery/CylinderFollow.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-
-
-		<action name="machineDetail" class="com.runzhixing.action.MachineDetailAction"
-			method="machineDetail">
-			<result name="success">
-				/jsp/rzx/filling/CylinderdataQuery.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-
-
-
-		<action name="CheckValidity" class="com.runzhixing.action.CylinderFollowAction"
-			method="CheckValidity">
-			<result name="success">
-				/jsp/rzx/dataQuery/CheckValidity.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-
-
-		<action name="machineDetailfill" class="com.runzhixing.action.MachineDetailAction"
-			method="machineDetail1">
-			<result name="success">
-				/jsp/rzx/filling/CylinderdataQuery.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-		<action name="carpublic" class="com.runzhixing.action.MachineDetailAction"
-			method="carpublic">
-			<result name="success">
-				/jsp/carpublic.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-		<action name="carAudit" class="com.runzhixing.action.CarAuditAction"
-			method="carAudit">
-			<result name="success">
-				/jsp/rzx/dataQuery/carDuit.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-		<action name="getCarChange" class="com.runzhixing.action.CarAuditAction"
-			method="getCarChange">
-			<result name="success">
-				/jsp/rzx/dataQuery/CarChange.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-		<action name="carAuditdo" class="com.runzhixing.action.CarAuditAction"
-			method="carAuditdo">
-			<result name="success">
-				/jsp/rzx/dataQuery/carDuit.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-
-		<action name="CylinderMonitorListdo" class="com.runzhixing.action.CylinderGuidAction"
-			method="CylinderMonitorListdo">
-			<result name="success">
-				/jsp/rzx/dataQuery/CylinderMonitorListdo.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-		<action name="tagQuerydo" class="com.runzhixing.action.CylinderGuidAction"
-			method="tagQuerydo">
-			<result name="success">
-				/jsp/rzx/dataQuery/tagQuerydo.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-		<action name="cylinderGuiddo" class="com.runzhixing.action.CylinderGuidAction"
-			method="cylinderGuiddo">
-			<result name="success">
-				/jsp/rzx/dataQuery/carCylinderGuiddo.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-		<action name="cylinderGuid" class="com.runzhixing.action.CylinderGuidAction"
-			method="cylinderGuid">
-			<result name="success">
-				/jsp/rzx/dataQuery/carCylinderGuid.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-
-		<action name="relogin" class="com.runzhixing.action.MachineDetailAction"
-			method="relogin">
-			<result name="success">
-				/jsp/login/loginType.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/500.jsp
-			</result>
-		</action>
-		<action name="Detailbyid" class="com.runzhixing.action.CheckAnnounformmentAction"
-			method="detailbyID">
-			<result name="success">
-				/jsp/rzx/infoMan/detailbyid.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-
-		<action name="safeexit" class="com.runzhixing.action.SafeexitAction"
-			method="safeexit">
-			<result name="success">
-				/jsp/login/loginType.jsp
-			</result>
-			<result name="error">
-				/jsp/fail/nodata.jsp
-			</result>
-		</action>
-
-	</package>
-
-</struts>
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE struts PUBLIC
+    "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
+    "http://struts.apache.org/dtds/struts-2.5.dtd">
+
+<struts>
+
+	<!--<constant name="struts.enable.DynamicMethodInvocation" value="false" 
+		/> <constant name="struts.devMode" value="false" /> <include file="example.xml"/> -->
+	<constant name="struts.enable.DynamicMethodInvocation" value="true" />
+	<!-- 为修复struts2 s2-016、s2-017漏洞,重写DefaultActionMapper -->
+	<bean type="org.apache.struts2.dispatcher.mapper.ActionMapper"
+		name="myDefaultActionMapper" class="com.runzhixing.tool.MyDefaultActionMapper" />
+	<constant name="struts.mapper.class" value="myDefaultActionMapper" />
+	<constant name="struts.custom.i18n.resources" value="global" />
+	<constant name="struts.multipart.maxSize" value="100000000" />
+
+
+	<package name="login" namespace="/" extends="struts-default"
+		strict-method-invocation="false">
+		<action name="validateLogin" class="com.runzhixing.action.LoginAction"
+			method="validateLogin">
+			<result name="success">/jsp/rzx/bgman.jsp</result>
+			<result name="fail">/jsp/fail/loginfail.jsp</result>
+		</action>
+	</package>
+	<package name="wxCert" namespace="/" extends="struts-default"
+		strict-method-invocation="false">
+		<action name="useCert" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="useCert">
+			<result name="success">
+				/wxUseCert.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/500.jsp
+			</result>
+		</action>
+		<action name="electronicsCert" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="electronicsCert">
+			<result name="success">
+				/wxElectronicsCert.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/500.jsp
+			</result>
+		</action>
+
+	</package>
+	<package name="/" namespace="/" extends="json-default"
+		strict-method-invocation="false">
+		<action name="nxlogin" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="nxlogin"></action>
+	</package>
+	<package name="wx" namespace="/" extends="json-default"
+		strict-method-invocation="false">
+		<action name="checkSignature" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="checkSignature"></action>
+		<action name="crud_single_cylinder_info" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="crud_single_cylinder_info"></action>
+		<action name="query_car_info" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="query_car_info"></action>
+		<action name="use_Cert" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="use_Cert"></action>
+		<action name="wx_Login" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="wx_Login"></action>
+		<action name="wx_register" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="wx_register"></action>
+		<action name="city_country_inifo" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="city_country_inifo"></action>
+		<action name="cert_install_Info" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="cert_install_Info"></action>
+		<action name="base_info" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="base_info"></action>
+		<action name="crud_car_info" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="crud_car_info"></action>
+		<action name="car_info_by_user" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="car_info_by_user"></action>
+		<action name="crud_cylinder_info" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="crud_cylinder_info">
+		</action>
+		<action name="cylinder_info_by_car" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="cylinder_info_by_car"></action>
+		<action name="upload_img" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="upload_img">
+			<interceptor-ref name="fileUpload">
+				<param name="allowedTypes">image/bmp,image/jpg,image/jpeg,image/png,image/gif,image/pjepg</param>
+				<param name="maximumSize">10485760</param>
+			</interceptor-ref>
+			<interceptor-ref name="defaultStack" />
+		</action>
+
+		<action name="upload_more_img" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="upload_more_img">
+			<interceptor-ref name="fileUpload">
+				<param name="allowedTypes">image/bmp,image/jpg,image/jpeg,image/png,image/gif,image/pjepg</param>
+				<param name="maximumSize">10485760</param>
+			</interceptor-ref>
+			<interceptor-ref name="defaultStack" />
+		</action>
+
+		<action name="get_car_cylinder_cert_info" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="get_car_cylinder_cert_info"></action>
+		<action name="city_Info" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="city_Info"></action>
+		<action name="clear_Cookie" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="clear_Cookie"></action>
+		<action name="getSwiperList" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="getSwiperList"></action>
+		<action name="getFunctionList" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="getFunctionList"></action>
+		<action name="lately_fill_info" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="lately_fill_info"></action>
+		<action name="getReportFormData" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="getReportFormData"></action>
+		<action name="chart1SaveAsImage" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="chart1SaveAsImage"></action>
+		<action name="generatetPDF" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="generatetPDF"></action>
+		<action name="get_cert_by_carguid" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="get_cert_by_carguid"></action>
+		<action name="remove_img" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="remove_img"></action>
+		<action name="bind_existed_car_cylinder" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="bind_existed_car_cylinder"></action>
+		<action name="unbind_car" class="com.runzhixing.action.ThirdInterfaceAction"
+			method="unbind_car"></action>
+
+	</package>
+
+	<package name="nx" namespace="/" extends="json-default" strict-method-invocation="false">
+		<action name="city_country_inifo" class="com.runzhixing.action.NxAppCarAction" method="city_country_inifo"></action>
+		<action name="cert_install_Info" class="com.runzhixing.action.NxAppCarAction" method="cert_install_Info"></action>
+		<action name="crud_car_info" class="com.runzhixing.action.NxAppCarAction" method="crud_car_info"></action>
+		<action name="upload_img" class="com.runzhixing.action.NxAppCarAction" method="upload_img">
+			<interceptor-ref name="fileUpload">
+				<param name="allowedTypes">image/bmp,image/jpg,image/jpeg,image/png,image/gif,image/pjepg</param>
+				<param name="maximumSize">10485760</param>
+			</interceptor-ref>
+			<interceptor-ref name="defaultStack" />
+		</action>
+		<action name="remove_img" class="com.runzhixing.action.NxAppCarAction" method="remove_img"></action>
+		<action name="get_car_cylinder_cert_info" class="com.runzhixing.action.NxAppCarAction" method="get_car_cylinder_cert_info"></action>
+		<action name="crud_single_cylinder_info" class="com.runzhixing.action.NxAppCarAction" method="crud_single_cylinder_info"></action>
+		
+	</package>
+
+
+	<!-- <include file="struts-login.xml"/> -->
+	<package name="ajax" namespace="/" extends="json-default"
+		strict-method-invocation="false">
+		
+		
+		<action name="getStation2" class="com.runzhixing.action.TodayModifyAction"
+			method="getStation2"></action>
+		<action name="updateMachine" class="com.runzhixing.action.TodayModifyAction"
+			method="updateMachine"></action>
+		<action name="updateFillCheckOper" class="com.runzhixing.action.TodayModifyAction"
+			method="updateFillCheckOper"></action>
+		<action name="updateFillCheck2" class="com.runzhixing.action.TodayModifyAction"
+			method="updateFillCheck2"></action>
+		<action name="getRegister" class="com.runzhixing.action.AlterPasswordAction"
+			method="getRegister"></action>
+		<action name="examineAll" class="com.runzhixing.action.AlterPasswordAction"
+			method="examineAll"></action>
+		<action name="getInstallLocInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getInstallLocInfo"></action>
+		<action name="getInstallTypeInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getInstallTypeInfo"></action>
+		<action name="getProductInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getProductInfo"></action>
+		<action name="CRUDCarInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="CRUDCarInfo"></action>
+		<action name="getCarInfo_1" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCarInfo_1"></action>
+		<action name="getCarTypeInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCarTypeInfo"></action>
+		<action name="getCarPlateColorInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCarPlateColorInfo"></action>
+		<action name="getUnitInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getUnitInfo"></action>
+		<action name="getCountryInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCountryInfo"></action>
+		<action name="getCityInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCityInfo"></action>
+		<action name="getAppTypeInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getAppTypeInfo"></action>
+		<action name="insertWXID" class="com.runzhixing.action.AlterPasswordAction"
+			method="insertWXID"></action>
+		<action name="updateNickName" class="com.runzhixing.action.AlterPasswordAction"
+			method="updateNickName"></action>
+
+		<action name="latelyFill" class="com.runzhixing.action.AlterPasswordAction"
+			method="latelyFill"></action>
+		<action name="getPreCarNo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getPreCarNo"></action>
+		<action name="register" class="com.runzhixing.action.AlterPasswordAction"
+			method="register"></action>
+		<action name="examineCylinder" class="com.runzhixing.action.AlterPasswordAction"
+			method="examineCylinder"></action>
+		<action name="replaceRegNo" class="com.runzhixing.action.AlterPasswordAction"
+			method="replaceRegNo"></action>
+		<action name="examineSingleCylinder" class="com.runzhixing.action.AlterPasswordAction"
+			method="examineSingleCylinder"></action>
+		<action name="examineCar" class="com.runzhixing.action.AlterPasswordAction"
+			method="examineCar"></action>
+		<action name="uploadCert" class="com.runzhixing.action.AlterPasswordAction"
+			method="uploadCert">
+			<interceptor-ref name="fileUpload">
+				<param name="allowedTypes">image/bmp,image/jpg,image/jpeg,image/png,image/gif,image/pjepg</param>
+				<!-- <param name="maximumSize">5242880*2</param> -->
+				<param name="maximumSize">15242880</param>
+			</interceptor-ref>
+			<interceptor-ref name="defaultStack" />
+		</action>
+		<action name="getCylinderProduct" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCylinderProduct"></action>
+		<action name="getCylinderInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCylinderInfo"></action>
+		<action name="getCarInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCarInfo"></action>
+		<action name="deleteCarCylinder" class="com.runzhixing.action.AlterPasswordAction"
+			method="deleteCarCylinder"></action>
+		<action name="getcarcylinderbyuser" class="com.runzhixing.action.AlterPasswordAction"
+			method="getcarcylinderbyuser"></action>
+		<action name="insertCylinderInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="insertCylinderInfo"></action>
+		<action name="insertCarInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="insertCarInfo"></action>
+		<action name="insertCarCylinder" class="com.runzhixing.action.AlterPasswordAction"
+			method="insertCarCylinder">
+
+
+		</action>
+		<action name="getRedirect" class="com.runzhixing.action.AlterPasswordAction"
+			method="getRedirect"></action>
+		<action name="getPhoneCode" class="com.runzhixing.action.AlterPasswordAction"
+			method="getPhoneCode"></action>
+		<action name="getVCode" class="com.runzhixing.action.AlterPasswordAction"
+			method="getVCode"></action>
+		<action name="testVCode" class="com.runzhixing.action.AlterPasswordAction"
+			method="testVCode"></action>
+		<action name="getCity" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCity"></action>
+		<action name="getCity123" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCity123"></action>
+		<action name="getCounty123" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCounty123"></action>
+		<action name="getUnit123" class="com.runzhixing.action.AlterPasswordAction"
+			method="getUnit123"></action>
+		<action name="getCountry" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCountry"></action>
+		<action name="getUnit" class="com.runzhixing.action.AlterPasswordAction"
+			method="getUnit"></action>
+		<action name="getCarCylinderInfo" class="com.runzhixing.action.AlterPasswordAction"
+			method="getCarCylinderInfo"></action>
+
+		<action name="modifyWorkPersonInfoCheck"
+			class="com.runzhixing.action.ModifyWorkPersonInfoCheckAction" method="modifyWorkPersonInfoCheck"></action>
+		<action name="modifyStationInfoCheck"
+			class="com.runzhixing.action.ModifyStationInfoCheckAction" method="modifyStationInfoCheck"></action>
+		<action name="testingStationInfoCheck"
+			class="com.runzhixing.action.TestingStationInfoCheckAction" method="testingStationInfoCheck"></action>
+		<action name="modifyCompanyform" class="com.runzhixing.action.ModifyCompanyformAction"
+			method="modifyCompanyform"></action>
+		<action name="todayModify" class="com.runzhixing.action.TodayModifyAction"
+			method="todayModify"></action>
+		<action name="todayModify123" class="com.runzhixing.action.TodayModifyAction"
+			method="todayModify123"></action>
+		<action name="testingworkPersonInfo" class="com.runzhixing.action.WorkPersonInfoAction"
+			method="testingworkPersonInfo"></action>
+		<action name="TagdataStatis" class="com.runzhixing.action.TagdataStatisAction"
+			method="TagdataStatis"></action>
+		<action name="tagIssuingfrom" class="com.runzhixing.action.TagIssuingfromAction"
+			method="tagIssuingfrom"></action>
+		<action name="tagIssuingStatistics" class="com.runzhixing.action.TagIssuingfromAction"
+			method="tagIssuingStatistics"></action>
+		<action name="checkSeedataform" class="com.runzhixing.action.CheckSeedataQueryAction"
+			method="checkSeedataQuery"></action>
+		<action name="workPersonInfo" class="com.runzhixing.action.WorkPersonInfoAction"
+			method="workPersonInfo"></action>
+		<action name="fillingMachineInfo" class="com.runzhixing.action.FillingMachineInfoAction"
+			method="fillingMachineInfo"></action>
+		<action name="checkStationInfo" class="com.runzhixing.action.CheckStationInfoAction"
+			method="checkStationInfo"></action>
+		<action name="kaoqinDateStatist" class="com.runzhixing.action.KaoqinDateStatistAction"
+			method="kaoqinDateStatist"></action>
+
+		<action name="CNGQualityInto" class="com.runzhixing.action.CNGQualityIntoAction"
+			method="CNGQualityInto"></action>
+		<action name="specialInto" class="com.runzhixing.action.SpecialIntoAction"
+			method="specialInto"></action>
+		<action name="nonlocalQuery" class="com.runzhixing.action.NonlocalQueryAction"
+			method="nonlocalQuery"></action>
+		<action name="kaoqingQuery" class="com.runzhixing.action.KaoqingQueryAction"
+			method="kaoqingQuery"></action>
+		<action name="releaseAnnformform" class="com.runzhixing.action.CheckAnnounformmentAction"
+			method="releaseAnn"></action>
+		<action name="checkAnnounformment" class="com.runzhixing.action.CheckAnnounformmentAction"
+			method="checkAnnoun"></action>
+		<!-- 修改密码 -->
+		<action name="alterpassword" class="com.runzhixing.action.AlterPasswordAction"
+			method="alterpassword"></action>
+
+		<action name="infoview" class="com.runzhixing.action.InfoviewAction"
+			method="infoview"></action>
+		<!-- 查看网络情况 -->
+		<action name="getCNGStationTranInfoList" class="com.runzhixing.action.CNGStationTranInfoAction"
+			method="getCNGStationTranInfoList"></action>
+		<!-- 监察人员管理 -->
+		<action name="Supervisormanagement" class="com.runzhixing.action.SupervisormanagementAction"
+			method="supervisormanagement"></action>
+		<!-- 场所管理 -->
+		<action name="Placemanagement" class="com.runzhixing.action.PlacemanagementAction"
+			method="placemanagement"></action>
+		<!-- 得到原先的告警参数 -->
+		<action name="getoldwarningparam" class="com.runzhixing.action.WarningparasetAction"
+			method="getoldwarningparam"></action>
+		<!-- 设置新的告警参数 -->
+		<action name="warningparaset" class="com.runzhixing.action.WarningparasetAction"
+			method="warningparaset"></action>
+		<!-- 加气机运行状态 -->
+		<action name="aeratedmachinerunningstate"
+			class="com.runzhixing.action.AeratedmachinerunningstateAction"
+			method="aeratedmachinerunningstate"></action>
+		<!-- 人员巡查情况查询 -->
+		<action name="personnelInspection" class="com.runzhixing.action.PersonnelInspectionAction"
+			method="personnelInspection"></action>
+		<!-- 人员巡查情况查询 -->
+		<action name="personnelInspection1" class="com.runzhixing.action.PersonnelInspectionAction"
+			method="personnelInspection1"></action>
+		<!-- 巡查数据查询 -->
+		<action name="inspectiondataQuery" class="com.runzhixing.action.InspectiondataQueryAction"
+			method="inspectiondataQuery"></action>
+
+		<!-- 特种设备数据查询 -->
+		<action name="specialequipmentdataQuery"
+			class="com.runzhixing.action.SpecialequipmentdataQueryAction" method="specialequipmentdataQuery"></action>
+		<!-- 气瓶数据查询 -->
+		<action name="cylinderDataQuery" class="com.runzhixing.action.CylinderDataQueryAction"
+			method="cylinderDataQuery11"></action>
+		<action name="cylinderDataQuery12" class="com.runzhixing.action.CylinderDataQueryAction"
+			method="cylinderDataQuery12"></action>
+		<action name="cylinderDataQuery13" class="com.runzhixing.action.CylinderDataQueryAction"
+			method="cylinderDataQuery13"></action>
+		<action name="cylinderDataQuery14" class="com.runzhixing.action.CylinderDataQueryAction"
+			method="cylinderDataQuery14"></action>
+		<!-- 气瓶数据查询 -->
+		<action name="cylinderDataQuery1" class="com.runzhixing.action.CylinderDataQueryAction"
+			method="cylinderDataQuery1"></action>
+		<!-- 气瓶将要检测数量查询 -->
+		<action name="cylinderDataQueryagain"
+			class="com.runzhixing.action.CylinderDataQueryagainAction" method="cylinderDataQueryagain"></action>
+		<!-- 当天检验情况 -->
+		<action name="todattestingdataQuery" class="com.runzhixing.action.TestingdataQueryAction"
+			method="todaytestingdataQuery"></action>
+		<!-- 检验数据查询 -->
+		<action name="testingdataQuery" class="com.runzhixing.action.TestingdataQueryAction"
+			method="testingdataQuery"></action>
+		<!-- 车辆数据查询 -->
+		<action name="carsDataQuery" class="com.runzhixing.action.CarsDataQueryAction"
+			method="carsDataQuery"></action>
+			<!-- 车辆数据查询 -->
+		<action name="getCarsDataQuery" class="com.runzhixing.action.CarsDataQueryAction"
+			method="getCarsDataQuery"></action>
+		<!-- 车辆数据查询 -->
+		<action name="carsDataQueryagain" class="com.runzhixing.action.CarsDataQueryAction"
+			method="carsDataQueryagain"></action>
+		<!-- 黑名单查询 -->
+		<action name="blackListQuery" class="com.runzhixing.action.BlackListQueryAction"
+			method="blackListQuery"></action>
+		<!-- CNG质量查询 -->
+		<action name="CNGQualityQuery" class="com.runzhixing.action.CNGQualityQueryAction"
+			method="CNGQualityQuery"></action>
+		<!-- 充装数据查询 -->
+		<action name="fillingDataQuery" class="com.runzhixing.action.FillingDataQueryAction"
+			method="fillingDataQuery"></action>
+		<!-- 氢气充装数据查询 -->
+		<action name="chgFillingDataQuery" class="com.runzhixing.action.FillingDataQueryAction"
+			method="chgFillingDataQuery"></action>
+		<!-- 改装数据查询 -->
+		<action name="modifiedDataQuery" class="com.runzhixing.action.ModifiedDataQueryAction"
+			method="modifiedDataQuery"></action>
+
+
+		<!-- 系统告警日志 -->
+		<action name="systemWarninglog" class="com.runzhixing.action.SystemWarninglogAction"
+			method="systemWarninglog"></action>
+
+
+
+		<!-- 改装数据查询 -->
+		<action name="province" class="com.runzhixing.action.ProvinceAction"
+			method="province"></action>
+
+
+		<!-- 改装数据查询 -->
+		<action name="AdvanceSystemwarninglog" class="com.runzhixing.action.SystemWarninglogAction"
+			method="AdvanceSystemwarninglog">
+			<result name="success">/jsp/rzx/log/Systemwarninglog.jsp</result>
+		</action>
+
+		<action name="makeChart" class="com.runzhixing.action.Test"
+			method="makeChart">
+		</action>
+
+		<action name="hiddenspeStation" class="com.runzhixing.action.SpeStationAction"
+			method="speStationQuery">
+		</action>
+		<action name="hiddenspeStation1" class="com.runzhixing.action.SpeStationAction"
+			method="speStationQuery1">
+		</action>
+		<action name="hiddenspeStation2" class="com.runzhixing.action.SpeStationAction"
+			method="speStationQuery2">
+		</action>
+
+		<action name="hiddencheckStation" class="com.runzhixing.action.CheckStationAction"
+			method="checkStationQuery">
+		</action>
+		<action name="hiddenoperatorNo" class="com.runzhixing.action.JQJStationAction"
+			method="operatorNoQuery">
+		</action>
+		<action name="hiddenjqj" class="com.runzhixing.action.JQJStationAction"
+			method="jqjQuery">
+		</action>
+		<action name="hiddenCNGStation" class="com.runzhixing.action.CNGStationAction"
+			method="cngstationQuery">
+		</action>
+		<action name="hiddenStation" class="com.runzhixing.action.StationAction"
+			method="stationQuery">
+		</action>
+		<action name="hiddenUnit" class="com.runzhixing.action.UnitAction"
+			method="unitQuery">
+		</action>
+		<action name="hiddenCity" class="com.runzhixing.action.HiddenCityAction"
+			method="hiddenCity">
+		</action>
+		<action name="hiddenjiangaun" class="com.runzhixing.action.HiddenCityAction"
+			method="hiddenjiangaun">
+		</action>
+		<action name="hiddenxuncha" class="com.runzhixing.action.HiddenCityAction"
+			method="hiddenxuncha">
+		</action>
+		<action name="hiddenCountry" class="com.runzhixing.action.HiddenCityAction"
+			method="hiddenCountry">
+		</action>
+		<action name="getstationdetail" class="com.runzhixing.action.HiddenCityAction"
+			method="getstationdetail">
+		</action>
+		<action name="getstationdetailreset" class="com.runzhixing.action.HiddenCityAction"
+			method="getstationdetailreset">
+		</action>
+
+		<action name="operatorDetail" class="com.runzhixing.action.OperatorDetailAction"
+			method="operatorDetail">
+		</action>
+		<action name="machineDetail" class="com.runzhixing.action.MachineDetailActionagain"
+			method="machineDetailAgain">
+		</action>
+		<!-- 数据统计 -->
+		<!-- 充装数据统计 -->
+		<action name="FillingDataStatistics" class="com.runzhixing.action.FillingDataStatisticAction"
+			method="fillingDataStatistic">
+		</action>
+
+		<!-- 气瓶数据统计 -->
+		<action name="CylinderDataStatistics"
+			class="com.runzhixing.action.CylinderDataStatisticsAction" method="cylinderDataStatistics">
+		</action>
+		<!-- 车辆数据统计 -->
+		<action name="CarDataStatistics" class="com.runzhixing.action.CarDataStatisticsAction"
+			method="CarDataStatistics">
+		</action>
+		<!-- 车辆气瓶数量统计 -->
+		<action name="CarCyNumStatistics" class="com.runzhixing.action.CarDataStatisticsAction"
+			method="CarCyNumStatistics">
+		</action>
+		<action name="relogin" class="com.runzhixing.action.MachineDetailAction"
+			method="relogin">
+			<result name="success">
+				/jsp/login/loginType.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/500.jsp
+			</result>
+		</action>
+		<!-- 气瓶追踪 -->
+		<action name="cylinderFollow" class="com.runzhixing.action.CylinderFollowAction"
+			method="ajaxCylinderFollow">
+		</action>
+
+
+		<action name="downloadExcel" class="com.runzhixing.action.DownloadExcelAction"
+			method="downloadExcel">
+		</action>
+		<action name="checkValidity" class="com.runzhixing.action.CylinderFollowAction"
+			method="CheckValidity1">
+		</action>
+
+		<action name="exportTestingData" class="com.runzhixing.action.ExportData"
+			method="exportTestingData">
+		</action>
+		<action name="spdataList" class="com.runzhixing.action.ExportData"
+			method="spdataList">
+		</action>
+	</package>
+
+	<!-- Add packages here -->
+	<package name="default" namespace="/" extends="struts-default"
+		strict-method-invocation="false">
+		
+		
+		
+		<action name="safeExit" class="com.runzhixing.action.AlterPasswordAction"
+			method="safeExit">
+			<result name="success">
+				/jsp/login/loginre.jsp
+			</result>
+			<result name="error">
+				/jsp/login/loginre.jsp
+			</result>
+		</action>
+		<action name="wxLogin" class="com.runzhixing.action.AlterPasswordAction"
+			method="wxLogin">
+			<result name="success">
+				/jsp/applyRegister.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/500.jsp
+			</result>
+		</action>
+		<action name="getValveHistory" class="com.runzhixing.action.MachineDetailAction"
+			method="getValveHistory">
+			<result name="success">
+				/jsp/rzx/dataQuery/ValveHistory.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+		<action name="getLatelyFill" class="com.runzhixing.action.MachineDetailAction"
+			method="getLatelyFill">
+			<result name="success">
+				/jsp/rzx/dataQuery/LatelyFill.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+		
+		<action name="getQualificationPicture" class="com.runzhixing.action.MachineDetailAction"
+			method="getQualificationPicture">
+			<result name="success">
+				/jsp/rzx/dataQuery/CylinderImg.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+
+		<action name="loginCng" class="com.runzhixing.action.CylinderFollowAction"
+			method="loginCng">
+			<result name="success">
+				/jsp/rzx/dataQuery/CylinderFollow.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+
+		<action name="downloadExcel" class="com.runzhixing.action.DownloadExcelAction"
+			method="downloadExcel">
+		</action>
+		<action name="CylinderFollow" class="com.runzhixing.action.CylinderFollowAction"
+			method="cylinderFollow">
+			<result name="success">
+				/jsp/rzx/dataQuery/CylinderFollow.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+
+
+		<action name="machineDetail" class="com.runzhixing.action.MachineDetailAction"
+			method="machineDetail">
+			<result name="success">
+				/jsp/rzx/filling/CylinderdataQuery.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+
+
+
+		<action name="CheckValidity" class="com.runzhixing.action.CylinderFollowAction"
+			method="CheckValidity">
+			<result name="success">
+				/jsp/rzx/dataQuery/CheckValidity.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+
+
+		<action name="machineDetailfill" class="com.runzhixing.action.MachineDetailAction"
+			method="machineDetail1">
+			<result name="success">
+				/jsp/rzx/filling/CylinderdataQuery.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+		<action name="carpublic" class="com.runzhixing.action.MachineDetailAction"
+			method="carpublic">
+			<result name="success">
+				/jsp/carpublic.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+		<action name="carAudit" class="com.runzhixing.action.CarAuditAction"
+			method="carAudit">
+			<result name="success">
+				/jsp/rzx/dataQuery/carDuit.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+		<action name="getCarChange" class="com.runzhixing.action.CarAuditAction"
+			method="getCarChange">
+			<result name="success">
+				/jsp/rzx/dataQuery/CarChange.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+		<action name="carAuditdo" class="com.runzhixing.action.CarAuditAction"
+			method="carAuditdo">
+			<result name="success">
+				/jsp/rzx/dataQuery/carDuit.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+
+		<action name="CylinderMonitorListdo" class="com.runzhixing.action.CylinderGuidAction"
+			method="CylinderMonitorListdo">
+			<result name="success">
+				/jsp/rzx/dataQuery/CylinderMonitorListdo.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+		<action name="tagQuerydo" class="com.runzhixing.action.CylinderGuidAction"
+			method="tagQuerydo">
+			<result name="success">
+				/jsp/rzx/dataQuery/tagQuerydo.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+		<action name="cylinderGuiddo" class="com.runzhixing.action.CylinderGuidAction"
+			method="cylinderGuiddo">
+			<result name="success">
+				/jsp/rzx/dataQuery/carCylinderGuiddo.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+		<action name="cylinderGuid" class="com.runzhixing.action.CylinderGuidAction"
+			method="cylinderGuid">
+			<result name="success">
+				/jsp/rzx/dataQuery/carCylinderGuid.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+
+		<action name="relogin" class="com.runzhixing.action.MachineDetailAction"
+			method="relogin">
+			<result name="success">
+				/jsp/login/loginType.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/500.jsp
+			</result>
+		</action>
+		<action name="Detailbyid" class="com.runzhixing.action.CheckAnnounformmentAction"
+			method="detailbyID">
+			<result name="success">
+				/jsp/rzx/infoMan/detailbyid.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+
+		<action name="safeexit" class="com.runzhixing.action.SafeexitAction"
+			method="safeexit">
+			<result name="success">
+				/jsp/login/loginType.jsp
+			</result>
+			<result name="error">
+				/jsp/fail/nodata.jsp
+			</result>
+		</action>
+
+	</package>
+
+</struts>