wdl 6 kuukautta sitten
commit
a540bd687a
100 muutettua tiedostoa jossa 16880 lisäystä ja 0 poistoa
  1. 93 0
      .classpath
  2. 13 0
      .mymetadata
  3. 64 0
      .project
  4. 12 0
      .settings/.jsdtscope
  5. 8 0
      .settings/com.genuitec.eclipse.migration.prefs
  6. 4 0
      .settings/org.eclipse.core.resources.prefs
  7. 7 0
      .settings/org.eclipse.jdt.core.prefs
  8. 10 0
      .settings/org.eclipse.wst.common.component
  9. 7 0
      .settings/org.eclipse.wst.common.project.facet.core.prefs.xml
  10. 12 0
      .settings/org.eclipse.wst.common.project.facet.core.xml
  11. 1 0
      .settings/org.eclipse.wst.jsdt.ui.superType.container
  12. 1 0
      .settings/org.eclipse.wst.jsdt.ui.superType.name
  13. 1 0
      .svn/entries
  14. 1 0
      .svn/format
  15. 164 0
      .svn/pristine/00/000869785e4f4d9748ab7e513de24ea7750466e4.svn-base
  16. 84 0
      .svn/pristine/00/003a6c5f44225b7a51c34de016f8a6a8e97f6c0c.svn-base
  17. 48 0
      .svn/pristine/01/01216adf69dc9bc2a672aca0da58d48dd0beb641.svn-base
  18. 92 0
      .svn/pristine/01/015ef3f1bae732a387d93cabf07083e4f625c2ed.svn-base
  19. BIN
      .svn/pristine/01/016d0bc512222f1253ee6b64d389c84e22f697f0.svn-base
  20. BIN
      .svn/pristine/01/01767f0fcdb070dfe3c293f7eddb25600d264447.svn-base
  21. 523 0
      .svn/pristine/02/021910c95468223ea527b344574380ed40e86781.svn-base
  22. BIN
      .svn/pristine/02/02239221dd7ca736d67c8f23f2413087f2bff280.svn-base
  23. 16 0
      .svn/pristine/02/023cfbd65e16f1a530924251239b635050fbe413.svn-base
  24. 304 0
      .svn/pristine/02/02ae6b1691a53fcdb9bb6690d8fac8f4308e6bb4.svn-base
  25. 295 0
      .svn/pristine/03/033fb80042dbd5ce3bcd041a2381d2b9ccf9ddc9.svn-base
  26. 918 0
      .svn/pristine/03/03595bf2578696deebdffc95e8eab936757dbbd1.svn-base
  27. 74 0
      .svn/pristine/03/03bd7c5f69a92653374977ecc064ce927370b219.svn-base
  28. BIN
      .svn/pristine/03/03f87281331f96152079f93d9e3ce8fa0743adaf.svn-base
  29. 114 0
      .svn/pristine/04/0414d364eee1d983181850911559bf7827158b97.svn-base
  30. 76 0
      .svn/pristine/04/04b729730640c5f816fe2f22f871e31d9d294347.svn-base
  31. 142 0
      .svn/pristine/04/04eabcf681b84ce39f3b08ea5d4ec9400245b848.svn-base
  32. 495 0
      .svn/pristine/05/057aead846197d64d7c7cb9340563f081a7fca9f.svn-base
  33. 142 0
      .svn/pristine/05/05c7906772c4b98e069a14f801d31e4c6815f01b.svn-base
  34. 28 0
      .svn/pristine/06/06ec12de4f5c2208679ac13dd0d30a0ac29df144.svn-base
  35. BIN
      .svn/pristine/07/07b6bf82cea13570b5290d6ed841283a1fcce170.svn-base
  36. 126 0
      .svn/pristine/07/07d4ab871d8bcb4c7b97fdfb1e627a9969c3413f.svn-base
  37. BIN
      .svn/pristine/08/08274abbf7065ca15cf877d199a8bf75dba87f36.svn-base
  38. 104 0
      .svn/pristine/08/0845627192237cd763c8f59c4257a1ab4b0ab5e8.svn-base
  39. 200 0
      .svn/pristine/08/0891d62d711e1a1fc4c96365eeb8d82a29b5d24a.svn-base
  40. 79 0
      .svn/pristine/08/089ddf02971658033fbcd49a4a7431a34017899a.svn-base
  41. BIN
      .svn/pristine/08/08abae535dafbc48b379071efa7372bce1aa9782.svn-base
  42. 115 0
      .svn/pristine/08/08d67b4dfa3d1dfc15971753578eb066043001fd.svn-base
  43. 66 0
      .svn/pristine/08/08e185c60aea3749a247f5dca3a303109ec44b01.svn-base
  44. 44 0
      .svn/pristine/09/09006c97d88fc6dbdd14c603cc66b1567951d942.svn-base
  45. 167 0
      .svn/pristine/09/098ec9a69022a40189889277ebf2431ff6a19253.svn-base
  46. 99 0
      .svn/pristine/0a/0a4b7caa35516ac01e1c22c0ea6019f60a2ea25e.svn-base
  47. 16 0
      .svn/pristine/0a/0ac29935d20c28cfb5dbc1c9f6b0192586e5033e.svn-base
  48. 178 0
      .svn/pristine/0b/0b9d819f29c8931a705fd257779c2eebc4862cc3.svn-base
  49. 298 0
      .svn/pristine/0c/0c1004ebf4886ed0b7639da11a8cb01d7b89634f.svn-base
  50. BIN
      .svn/pristine/0c/0c60815ff9402c7f4ed063bfb8ce61cc7aede33a.svn-base
  51. 390 0
      .svn/pristine/0c/0c74f3b244557788d1cc312c4f2abb491edc21d4.svn-base
  52. 15 0
      .svn/pristine/0c/0ca70208941577dd768192dc39d81c8f1e4fd880.svn-base
  53. 68 0
      .svn/pristine/0c/0ccaf597420726b13821e54d7e519c5891eb265b.svn-base
  54. 14 0
      .svn/pristine/0d/0d209167ae5647c17bbbd03f1e41239e2f7f1721.svn-base
  55. 102 0
      .svn/pristine/0e/0e03eff84e7f9a780e477585f47b5824527ca18f.svn-base
  56. 142 0
      .svn/pristine/0e/0e2ff5edca29bc23ac5c596a9e38e5282913ca4f.svn-base
  57. 52 0
      .svn/pristine/0e/0eb9c6bc43c1ee2ba495039054f2d894249bc108.svn-base
  58. 647 0
      .svn/pristine/0f/0f12cc3527f2c5d5065527d3afcd36dde9922f82.svn-base
  59. 107 0
      .svn/pristine/0f/0fd2d7695eea41c6df9af933ed871f1ea79a3abc.svn-base
  60. 48 0
      .svn/pristine/10/1052360df8db626a364b54f8bac24b3e74f6aa33.svn-base
  61. 153 0
      .svn/pristine/11/110ff8c3780578ed2ea6b3675efa201b02f79cce.svn-base
  62. BIN
      .svn/pristine/11/11941d851674334db85d758d49a336853de7747d.svn-base
  63. 334 0
      .svn/pristine/11/119a7ed05160379768ad56d38312975101704e96.svn-base
  64. 355 0
      .svn/pristine/11/11d2984f2ef65a70371249e129a6c1b7c38c8877.svn-base
  65. 297 0
      .svn/pristine/12/1223f1561d54adba48601dd2ba5b55826cc7787c.svn-base
  66. BIN
      .svn/pristine/12/124830279e275117dc377af0b765ff99e0233289.svn-base
  67. 5166 0
      .svn/pristine/12/125793a0cb020a3335daefbf87f8fa3137d0c455.svn-base
  68. BIN
      .svn/pristine/12/127948c04822fd5192828a9f4669472f410c3270.svn-base
  69. 46 0
      .svn/pristine/12/12a7611a42e691de25f2382cab09d0506a378071.svn-base
  70. 111 0
      .svn/pristine/12/12af71dc06c5479ddba8d7f3094de4001ced9758.svn-base
  71. BIN
      .svn/pristine/12/12fd5f2deeacc28583534a0dd4abe0bf8c2f2119.svn-base
  72. 136 0
      .svn/pristine/13/1339932cde82a4360ac9ffb02a840cba442cccb7.svn-base
  73. 67 0
      .svn/pristine/13/1340bc69eea5af4e82cb320c6c49cc4f3d24856e.svn-base
  74. 59 0
      .svn/pristine/13/136d5354079c10ac5923368875e203e6faf74ec2.svn-base
  75. 275 0
      .svn/pristine/13/137260c9fbe5222066ad6b2bcac57b3cceee68cf.svn-base
  76. 209 0
      .svn/pristine/14/14051067536623931c8afddddbafa3371bd6b4b7.svn-base
  77. 45 0
      .svn/pristine/14/1422b277e3078a5417b1c11202a21e5f67c3bac4.svn-base
  78. BIN
      .svn/pristine/14/14dfa28510c62eee00812e8d231f72ec69ac45b9.svn-base
  79. 3 0
      .svn/pristine/14/14f6e5aedc400d47fda71c2fdc8ac3c1ac37ec0b.svn-base
  80. 59 0
      .svn/pristine/15/151217c7372f19c1da9c58dadb961171a9f952a7.svn-base
  81. 222 0
      .svn/pristine/15/1518fc00d884a8254c3d96cd20156d57d7970e01.svn-base
  82. 158 0
      .svn/pristine/15/153df8eef3c77dd6b4483f9cbdddc187cfd32a10.svn-base
  83. 25 0
      .svn/pristine/16/16cff78cad7930948db8734b3508c7a58980f96f.svn-base
  84. 297 0
      .svn/pristine/17/17dd7a81ac9134763ef8e8e15236eb76f46f7b2d.svn-base
  85. 1 0
      .svn/pristine/17/17e4334d5a9ea8dbdc2bcdcf76c7a28c12fa60bb.svn-base
  86. 42 0
      .svn/pristine/18/181305759bc4e39c2f2b72b554cc14dfd0a6cf72.svn-base
  87. 110 0
      .svn/pristine/18/1843769ee18cbaf34fddebc397f9414195e85d5b.svn-base
  88. BIN
      .svn/pristine/18/187065817a3a7a7bb2b29004de7a2d325d321694.svn-base
  89. 111 0
      .svn/pristine/18/1895625688cec3334a10a84ecb243dca832bbff5.svn-base
  90. 86 0
      .svn/pristine/18/18d4b4d4fdc4c6abb32b0abbfaeb10ee3e2efccd.svn-base
  91. 407 0
      .svn/pristine/19/19064cdf5b708223e2a58f4be2001586adc5c3a7.svn-base
  92. 690 0
      .svn/pristine/19/19739313ea00e3395a131a01b9ee9f056165a235.svn-base
  93. 42 0
      .svn/pristine/19/19b6305bc4a4ee4c54f42d2f3083d51a655403d4.svn-base
  94. 330 0
      .svn/pristine/1a/1aab1d0a7ce28d28d2d9329eabfe5c92227c7c3d.svn-base
  95. BIN
      .svn/pristine/1a/1acdedeb89f1d950d67b73d481eb7736df65eedb.svn-base
  96. BIN
      .svn/pristine/1b/1b11ffbee14f21d47125ecd8e44fc6ddcad3a053.svn-base
  97. 156 0
      .svn/pristine/1b/1b3515724d0bf918b04df04972330250650156b4.svn-base
  98. BIN
      .svn/pristine/1c/1c171093a8b43aa550c6050ac441abe713ebb4f2.svn-base
  99. BIN
      .svn/pristine/1c/1cea24dcb9b5c7adf440b47155843a5bd29d8d57.svn-base
  100. 62 0
      .svn/pristine/1d/1de631bae2aa53f18f5fbee653fe38c0293cf9ea.svn-base

+ 93 - 0
.classpath

@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry excluding="src/" kind="src" path=""/>
+	<classpathentry kind="con" path="melibrary.com.genuitec.eclipse.j2eedt.core.MYECLIPSE_JAVAEE_5_CONTAINER"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/CoreFS.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/Ice.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/XmlSchema-1.4.5.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/ant-ice.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/antlr.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/aspectjweaver.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/bsh-deployer.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/bsh.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/commons-collections-3.2.1.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/commons-dbcp.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/commons-logging-1.1.1.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/commons-pool-1.5.2.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/cxf-2.2.7.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/db.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/dom4j-1.6.1.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/geronimo-activation_1.1_spec-1.0.2.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/geronimo-annotation_1.0_spec-1.1.1.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/geronimo-jaxws_2.1_spec-1.0.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/geronimo-stax-api_1.0_spec-1.0.1.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/geronimo-ws-metadata_2.0_spec-1.1.2.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/hessian-3.2.0.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/hibernate-core.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/hibernate3.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/javassist.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/jaxb-api-2.1.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/jaxb-impl-2.1.12.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/jboss-common.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/jboss-j2ee.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/jboss-jmx.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/jboss-system.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/jboss.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/jbpm-identity.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/jbpm-jpdl.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/jdom.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/jta.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/jxl.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/log4j-1.2.8.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/logkit.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/neethi-2.0.4.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/orai18n.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/postgresql-8.1-415.jdbc2.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/quartz-1.6.0.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/rt.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/saaj-api-1.3.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/saaj-impl-1.3.2.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/serializer-2.7.1.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/servlet-api.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/sigar.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/slf4j-api.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/slf4j-jdk14.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/slf4j-log4j12.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/spring-modules-jbpm31.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/spring-web.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/spring-webmvc.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/spring.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/wsdl4j-1.6.2.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/wstx-asl-3.2.9.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/commons-lang.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/fastjson-1.1.41.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/httpclient-4.4.1.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/httpcore-4.4.1.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/QRCode.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/ojdbc14-9.2.0.5.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/ojdbc14.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/bcprov-ext-jdk15on-1.54.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/bcprov-jdk15on-1.54.jar"/>
+	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/apache-soap-2.2.jar"/>
+	<classpathentry kind="lib" path="D:/lib/quartz-1.6.0.jar"/>
+	<classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.web.container"/>
+	<classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.module.container"/>
+	<classpathentry kind="con" path="com.genuitec.runtime.library/com.genuitec.generic_5.0">
+		<attributes>
+			<attribute name="owner.project.facets" value="jst.web"/>
+		</attributes>
+	</classpathentry>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7">
+		<attributes>
+			<attribute name="owner.project.facets" value="java"/>
+		</attributes>
+	</classpathentry>
+	<classpathentry kind="con" path="com.genuitec.runtime.library/com.genuitec.jstl_1.2">
+		<attributes>
+			<attribute name="org.eclipse.jst.component.dependency" value="WEB-INF/lib"/>
+			<attribute name="owner.project.facets" value="jst.web.jstl"/>
+		</attributes>
+	</classpathentry>
+	<classpathentry kind="output" path="WebRoot/WEB-INF/classes"/>
+</classpath>

+ 13 - 0
.mymetadata

@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project-module
+  type="WEB"
+  name="LZMES"
+  id="myeclipse.1279246801982"
+  context-root="/CoreFS"
+  j2ee-spec="5.0"
+  archive="LZMES.war">
+  <attributes>
+    <attribute name="webrootdir" value="/WebRoot" />
+  </attributes>
+</project-module>
+

+ 64 - 0
.project

@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>LZMES</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.wst.common.project.facet.core.builder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.wst.jsdt.core.javascriptValidator</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>com.genuitec.eclipse.j2eedt.core.WebClasspathBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>com.genuitec.eclipse.j2eedt.core.J2EEProjectValidator</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>com.genuitec.eclipse.j2eedt.core.DeploymentDescriptorValidator</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.wst.validation.validationbuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>com.genuitec.eclipse.ast.deploy.core.DeploymentBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>com.genuitec.eclipse.springframework.springbuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>com.genuitec.eclipse.springframework.springnature</nature>
+		<nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
+		<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
+		<nature>com.genuitec.eclipse.ast.deploy.core.deploymentnature</nature>
+		<nature>com.genuitec.eclipse.j2eedt.core.webnature</nature>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>org.eclipse.wst.jsdt.core.jsNature</nature>
+		<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
+	</natures>
+</projectDescription>

+ 12 - 0
.settings/.jsdtscope

@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.JRE_CONTAINER"/>
+	<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.WebProject">
+		<attributes>
+			<attribute name="hide" value="true"/>
+		</attributes>
+	</classpathentry>
+	<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.baseBrowserLibrary"/>
+	<classpathentry kind="src" path="WebRoot"/>
+	<classpathentry kind="output" path=""/>
+</classpath>

+ 8 - 0
.settings/com.genuitec.eclipse.migration.prefs

@@ -0,0 +1,8 @@
+eclipse.preferences.version=1
+performed.operation.install.java=1.0
+performed.operation.me.create.deploymentAssembly=1.0
+performed.operation.me.create.deploymentAssembly.fixBuildPathEntries=1.0
+performed.operation.me.install.jstl=1.0
+performed.operation.me.install.springfacet=1.0
+performed.operation.me.migrate.webnature=1.0
+performed.operation.migrate.container.ids=1.0

+ 4 - 0
.settings/org.eclipse.core.resources.prefs

@@ -0,0 +1,4 @@
+eclipse.preferences.version=1
+encoding//src/UIB/COM/QRCodeHandler.java=UTF-8
+encoding//src/pda/WebService1.java=UTF-8
+encoding//src/xin/glue/cargocnHttpClient=UTF-8

+ 7 - 0
.settings/org.eclipse.jdt.core.prefs

@@ -0,0 +1,7 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.compliance=1.7
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.7

+ 10 - 0
.settings/org.eclipse.wst.common.component

@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?><project-modules id="moduleCoreId" project-version="1.5.0">
+    <wb-module deploy-name="LZMES">
+        <wb-resource deploy-path="/" source-path="/WebRoot" tag="defaultRootSource"/>
+        <wb-resource deploy-path="/WEB-INF/classes" source-path="/src"/>
+        <wb-resource deploy-path="/WEB-INF/classes" source-path="/"/>
+        <property name="context-root" value="/CoreFS"/>
+        <property name="java-output-path" value="/LZMES/WebRoot/WEB-INF/classes"/>
+        <property name="me-merge-utility-modules" value="true"/>
+    </wb-module>
+</project-modules>

+ 7 - 0
.settings/org.eclipse.wst.common.project.facet.core.prefs.xml

@@ -0,0 +1,7 @@
+<root>
+  <facet id="me.spring">
+    <node name="libprov">
+      <attribute name="provider-id" value="spring-no-op-library-provider"/>
+    </node>
+  </facet>
+</root>

+ 12 - 0
.settings/org.eclipse.wst.common.project.facet.core.xml

@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<faceted-project>
+  <runtime name="com.genuitec.runtime.generic.jee50"/>
+  <fixed facet="jst.web"/>
+  <fixed facet="wst.jsdt.web"/>
+  <fixed facet="java"/>
+  <installed facet="java" version="1.7"/>
+  <installed facet="jst.web" version="2.5"/>
+  <installed facet="jst.web.jstl" version="1.2"/>
+  <installed facet="wst.jsdt.web" version="1.0"/>
+  <installed facet="me.spring" version="2.5"/>
+</faceted-project>

+ 1 - 0
.settings/org.eclipse.wst.jsdt.ui.superType.container

@@ -0,0 +1 @@
+org.eclipse.wst.jsdt.launching.baseBrowserLibrary

+ 1 - 0
.settings/org.eclipse.wst.jsdt.ui.superType.name

@@ -0,0 +1 @@
+Window

+ 1 - 0
.svn/entries

@@ -0,0 +1 @@
+12

+ 1 - 0
.svn/format

@@ -0,0 +1 @@
+12

+ 164 - 0
.svn/pristine/00/000869785e4f4d9748ab7e513de24ea7750466e4.svn-base

@@ -0,0 +1,164 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<queryMap desc="总貌图">
+	<query id="UIM050010_01.SELECT"  desc="查询酸轧实时生产钢卷">
+	 <![CDATA[
+		SELECT WKNAME,
+		       WKGROUP,
+		       COIL_NO,
+		       SPEC_STL_GRD,
+		       COIL_SIZE,
+		       COIL_WGT,
+		       '订单号' ORDNAME,
+		       ORD_NO,
+		       BEGINTIME,
+		       FLOOR(MILLMIN) || CHR(39) || ROUND((MILLMIN - FLOOR(MILLMIN)) * 60) || '"' MILLTIME
+		  FROM (SELECT '酸轧机组' WKNAME,
+		               '班次,班组' WKGROUP,
+		               T.C_COIL_NO COIL_NO,
+		               T.SPEC_STL_GRD,
+		               TO_CHAR(T.COIL_THK, 'FM990.099') || '*' || T.COIL_WTH COIL_SIZE,
+		               T.COIL_WGT,
+		               T.ORD_NO || '-' || T.ORD_SEQ ORD_NO,
+		               TO_CHAR(TO_DATE(NVL(T.MOD_DTIME,
+		                                   TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS')),
+		                               'YYYYMMDDHH24MISS'),
+		                       'YYYY-MM-DD HH24:MI:SS') BEGINTIME,
+		               (SYSDATE - TO_DATE(NVL(T.MOD_DTIME,
+		                                      TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS')),
+		                                  'YYYYMMDDHH24MISS')) * 24 * 60 MILLMIN
+		          FROM C_TBF03_SPEC_MILL T
+		         WHERE T.STATUS_CD = 'C'
+		         ORDER BY T.ROLL_MANA_NO, T.COIL_EDT_SEQ)
+		 WHERE ROWNUM = 1
+        ]]>
+	</query>
+	<query id="UIM050010_02.SELECT"  desc="查询连退实时生产钢卷">
+	 <![CDATA[
+		SELECT WKNAME,
+		       WKGROUP,
+		       COIL_NO,
+		       SPEC_STL_GRD,
+		       COIL_SIZE,
+		       COIL_WGT,
+		       '订单号' ORDNAME,
+		       ORD_NO,
+		       BEGINTIME,
+		       FLOOR(MILLMIN) || CHR(39) || ROUND((MILLMIN - FLOOR(MILLMIN)) * 60) || '"' MILLTIME
+		  FROM (SELECT '连退机组' WKNAME,
+		               '班次,班组' WKGROUP,
+		               T.L_COIL_NO COIL_NO,
+		               T.SPEC_STL_GRD,
+		               TO_CHAR(T.COIL_THK, 'FM990.099') || '*' || T.COIL_WTH COIL_SIZE,
+		               T.COIL_WGT,
+		               T.ORD_NO || '-' || T.ORD_SEQ ORD_NO,
+		               TO_CHAR(TO_DATE(NVL(T.MOD_DTIME,
+		                                   TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS')),
+		                               'YYYYMMDDHH24MISS'),
+		                       'YYYY-MM-DD HH24:MI:SS') BEGINTIME,
+		               (SYSDATE - TO_DATE(NVL(T.MOD_DTIME,
+		                                      TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS')),
+                                      'YYYYMMDDHH24MISS')) * 24 * 60 MILLMIN
+              FROM L_TBF03_SPEC_MILL T
+             WHERE T.STATUS_CD = 'C'
+             ORDER BY T.CAL_NO, T.COIL_EDT_SEQ)
+     	WHERE ROWNUM = 1
+        ]]>
+	</query>
+	<query id="UIM050010_03.SELECT"  desc="查询重卷实时生产钢卷">
+	 <![CDATA[
+		SELECT WKNAME,
+		       WKGROUP,
+		       COIL_NO,
+		       SPEC_STL_GRD,
+		       COIL_SIZE,
+		       COIL_WGT,
+		       '订单号' ORDNAME,
+		       ORD_NO,
+		       BEGINTIME,
+		       FLOOR(MILLMIN) || CHR(39) || ROUND((MILLMIN - FLOOR(MILLMIN)) * 60) || '"' MILLTIME
+		  FROM (SELECT '重卷机组' WKNAME,
+		               '班次,班组' WKGROUP,
+		               T.R_COIL_NO COIL_NO,
+		               C.SPEC_STL_GRD,
+		               TO_CHAR(C.COIL_THK, 'FM990.099') || '*' || C.COIL_WTH COIL_SIZE,
+		               C.ACT_WGT COIL_WGT,
+		               T.ORD_NO || '-' || T.ORD_SEQ ORD_NO,
+		               TO_CHAR(TO_DATE(NVL(T.MOD_DTIME,
+		                                   TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS')),
+		                               'YYYYMMDDHH24MISS'),
+		                       'YYYY-MM-DD HH24:MI:SS') BEGINTIME,
+		               (SYSDATE - TO_DATE(NVL(T.MOD_DTIME,
+		                                      TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS')),
+                                      'YYYYMMDDHH24MISS')) * 24 * 60 MILLMIN
+              FROM L_TBF03_SPEC_REEL T,C_TBC02_COIL_COMM C
+             WHERE T.C_COIL_NO = C.OLD_SAMPL_NO
+               AND T.STATUS_CD = 'C'
+             ORDER BY T.COIL_EDT_SEQ)
+     	WHERE ROWNUM = 1
+        ]]>
+	</query>
+	<query id="UIM050010_04.SELECT"  desc="查询酸轧实时生产钢卷">
+	 <![CDATA[
+		SELECT T.COIL_NO,
+		       TO_CHAR(TO_DATE(NVL(T.MOD_DTIME,
+		                           TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS')),
+		                       'YYYYMMDDHH24MISS'),
+		               'YYYY-MM-DD HH24:MI:SS') BEGIN_TIME,
+		       T.SPEC_STL_GRD,
+		       T.COIL_THK THK,
+		       T.COIL_WTH WTH,
+		       T.COIL_WGT WGT,
+		       T.ORD_NO,
+		       T.ORD_SEQ,
+		       T.ORD_THK,
+		       T.ORD_WTH,
+		       T.C_COIL_NO EXIT_COIL_NO
+		  FROM C_TBF03_SPEC_MILL T
+		 WHERE T.STATUS_CD = 'C'
+		 ORDER BY T.ROLL_MANA_NO, T.COIL_EDT_SEQ
+        ]]>
+	</query>
+	<query id="UIM050010_05.SELECT"  desc="查询连退实时生产钢卷">
+	 <![CDATA[
+		SELECT T.C_COIL_NO COIL_NO,
+		       TO_CHAR(TO_DATE(NVL(T.MOD_DTIME,
+		                           TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS')),
+		                       'YYYYMMDDHH24MISS'),
+		               'YYYY-MM-DD HH24:MI:SS') BEGIN_TIME,
+		       T.SPEC_STL_GRD,
+		       T.COIL_THK THK,
+		       T.COIL_WTH WTH,
+		       T.COIL_WGT WGT,
+		       T.ORD_NO,
+		       T.ORD_SEQ,
+		       T.ORD_THK,
+		       T.ORD_WTH,
+		       T.L_COIL_NO EXIT_COIL_NO
+		  FROM L_TBF03_SPEC_MILL T
+		 WHERE T.STATUS_CD = 'C'
+		 ORDER BY T.CAL_NO, T.COIL_EDT_SEQ
+        ]]>
+	</query>
+	<query id="UIM050010_06.SELECT"  desc="查询重卷实时生产钢卷">
+	 <![CDATA[
+		SELECT T.C_COIL_NO COIL_NO,
+		       TO_CHAR(TO_DATE(NVL(T.MOD_DTIME,
+		                           TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS')),
+		                       'YYYYMMDDHH24MISS'),
+		               'YYYY-MM-DD HH24:MI:SS') BEGIN_TIME,
+		       C.SPEC_STL_GRD,
+		       C.COIL_THK THK,
+		       C.COIL_WTH WTH,
+		       C.ACT_WGT WGT,
+		       T.ORD_NO,
+		       T.ORD_SEQ,
+		       C.INSTR_COIL_THK ORD_THK,
+		       C.INSTR_COIL_WTH ORD_WTH,
+		       T.R_COIL_NO EXIT_COIL_NO
+		              FROM L_TBF03_SPEC_REEL T,C_TBC02_COIL_COMM C
+		             WHERE T.C_COIL_NO = C.OLD_SAMPL_NO
+		               AND T.STATUS_CD = 'C'
+		             ORDER BY T.COIL_EDT_SEQ
+        ]]>
+	</query>
+</queryMap>

+ 84 - 0
.svn/pristine/00/003a6c5f44225b7a51c34de016f8a6a8e97f6c0c.svn-base

@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding='UTF-8'?>
+
+<queryMap desc="">
+	<query id="UIE041080.Order.Select" desc="" fetchSize="10">
+        <![CDATA[
+			SELECT A.ORD_NO, A.ORD_SEQ,
+				XB_PACKAGE.GF_COMNNAME_FIND('E01001', A.ORD_PROG_CD) ORD_PROG_CD,		-- 订单进度代码
+				B.ORD_ACT_DTIME,														-- 订单接受日期
+				A.DEL_TO_DATE,															-- 交货日期
+				XB_PACKAGE.GF_COMNNAME_FIND('A01004', A.PRODNM_CD) PRODNM_CD,			-- 产品代码
+				XB_PACKAGE.GF_COMNNAME_FIND('A01001', A.RCVORD_CLF) RCVORD_CLF,			-- 订货区分
+				XB_PACKAGE.GF_COMNNAME_FIND('A01002', C.STKSALE_TP) STKSALE_TP,			-- 库存销售区分
+				XB_PACKAGE.GF_COMNNAME_FIND('A01009', A.DEST_CD) DEST_CD,				-- 目的地代码
+				XB_PACKAGE.GF_CUSTOMER_FIND(A.CUST_CD) CUST_CD,							-- 客户代码
+				XB_PACKAGE.GF_CUSTOMER_FIND(A.ORDCUST_CD) ORDCUST_CD,					-- 用户代码
+				XB_PACKAGE.GF_USER_FIND(B.SALE_CHR_CD) SALE_CHR_CD,						-- 销售员
+				B.CONTRACT_NO,															-- 合同书号
+				C.CUST_STL_GRD,															-- 客户钢号
+				C.SPEC_STL_GRD,															-- 规格钢号
+				C.FAC_STL_GRD,															-- 公司内钢号
+				C.DDC_STL_GRD,															-- 判定钢号
+				XB_PACKAGE.GF_COMNNAME_FIND('A01007', A.ORD_USEAGE_CD) ORD_USEAGE_CD,	-- 订单用途
+				A.SPEC_ABBSYM,															-- 标准号
+				C.BUY_ABBSYM,                               --客户标准号
+        		C.PRODUCT_LX,
+				-- 规格年度
+				C.CUST_SPEC_NO,															-- 客户公司参数号
+				A.ORD_THK,																-- 订单厚度
+				A.ORD_THK_MIN          THK_TOL_ERMIN,															-- 厚度公差(下限)
+				A.ORD_THK_MAX          THK_TOL_ERMAX,															-- 厚度公差(上限)
+				A.ORD_WTH,																-- 订单宽度
+				A.ORD_WTH_MIN              WTH_TOL_ERMIN,															-- 宽度公差(下限)
+				A.ORD_WTH_MAX              WTH_TOL_ERMAX,															-- 宽度公差(上限)
+				A.ORD_LEN,																-- 订单长度
+				A.ORD_LEN_MIN,															-- 长度公差(下限)
+				A.ORD_LEN_MAX,															-- 长度公差(上限)
+				A.ORD_WGT,																-- 订单重量
+				-- 单重(包装重量)
+				C.WGT_ACVAL_MIN,														-- 交付允许差(下限)
+				C.WGT_ACVAL_MAX,														-- 交付允许差(上限)
+				C.WGT_DSRULE_CD,														-- 重量决定方法代码
+				-- 产品重量区分
+				C.ORD_INDIA,															-- 订单内径
+				C.ORD_OUTDIA,															-- 订单外径
+				C.PROD_WGT_MIN,															-- 产品重量(下限)
+				C.PROD_WGT_MAX,															-- 产品重量(上限)
+				C.PAKMTH_TP,															-- 包装方法
+				XB_PACKAGE.GF_COMNNAME_FIND('A01012', C.DLIV_TP) DLIV_TP,					-- 运输方式
+				C.EXAMORG_CD,															-- 检验机构代码(?)
+				-- 品质设计日期
+				A.SPM_PROC_YN,															-- 平整分卷指定判断
+				A.SCARPING_PROC_YN,														-- 火焰表面处理指定判断
+				A.EMGMTR_NMG_CLF,														-- 紧急材代码
+				C.ORD_UDT_YN,															-- 订单修改与否
+				C.ORD_UDT_DTIME,														-- 订单修改日期
+				XB_PACKAGE.GF_USER_FIND(C.ORD_UDTBY_CD) ORD_UDTBY,						-- 订单修改者
+				C.ORD_CNC_YN,															-- 订单取消区分
+				C.ORD_CNC_DTIME,														-- 订单取消日期
+				XB_PACKAGE.GF_USER_FIND(C.ORD_CNCBY_CD) ORD_CNCBY,						-- 订单取消者
+				C.SHIP_END_YN,															-- 发货结束与否
+				--C.SHIP_END_DATE,														-- 发货结束日期
+				--------------------------------------------------------------------------------------
+			     --modify by sjw 091110 
+				 --desc : 由于发货日期数据在DB中缺失,故采用制定发货结束日期来替代SHIP_END_DATE
+			     DECODE(A.PROD_END_GP , '1' ,A.PROD_END_DATE,'')  SHIP_FN_DATE ,            --发货结束时间
+			    --------------------------------------------------------------------------------------
+				XB_PACKAGE.GF_USER_FIND(C.SHIP_ENDBY_CD) SHIP_ENDBY,					-- 发货结束者
+				C.ORD_END_YN,															-- 订单结束与否
+				C.ORD_END_DATE,															-- 订单结束日期
+				XB_PACKAGE.GF_USER_FIND(C.ORD_ENDBY_CD) ORD_ENDBY,						-- 订单结束者
+				A.KEEPWARM_YN,															-- 是否需要进保温坑
+				A.EACHLOT_YN															-- 是否需要全部取样
+			FROM TBE02_ORD_PRC A, TBA01_ORD_COMM B, TBA01_ORD_LINE C, TBB01_ORD_PROD D
+			WHERE ROWNUM < 2
+			  AND A.ORD_NO LIKE ?||'%'
+			  AND A.ORD_SEQ LIKE ?||'%'
+			  AND A.ORD_NO = B.ORD_NO
+			  AND A.ORD_NO = C.ORD_NO
+			  AND A.ORD_SEQ = C.ORD_SEQ
+			  AND A.ORD_NO = D.ORD_NO(+)
+			  AND A.ORD_SEQ = D.ORD_SEQ(+)
+        ]]>
+    </query>
+</queryMap>

+ 48 - 0
.svn/pristine/01/01216adf69dc9bc2a672aca0da58d48dd0beb641.svn-base

@@ -0,0 +1,48 @@
+package UIB.UIB03.ZBS;
+
+import java.io.ByteArrayOutputStream;
+import java.io.InputStream;
+import java.io.OutputStream;
+
+import jxl.Workbook;
+import jxl.write.WritableSheet;
+import jxl.write.WritableWorkbook;
+
+public class TestAbc  implements	IQltyGuaranteeEngine
+{
+	public TestAbc(){}
+	
+	public OutputStream	getOutputStream(InputStream	is)	throws Exception
+	{
+		OutputStream	os	=	this.getWorkBookStream(is);
+		return os;
+	}
+	
+	private OutputStream  getWorkBookStream(InputStream	is)	throws Exception
+	{
+		OutputStream		os		=	new ByteArrayOutputStream();//建立输出流,填入数据的EXCEL形成该输出流
+		Workbook			wBook	=	Workbook.getWorkbook(is);//获取EXCEL对象,生成工作薄		
+		WritableWorkbook	wwBook	=	Workbook.createWorkbook(os, wBook);//创建可操作副本
+		WritableSheet 		wSheet	=	wwBook.getSheet(0);//获取第0个工作表
+		
+		IQltyGuaranteeBuilder	explorer	=	null;
+//		if("A".equals(tmplNO.substring(0,1)))  
+//		{
+//			//A类型质保书......
+//			explorer	=	new QltyGuaranteeBuilderA(wSheet);
+//		}
+//		else if("B".equals(tmplNO.substring(0,1)))
+//		{
+//			//B类型质保书......
+//			explorer	=	new QltyGuaranteeBuilderB(wSheet);
+//		}
+//		explorer.buildQltyGuarantee(tmplNO, mapHead, drlChem, drlQlty);
+//				
+		wwBook.write();
+		os.close();
+		wwBook.close();
+		wBook.close();
+		return os;
+	}
+
+}

+ 92 - 0
.svn/pristine/01/015ef3f1bae732a387d93cabf07083e4f625c2ed.svn-base

@@ -0,0 +1,92 @@
+package UIM;
+
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.util.ArrayList;
+import java.util.List;
+
+import UIB.COM.XmlSqlParsersFactory;
+
+import CoreFS.SA01.CoreIComponent;
+import CoreFS.SA06.CoreReturnObject;
+
+/**
+ * 冷轧中间库钢卷出入库记录查询
+ * @author siy
+ * @date 2010-08-13
+ */
+public class UIM010140 extends CoreIComponent {
+	/**
+	 * 查询钢卷出入库记录
+	 * @param queryType 查询类型 0 入库 1出库
+	 * @param list 参数集
+	 * @return CoreReturnObject
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryYardList(Integer queryType,ArrayList list) throws SQLException
+	{
+		CoreReturnObject cro = new CoreReturnObject();
+		
+		String []queryParams = (String[])list.get(0);
+		
+		String startTime = queryParams[0];//开始时间
+		String endTime = queryParams[1];//结束时间
+        String specStlGrd = queryParams[2];//牌号
+        String coilWthMin = queryParams[3];//宽度最小值
+        String coilWthMax = queryParams[4];//宽度最大值
+        String coilThkMin = queryParams[5];//厚度最小值
+        String coilThkMax = queryParams[6];//厚度最大值
+        String curLoadLoc = queryParams[7];//垛位
+        String coilNo = queryParams[8];//钢卷号
+        String coilNo1 = queryParams[9];//钢卷号
+        String shift = queryParams[10];//班次
+        String group = queryParams[11];//班组
+        String regId = queryParams[12];//作业人
+        String custCd = queryParams[13];//客户编号
+        String ordNo = queryParams[14];//订单号
+        String ordSeq = queryParams[15];//合同号
+        String ordFl = queryParams[16];//订单区分
+        String prodnmCd = queryParams[17];//产品类型
+        //String coilNo2= queryParams[18];//
+        String deldatefr = queryParams[19];//订单交货期开始时间
+        String deldateto = queryParams[20];//交货期结束时间
+        String line = queryParams[21];//交货期结束时间
+        String sql = "";
+        
+        if("D".equals(line))//代加工酸洗
+        {
+        	 
+        	line="S";
+        	//入库记录
+            if(0 == queryType.intValue()){
+            	sql = XmlSqlParsersFactory.getSql("UIM010140_03.SELECT");
+            }
+            else{//出库记录
+            	sql = XmlSqlParsersFactory.getSql("UIM010140_04.SELECT");
+            }
+    		
+    		cro = this.getDao("KgDao").ExcuteQuery(sql,new Object[]{startTime, endTime, coilNo, coilNo1,coilWthMin, coilWthMax, 
+                    coilThkMin, coilThkMax, curLoadLoc, specStlGrd, shift, group, regId, custCd, ordNo, ordSeq,
+                    ordFl, prodnmCd,deldatefr,deldateto,line});
+
+    		return cro;	
+        }
+        else//酸轧
+        {
+        //入库记录
+        if(0 == queryType.intValue()){
+        	sql = XmlSqlParsersFactory.getSql("UIM010140_01.SELECT");
+        }
+        else{//出库记录
+        	sql = XmlSqlParsersFactory.getSql("UIM010140_02.SELECT");
+        }
+		
+		cro = this.getDao("KgDao").ExcuteQuery(sql,new Object[]{startTime, endTime, coilNo, coilNo1,coilWthMin, coilWthMax, 
+                coilThkMin, coilThkMax, curLoadLoc, specStlGrd, shift, group, regId, custCd, ordNo, ordSeq,
+                ordFl, prodnmCd,deldatefr,deldateto,line});
+
+		return cro;
+        }
+	}
+}

BIN
.svn/pristine/01/016d0bc512222f1253ee6b64d389c84e22f697f0.svn-base


BIN
.svn/pristine/01/01767f0fcdb070dfe3c293f7eddb25600d264447.svn-base


+ 523 - 0
.svn/pristine/02/021910c95468223ea527b344574380ed40e86781.svn-base

@@ -0,0 +1,523 @@
+package QCM.JHY01.JHY0101;
+
+import java.math.BigDecimal;
+import java.sql.ResultSet;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.TreeSet;
+import java.util.UUID;
+
+import org.apache.ibatis.session.SqlSession;
+import org.apache.log4j.Logger;
+
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+
+import CoreFS.SA01.CoreIComponent;
+import QCM.JHY01.VO.JhySampleDItemModel;
+import QCM.JHY01.VO.JhySampleDModel;
+
+
+public class DuplicateSample extends CoreIComponent{
+	
+	SqlSession SqlSession = QCM.COMMUNAL.SqlSessionBuilder.openSqlSession();
+	
+	
+	QCM.COMMUNAL.OrderSqMapper mapper = SqlSession.getMapper(QCM.COMMUNAL.OrderSqMapper.class);
+	
+	Logger logger = Logger.getLogger(this.getClass().getName());
+	
+	public synchronized String doDuplicateSample(JSONArray list){
+		logger.info("复样:==========复样"+list.toString());
+		
+		String msg = checkInfo(list);
+		if (!"".equals(msg)) {
+			return msg;
+		}
+		try{
+			
+			
+			createQltySample(list);
+			createChemSample(list);
+			SqlSession.commit();
+		}catch (Exception e) {
+			// TODO: handle exception
+			e.printStackTrace();
+			SqlSession.rollback();
+		}finally {
+			SqlSession.close();
+		}
+		
+		if ("".equals(msg)) {
+			return "1";
+		}else{
+			return "生成失败!";
+		}
+		
+		
+		
+	}
+	
+	
+	private void createChemSample(JSONArray lists) {
+		// TODO Auto-generated method stub
+		StringBuffer sqlucomm = new StringBuffer();
+		for (Object li : lists) {
+			JSONObject list =(JSONObject) li;
+			//判断是否存在材质
+			if (!"1".equals(list.getString("IS_CHEM"))) {
+				continue;
+			}
+			sqlucomm.setLength(0);
+			sqlucomm.append("t.smp_no,t.specimen_no,t.heat_no,t.batch_no,t.inspection_lot,t.freq_code,t.freq_name,");
+			sqlucomm.append("t.material_no,t.smp_type_code,t.smp_type_name,t.consign_no,t.consign_no_seq,t.test_qty,");
+			sqlucomm.append("t.smp_qty,t.smp_location,t.board_no,t.quote_consign_no,t.old_consign_no,t.pline_code,");
+			sqlucomm.append("t.pline_name,t.status,t.validflag,t.source,t.guid,t.send_id,t.send_name,t.send_time,");
+			sqlucomm.append(" t.chem_item,t.product_cnt,t.create_time,t.smp_location_code from  QCM_JHY_SAMPLE_CONSIGN_D  t inner join "
+					+ "QCM_JUDGE_CHEMICAL c on t.smp_no=c.smp_no and t.smp_no='"+list.getString("QLTY_SMP_NO")+"' and c.cic_result_code='2'");
+			
+			List<HashMap> results=mapper.query(sqlucomm.toString());
+			if (results==null || results.size()<1) {
+				continue;
+			}
+			String specimen_no = "";
+			for (HashMap result : results) {
+				
+				
+				for (int i = 0; i < 2; i++) {
+					//生成新的复样的取样编号
+					specimen_no = createSpecimen_no((String)result.get("SMP_NO"));
+					JhySampleDModel model=getSampleD(specimen_no,result);
+					mapper.insertSampleD(model);
+				}
+				
+			}
+		}
+		
+	}
+
+
+	private JhySampleDModel getSampleD(String specimen_no, HashMap result) {
+		// TODO Auto-generated method stub
+		JhySampleDModel model=new JhySampleDModel();
+		model.setSmp_no((String)result.get("SMP_NO"));
+		model.setSpecimen_no(specimen_no);
+		model.setHeat_no((String)result.get("HEAT_NO"));
+		model.setBatch_no((String)result.get("BATCH_NO"));
+		model.setBoard_no((String)result.get("BOARD_NO"));
+		model.setInspection_lot((String)result.get("INSPECTION_LOT"));
+		model.setMaterial_no((String)result.get("MATERIAL_NO"));
+		model.setFreq_code((String)result.get("FREQ_CODE"));
+		model.setFreq_name((String)result.get("FREQ_NAME"));
+		
+		//试验次数
+		model.setTest_qty((BigDecimal)result.get("TEST_QTY"));
+		model.setSmp_qty((BigDecimal)result.get("SMP_QTY"));;
+
+		//样品类型
+		model.setSmp_type_code("1");
+		model.setSmp_type_name("复样");
+		model.setSmp_location((String)result.get("SMP_LOCATION"));
+		//初样取样编号(复样不能为空)
+		model.setOld_consign_no((String)result.get("SPECIMEN_NO"));
+		model.setPline_code((String)result.get("PLINE_CODE"));
+		model.setPline_name((String)result.get("PLINE_NAME"));
+		model.setValidflag("1");
+		model.setStatus("0");
+		model.setSource("0");
+		model.setProduct_cnt((BigDecimal)result.get("PRODUCT_CNT"));
+		model.setChem_item((String)result.get("CHEM_ITEM"));
+		model.setGuid(this.getUUID());
+		return model;
+	}
+
+
+	private void createQltySample(JSONArray lists) throws Exception {
+		// TODO Auto-generated method stub
+		StringBuffer sqlucomm = new StringBuffer();
+		
+		
+		for (Object li : lists) {
+			JSONObject list =(JSONObject) li;
+			//判断是否存在材质
+			if (!"1".equals(list.getString("IS_QTLY"))) {
+				continue;
+			}
+			sqlucomm.setLength(0);
+			//查询试样号向下的检验结果
+			sqlucomm.append("select r.*,d.FREQ_CODE,d.freq_name,d.test_qty,d.smp_qty,d.board_no,d.smp_location,d.pline_code,d.pline_name,d.product_cnt,d.smp_location_code "
+					+ " from QCM_JUDGE_PHYSICAL_RESULT r left join QCM_JHY_SAMPLE_CONSIGN_D d on r.smp_no=d.smp_no and r.specimen_no=d.specimen_no "
+					+ " where r.smp_no='"+list.getString("QLTY_SMP_NO")+"' and r.IS_PASS='1'");
+			
+		   List<HashMap> results=mapper.query(sqlucomm.toString());
+			
+			if (results==null || results.size()<1) {
+				continue;
+			}
+			
+	
+			for (HashMap result : results) {
+				//查询试样号对应的合同信息
+				sqlucomm.setLength(0);
+				sqlucomm.append("SELECT DESIGN_KEY,PSC,SMP_TYPE_CODE,CERT_INST_CODE FROM QCM_JHY_SAMPLE_R_ORD WHERE SMP_NO='"+result.get("SMP_NO")+"'");
+				
+				List<HashMap>	resultsM=mapper.query(sqlucomm.toString());
+				if (resultsM==null || resultsM.size()<1) {
+					continue;
+				}
+				
+				//根据合同信息和项目找到复样倍数信息
+				HashMap sampleM=resultsM.get(0);
+				if ("HA".equals(((String)result.get("PHY_CODE_L")))) {
+					sqlucomm.setLength(0);
+					sqlucomm.append("SELECT * FROM QCM_ORD_DESIGN_SAMPLE_M WHERE DESIGN_KEY='"+sampleM.get("DESIGN_KEY")+"'"
+							+ " and PSC='"+sampleM.get("PSC")+"' and SAMPLE_STYLE_CODE='"+sampleM.get("SMP_TYPE_CODE")+"' and ORG_CODE='"+sampleM.get("CERT_INST_CODE")+"' "
+						    + " and RATE_CODE='"+result.get("FREQ_CODE")+"' and PHY_CODE_L='HA' ");
+						    	
+					 
+					
+//					sqlucomm.append("SELECT * FROM QCM_ORD_DESIGN_SAMPLE_M WHERE DESIGN_KEY='"+sampleM.get("DESIGN_KEY")+"'"
+//							+ " and PSC='"+sampleM.get("PSC")+"' and SAMPLE_STYLE_CODE='"+sampleM.get("SMP_TYPE_CODE")+"' and ORG_CODE='"+sampleM.get("CERT_INST_CODE")+"' "
+//						    + "and PHY_CODE_L='"+result.get("PHY_CODE_L")+"'  and RATE_CODE='"+result.get("FREQ_CODE")+"' and PHY_CODE_L='HA' "
+//						    		+ "and SMP_POSITION_CODE='"+result.get("SMP_POSITION_CODE")+"'");
+		
+				}else if("HJ".equals(((String)result.get("PHY_CODE_L")))){
+					
+					sqlucomm.setLength(0);
+					sqlucomm.append("SELECT * FROM QCM_ORD_DESIGN_SAMPLE_M WHERE DESIGN_KEY='"+sampleM.get("DESIGN_KEY")+"'"
+							+ " and PSC='"+sampleM.get("PSC")+"' and SAMPLE_STYLE_CODE='"+sampleM.get("SMP_TYPE_CODE")+"' and ORG_CODE='"+sampleM.get("CERT_INST_CODE")+"' "
+						    + " and RATE_CODE='"+result.get("FREQ_CODE")+"' and PHY_CODE_L='HJ' ");
+				
+					
+				}else{
+					sqlucomm.setLength(0);
+					sqlucomm.append("SELECT * FROM QCM_ORD_DESIGN_SAMPLE_M WHERE DESIGN_KEY='"+sampleM.get("DESIGN_KEY")+"'"
+							+ " and PSC='"+sampleM.get("PSC")+"' and SAMPLE_STYLE_CODE='"+sampleM.get("SMP_TYPE_CODE")+"' and ORG_CODE='"+sampleM.get("CERT_INST_CODE")+"' "
+						    + "and PHY_CODE_L='"+result.get("PHY_CODE_L")+"' and PHY_CODE_M='"+result.get("PHY_CODE_M")+"' "
+							+ " and PHY_CODE_S='"+result.get("PHY_CODE_S")+"'");
+					
+					
+//					sqlucomm.append("SELECT * FROM QCM_ORD_DESIGN_SAMPLE_M WHERE DESIGN_KEY='"+sampleM.get("DESIGN_KEY")+"'"
+//							+ " and PSC='"+sampleM.get("PSC")+"' and SAMPLE_STYLE_CODE='"+sampleM.get("SMP_TYPE_CODE")+"' and ORG_CODE='"+sampleM.get("CERT_INST_CODE")+"' "
+//						    + "and PHY_CODE_L='"+result.get("PHY_CODE_L")+"' and PHY_CODE_M='"+result.get("PHY_CODE_M")+"' and SMP_POSITION_CODE='"+result.get("SMP_POSITION_CODE")+"'"
+//							+ " and PHY_CODE_S='"+result.get("PHY_CODE_S")+"'");
+		
+							
+					if (result.get("ITEM_CODE_D")!=null) {
+						sqlucomm.append(" and ITEM_CODE_D='"+result.get("ITEM_CODE_D")+"'");
+					}
+					if (result.get("ITEM_CODE_T")!=null) {
+						sqlucomm.append( " and ITEM_CODE_T='"+result.get("ITEM_CODE_T")+"'");
+					}
+					if (result.get("ITEM_CODE_S")!=null) {
+						sqlucomm.append("  and ITEM_CODE_S='"+result.get("ITEM_CODE_S")+"'");
+					}
+					
+				}
+				
+				
+				List<HashMap> qtlyResource=mapper.query(sqlucomm.toString());
+				int time=1;
+				if (qtlyResource==null || qtlyResource.size()<1){
+					continue;
+				}
+				
+				for (int j = 0; j < qtlyResource.size(); j++) {
+					HashMap resource=qtlyResource.get(j);
+					
+					if (null!=resource.get("RETEST_QTY")) {
+						time=((BigDecimal)resource.get("RETEST_QTY")).intValue();
+					}	
+					
+					//查询当前频率是否存在已经存在的取样要求信息
+					sqlucomm.setLength(0);
+					sqlucomm.append("SELECT SPECIMEN_NO  FROM QCM_JHY_SAMPLE_CONSIGN_D WHERE SMP_NO='"+result.get("SMP_NO")+"' "
+							+"  AND SMP_TYPE_CODE='1' AND FREQ_CODE='"+resource.get("RATE_CODE")+"' and STATUS='0' ");
+					
+//					sqlucomm.append("SELECT SPECIMEN_NO  FROM QCM_JHY_SAMPLE_CONSIGN_D WHERE SMP_NO='"+result.get("SMP_NO")+"' "
+//							+"  AND SMP_TYPE_CODE='1' AND FREQ_CODE='"+result.get("FREQ_CODE")+"' and STATUS='0' and SMP_LOCATION_CODE='"+result.get("SMP_LOCATION_CODE")+"'");
+
+					
+				    List<HashMap>	resultsD=mapper.query(sqlucomm.toString());
+					
+					String specimen_no = "";
+					if (resultsD==null || resultsD.size()<1) {
+						//生成新的复样的取样编号
+						specimen_no = createSpecimen_no((String)result.get("SMP_NO"));
+						JhySampleDModel model=getSampleD(specimen_no,result);
+						mapper.insertSampleD(model);
+						//生成复样的项目信息
+						for (int i = 0; i < time; i++) {
+							JhySampleDItemModel item=getSampleItem((String)result.get("SMP_NO"),specimen_no,resource);
+							mapper.insertSampleItem(item);
+						}
+						
+						continue;
+						
+					}
+					
+					//判断是否已经存在该项目,避免复样在取复样情况
+					specimen_no=(String)resultsD.get(0).get("SPECIMEN_NO");
+					sqlucomm.setLength(0);
+					sqlucomm.append("SELECT * FROM QCM_JHY_SAMPLE_CONSIGN_D_ITEM WHERE SPECIMEN_NO='"+specimen_no+"'"
+							+ " and SMP_NO='"+result.get("SMP_NO")+"'  "
+						    + "and PHY_CODE_L='"+resource.get("PHY_CODE_L")+"' and PHY_CODE_M='"+resource.get("PHY_CODE_M")+"'"
+							+ " and PHY_CODE_S='"+resource.get("PHY_CODE_S")+"'");
+					if (result.get("ITEM_CODE_D")!=null) {
+						sqlucomm.append(" and ITEM_CODE_D='"+resource.get("ITEM_CODE_D")+"'");
+					}
+					if (result.get("ITEM_CODE_T")!=null) {
+						sqlucomm.append( " and ITEM_CODE_T='"+resource.get("ITEM_CODE_T")+"'");
+					}
+					if (result.get("ITEM_CODE_S")!=null) {
+						sqlucomm.append("  and ITEM_CODE_S='"+resource.get("ITEM_CODE_S")+"'");
+					}
+					List<HashMap>	resultsI=mapper.query(sqlucomm.toString());
+					if (resultsI==null || resultsI.size()<1) {
+						for (int i = 0; i < time; i++) {
+							JhySampleDItemModel item=getSampleItem((String)result.get("SMP_NO"),specimen_no,resource);
+							mapper.insertSampleItem(item);
+						}
+					}
+				}
+				
+				
+				
+			}
+			
+			
+			//更新合同表改为待判
+			sqlucomm.setLength(0);
+			sqlucomm.append("update QCM_JHY_SAMPLE_R_ORD t set t.judge_status='0',t.judge_result_code=null,t.judge_result_desc=null,");
+			sqlucomm.append("t.judge_time=null,t.cic_id=null,t.phy_id=null,t.judge_name=null,t.judge_memo=null where t.smp_no='"+list.getString("QLTY_SMP_NO")+"'");
+			mapper.updateJudgeStatus(sqlucomm.toString());
+			
+			
+		}
+		
+		
+		
+		
+		
+	}
+	
+	private JhySampleDItemModel getSampleItem(String smp_no, String specimen_no, HashMap resource) throws Exception {
+		// TODO Auto-generated method stub
+			JhySampleDItemModel model=new JhySampleDItemModel();
+			model.setSmp_no(smp_no);
+			model.setSpecimen_no(specimen_no);
+			model.setPhy_code_l((String)resource.get("PHY_CODE_L"));;
+			model.setPhy_code_m((String)resource.get("PHY_CODE_M"));
+			model.setPhy_code_s((String)resource.get("PHY_CODE_S"));
+			model.setPhy_name_l((String)resource.get("PHY_NAME_L"));
+			model.setPhy_name_m((String)resource.get("PHY_NAME_M"));
+			model.setPhy_name_s((String)resource.get("PHY_NAME_S"));
+			model.setItem_code_d((String)resource.get("ITEM_CODE_D"));
+			model.setItem_code_t((String)resource.get("ITEM_CODE_T"));
+			model.setItem_code_s((String)resource.get("ITEM_CODE_S"));
+			model.setItem_code_l((String)resource.get("ITEM_CODE_L"));
+			model.setItem_name_d((String)resource.get("ITEM_NAME_D"));
+			model.setItem_name_t((String)resource.get("ITEM_NAME_T"));
+			model.setItem_name_s((String)resource.get("ITEM_NAME_S"));
+			model.setItem_desc_l((String)resource.get("ITEM_DESC_L"));
+			model.setIsjudge((String)resource.get("ISJUDGE"));
+			model.setPhy_unit((String)resource.get("PHY_UNIT"));
+			model.setGroup_seq((String)resource.get("GROUP_SEQ"));
+			model.setSpecl_fl((String)resource.get("SPECL_FL"));
+			//试验次数
+			model.setTest_qty((BigDecimal)resource.get("SMP_COUNT"));
+			model.setSmp_qty((BigDecimal)resource.get("SMP_QTY"));
+			model.setCreate_id((String)resource.get("CREATE_ID"));
+			model.setCreate_name((String)resource.get("CREATE_NAME"));
+			model.setCreate_time(new Date());
+			
+			model.setSeq(createItemSeq(smp_no,specimen_no));
+			
+			//样品类型
+			return model;
+	}
+	
+	/**
+	 * 创建项目seq
+	 * @param specimen_no
+	 * @param smp_no
+	 * @param cn 
+	 * @return
+	 * @throws Exception 
+	 */
+	private Integer createItemSeq(String smp_no, String specimen_no) throws Exception {
+		// TODO Auto-generated method stub
+		
+		StringBuffer sqlucomm = new StringBuffer();
+		sqlucomm.append("SELECT max(SEQ) SEQ FROM QCM_JHY_SAMPLE_CONSIGN_D_ITEM  WHERE SMP_NO ='"+smp_no+"' and SPECIMEN_NO='"+specimen_no+"'");	
+		HashMap result=mapper.queryOne(sqlucomm.toString());
+		Integer SEQ=0;
+		if (result!=null && result.get("SEQ")!=null) {
+			 SEQ=((BigDecimal)result.get("SEQ")).intValue();
+		}
+		SEQ++;
+		
+		return SEQ;
+	}
+
+
+	/**
+     * 生成不带 "-" 的UUID
+     *
+     * @return
+     */
+    private String getUUID() {
+        UUID uuid = UUID.randomUUID();
+        String str = uuid.toString();
+        String uuidStr = str.replace("-", "");
+        return uuidStr;
+    }
+	
+	
+	/**
+	 * 获取取样编号
+	 * @param smp_no
+	 * @return
+	 */
+	private String createSpecimen_no(String smp_no) {
+		// TODO Auto-generated method stub
+		String specimen_no="";
+		
+		StringBuffer sqlucomm = new StringBuffer();
+		sqlucomm.append("SELECT max(to_number(substr(SPECIMEN_NO,13))) SPECIMEN_NO FROM QCM_JHY_SAMPLE_CONSIGN_D  "
+				+ "WHERE SPECIMEN_NO like '"+smp_no+"%' and SMP_NO='"+smp_no+"'");	
+		HashMap result=mapper.queryOne(sqlucomm.toString());
+		BigDecimal seq=BigDecimal.ZERO;
+		if (result!=null && result.get("SPECIMEN_NO") !=null) {
+			seq=(BigDecimal)result.get("SPECIMEN_NO");
+		}
+		seq=seq.add(BigDecimal.ONE);
+		specimen_no=smp_no+ String.format("%02d", seq.intValue());
+		return specimen_no;
+	}
+
+
+
+	private String checkInfo(JSONArray lists) {
+		// TODO Auto-generated method stub
+		String msg = "";
+		if (lists == null || lists.size() < 1) {
+			return "未寻到或无可生成检验委托的数据";
+		}
+		String inspection_lot = "";
+		TreeSet<String> treeSet = new TreeSet<String>();
+
+		ResultSet rs = null;
+		for (Object list : lists) {
+			JSONObject map = (JSONObject) list;
+			// 检验号
+			msg = checkField("INSPECTION_LOT", "检验号", map);
+			if (!"".equals(msg)) {
+				return msg;
+			}
+			// 获取共同检验号
+			inspection_lot = map.getString("INSPECTION_LOT");
+			treeSet.add(inspection_lot);
+
+			// DESIGN_KEY
+			msg = checkField("DESIGN_KEY", "DESIGN_KEY", map);
+			if (!"".equals(msg)) {
+				return msg;
+			}
+			// 炉号
+			msg = checkField("HEAT_NO", "炉号", map);
+			if (!"".equals(msg)) {
+				return msg;
+			}
+			// 轧批号
+			msg = checkField("BATCH_NO", "轧批号", map);
+			if (!"".equals(msg)) {
+				return msg;
+			}
+			// 全程产线号
+			msg = checkField("MSC_PLINE", "全程产线号", map);
+			if (!"".equals(msg)) {
+				return msg;
+			}
+
+			// 全程产线代码
+			msg = checkField("PLINE_CODE", "产线代码", map);
+			if (!"".equals(msg)) {
+				return msg;
+			}
+
+			// 全程产线名称
+			msg = checkField("PLINE_NAME", "产线名称", map);
+			if (!"".equals(msg)) {
+				return msg;
+			}
+			// //交货状态
+			// msg=checkField("DELIVERY_STATE_CODE","交货状态代码",map);
+			// if (!"".equals(msg)) {
+			// return msg;
+			// }
+			// //交货状态
+			// msg=checkField("DELIVERY_STATE_DESC","交货状态",map);
+			// if (!"".equals(msg)) {
+			// return msg;
+			// }
+			// 工序代码
+			// msg=checkField("PROCESS_CODE","工序代码",map);
+			// if (!"".equals(msg)) {
+			// return msg;
+			// }
+			// 厚款长
+			msg = checkField("THICK", "厚度", map);
+			if (!"".equals(msg)) {
+				return msg;
+			}
+			/*
+			 * msg=checkField("WIDTH","宽度",map); if (!"".equals(msg)) { return
+			 * msg; } msg=checkField("LENGTH","长度",map); if (!"".equals(msg)) {
+			 * return msg; }
+			 */
+			msg = checkField("PSC", "产品码", map);
+			if (!"".equals(msg)) {
+				return msg;
+			}
+			
+			msg = checkField("QLTY_SMP_NO", "原试样号", map);
+			if (!"".equals(msg)) {
+				return msg;
+			}
+
+		}
+		if (treeSet.size() != 1) {
+			return "检验号不一致";
+		}
+		
+
+		return msg;
+	}
+
+	
+	
+	/**
+	 * 验证字段
+	 * 
+	 * @param field
+	 *            字段
+	 * @param name
+	 *            字段名
+	 * @param map
+	 *            map对象
+	 * @return
+	 */
+	private String checkField(String field, String name, JSONObject map) {
+		if (map.get(field) == null) {
+			return name + "不存在";
+		}
+		String ran = (String) map.get(field);
+		if (ran == null || "".equals(ran.trim())) {
+			return name + "为空";
+		}
+		return "";
+	}
+
+}

BIN
.svn/pristine/02/02239221dd7ca736d67c8f23f2413087f2bff280.svn-base


+ 16 - 0
.svn/pristine/02/023cfbd65e16f1a530924251239b635050fbe413.svn-base

@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" 
+    "http://www.springframework.org/dtd/spring-beans.dtd">
+<beans>
+
+<bean id="HessionServiceClient"
+	class="org.springframework.remoting.caucho.HessianProxyFactoryBean"> 
+   <property name="serviceUrl"> 
+       <value>http://localhost:8088/CoreServerDemo/remoting/HessianRemoting</value> 
+    </property> 
+    <property name="serviceInterface"> 
+       <value>CoreFS.SA06.CoreICommunicationService</value> 
+     </property> 
+</bean> 
+
+</beans>

+ 304 - 0
.svn/pristine/02/02ae6b1691a53fcdb9bb6690d8fac8f4308e6bb4.svn-base

@@ -0,0 +1,304 @@
+package QCM.COMMUNAL.VO;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+//import com.alibaba.excel.annotation.ExcelProperty;
+
+public class ExcelWGJ<T> implements Serializable {
+
+	
+	////@ExcelProperty(value = "流水钢卷号")
+	private String coil_no;
+	////@ExcelProperty(value = "板坯号 ")
+	private String slab_no;
+	////@ExcelProperty(value = "真实钢卷号")
+	private String old_sampl_no;
+	////@ExcelProperty(value = "钢卷状态")
+	private String coil_stat;
+	////@ExcelProperty(value = "当前进程代码")
+	private String cur_prog_cd;
+	////@ExcelProperty(value = "实际钢卷长度")		
+	private String coil_len;
+	////@ExcelProperty(value = "实际钢卷内径")
+	private String coil_india;
+	////@ExcelProperty(value = "实际钢卷外径")
+	private String coil_outdia;
+	////@ExcelProperty(value = "钢卷厚度")
+	private String coil_thk;
+	////@ExcelProperty(value = "钢卷宽度")
+	private String coil_wth;
+	////@ExcelProperty(value = "计算重量")
+	private String act_wgt;
+	////@ExcelProperty(value = "产品余材区分")
+	private String ord_fl;
+	////@ExcelProperty(value = "合同号")
+	private String ord_no;
+	////@ExcelProperty(value = "订单号")
+	private String ord_seq;	
+	////@ExcelProperty(value = "规格略号")
+	private String spec_abbsym;
+	////@ExcelProperty(value = "标准钢号")
+	private String spec_stl_grd;
+	////@ExcelProperty(value = "钢号")
+	private String stl_grd;
+	//@ExcelProperty(value = "屈服强度")
+	private String qfqd;
+	//@ExcelProperty(value = "抗拉强度")
+	private String klqd;
+	//@ExcelProperty(value = "断后伸长率")
+	private String dhscl;
+	//@ExcelProperty(value = "炉号")
+	private String charge_no;
+	//@ExcelProperty(value = "C")
+	private String c;
+	//@ExcelProperty(value = "Mn")
+	private String mn;
+	//@ExcelProperty(value = "S")
+	private String s;
+	//@ExcelProperty(value = "P")
+	private String p;
+	//@ExcelProperty(value = "Si")
+	private String si;
+	//@ExcelProperty(value = "Cr")
+	private String cr;
+	//@ExcelProperty(value = "Ni")
+	private String ni;
+	//@ExcelProperty(value = "Cu")
+	private String cu;
+	//@ExcelProperty(value = "Mo")
+	private String mo;
+	//@ExcelProperty(value = "V")
+	private String v;
+	//@ExcelProperty(value = "Ti")
+	private String ti;
+	//@ExcelProperty(value = "Als")
+	private String als;
+	//@ExcelProperty(value = "Alt")
+	private String alt;
+	//@ExcelProperty(value = "B")
+	private String b;
+	//@ExcelProperty(value = "As")
+	private String as;
+	
+	public String getCoil_no() {
+		return coil_no;
+	}
+	public void setCoil_no(String coil_no) {
+		this.coil_no = coil_no;
+	}
+	public String getSlab_no() {
+		return slab_no;
+	}
+	public void setSlab_no(String slab_no) {
+		this.slab_no = slab_no;
+	}
+	public String getOld_sampl_no() {
+		return old_sampl_no;
+	}
+	public void setOld_sampl_no(String old_sampl_no) {
+		this.old_sampl_no = old_sampl_no;
+	}
+	public String getCoil_stat() {
+		return coil_stat;
+	}
+	public void setCoil_stat(String coil_stat) {
+		this.coil_stat = coil_stat;
+	}
+	public String getCur_prog_cd() {
+		return cur_prog_cd;
+	}
+	public void setCur_prog_cd(String cur_prog_cd) {
+		this.cur_prog_cd = cur_prog_cd;
+	}
+	public String getCoil_len() {
+		return coil_len;
+	}
+	public void setCoil_len(String coil_len) {
+		this.coil_len = coil_len;
+	}
+	public String getCoil_india() {
+		return coil_india;
+	}
+	public void setCoil_india(String coil_india) {
+		this.coil_india = coil_india;
+	}
+	public String getCoil_outdia() {
+		return coil_outdia;
+	}
+	public void setCoil_outdia(String coil_outdia) {
+		this.coil_outdia = coil_outdia;
+	}
+	public String getCoil_thk() {
+		return coil_thk;
+	}
+	public void setCoil_thk(String coil_thk) {
+		this.coil_thk = coil_thk;
+	}
+	public String getCoil_wth() {
+		return coil_wth;
+	}
+	public void setCoil_wth(String coil_wth) {
+		this.coil_wth = coil_wth;
+	}
+	public String getAct_wgt() {
+		return act_wgt;
+	}
+	public void setAct_wgt(String act_wgt) {
+		this.act_wgt = act_wgt;
+	}
+	public String getOrd_fl() {
+		return ord_fl;
+	}
+	public void setOrd_fl(String ord_fl) {
+		this.ord_fl = ord_fl;
+	}
+	public String getOrd_no() {
+		return ord_no;
+	}
+	public void setOrd_no(String ord_no) {
+		this.ord_no = ord_no;
+	}
+	public String getOrd_seq() {
+		return ord_seq;
+	}
+	public void setOrd_seq(String ord_seq) {
+		this.ord_seq = ord_seq;
+	}
+	public String getSpec_abbsym() {
+		return spec_abbsym;
+	}
+	public void setSpec_abbsym(String spec_abbsym) {
+		this.spec_abbsym = spec_abbsym;
+	}
+	public String getSpec_stl_grd() {
+		return spec_stl_grd;
+	}
+	public void setSpec_stl_grd(String spec_stl_grd) {
+		this.spec_stl_grd = spec_stl_grd;
+	}
+	public String getStl_grd() {
+		return stl_grd;
+	}
+	public void setStl_grd(String stl_grd) {
+		this.stl_grd = stl_grd;
+	}
+	public String getKlqd() {
+		return klqd;
+	}
+	public void setKlqd(String klqd) {
+		this.klqd = klqd;
+	}
+	public String getDhscl() {
+		return dhscl;
+	}
+	public void setDhscl(String dhscl) {
+		this.dhscl = dhscl;
+	}
+	public String getCharge_no() {
+		return charge_no;
+	}
+	public void setCharge_no(String charge_no) {
+		this.charge_no = charge_no;
+	}
+	public String getC() {
+		return c;
+	}
+	public void setC(String c) {
+		this.c = c;
+	}
+	public String getMn() {
+		return mn;
+	}
+	public void setMn(String mn) {
+		this.mn = mn;
+	}
+	public String getS() {
+		return s;
+	}
+	public void setS(String s) {
+		this.s = s;
+	}
+	public String getP() {
+		return p;
+	}
+	public void setP(String p) {
+		this.p = p;
+	}
+	public String getSi() {
+		return si;
+	}
+	public void setSi(String si) {
+		this.si = si;
+	}
+	public String getCr() {
+		return cr;
+	}
+	public void setCr(String cr) {
+		this.cr = cr;
+	}
+	public String getNi() {
+		return ni;
+	}
+	public void setNi(String ni) {
+		this.ni = ni;
+	}
+	public String getCu() {
+		return cu;
+	}
+	public void setCu(String cu) {
+		this.cu = cu;
+	}
+	public String getMo() {
+		return mo;
+	}
+	public void setMo(String mo) {
+		this.mo = mo;
+	}
+	public String getV() {
+		return v;
+	}
+	public void setV(String v) {
+		this.v = v;
+	}
+	public String getTi() {
+		return ti;
+	}
+	public void setTi(String ti) {
+		this.ti = ti;
+	}
+	public String getAls() {
+		return als;
+	}
+	public void setAls(String als) {
+		this.als = als;
+	}
+	public String getAlt() {
+		return alt;
+	}
+	public void setAlt(String alt) {
+		this.alt = alt;
+	}
+	public String getB() {
+		return b;
+	}
+	public void setB(String b) {
+		this.b = b;
+	}
+	public String getAs() {
+		return as;
+	}
+	public void setAs(String as) {
+		this.as = as;
+	}
+	public String getQfqd() {
+		return qfqd;
+	}
+	public void setQfqd(String qfqd) {
+		this.qfqd = qfqd;
+	}
+	
+	
+}

+ 295 - 0
.svn/pristine/03/033fb80042dbd5ce3bcd041a2381d2b9ccf9ddc9.svn-base

@@ -0,0 +1,295 @@
+package UIM.UIM06;
+
+import java.sql.CallableStatement;
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.sql.Types;
+import java.util.ArrayList;
+import java.util.Map;
+
+import CoreFS.SA01.CoreIComponent;
+import CoreFS.SA06.CoreReturnObject;
+
+public class UIM060020 extends CoreIComponent {
+	/**
+	 * 外购卷入库
+	 * 
+	 * @param coilNo
+	 * @param entryInfo
+	 * @param coilInfo
+	 * @param qltyList
+	 * @param chemList
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject saveCoilYard(String coilNo, String[] entryInfo,
+			String[] coilInfo, ArrayList<String[]> qltyList,
+			ArrayList<String[]> chemList) throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		Map result = this.getDao("KgDao").CoreBeginTranscation();
+
+		try {
+			// 将入库操作信息和垛位信息加入冷轧原料公共表
+			StringBuffer sqlucomm = new StringBuffer();
+			sqlucomm
+					.append("insert into c_tbk02_coil_comm (coil_no,coil_stat,cur_prog_cd,cur_prog_cd_dtime\n");
+			sqlucomm
+					.append(" ,cur_prog_cd_pgm,coil_len,coil_india,coil_outdia,coil_thk,coil_wth,act_wgt\n");
+			sqlucomm
+					.append(" ,ord_fl,prodnm_cd,spec_abbsym,ord_use_cd,stl_grd,cur_load_loc,cur_load_loc_dtime\n");
+			sqlucomm
+					.append(" ,yard_entry_reg,yard_entry_shift,yard_entry_group,yard_entry_dtime,yard_entry_use_time\n");
+			sqlucomm
+					.append(" ,old_sampl_no) values(?,2,'PRC',TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS'),'UIM060020'\n");
+			sqlucomm
+					.append(" ,?,?,?,?,?,?,'2',?,?,?,?,?,TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS'),?,?,?,?,TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS'),?)\n");
+			this.getDao("KgDao").ExcuteNonQuery(
+					sqlucomm.toString(),
+					new Object[] { coilNo, coilInfo[6], coilInfo[9],
+							coilInfo[8], coilInfo[4], coilInfo[5], coilInfo[7],
+							coilInfo[3], coilInfo[8], coilInfo[2], coilInfo[1],
+							entryInfo[0], entryInfo[4], entryInfo[1],
+							entryInfo[2], entryInfo[3], coilNo });
+
+			// 将钢卷信息加入垛位表
+			String sqluyard = "update c_tbk08_coil_yard set COIL_NO = ?,COIL_SOURCE = 1, "
+					+ "MOD_ID  = ?, MOD_TIME = TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS')"
+					+ " where CLF_NAME = substr(?,1,1) and CLF_COL = substr(?,3,2)"
+					+ " and CLF_ROW = substr(?,7,2) and CLF_FL = DECODE(substr(?,5,1),'A','1','B','2','C','3','1')";
+			this.getDao("KgDao").ExcuteNonQuery(
+					sqluyard,
+					new Object[] { coilNo, entryInfo[4], entryInfo[0],
+							entryInfo[0], entryInfo[0], entryInfo[0] });
+
+			// 入库完成后将入库记录加入移垛记录,便于跟踪钢卷移动记录
+			long seq = 0;// 移垛记录表主键
+
+			String sqlqmaxseq = "select max(ROLL_SEQ) ROLL_SEQ from c_tbk08_coil_move";
+			PreparedStatement pSta = this.getDao("KgDao").getPreparedStatement(
+					sqlqmaxseq);
+			ResultSet rs = pSta.executeQuery();
+			if (rs.next()) {
+				seq = rs.getLong("ROLL_SEQ");
+			}
+			try{
+				rs.close();
+				Connection con = pSta.getConnection(); //目前未发现有什么作用,暂时屏蔽
+				pSta.close();
+				con.close();
+			} catch (Exception e) {
+			}
+
+			String sqlimove = "insert into c_tbk08_coil_move T(T.ROLL_SEQ,T.CUR_LOAD_LOC_F,T.CUR_LOAD_LOC_T,T.COIL_NO,T.REG_ID,T.REG_SHIFT,T.REG_GROUP,T.REG_DTIME,T.REG_USE_ID,T.REG_USE_DTIME)VALUES(?,?,?,?,?,?,?,?,?,TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS'))";
+			this.getDao("KgDao").ExcuteNonQuery(
+					sqlimove,
+					new Object[] { seq + 1, "", entryInfo[0], coilNo,
+							entryInfo[4], entryInfo[1], entryInfo[2],
+							entryInfo[3], entryInfo[4] });
+
+			// 成份信息
+			String chargeNo = coilInfo[10];// 炉号
+			String procCd = "JJ";// 工序
+			String chemSeq = "01";// 次数
+			String chemValTp = "L";// 实绩编码
+			String chemL2ProcCd = "CP";
+			int chemSize = chemList.size();
+			for (int i = 0; i < chemSize; i++) {
+				String[] param = chemList.get(i);
+				String chemCd = param[0];// 元素名
+				String chemVal = param[1];// 实际值
+				String remark = param[2];// 备注
+
+				StringBuffer chemBuffer = new StringBuffer();
+				chemBuffer
+						.append(" insert into tbb02_work_ingr(charge_no,proc_cd,chem_seq,chem_cd\n");
+				chemBuffer
+						.append(" ,chem_val_tp,chem_val,reg_id,reg_dtime,reg_pgm_id,chem_l2_proc_cd,chem_l2_val,ingr_rmk)\n");
+				chemBuffer
+						.append(" values(?,?,?,?,?,?,?,TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS'),?,?,?,?)\n");
+				this.getDao("KgDao").ExcuteNonQuery(
+						chemBuffer.toString(),
+						new Object[] { chargeNo, procCd, chemSeq, chemCd,
+								chemValTp, chemVal, entryInfo[4],
+								"UIM060020", chemL2ProcCd, chemVal, remark });
+			}
+
+			// 性能信息
+			String proName = "{call ACID_QLTY_DCS.ACID_OUT_SOURCING(?,?,?,?,?,?,?)}";
+			Connection proConn = null;
+			CallableStatement cs = null;
+			try{
+				proConn = this.getDao("KgDao").getConnection();
+				int qltySize = qltyList.size();
+				for (int i = 0; i < qltySize; i++) {
+					String[] param = qltyList.get(i);
+					
+					cs = proConn.prepareCall(proName);
+					cs.setString(1, coilNo);
+					cs.setString(2, param[0]);
+					cs.setString(3, param[1]);
+					cs.setString(4, param[2]);
+					cs.setString(5, param[3]);
+					cs.setString(6, param[4]);
+		            cs.registerOutParameter(7,Types.VARCHAR);
+		            cs.execute();
+		            
+		            String rtMsg = cs.getString(7);
+				    cs.close();
+					
+					if(!rtMsg.equals("YY")){
+						cro.setV_errCode(-1);
+						cro.setV_errMsg("生成冷轧外购卷试样号及性能失败!");
+						proConn.close();
+						this.getDao("KgDao").CoreRollBack(result);// 回滚
+						return cro;
+					}
+				}
+				proConn.close();
+			}catch(Exception exp){
+				exp.printStackTrace();
+				if(cs != null){
+					cs.close();
+				}
+				if(proConn != null){
+					proConn.close();
+				}
+				this.getDao("KgDao").CoreRollBack(result);// 回滚
+				return cro;
+			}
+
+			this.getDao("KgDao").CoreCommit(result);// 提交
+		} catch (Exception ex) {
+			ex.printStackTrace();
+			this.getDao("KgDao").CoreRollBack(result);// 回滚
+		}
+
+		return cro;
+	}
+
+	/**
+	 * 查询所有标准号
+	 * 
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject querySpecAbbsymList() throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		String sql = "SELECT DISTINCT T.SPEC_ABBSYM   FROM TBB01_KEY_PROD T";
+		cro = this.getDao("KgDao").ExcuteQuery(sql);
+		return cro;
+	}
+
+	/**
+	 * 查询所有牌号
+	 * 
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject querySpecStlGrdList() throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		String sql = "SELECT DISTINCT T.SPEC_STL_GRD   FROM TBB01_KEY_PROD T";
+		cro = this.getDao("KgDao").ExcuteQuery(sql);
+		return cro;
+	}
+
+	/**
+	 * 查询所有交货状态
+	 * 
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryProdNmList() throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		String sql = "SELECT DISTINCT T.PRDNM_CD FROM TBB01_KEY_PROD T";
+		cro = this.getDao("KgDao").ExcuteQuery(sql);
+		return cro;
+	}
+
+	/**
+	 * 查询所有订单用途
+	 * 
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryOrdUseTyList() throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		String sql = "SELECT T.SM_CD , T.SM_CFNM FROM TBZ00_COMMCD T WHERE T.LG_CD = 'A01007' AND UPPER(USED_YN) = 'Y' ORDER BY SM_CFNM";
+		cro = this.getDao("KgDao").ExcuteQuery(sql);
+		return cro;
+	}
+
+	/**
+	 * 查询所有成份信息
+	 * 
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryChemList() throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		StringBuffer sqlBuffer = new StringBuffer();
+		sqlBuffer.append(" SELECT \n");
+		sqlBuffer.append(" T1.CHEM_CD \n");
+		sqlBuffer
+				.append(" ,( CASE WHEN T1.COMP_YN = 'Y' THEN (CASE WHEN T1.COMP_DETAIL='复合元素' THEN T1.COMP_CAL  ELSE T1.COMP_DETAIL  END ) ELSE T1.CHEM_CD END ) CHEM_DIS \n");
+		sqlBuffer
+				.append(" FROM   TBB01_SEQ_INGR T1  ORDER BY T1.COMP_YN,T1.DISPLAY_SEQ  \n");
+		cro = this.getDao("KgDao").ExcuteQuery(sqlBuffer.toString());
+		return cro;
+	}
+
+	/**
+	 * 查询材质信息
+	 * 
+	 * @param prdNmCd
+	 * @param specAbbsym
+	 * @param specStlGrd
+	 * @param ordUseTp
+	 * @param thk
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryQltyList(String prdNmCd, String specAbbsym,
+			String specStlGrd, String ordUseTp, Double thk) throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		StringBuffer sqlBuffer = new StringBuffer();
+		sqlBuffer
+				.append("SELECT t1.QLTY_CD_CFNM , T2.QLTY_MIN , T2.QLTY_MAX FROM TBB01_SEQ_QLTY T1 , TBB01_SPEC_QLTY T2\n");
+		sqlBuffer
+				.append(" WHERE  T1.QLTY_CD               =     T2.QLTY_CD(+)\n");
+		sqlBuffer.append(" AND    T2.PRDNM_CD(+)           =     ?   --交货状态\n");
+		sqlBuffer.append(" AND    T2.SPEC_ABBSYM(+)        =     ?   --标准号\n");
+		sqlBuffer.append(" AND    T2.SPEC_STL_GRD(+)       =     ?   --标准牌号\n");
+		sqlBuffer.append(" AND    T2.ORD_USE_TP(+)         =     ?   --订单用途\n");
+		sqlBuffer.append(" AND    T2.THK_MIN(+)            <=    ?   --厚度\n");
+		sqlBuffer.append(" AND    T2.THK_MAX(+)            >=    ?   --厚度\n");
+
+		cro = this.getDao("KgDao").ExcuteQuery(
+				sqlBuffer.toString(),
+				new Object[] { prdNmCd, specAbbsym, specAbbsym, ordUseTp, thk,
+						thk });
+		return cro;
+	}
+
+	public CoreReturnObject queryColdCoilNo(String coilNo) throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		int haveCoil = 0;
+		String sql = "select count(coil_no) count from c_tbk02_coil_comm where coil_no = '"
+				+ coilNo + "'";
+		PreparedStatement pretStat = this.getDao("KgDao").getPreparedStatement(sql);
+		ResultSet rs = pretStat.executeQuery();
+		if (rs.next()) {
+			haveCoil = rs.getInt("COUNT");
+		}
+		cro.setResult(haveCoil);
+		try{
+			rs.close();
+			Connection con = pretStat.getConnection(); //关闭连接
+			pretStat.close();
+			con.close();
+		} catch (Exception e) {
+		}
+		return cro;
+	}
+}

+ 918 - 0
.svn/pristine/03/03595bf2578696deebdffc95e8eab936757dbbd1.svn-base

@@ -0,0 +1,918 @@
+package UIK.UIK02;
+
+import java.sql.CallableStatement;
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.sql.Statement;
+import java.sql.Types;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Hashtable;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+
+import UIB.COM.ProduceFactory;
+import UIB.COM.XmlSqlParsersFactory;
+
+import CoreFS.SA01.CoreIComponent;
+import CoreFS.SA06.CoreReturnObject;
+
+/**
+ * 酸轧作业管理
+ * 
+ * @author siy
+ * @date 2010-9-17
+ */
+public class UIK020020 extends CoreIComponent {
+	/**
+	 * 查询酸轧作业实绩
+	 * 
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryAcidRollingResult(String cCoilNo,String hCoilNo)
+			throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		StringBuffer sqlBuffer = new StringBuffer();
+		sqlBuffer.append(XmlSqlParsersFactory.getSql("UIK020020_01.SELECT"));
+		// if(null == cCoilNo || "".equals(cCoilNo)){
+		// sqlBuffer.append(" and r.mill_dtime = (select max(mill_dtime) from
+		// c_tbl02_pltcm_result)");
+		// }
+		// else{
+		// sqlBuffer.append(" and r.l_coil_no = '" + cCoilNo + "'");
+		// }
+
+		cro = this.getDao("KgDao").ExcuteQuery(sqlBuffer.toString(),
+				new Object[] { cCoilNo,hCoilNo });
+		return cro;
+	}
+	
+	
+	public CoreReturnObject queryOriCoil(String cCoilNo )
+				throws SQLException {
+			CoreReturnObject cro = new CoreReturnObject();
+			StringBuffer sqlBuffer = new StringBuffer();
+			sqlBuffer.append(XmlSqlParsersFactory.getSql("UIK020020_11.SELECT"));
+			cro = this.getDao("KgDao").ExcuteQuery(sqlBuffer.toString(),
+					new Object[] { cCoilNo });
+			return cro;
+			}
+
+	/**
+	 * 查询冷轧卷是否存在
+	 * 
+	 * @param coilNo
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryCoilExist(String coilNo) throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		// 查询钢卷是否存在于实绩表
+		String sql = XmlSqlParsersFactory.getSql("UIK020020_03.SELECT");
+		List list = this.getDao("KgDao").ExcuteQueryReturnList(sql,
+				new Object[] { coilNo });
+		Iterator it = list.iterator();
+		int count = 0;
+		try {
+			while (it.hasNext()) {
+				Map map = (Map) it.next();
+				count = Integer.parseInt(map.get("COUNT").toString());
+			}
+		} catch (Exception ex) {
+		}
+		if (count == 0 && !coilNo.endsWith("0")) {
+			String pCoilNo = coilNo.substring(0, coilNo.length() - 2) + "0";
+			CoreReturnObject cro1 = this.queryCoilExist(pCoilNo);
+			count = Integer.parseInt(cro1.getResult().toString());
+		}
+		cro.setResult(count);
+		return cro;
+	}
+
+	/**
+	 * 新增酸轧实绩
+	 * 
+	 * @param listParam
+	 * @param regID
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject addAcidRollingResult(ArrayList listParam,String regID)
+			throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		String[] lCoilInfo = (String[]) listParam.get(0);
+		ArrayList hCoilInfo = (ArrayList) listParam.get(1);
+		ArrayList defectInfo = (ArrayList) listParam.get(2);
+
+		String sqlEntry = "select t.OLD_SAMPL_NO  from c_tbl02_coil_comm t where (t.DLIV_DIRNO is not null or t.FL = '1')  and t.OLD_SAMPL_NO = ?";
+
+		List listEntry = this.getDao("KgDao").ExcuteQueryReturnList(sqlEntry,
+				new Object[] { lCoilInfo[0].substring(0, 11)+"0" });
+
+		if (listEntry.size() > 0) {
+			cro.setV_errCode(new Integer(1));
+			cro.setV_errMsg("物料对应的母卷"+lCoilInfo[0].substring(0, 11)+"0"+"已发货或已连退,禁止分卷!");
+			return cro;
+		} 
+		
+		
+       // 查询钢卷是否存在于钢卷公共表
+		String sql = XmlSqlParsersFactory.getSql("UIK020020_02.SELECT");
+		
+		List list = this.getDao("KgDao").ExcuteQueryReturnList(sql,
+				new Object[] { lCoilInfo[0] });
+		Iterator it = list.iterator();
+		int count = 0;
+		try {
+			while (it.hasNext()) {
+				Map map = (Map) it.next();
+				count = Integer.parseInt(map.get("COUNT").toString());
+			}
+		} catch (Exception ex) {
+		}
+		//根据真实钢卷号判断是否存在此卷
+		String sqln = XmlSqlParsersFactory.getSql("UIK020020_10.SELECT");
+		List listN = this.getDao("KgDao").ExcuteQueryReturnList(sqln,
+				new Object[] { lCoilInfo[0] });	
+		Iterator itn = listN.iterator();
+		int countn = 0;
+		try {
+			while (itn.hasNext()) {
+				Map mapn = (Map) itn.next();
+				countn = Integer.parseInt(mapn.get("COUNT").toString());
+			}
+		} catch (Exception ex) {
+		}
+       //判断母卷-10是否存在
+		List listMU = this.getDao("KgDao").ExcuteQueryReturnList(sqln,
+				new Object[] { lCoilInfo[0].substring(0, 11)+"0" });
+		Iterator itMU = listMU.iterator();
+		int countMU = 0;
+		try {
+			while (itMU.hasNext()) {
+				Map mapMU = (Map) itMU.next();
+				countMU = Integer.parseInt(mapMU.get("COUNT").toString());
+			}
+		} catch (Exception ex) {
+		}
+
+		Map result = this.getDao("KgDao").CoreBeginTranscation();
+		try {
+			List<Object> param = new ArrayList<Object>();
+			param.add(lCoilInfo[0]);
+			param.add(lCoilInfo[0]);
+			param.add(lCoilInfo[1]);
+			param.add(lCoilInfo[3]);
+			param.add(lCoilInfo[6]);
+			param.add(lCoilInfo[7]);
+			param.add(lCoilInfo[2]);
+			param.add(lCoilInfo[8]);
+			param.add("");// lock_coil
+			param.add(lCoilInfo[9]);
+			for (int i = 0; i < hCoilInfo.size(); i++) {
+				String[] hCoil = (String[]) hCoilInfo.get(i);
+				for (int j = 0; j < hCoil.length - 1; j++) {
+					param.add(hCoil[j]);
+				}
+			}
+			param.add(lCoilInfo[10]);
+			for (int i = 0; i < defectInfo.size(); i++) {
+				String[] defect = (String[]) defectInfo.get(i);
+				for (int j = 0; j < defect.length; j++) {
+					param.add(defect[j]);
+				}
+			}
+			// 新增实绩
+			sql = XmlSqlParsersFactory.getSql("UIK020020_01.INSERT");
+			this.getDao("KgDao").ExcuteNonQuery(sql, param.toArray());
+			
+			// 查询订单信息
+			sql = XmlSqlParsersFactory.getSql("UIK020020_04.SELECT");
+			list = this.getDao("KgDao").ExcuteQueryReturnList(sql,
+					new Object[] { lCoilInfo[0] });
+			it = list.iterator();
+			Map ordMap = new HashMap();
+			if (it.hasNext()) {
+				ordMap = (Map) it.next();
+			}
+			param = new ArrayList<Object>();
+			param.add(lCoilInfo[0]);
+			String coilLen = lCoilInfo[3];
+			try {
+				if (coilLen == null || coilLen.equals("")
+						|| Integer.parseInt(coilLen) == 0) {
+					coilLen = String.valueOf(Math.round(Double
+							.parseDouble(lCoilInfo[2])
+							* 1000
+							/ (Double.parseDouble(lCoilInfo[4])
+									* Double.parseDouble(lCoilInfo[5]) * 7.85)
+							* 1000));
+				}
+			} catch (Exception ex) {
+
+			}
+			param.add(coilLen);
+			param.add(lCoilInfo[6]);
+			param.add(lCoilInfo[7]);
+			param.add(lCoilInfo[5]);
+			param.add(lCoilInfo[4]);
+			param.add(""); //param.add(lCoilInfo[2]);重量屏蔽
+			param.add(ordMap.get("STL_GRD") != null ? ordMap.get("STL_GRD")
+					.toString() : "");// stl_grd
+			param.add(lCoilInfo[1]);
+			param.add(lCoilInfo[0]);
+			if (((String[]) hCoilInfo.get(0))[0].length() > 3) {
+				param.add(((String[]) hCoilInfo.get(0))[0].substring(0,
+						((String[]) hCoilInfo.get(0))[0].length() - 3));// ord_no
+				param
+						.add(((String[]) hCoilInfo.get(0))[0]
+								.substring(((String[]) hCoilInfo.get(0))[0]
+										.length() - 3));// ord_seq
+				param.add(1);
+			} else {
+				String ordNo = ordMap.get("ORD_NO") != null ? ordMap.get(
+						"ORD_NO").toString() : "";
+				String ordSeq = ordMap.get("ORD_SEQ") != null ? ordMap.get(
+						"ORD_SEQ").toString() : "";
+				String ordFl = ordNo.equals("") ? "2" : "1";
+				param.add(ordNo);// ord_no
+				param.add(ordSeq);// ord_seq
+				param.add(ordFl);
+			}
+//			for (int i = 0; i < 5; i++) {
+//				param.add(((String[]) defectInfo.get(i))[1]);// defect_type
+//			}
+
+			String slabNo = "";
+			sql = "select k.slab_no from c_tbk02_coil_comm k where k.coil_no = ?";
+			list = this.getDao("KgDao").ExcuteQueryReturnList(sql,
+					new Object[] { ((String[]) hCoilInfo.get(0))[29] });// h_coil_no1
+			it = list.iterator();
+			if (it.hasNext()) {
+				Map map = (Map) it.next();
+				slabNo = map.get("SLAB_NO").toString();
+			}
+			param.add(slabNo);// slab_no
+			
+			String []hCoils = new String[3];
+
+			for (int i = 0; i < 3; i++) {
+				hCoils[i] = ((String[]) hCoilInfo.get(i))[29];
+				param.add(((String[]) hCoilInfo.get(i))[29]);// h_coil_no
+				param.add(((String[]) hCoilInfo.get(i))[2]);// h_coil_len
+			}
+			param.add(ordMap.get("ORD_THK") != null ? ordMap.get("ORD_THK")
+					.toString() : "");
+			param.add(ordMap.get("ORD_WTH") != null ? ordMap.get("ORD_WTH")
+					.toString() : "");
+			param.add(ordMap.get("ORD_LEN") != null ? ordMap.get("ORD_LEN")
+					.toString() : "");
+			param.add(ordMap.get("ORD_WGT") != null ? ordMap.get("ORD_WGT")
+					.toString() : "");
+			param.add(ordMap.get("ORD_INDIA") != null ? ordMap.get("ORD_INDIA")
+					.toString() : "");
+			param.add(ordMap.get("ORD_OUTDIA") != null ? ordMap.get(
+					"ORD_OUTDIA").toString() : "");
+			param.add(ordMap.get("DEL_TO_DATE") != null ? ordMap.get(
+					"DEL_TO_DATE").toString() : "");
+			param.add(ordMap.get("DEST_CD") != null ? ordMap.get("DEST_CD")
+					.toString() : "");
+			param.add(ordMap.get("ORDCUST_CD") != null ? ordMap.get("ORDCUST_CD")
+					.toString() : "");
+			//param.add("");// cust_cd
+			param.add(ordMap.get("CUST_CD") != null ? ordMap.get("CUST_CD")
+					.toString() : "");
+			param.add(ordMap.get("SPEC_STL_GRD") != null ? ordMap.get(
+					"SPEC_STL_GRD").toString() : "");
+			// param.add(ordMap.get("STL_GRD") != null ? ordMap.get("STL_GRD")
+			// .toString() : "");
+			param.add(ordMap.get("PRODNM_CD") != null ? ordMap.get("PRODNM_CD")
+					.toString() : "");
+			param.add(ordMap.get("C_ORD_USEAGE_CD") != null ? ordMap.get(
+					"C_ORD_USEAGE_CD").toString() : "");
+			param.add(ordMap.get("C_SPEC_ABBSYM") != null ? ordMap.get(
+					"C_SPEC_ABBSYM").toString() : "");
+			param.add(regID);
+			param.add(ordMap.get("SPEC_STL_GRD") != null ? ordMap.get(
+			"SPEC_STL_GRD").toString() : "");
+
+			if (count <= 0) {// 新增钢卷
+				sql = XmlSqlParsersFactory.getSql("UIK020020_02.INSERT");
+				this.getDao("KgDao").ExcuteNonQuery(sql, param.toArray());
+				if(countMU>0) {
+				//调用存货异动点存储过程
+				ProduceFactory PD= new ProduceFactory();
+				PD.ErpDataCover("CCOIL",lCoilInfo[0].substring(0, 11)+"0","11AD","0","O",regID,"酸轧分卷母卷");
+				PD.ErpDataCoverFJ("CCOIL",lCoilInfo[0],"11AD","0","N","N","",lCoilInfo[0].substring(0, 11)+"0",regID,"酸轧分卷子卷");
+				}
+				else{
+					ProduceFactory PD= new ProduceFactory();
+					PD.ErpDataCover("CORICOIL",((String[]) hCoilInfo.get(0))[29],"41A","0","O",regID,"酸轧轧制");	//((String[]) hCoilInfo.get(i))[29]
+					PD.ErpDataCoverFJ("CCOIL",lCoilInfo[0],"11A","0","N","N","",((String[]) hCoilInfo.get(0))[29],regID,"酸轧分卷子卷");
+				}
+				// 修改母卷
+				sql = XmlSqlParsersFactory.getSql("UIK020020_07.UPDATE");
+				this.getDao("KgDao").ExcuteNonQuery(sql,new Object[] { lCoilInfo[0].substring(0, 11)+"0" });
+				sql = XmlSqlParsersFactory.getSql("UIK020020_08.UPDATE");
+				this.getDao("KgDao").ExcuteNonQuery(sql,new Object[] { lCoilInfo[0].substring(0, 11)+"0" });
+			 } else {// 修改钢卷
+			
+				sql = XmlSqlParsersFactory.getSql("UIK020020_02.UPDATE");
+				param.remove(0);
+				param.add(lCoilInfo[0]);
+				this.getDao("KgDao").ExcuteNonQuery(sql, param.toArray());
+				 if(countn<=0)//人工补录实绩时抛送异动点
+				 {
+					 ProduceFactory PD= new ProduceFactory();
+				     PD.ErpDataCover("CCOIL",lCoilInfo[0],"11A","0","O",regID,"酸轧补录产出");	//
+				     PD.ErpDataCover("CORICOIL",((String[]) hCoilInfo.get(0))[29],"41A","0","O",regID,"酸轧轧制");	//((String[]) hCoilInfo.get(i))[29]
+						
+				 }
+			}
+			
+			//更改原料卷状态
+			sql = XmlSqlParsersFactory.getSql("UIK020020_06.UPDATE");
+			this.getDao("KgDao").ExcuteNonQuery(sql, hCoils);
+			
+			// 写入钢卷公共表_D
+			if (!(ordMap.get("ORD_NO") != null ? ordMap.get("ORD_NO")
+					.toString() : "").equals("")) {
+				sql = XmlSqlParsersFactory.getSql("UIK020020_06.SELECT");
+				list = this.getDao("KgDao")
+						.ExcuteQueryReturnList(
+								sql,
+								new Object[] { lCoilInfo[0], lCoilInfo[0],
+										lCoilInfo[0] });
+				it = list.iterator();
+				Map ordMapD = new HashMap();
+				if (it.hasNext()) {
+					ordMapD = (Map) it.next();
+				}
+				String cutSeq = ordMapD.get("CUT_SEQ") != null ? ordMapD.get(
+						"CUT_SEQ").toString() : "";
+				String ordThk = ordMapD.get("ORD_THK") != null ? ordMapD.get(
+						"ORD_THK").toString() : "";
+				String ordWth = ordMapD.get("ORD_WTH") != null ? ordMapD.get(
+						"ORD_WTH").toString() : "";
+				String ordLen = ordMapD.get("ORD_LEN") != null ? ordMapD.get(
+						"ORD_LEN").toString() : "";
+				String ordWgt = ordMapD.get("ORD_WGT") != null ? ordMapD.get(
+						"ORD_WGT").toString() : "";
+				String ordWgtMin = ordMapD.get("ORD_WGT_MIN") != null ? ordMapD
+						.get("ORD_WGT_MIN").toString() : "";
+				String ordWgtMax = ordMapD.get("ORD_WGT_MAX") != null ? ordMapD
+						.get("ORD_WGT_MAX").toString() : "";
+				String ordIndia = ordMapD.get("ORD_INDIA") != null ? ordMapD
+						.get("ORD_INDIA").toString() : "";
+				String ordOutdia = ordMapD.get("ORD_OUTDIA") != null ? ordMapD
+						.get("ORD_OUTDIA").toString() : "";
+				String ordNo = ordMapD.get("ORD_NO") != null ? ordMapD.get(
+						"ORD_NO").toString() : "";
+				String ordSeq = ordMapD.get("ORD_SEQ") != null ? ordMapD.get(
+						"ORD_SEQ").toString() : "";
+				String ordFl = ordMapD.get("ORD_FL") != null ? ordMapD.get(
+						"ORD_FL").toString() : "";
+
+				sql = XmlSqlParsersFactory.getSql("UIK020020_07.SELECT");
+				list = this.getDao("KgDao").ExcuteQueryReturnList(sql,
+						new Object[] { lCoilInfo[0], cutSeq });
+				it = list.iterator();
+				Map ordMapCount = new HashMap();
+				if (it.hasNext()) {
+					ordMapCount = (Map) it.next();
+				}
+				int ordCount = Integer
+						.parseInt(ordMapCount.get("COUNT") != null ? ordMapCount
+								.get("COUNT").toString().trim()
+								: "0");
+				if (ordCount > 0) {
+					sql = XmlSqlParsersFactory.getSql("UIK020020_05.UPDATE");
+					this.getDao("KgDao")
+							.ExcuteNonQuery(
+									sql,
+									new Object[] { ordThk, ordWth, ordLen,
+											ordWgt, ordWgtMin, ordWgtMax,
+											ordIndia, ordOutdia, ordNo, ordSeq,
+											ordFl, lCoilInfo[0], cutSeq });
+				} else {
+					sql = XmlSqlParsersFactory.getSql("UIK020020_03.INSERT");
+					this.getDao("KgDao").ExcuteNonQuery(
+							sql,
+							new Object[] { lCoilInfo[0], cutSeq, ordThk,
+									ordWth, ordLen, ordWgt, ordWgtMin,
+									ordWgtMax, ordIndia, ordOutdia, ordNo,
+									ordSeq, ordFl });
+				}
+			}
+
+			// 修改钢卷轧制状态
+			sql = XmlSqlParsersFactory.getSql("UIK020020_03.UPDATE");
+			this.getDao("KgDao").ExcuteNonQuery(sql,
+					new Object[] { lCoilInfo[0] });
+
+			// 修改轧辊单元轧制状态
+			sql = XmlSqlParsersFactory.getSql("UIK020020_04.UPDATE");
+			this.getDao("KgDao").ExcuteNonQuery(sql,
+					new Object[] { lCoilInfo[0], lCoilInfo[0], lCoilInfo[0] });
+
+			this.getDao("KgDao").CoreCommit(result);
+
+			Connection conn = this.getDao("KgDao").getConnection();
+			try {
+				conn.setAutoCommit(false);
+//				this.takeOverPltcmCoilLable(conn, lCoilInfo[0], Double
+//						.parseDouble(lCoilInfo[2]), Double
+//						.parseDouble(lCoilInfo[5]), lCoilInfo[1]);
+				// 酸轧实绩补录成功后进行尺寸及重量判定
+				this.dscCoilWgtSize(conn, lCoilInfo[0]);
+				//添加操作记录
+				this.CallHistory(conn, lCoilInfo[0] , regID);
+				// 分卷后重新取样
+				if ("123456789".contains(lCoilInfo[0].substring(lCoilInfo[0]
+						.length() - 1))) {
+					this.cutCoilLost(conn, lCoilInfo[0]);
+				}
+				conn.commit();
+			} catch (Exception e) {
+				e.printStackTrace();
+				conn.rollback();
+			} finally {
+				if (conn != null && !conn.isClosed()) {
+					conn.close();
+				}
+			}
+		} catch (Exception ex) {
+			ex.printStackTrace();
+			this.getDao("KgDao").CoreRollBack(result);
+			cro.setV_errCode(-1);
+			cro.setV_errMsg("实绩新增失败!");
+		}
+		return cro;
+	}
+	/**
+	 * 新增酸轧实绩
+	 * 
+	 * @param listParam
+	 * @param regID
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject addAcidResultSaunXi(ArrayList listParam,String regID)
+			throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		String[] lCoilInfo = (String[]) listParam.get(0);
+		ArrayList hCoilInfo = (ArrayList) listParam.get(1);
+		ArrayList defectInfo = (ArrayList) listParam.get(2);
+       // 查询钢卷是否存在于钢卷公共表
+		String sql = XmlSqlParsersFactory.getSql("UIK020020_02.SELECT");
+		List list = this.getDao("KgDao").ExcuteQueryReturnList(sql,
+				new Object[] { lCoilInfo[0] });
+		Iterator it = list.iterator();
+		int count = 0;
+		try {
+			while (it.hasNext()) {
+				Map map = (Map) it.next();
+				count = Integer.parseInt(map.get("COUNT").toString());
+			}
+		} catch (Exception ex) {
+		}
+
+		Map result = this.getDao("KgDao").CoreBeginTranscation();
+		try {
+			List<Object> param = new ArrayList<Object>();
+			param.add(lCoilInfo[0]);
+			param.add(lCoilInfo[0]);
+			param.add(lCoilInfo[1]);
+			param.add(lCoilInfo[3]);
+			param.add(lCoilInfo[6]);
+			param.add(lCoilInfo[7]);
+			param.add(lCoilInfo[2]);
+			param.add(lCoilInfo[8]);
+			param.add("");// lock_coil
+			param.add(lCoilInfo[9]);
+			for (int i = 0; i < hCoilInfo.size(); i++) {
+				String[] hCoil = (String[]) hCoilInfo.get(i);
+				for (int j = 0; j < hCoil.length - 1; j++) {
+					param.add(hCoil[j]);
+				}
+			}
+			param.add(lCoilInfo[10]);
+			for (int i = 0; i < defectInfo.size(); i++) {
+				String[] defect = (String[]) defectInfo.get(i);
+				for (int j = 0; j < defect.length; j++) {
+					param.add(defect[j]);
+				}
+			}
+			// 新增实绩
+			sql = XmlSqlParsersFactory.getSql("UIK020020_01.INSERT");
+			this.getDao("KgDao").ExcuteNonQuery(sql, param.toArray());
+			// 查询订单信息
+			sql = XmlSqlParsersFactory.getSql("UIK020020_08.SELECT");
+			list = this.getDao("KgDao").ExcuteQueryReturnList(sql,
+					new Object[] { lCoilInfo[0] });
+			it = list.iterator();
+			Map ordMap = new HashMap();
+			if (it.hasNext()) {
+				ordMap = (Map) it.next();
+			}
+			param = new ArrayList<Object>();
+			param.add(lCoilInfo[0]);
+			String coilLen = lCoilInfo[3];
+			try {
+				if (coilLen == null || coilLen.equals("")
+						|| Integer.parseInt(coilLen) == 0) {
+					coilLen = String.valueOf(Math.round(Double
+							.parseDouble(lCoilInfo[2])
+							* 1000
+							/ (Double.parseDouble(lCoilInfo[4])
+									* Double.parseDouble(lCoilInfo[5]) * 7.85)
+							* 1000));
+				}
+			} catch (Exception ex) {
+
+			}
+			param.add(coilLen);
+			param.add(lCoilInfo[6]);
+			param.add(lCoilInfo[7]);
+			param.add(lCoilInfo[5]);
+			param.add(lCoilInfo[4]);
+			param.add("");//param.add(lCoilInfo[2]);
+			param.add(ordMap.get("STL_GRD") != null ? ordMap.get("STL_GRD")
+					.toString() : "");// stl_grd
+			param.add(lCoilInfo[1]);
+			param.add(lCoilInfo[0]);
+			if (((String[]) hCoilInfo.get(0))[0].length() > 3) {
+				param.add(((String[]) hCoilInfo.get(0))[0].substring(0,
+						((String[]) hCoilInfo.get(0))[0].length() - 3));// ord_no
+				param
+						.add(((String[]) hCoilInfo.get(0))[0]
+								.substring(((String[]) hCoilInfo.get(0))[0]
+										.length() - 3));// ord_seq
+				param.add(1);
+			} else {
+				String ordNo = ordMap.get("ORD_NO") != null ? ordMap.get(
+						"ORD_NO").toString() : "";
+				String ordSeq = ordMap.get("ORD_SEQ") != null ? ordMap.get(
+						"ORD_SEQ").toString() : "";
+				String ordFl = ordNo.equals("") ? "2" : "1";
+				param.add(ordNo);// ord_no
+				param.add(ordSeq);// ord_seq
+				param.add(ordFl);
+			}
+//			for (int i = 0; i < 5; i++) {
+//				param.add(((String[]) defectInfo.get(i))[1]);// defect_type
+//			}
+
+			String slabNo = "";
+			String smp_no = "";
+			String smp_cut_loc = "";
+			String matlqlty_dec_grd = "0";
+			sql = "select k.SMP_NO, k.SMP_CUT_LOC,k.MATLQLTY_DEC_GRD,k.slab_no from c_tbk02_coil_comm k where k.coil_no = ?";
+			list = this.getDao("KgDao").ExcuteQueryReturnList(sql,
+					new Object[] { ((String[]) hCoilInfo.get(0))[29] });// h_coil_no1
+			it = list.iterator();
+			if (it.hasNext()) {
+				Map map = (Map) it.next();
+				slabNo = map.get("SLAB_NO").toString();
+			//	smp_no = map.get("SMP_NO").toString();
+				
+				 smp_no = map.get("SMP_NO") != null ? map.get(
+				"SMP_NO").toString() : "";
+				 smp_cut_loc = map.get("SMP_CUT_LOC") != null ? map.get(
+				"SMP_CUT_LOC").toString() : "";
+				
+				//smp_cut_loc = map.get("SMP_CUT_LOC").toString();
+				matlqlty_dec_grd = map.get("MATLQLTY_DEC_GRD").toString();
+			}
+			param.add(slabNo);// slab_no			
+			param.add(smp_no);
+			param.add(smp_cut_loc);
+			param.add(matlqlty_dec_grd);
+			/*
+			param.add("188888");
+			param.add("k");
+			param.add("1");
+			*/
+			
+			String []hCoils = new String[3];
+
+			for (int i = 0; i < 3; i++) {
+				hCoils[i] = ((String[]) hCoilInfo.get(i))[29];
+				param.add(((String[]) hCoilInfo.get(i))[29]);// h_coil_no
+				param.add(((String[]) hCoilInfo.get(i))[2]);// h_coil_len
+			}
+			param.add(ordMap.get("ORD_THK") != null ? ordMap.get("ORD_THK")
+					.toString() : "");
+			param.add(ordMap.get("ORD_WTH") != null ? ordMap.get("ORD_WTH")
+					.toString() : "");
+			param.add(ordMap.get("ORD_LEN") != null ? ordMap.get("ORD_LEN")
+					.toString() : "");
+			param.add(ordMap.get("ORD_WGT") != null ? ordMap.get("ORD_WGT")
+					.toString() : "");
+			param.add(ordMap.get("ORD_INDIA") != null ? ordMap.get("ORD_INDIA")
+					.toString() : "");
+			param.add(ordMap.get("ORD_OUTDIA") != null ? ordMap.get(
+					"ORD_OUTDIA").toString() : "");
+			param.add(ordMap.get("DEL_TO_DATE") != null ? ordMap.get(
+					"DEL_TO_DATE").toString() : "");
+			param.add(ordMap.get("DEST_CD") != null ? ordMap.get("DEST_CD")
+					.toString() : "");
+			param.add(ordMap.get("ORDCUST_CD") != null ? ordMap.get("ORDCUST_CD")
+					.toString() : "");
+			//param.add("");// cust_cd
+			param.add(ordMap.get("CUST_CD") != null ? ordMap.get("CUST_CD")
+					.toString() : "");
+			param.add(ordMap.get("SPEC_STL_GRD") != null ? ordMap.get(
+					"SPEC_STL_GRD").toString() : "");
+			// param.add(ordMap.get("STL_GRD") != null ? ordMap.get("STL_GRD")
+			// .toString() : "");
+			param.add(ordMap.get("PRODNM_CD") != null ? ordMap.get("PRODNM_CD")
+					.toString() : "");
+			param.add(ordMap.get("C_ORD_USEAGE_CD") != null ? ordMap.get(
+					"C_ORD_USEAGE_CD").toString() : "");
+			param.add(ordMap.get("C_SPEC_ABBSYM") != null ? ordMap.get(
+					"C_SPEC_ABBSYM").toString() : "");
+			param.add(regID);
+			param.add(ordMap.get("SPEC_STL_GRD") != null ? ordMap.get(
+			"SPEC_STL_GRD").toString() : "");
+
+			if (count <= 0) {// 新增钢卷
+				sql = XmlSqlParsersFactory.getSql("UIK020020_04.INSERT");
+				this.getDao("KgDao").ExcuteNonQuery(sql, param.toArray());
+				// 修改母卷
+				sql = XmlSqlParsersFactory.getSql("UIK020020_07.UPDATE");
+				this.getDao("KgDao").ExcuteNonQuery(sql,new Object[] { lCoilInfo[0].substring(0, 11)+"0" });
+				sql = XmlSqlParsersFactory.getSql("UIK020020_08.UPDATE");
+				this.getDao("KgDao").ExcuteNonQuery(sql,new Object[] { lCoilInfo[0].substring(0, 11)+"0" });
+			 } else {// 修改钢卷
+				sql = XmlSqlParsersFactory.getSql("UIK020020_02.UPDATE");
+				param.remove(0);
+				param.add(lCoilInfo[0]);
+				this.getDao("KgDao").ExcuteNonQuery(sql, param.toArray());
+			}
+			
+			//更改原料卷状态
+			sql = XmlSqlParsersFactory.getSql("UIK020020_06.UPDATE");
+			this.getDao("KgDao").ExcuteNonQuery(sql, hCoils);
+			
+			// 写入钢卷公共表_D
+			if (!(ordMap.get("ORD_NO") != null ? ordMap.get("ORD_NO")
+					.toString() : "").equals("")) {
+				sql = XmlSqlParsersFactory.getSql("UIK020020_09.SELECT");
+				list = this.getDao("KgDao")
+						.ExcuteQueryReturnList(
+								sql,
+								new Object[] { lCoilInfo[0], lCoilInfo[0],
+										lCoilInfo[0] });
+				it = list.iterator();
+				Map ordMapD = new HashMap();
+				if (it.hasNext()) {
+					ordMapD = (Map) it.next();
+				}
+				String cutSeq = ordMapD.get("CUT_SEQ") != null ? ordMapD.get(
+						"CUT_SEQ").toString() : "";
+				String ordThk = ordMapD.get("ORD_THK") != null ? ordMapD.get(
+						"ORD_THK").toString() : "";
+				String ordWth = ordMapD.get("ORD_WTH") != null ? ordMapD.get(
+						"ORD_WTH").toString() : "";
+				String ordLen = ordMapD.get("ORD_LEN") != null ? ordMapD.get(
+						"ORD_LEN").toString() : "";
+				String ordWgt = ordMapD.get("ORD_WGT") != null ? ordMapD.get(
+						"ORD_WGT").toString() : "";
+				String ordWgtMin = ordMapD.get("ORD_WGT_MIN") != null ? ordMapD
+						.get("ORD_WGT_MIN").toString() : "";
+				String ordWgtMax = ordMapD.get("ORD_WGT_MAX") != null ? ordMapD
+						.get("ORD_WGT_MAX").toString() : "";
+				String ordIndia = ordMapD.get("ORD_INDIA") != null ? ordMapD
+						.get("ORD_INDIA").toString() : "";
+				String ordOutdia = ordMapD.get("ORD_OUTDIA") != null ? ordMapD
+						.get("ORD_OUTDIA").toString() : "";
+				String ordNo = ordMapD.get("ORD_NO") != null ? ordMapD.get(
+						"ORD_NO").toString() : "";
+				String ordSeq = ordMapD.get("ORD_SEQ") != null ? ordMapD.get(
+						"ORD_SEQ").toString() : "";
+				String ordFl = ordMapD.get("ORD_FL") != null ? ordMapD.get(
+						"ORD_FL").toString() : "";
+
+				sql = XmlSqlParsersFactory.getSql("UIK020020_07.SELECT");
+				list = this.getDao("KgDao").ExcuteQueryReturnList(sql,
+						new Object[] { lCoilInfo[0], cutSeq });
+				it = list.iterator();
+				Map ordMapCount = new HashMap();
+				if (it.hasNext()) {
+					ordMapCount = (Map) it.next();
+				}
+				int ordCount = Integer
+						.parseInt(ordMapCount.get("COUNT") != null ? ordMapCount
+								.get("COUNT").toString().trim()
+								: "0");
+				if (ordCount > 0) {
+					sql = XmlSqlParsersFactory.getSql("UIK020020_05.UPDATE");
+					this.getDao("KgDao")
+							.ExcuteNonQuery(
+									sql,
+									new Object[] { ordThk, ordWth, ordLen,
+											ordWgt, ordWgtMin, ordWgtMax,
+											ordIndia, ordOutdia, ordNo, ordSeq,
+											ordFl, lCoilInfo[0], cutSeq });
+				} else {
+					sql = XmlSqlParsersFactory.getSql("UIK020020_03.INSERT");
+					this.getDao("KgDao").ExcuteNonQuery(
+							sql,
+							new Object[] { lCoilInfo[0], cutSeq, ordThk,
+									ordWth, ordLen, ordWgt, ordWgtMin,
+									ordWgtMax, ordIndia, ordOutdia, ordNo,
+									ordSeq, ordFl });
+				}
+			}
+
+			// 修改钢卷轧制状态
+			sql = XmlSqlParsersFactory.getSql("UIK020020_11.UPDATE");
+			this.getDao("KgDao").ExcuteNonQuery(sql,
+					new Object[] { lCoilInfo[0] });
+
+			// 修改轧辊单元轧制状态
+			sql = XmlSqlParsersFactory.getSql("UIK020020_12.UPDATE");
+			this.getDao("KgDao").ExcuteNonQuery(sql,
+					new Object[] { lCoilInfo[0], lCoilInfo[0], lCoilInfo[0] });
+
+			this.getDao("KgDao").CoreCommit(result);
+
+			Connection conn = this.getDao("KgDao").getConnection();
+			try {
+				conn.setAutoCommit(false);
+//				this.takeOverPltcmCoilLable(conn, lCoilInfo[0], Double
+//						.parseDouble(lCoilInfo[2]), Double
+//						.parseDouble(lCoilInfo[5]), lCoilInfo[1]);
+				// 酸轧实绩补录成功后进行尺寸及重量判定
+				this.dscCoilWgtSize(conn, lCoilInfo[0]);
+				//添加操作记录
+				this.CallHistory(conn, lCoilInfo[0] , regID);
+				// 分卷后重新取样  20190409 注释
+				/*	
+				  if ("123456789".contains(lCoilInfo[0].substring(lCoilInfo[0]
+						.length() - 1))) {
+					this.cutCoilLost(conn, lCoilInfo[0]);
+				}
+				*/
+				conn.commit();
+			} catch (Exception e) {
+				e.printStackTrace();
+				conn.rollback();
+			} finally {
+				if (conn != null && !conn.isClosed()) {
+					conn.close();
+				}
+			}
+		} catch (Exception ex) {
+			ex.printStackTrace();
+			this.getDao("KgDao").CoreRollBack(result);
+			cro.setV_errCode(-1);
+			cro.setV_errMsg("实绩新增失败!");
+		}
+		return cro;
+	}
+	/**
+	 * 修改酸轧实绩
+	 * 
+	 * @param coilNo
+	 * @param coilWgt
+	 * @param coilLen
+	 * @param coilWth
+	 * @param CoilThk
+	 * @param coilInida
+	 * @param coilOutdia
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject updateAcidRollingResult(String coilNo,
+			String coilWgt, String coilLen, String coilWth, String coilThk,
+			String coilIndia, String coilOutdia, String regId)
+			throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		String sql = XmlSqlParsersFactory.getSql("UIK020020_01.UPDATE");
+		this.getDao("KgDao").ExcuteNonQuery(
+				sql,
+				new Object[] { coilLen, coilWth, coilThk, coilIndia,
+						coilOutdia, regId, coilNo });
+		
+		String sql0 = XmlSqlParsersFactory.getSql("UIK020020_10.UPDATE");
+		this.getDao("KgDao").ExcuteNonQuery(
+				sql0,
+				new Object[] { coilNo, coilLen, coilIndia,
+						coilOutdia,coilThk, coilWth, coilWgt,regId });
+		return cro;
+	}
+
+	/**
+	 * 查询酸轧轧制最后20卷
+	 * 
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryLastCoilNos() throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		String sql = XmlSqlParsersFactory.getSql("UIK020020_05.SELECT");
+		PreparedStatement pSta = this.getDao("KgDao").getPreparedStatement(sql);
+		ResultSet rs = pSta.executeQuery();
+		ArrayList<String> list = new ArrayList<String>();
+		String param = "";
+		while (rs.next()) {
+			param = rs.getString("COIL_NO");
+			list.add(param);
+		}
+
+		cro.setResult(list);
+		rs.close();
+		Connection con = pSta.getConnection();
+		pSta.close();
+		con.close();
+		return cro;
+	}
+
+	/**
+	 * 酸轧重量及尺寸判定
+	 * 
+	 * @param conn
+	 * @param coilNo
+	 * @return
+	 * @throws SQLException
+	 */
+	private String dscCoilWgtSize(Connection conn, String coilNo)
+			throws SQLException {
+		// ZL_SUAN_DCS01.DCS_COIL_WGTSIZE(v_rec.EXIT_COIL_ID,P_RETURN_MSG);
+		String retMsg = "";
+		String sql = XmlSqlParsersFactory.getSql("UIK020020_01.CALL");
+		CallableStatement cstm = conn.prepareCall(sql);
+		cstm.setString(1, coilNo);
+		cstm.registerOutParameter(2, java.sql.Types.VARCHAR);
+		cstm.execute();
+		retMsg = cstm.getString(2);
+		cstm.close();
+		return retMsg;
+	}
+
+	/**
+	 * 分卷后重新生成取样信息
+	 * 
+	 * @param conn
+	 * @param coilNo
+	 * @return
+	 * @throws SQLException
+	 */
+	private String cutCoilLost(Connection conn, String coilNo)
+			throws SQLException {
+		String retMsg = "";
+		String sql = XmlSqlParsersFactory.getSql("UIK020020_02.CALL");
+		CallableStatement cstm = conn.prepareCall(sql);
+		cstm.setString(1, coilNo);
+		cstm.registerOutParameter(2, java.sql.Types.VARCHAR);
+		cstm.execute();
+		retMsg = cstm.getString(2);
+		cstm.close();
+		return retMsg;
+	}
+
+	/**
+	 * 补录实绩后调用标签打印
+	 * 
+	 * @param conn
+	 * @param coilNo
+	 * @return
+	 * @throws SQLException
+	 */
+	private void takeOverPltcmCoilLable(Connection conn, String coilNo,
+			double coilWgt, double coilThk, String millDtime)
+			throws SQLException {
+		String sql = XmlSqlParsersFactory.getSql("UIK020020_03.CALL");
+		CallableStatement cstm = conn.prepareCall(sql);
+		cstm.setString(1, coilNo);
+		cstm.setDouble(2, coilWgt);
+		cstm.setDouble(3, coilThk);
+		cstm.setString(4, millDtime);
+		cstm.execute();
+		cstm.close();
+	}
+	
+	public void CallHistory(Connection conn,String coilNo,String regid){
+		try{
+		String sql = XmlSqlParsersFactory.getSql("UIL010020_02_CALL.CALL");
+		CallableStatement cstm = conn.prepareCall(sql);
+		cstm.setString(1,"S");
+		cstm.setString(2,coilNo);
+		cstm.setString(3,regid);
+		cstm.setString(4,"酸轧实绩修改");
+		cstm.setString(5,"UIK020020");
+		cstm.setString(6,"修改后");
+		cstm.registerOutParameter(7,Types.VARCHAR);
+		cstm.execute();
+		cstm.close();
+		}catch(Exception j){
+			j.getMessage();
+		}
+	}
+}

+ 74 - 0
.svn/pristine/03/03bd7c5f69a92653374977ecc064ce927370b219.svn-base

@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding='UTF-8'?>
+
+<queryMap desc="统计信息录入">
+
+
+<query id="UIC020111_01.SELECT">
+  <![CDATA[
+SELECT           PROD_LINE
+                ,TJ_DTIME         
+                ,TJ_BC
+				,TJ_NAME          
+				,TJ_RESULT        
+				,TJ_DEMO          
+				,REG_ID           
+				,TO_CHAR(TO_DATE(REG_DTIME ,'YYYY-MM-DD HH24:MI:SS'),'YYYY-MM-DD HH24:MI:SS')      REG_DTIME 
+				,MOD_ID           
+				,TO_CHAR(TO_DATE(MOD_DTIME ,'YYYY-MM-DD HH24:MI:SS'),'YYYY-MM-DD HH24:MI:SS')      MOD_DTIME 
+FROM             TBC02_FEICI_LR        T  
+WHERE             T.TJ_DTIME            LIKE     ?||'%'
+ORDER  BY        t.Dis_Seq          
+ ]]>
+</query>
+
+
+<query id="UIC020111_02.SELECT">
+  <![CDATA[
+  
+with d_fc as(
+  select t.prod_line, t.tj_name, sum(t.tj_result) rs1,t.dis_seq
+    from tbc02_feici_lr t
+   where t.tj_dtime like ?
+   group by t.tj_name, t.prod_line,t.dis_seq),
+  
+  m_fc as (select t.prod_line, t.tj_name, sum(t.tj_result) rs2
+             from tbc02_feici_lr t
+            where t.tj_dtime between substr(?,1,6)||'01' and ?
+            group by t.tj_name, t.prod_line),
+  
+  y_fc as (select t.prod_line, t.tj_name, sum(t.tj_result) rs3
+             from tbc02_feici_lr t
+            where t.tj_dtime between substr(?,1,4)||'0101' and ?
+            group by t.tj_name, t.prod_line)
+  
+  select d_fc.prod_line,d_fc.tj_name,d_fc.rs1, m_fc.rs2, y_fc.rs3
+    from d_fc, m_fc, y_fc
+   where d_fc.tj_name = m_fc.tj_name
+   and  m_fc.tj_name=y_fc.tj_name
+   
+   order by d_fc.dis_seq 
+ ]]>
+</query>
+
+<query id="UIC020111_01.UPDATE">
+UPDATE            TBC02_FEICI_LR    T
+SET               T.TJ_RESULT       =       ?
+                 ,T.TJ_DEMO         =       ?
+                 ,T.MOD_ID          =       ?
+                 ,T.MOD_DTIME       =       TO_CHAR(SYSDATE , 'YYYYMMDDHH24MISS')
+                 ,T.MOD_PGM         =       'UIC020111'
+WHERE             T.TJ_DTIME        =       ?
+AND               T.TJ_NAME         =       ?    
+
+</query>
+
+
+
+
+<query id="UIC020111_01.CALL">
+
+{call CK_LZ_UIM03.FEICI_INSERT(?,?,?,?)}
+
+</query>
+
+</queryMap>

BIN
.svn/pristine/03/03f87281331f96152079f93d9e3ce8fa0743adaf.svn-base


+ 114 - 0
.svn/pristine/04/0414d364eee1d983181850911559bf7827158b97.svn-base

@@ -0,0 +1,114 @@
+package UIB.COM;
+
+import java.io.File;
+import java.io.IOException;
+import java.net.URLDecoder;
+
+import javax.faces.application.FacesMessage.Severity;
+import javax.servlet.ServletContext;
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.servlet.jsp.PageContext;
+
+import org.apache.log4j.Logger;
+
+import UIB.UIB03.UIB030310;
+
+/**
+ * 
+ * @desc   服务器启动时执行,遍历query文件夹,获取所有XML文件。
+ * @author meiguiping
+ * @date   2011 5:20:45 PM
+ */
+public class XgSqlServlet extends HttpServlet
+{
+	public XgSqlServlet()
+	{
+		super();
+	}
+	
+	/**
+	 * 遍历WEB-INF,搜索query文件夹,获取所有XML文件
+	 */
+	public void init() throws ServletException
+	{
+		// Put your code here
+		try
+		{
+			String	queryPath	=	this.getClass().getClassLoader().getResource("/").getPath().replaceFirst("classes/", "");
+			//遍历WEB-INF,搜索query文件夹
+			File baseDir = new File(URLDecoder.decode(queryPath, "utf-8"));
+			File[]targerDir = baseDir.listFiles();
+			for(int i =0; i <targerDir.length; i++)
+			{
+				if(targerDir[i].toString().indexOf("query") != -1)
+				{
+					queryPath = targerDir[i].toString();
+					break;
+				}
+			}
+			
+			ListFilesInDirectory(URLDecoder.decode(queryPath , "utf-8"));
+			System.out.println("The SQL count is : "+XmlSqlParsersFactory.getInstance().getLen());
+//			Logger.getAnonymousLogger().log(Level.INFO, "The SQL count is : "+XmlSqlParsersFactory.getInstance().getLen());
+		}catch(Exception e)
+		{
+			e.printStackTrace();
+		}
+	}
+	
+	//get request
+	public void doGet(HttpServletRequest request, HttpServletResponse response)
+			throws ServletException, IOException
+	{
+	}
+
+	//post request
+	public void doPost(HttpServletRequest request, HttpServletResponse response)
+			throws ServletException, IOException
+	{
+	}
+	/*
+	 * get or post request
+	public void service(HttpServletRequest request, HttpServletResponse response)
+	throws ServletException, IOException
+	{
+	System.out.println("doPost。");
+	}
+	*/
+	/**
+	 * Destruction of the servlet. <br>
+	 */
+	public void destroy()
+	{
+		super.destroy(); // Just puts "destroy" string in log
+	}
+	
+	/**
+	 * @desc  文件夹循环
+	 * @param path
+	 */
+	public  static  void ListFilesInDirectory(String path)
+	{
+		File	file	=	new File(path);
+		File[]	files	=	file.listFiles();
+		int len = files.length;
+		for(int i = 0; i < len; i++)
+		{
+			if(files[i].isDirectory())
+			{
+				ListFilesInDirectory(files[i].toString());
+			}
+			else
+			{
+				//System.out.println(files[i].getAbsolutePath());
+				DomParserFactory		dpf				=		new DomParserFactory(files[i].getAbsolutePath());
+				XgDomParser				xdp				=		new XgDomParser();
+				XmlSqlParsersFactory.getInstance().putAll(xdp.parserEl(dpf.getElement()));
+			}
+		}
+		
+	}
+}

+ 76 - 0
.svn/pristine/04/04b729730640c5f816fe2f22f871e31d9d294347.svn-base

@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
+<log4j:configuration xmlns:log4j='http://jakarta.apache.org/log4j/'>
+    <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
+        <layout class="org.apache.log4j.PatternLayout">
+            <param name="ConversionPattern" value = "%d{HH:mm:ss,SSS} %-5p %m - [%t]%C%n"/>
+                <!--value="%p - %C{1}.%M(%L) | %m%n"/>-->
+        </layout>
+    </appender>
+
+    <!-- 定义按天输出文件 -->
+    <appender name="DailyRolling" class="org.apache.log4j.DailyRollingFileAppender">
+		<param name="append" value="true"/>			
+		<param name="file" value="${catalina.home}/logs/CoreFS_Debug_log.log"/>
+		<layout class="org.apache.log4j.PatternLayout">
+            <param name="ConversionPattern"
+                value="%d %-5p - [%t]%C||%m%n"/>          
+		</layout>
+	</appender>
+    <!-- 定义文件输入C:/tomcat5/logs/app_debug.log -->
+    <appender name="FILEAPPENDER" class="org.apache.log4j.RollingFileAppender">
+		<param name="append" value="true"/>		
+		<param name="file" value="${catalina.home}/logs/CoreFS_Debug_log.log"/>
+		<param name="maxFileSize" value="500MB"/>
+		<param name="maxBackupIndex" value="100"/>
+		<layout class="org.apache.log4j.PatternLayout">
+            <param name="ConversionPattern"
+                value="%d %-5p - [%t]%C||%m%n"/>          
+		</layout>
+	</appender>
+	   
+	<!-- 定义数据库输入 jdbc appender -->
+    <appender name="JDBCAPPENDER" class="org.apache.log4j.jdbc.JDBCAppender">
+		<param name="URL" value="jdbc:oracle:thin:@10.6.18.13:1521:weight"/>		
+		<param name="driver" value="oracle.jdbc.OracleDriver"/>
+		<param name="user" value="xgdata"/>
+		<param name="password" value="test"/>
+		<param name="sql" value="insert  into WDZLOG values (SEQ_WDZLOG.nextval,?,?,?)"/>
+		<!-- 布局 -->
+		<layout class="org.apache.log4j.PatternLayout">
+		    <!-- 格式 -->
+            <param name="ConversionPattern"
+                value="%d %-5p - [%t]%C||%m%n"/>
+		</layout>
+	</appender>  
+	
+    <logger name="org.apache">
+        <level value="warn"/>
+    </logger>
+
+    <logger name="org.springframework">
+        <level value="warn"/>
+    </logger>
+    
+    <logger name="org.acegisecurity">
+        <level value="warn"/>
+    </logger>
+    <!-- ********************************************************************************************************************************** -->
+    <!-- 自定义业务类日志 -->
+    <logger name="test.service.impl.TestLog">
+        <level value="debug"/>
+    </logger>
+    <!-- ********************************************************************************************************************************** -->
+    <root>
+        <level value="Info"/>
+        <!-- 输出日志信息按天  -->
+		  <appender-ref ref="DailyRolling"/>
+        <!-- 输出日志信息到控制台  -->
+        <appender-ref ref="CONSOLE"/>
+		<!--   <appender-ref ref="CONSOLE"/>--> 
+		<!-- 输出日志信息到文件  -->
+		<!--<appender-ref ref="FILEAPPENDER"/>   -->
+		<!-- 输出日志信息到数据库  -->
+		<!-- appender-ref ref="JDBCAPPENDER"/-->
+    </root>
+</log4j:configuration>

+ 142 - 0
.svn/pristine/04/04eabcf681b84ce39f3b08ea5d4ec9400245b848.svn-base

@@ -0,0 +1,142 @@
+package xin.glue.cargocnHttpClient;
+
+import java.io.Serializable;
+
+/**
+ * 运单--子项
+ * 
+ * @author KangMiao
+ *
+ */
+public class WayBillItem implements Serializable {
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = -5006002915699225753L;
+
+	/**
+	 * 捆包号--可选
+	 */
+	private String packageNo;
+	/**
+	 * 牌号--可选
+	 */
+	private String gradeNo;
+	/**
+	 * 货物名称--可选
+	 */
+	private String productName;
+	/**
+	 * 货物类别--可选--值集,货运中国网值集范围,缺省为:主要金属材料
+	 */
+	private String productCata;
+	/**
+	 * 货物件数--可选--计划件数,卷/块数,缺省为1
+	 */
+	private Integer nums;
+	/**
+	 * 货物重量--必须提供--计划重量(可用订单开票重量)
+	 */
+	private Double weight;
+	/**
+	 * 货物体积--可选--计划体积
+	 */
+	private Double bulk;
+	/**
+	 * 货物实际装车件数--可选
+	 */
+	private Integer loadNums;
+	/**
+	 * 货物实际装车重量--必须提供
+	 */
+	private Double loadWeight;
+	/**
+	 * 货物实际装车体积
+	 */
+	private Double loadBulk;
+
+	public String getPackageNo() {
+		return packageNo;
+	}
+
+	public void setPackageNo(String packageNo) {
+		this.packageNo = packageNo;
+	}
+
+	public String getGradeNo() {
+		return gradeNo;
+	}
+
+	public void setGradeNo(String gradeNo) {
+		this.gradeNo = gradeNo;
+	}
+
+	public String getProductName() {
+		return productName;
+	}
+
+	public void setProductName(String productName) {
+		this.productName = productName;
+	}
+
+	public String getProductCata() {
+		return productCata;
+	}
+
+	public void setProductCata(String productCata) {
+		this.productCata = productCata;
+	}
+
+	public Integer getNums() {
+		return nums;
+	}
+
+	public void setNums(Integer nums) {
+		this.nums = nums;
+	}
+
+	public Double getWeight() {
+		return weight;
+	}
+
+	public void setWeight(Double weight) {
+		this.weight = weight;
+	}
+
+	public Double getBulk() {
+		return bulk;
+	}
+
+	public void setBulk(Double bulk) {
+		this.bulk = bulk;
+	}
+
+	public Integer getLoadNums() {
+		return loadNums;
+	}
+
+	public void setLoadNums(Integer loadNums) {
+		this.loadNums = loadNums;
+	}
+
+	public Double getLoadWeight() {
+		return loadWeight;
+	}
+
+	public void setLoadWeight(Double loadWeight) {
+		this.loadWeight = loadWeight;
+	}
+
+	public Double getLoadBulk() {
+		return loadBulk;
+	}
+
+	public void setLoadBulk(Double loadBulk) {
+		this.loadBulk = loadBulk;
+	}
+
+	@Override
+	public String toString() {
+		return this.packageNo;
+	}
+}

+ 495 - 0
.svn/pristine/05/057aead846197d64d7c7cb9340563f081a7fca9f.svn-base

@@ -0,0 +1,495 @@
+package UIM.UIM02;
+
+import java.sql.SQLException;
+
+import UIB.COM.XmlSqlParsersFactory;
+
+import CoreFS.SA01.CoreIComponent;
+import CoreFS.SA06.CoreReturnObject;
+
+/**
+ * 库存报表
+ * 
+ * @author siy
+ * @date 2010-12-3
+ */
+public class UIM020010 extends CoreIComponent {
+
+	/**
+	 * 酸轧成品产、出、存日报表
+	 * 
+	 * @param queryDate
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject query(String queryDate,String queryDate1,String queryDate2) throws SQLException {
+		String sql = XmlSqlParsersFactory.getSql("UIM020010_01.SELECT");
+		return this.getDao("KgDao").ExcuteQuery(
+				sql,//
+				new Object[] {
+						queryDate,queryDate1,queryDate,queryDate1,queryDate2,queryDate2,queryDate2,queryDate2,
+						queryDate,queryDate1,queryDate,queryDate1,queryDate2,queryDate2,queryDate2,queryDate2,
+						queryDate,queryDate1,queryDate,queryDate1,queryDate2,queryDate2,queryDate2,queryDate2,
+						queryDate,queryDate1,queryDate,queryDate1,queryDate2,queryDate2,queryDate2,queryDate2,
+						queryDate,queryDate1,queryDate,queryDate1,queryDate2,queryDate2,queryDate2,queryDate2,
+						queryDate,queryDate1,queryDate,queryDate1,queryDate2,queryDate2,queryDate2,queryDate2,
+						queryDate,queryDate1,queryDate,queryDate1,queryDate2,queryDate2,queryDate2,queryDate2,
+						queryDate,queryDate1,queryDate,queryDate1,queryDate2,queryDate2,queryDate2,queryDate2,
+						queryDate,queryDate1,queryDate,queryDate1,queryDate2,queryDate2,queryDate2,queryDate2});
+	}
+	public CoreReturnObject querysx(String queryDate,String queryDate1,String queryDate2) throws SQLException {
+		String sql = XmlSqlParsersFactory.getSql("UIM020010_SX.SELECT");
+		return this.getDao("KgDao").ExcuteQuery(
+				sql,//
+				new Object[] {
+						queryDate,queryDate1,queryDate,queryDate1,queryDate2,queryDate2,queryDate2,queryDate2,
+						queryDate,queryDate1,queryDate,queryDate1,queryDate2,queryDate2,queryDate2,queryDate2,
+						queryDate,queryDate1,queryDate,queryDate1,queryDate2,queryDate2,queryDate2,queryDate2,
+						queryDate,queryDate1,queryDate,queryDate1,queryDate2,queryDate2,queryDate2,queryDate2,
+						queryDate,queryDate1,queryDate,queryDate1,queryDate2,queryDate2,queryDate2,queryDate2,
+						queryDate,queryDate1,queryDate,queryDate1,queryDate2,queryDate2,queryDate2,queryDate2,
+						queryDate,queryDate1,queryDate,queryDate1,queryDate2,queryDate2,queryDate2,queryDate2,
+						queryDate,queryDate1,queryDate,queryDate1,queryDate2,queryDate2,queryDate2,queryDate2,
+						queryDate,queryDate1,queryDate,queryDate1,queryDate2,queryDate2,queryDate2,queryDate2});
+	}
+	/**
+	 * 原料收发存日报
+	 * 
+	 * @param day
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryMaterialOfDay(String day) throws SQLException {
+		String sql = XmlSqlParsersFactory.getSql("UIM020010_02.SELECT");
+		return this.getDao("KgDao").ExcuteQuery(
+				sql,
+				new Object[] { day, day, day, day, day, day, day, day, day, day,
+							   day, day, day, day, day, day, day, day, day, day, 
+							   day, day, day, day, day, day, day, day, day, day, 
+							   day, day, day, day, day, day, day, day, day, day, 
+							   //day, day, day, day, day, day, day, day, day, day, 
+							   //day, day, day, day, day, day, day, day, day, day,
+							   //day, day, day, day, day, day, day, day, day, day,
+							   //day, day, day, day, day, day, day, day, day, day,
+							   day, day, day, day//, day, day, day, day
+							   
+				});
+	}
+
+	/**
+	 * 原料收存月报
+	 * 
+	 * @param month
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryMaterialOfMonth(String MILL_DTIME1,String MILL_DTIME2,String queryDate)
+			throws SQLException {
+		String sql = XmlSqlParsersFactory.getSql("UIM020010_03.SELECT");
+		return this.getDao("KgDao").ExcuteQuery(
+				sql,
+				new Object[] {
+						MILL_DTIME1,MILL_DTIME2,MILL_DTIME1,MILL_DTIME2,
+						MILL_DTIME1,MILL_DTIME2,MILL_DTIME1,MILL_DTIME2,
+						queryDate, queryDate, queryDate, queryDate,
+						MILL_DTIME1,MILL_DTIME2,MILL_DTIME1,MILL_DTIME2,
+						queryDate, queryDate, queryDate, queryDate
+				});
+	//       (?1,?2,?1,?2,   ?1,?2,?1,?2,   ?3,?3,?3,?3,  ?1,?2,?1,?2,    ?3,?3,?3,?3)
+	}
+
+	/**
+	 * 连退成品产、出、存日报表
+	 * 
+	 * @param queryDate
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryCalCoilOfDay(String queryDate,String queryDate1,String queryDate2)
+			throws SQLException {
+		String sql = XmlSqlParsersFactory.getSql("UIM020010_04.SELECT");
+		return this.getDao("KgDao")
+				.ExcuteQuery(
+						sql,
+						new Object[] { 
+								/*queryDate, queryDate, queryDate,
+								queryDate, queryDate, queryDate, queryDate,
+								queryDate, queryDate, queryDate, queryDate,
+								queryDate, queryDate, queryDate, queryDate,
+								queryDate, queryDate, queryDate, queryDate,
+								queryDate, queryDate, queryDate, queryDate,
+								queryDate, queryDate, queryDate, queryDate,
+								queryDate, queryDate, queryDate, queryDate,
+								queryDate, queryDate, queryDate, queryDate,
+								queryDate, queryDate, queryDate, queryDate,
+								queryDate, queryDate, queryDate, queryDate,
+								queryDate */
+								queryDate,queryDate1,queryDate,queryDate1,queryDate2,queryDate2,queryDate2,queryDate2,	
+								queryDate,queryDate1,queryDate2,queryDate2,
+								queryDate,queryDate1,queryDate,queryDate1,queryDate2,queryDate2,queryDate2,queryDate2,
+								queryDate,queryDate1,queryDate2,queryDate2,
+								queryDate,queryDate1,queryDate,queryDate1,queryDate2,queryDate2,queryDate2,queryDate2,
+								queryDate,queryDate1,queryDate2,queryDate2,queryDate,queryDate1
+						});
+	}
+
+	/**
+	 * 成品产、出、存日报表
+	 * 
+	 * @param queryDate
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryFinishedCoilOfDay(String queryDate)
+			throws SQLException {
+		String sql = XmlSqlParsersFactory.getSql("UIM020010_05.SELECT");
+		return this.getDao("KgDao").ExcuteQuery(
+				sql,
+				new Object[] { queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,						
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate, queryDate, queryDate, queryDate,
+						queryDate, queryDate });
+	}
+
+	/**
+	 * 酸轧规格明细
+	 * 
+	 * @param queryDate
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryPltcmSizeDetail()
+			throws SQLException {
+		String sql = XmlSqlParsersFactory.getSql("UIM020010_06.SELECT");
+		return this.getDao("KgDao").ExcuteQuery(sql);
+	}
+	
+	/**
+	 * 酸洗规格明细
+	 * 
+	 * @param queryDate
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject querySuanXiSizeDetail()
+	throws SQLException {
+		String sql = XmlSqlParsersFactory.getSql("UIM020010_09.SELECT");
+		return this.getDao("KgDao").ExcuteQuery(sql);
+	}
+	/**
+	 * 酸轧规格新明细
+	 * 
+	 * @param queryDate
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryPltcmSizeDetailnew()
+			throws SQLException {
+		String sql = XmlSqlParsersFactory.getSql("UIM020010_20.SELECT");
+		return this.getDao("KgDao").ExcuteQuery(sql);
+	}
+	public CoreReturnObject queryPltcmSizeDetailA(String fr_wth,String to_wth,String queryDate)
+	throws SQLException {
+String sql = XmlSqlParsersFactory.getSql("UIM020010_18.SELECT");
+return this.getDao("KgDao").ExcuteQuery(
+		sql,
+		new Object[]{fr_wth, to_wth, queryDate, fr_wth,
+				to_wth, queryDate, queryDate, queryDate, queryDate,
+				queryDate, queryDate, queryDate, fr_wth, to_wth,
+				queryDate,fr_wth, to_wth, queryDate, queryDate,
+				queryDate, queryDate, queryDate, queryDate, queryDate,
+				fr_wth, to_wth, queryDate, fr_wth, to_wth,
+				queryDate, fr_wth, to_wth, queryDate, fr_wth, to_wth,
+				queryDate, queryDate, fr_wth, to_wth,
+				queryDate, queryDate,fr_wth, to_wth, queryDate,
+				queryDate, queryDate, queryDate, queryDate, queryDate,
+				queryDate, queryDate, queryDate, queryDate, queryDate,
+				queryDate, queryDate, fr_wth, to_wth, queryDate,
+				fr_wth, to_wth, queryDate,fr_wth, to_wth,
+				queryDate, fr_wth, to_wth, queryDate, fr_wth, to_wth,
+				queryDate, fr_wth, to_wth, queryDate,
+				fr_wth, to_wth, queryDate, fr_wth, to_wth,
+				queryDate, queryDate, queryDate, queryDate, queryDate,
+				queryDate, queryDate, queryDate, queryDate, queryDate,
+				queryDate, queryDate, queryDate});
+	}
+	
+	public CoreReturnObject queryPltcmSizeDetailE(String fr_Date,String to_Date,String stl)
+	throws SQLException {
+String sql = XmlSqlParsersFactory.getSql("UIM020010_19.SELECT");
+return this.getDao("KgDao").ExcuteQuery(
+		sql,
+		new Object[]{fr_Date,to_Date,stl});
+}
+	
+	/**
+	 * 连退规格明细
+	 * 
+	 * @param queryDate
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryCalSizeDetail()
+			throws SQLException {
+		
+		String sql = XmlSqlParsersFactory.getSql("UIM020010_07.SELECT");
+		return this.getDao("KgDao").ExcuteQuery(sql);
+				
+	}
+	
+	public CoreReturnObject querylcDetail()
+	throws SQLException {
+
+String sql = XmlSqlParsersFactory.getSql("UIM020010_lc.SELECT");
+return this.getDao("KgDao").ExcuteQuery(sql);
+		
+}
+	
+	public CoreReturnObject queryCalSizeDetailnew()
+	throws SQLException {
+
+		String sql = XmlSqlParsersFactory.getSql("UIM020010_21.SELECT");
+		return this.getDao("KgDao").ExcuteQuery(sql);
+		
+	}
+	/**
+	 * 重卷规格明细
+	 * 
+	 * @param queryDate
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryRclSizeDetail()
+			throws SQLException {
+		
+		String sql = XmlSqlParsersFactory.getSql("UIM020010_22.SELECT");
+		return this.getDao("KgDao").ExcuteQuery(sql);
+				
+	}
+	public CoreReturnObject queryRclSizeDetailnew()
+	throws SQLException {
+
+		String sql = XmlSqlParsersFactory.getSql("UIM020010_23.SELECT");
+		return this.getDao("KgDao").ExcuteQuery(sql);
+		
+}
+	public CoreReturnObject queryINYARDSizeDetail()
+	throws SQLException {
+
+		String sql = XmlSqlParsersFactory.getSql("UIM020010_24.SELECT");
+		return this.getDao("KgDao").ExcuteQuery(sql);
+		
+}
+	/**
+	 * 连退规格明细选择
+	 * 
+	 * @param queryDate
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryCalSizeDetailB(String fr_wth,String to_wth,String queryDate)
+	throws SQLException {
+String sql = XmlSqlParsersFactory.getSql("UIM020010_14.SELECT");
+return this.getDao("KgDao").ExcuteQuery(
+		sql,
+		new Object[]{fr_wth, to_wth, queryDate, fr_wth,
+				to_wth, queryDate, queryDate, queryDate, queryDate,
+				queryDate, queryDate, queryDate, fr_wth, to_wth,
+				queryDate,fr_wth, to_wth, queryDate, queryDate,
+				queryDate, queryDate, queryDate, queryDate, queryDate,
+				fr_wth, to_wth, queryDate, fr_wth, to_wth,
+				queryDate, fr_wth, to_wth, queryDate, fr_wth, to_wth,
+				queryDate, queryDate, fr_wth, to_wth,
+				queryDate, queryDate,fr_wth, to_wth, queryDate,
+				queryDate, queryDate, queryDate, queryDate, queryDate,
+				queryDate, queryDate, queryDate, queryDate, queryDate,
+				queryDate, queryDate, fr_wth, to_wth, queryDate,
+				fr_wth, to_wth, queryDate,fr_wth, to_wth,
+				queryDate, fr_wth, to_wth, queryDate, fr_wth, to_wth,
+				queryDate, fr_wth, to_wth, queryDate,
+				fr_wth, to_wth, queryDate, fr_wth, to_wth,
+				queryDate, queryDate, queryDate, queryDate, queryDate,
+				queryDate, queryDate, queryDate, queryDate, queryDate,
+				queryDate, queryDate, queryDate});
+}
+	
+	/**
+	 * 连退规格明细000
+	 * 
+	 * @param queryDate
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryCalSizeDetailF(String fr_Date,String to_Date,String stl)
+	throws SQLException {
+String sql = XmlSqlParsersFactory.getSql("UIM020010_15.SELECT");
+return this.getDao("KgDao").ExcuteQuery(
+		sql,
+		new Object[]{fr_Date,to_Date,stl});
+}
+	
+	
+	
+	/**
+	 * 重卷规格明细
+	 * 
+	 * @param queryDate
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryRclSizeDetail(String queryDate1,String queryDate2,String queryDate3)
+			throws SQLException {
+		//System.out.println("test");
+		String sql = XmlSqlParsersFactory.getSql("UIM020010_08.SELECT");
+		return this.getDao("KgDao").ExcuteQuery(
+				sql,//增加23+62个
+				new Object[] {queryDate1, queryDate2, queryDate3, queryDate3,
+						queryDate1, queryDate2, queryDate3, queryDate3, queryDate1, queryDate2, queryDate3, queryDate3,
+						queryDate1, queryDate2, queryDate3, queryDate3, queryDate1, queryDate2, queryDate3, queryDate3,
+						queryDate1, queryDate2, queryDate3, queryDate3, queryDate1, queryDate2, queryDate3, queryDate3, 
+						queryDate3,queryDate3,
+						queryDate1, queryDate2, queryDate3, queryDate3,
+						queryDate1, queryDate2, queryDate3, queryDate3, queryDate1, queryDate2, queryDate3, queryDate3,
+						queryDate1, queryDate2, queryDate3, queryDate3, queryDate1, queryDate2, queryDate3, queryDate3,
+						queryDate1, queryDate2, queryDate3, queryDate3, queryDate1, queryDate2, queryDate3, queryDate3, 
+						queryDate3,queryDate3,
+						queryDate1, queryDate2, queryDate1, queryDate2, queryDate1, queryDate2, queryDate3, queryDate3, queryDate3, queryDate3, queryDate3, queryDate3,
+						queryDate1, queryDate2, queryDate1, queryDate2, queryDate1, queryDate2, queryDate3, queryDate3, queryDate3, queryDate3, queryDate3, queryDate3,
+						queryDate1, queryDate2, queryDate1, queryDate2, queryDate1, queryDate2, queryDate3, queryDate3, queryDate3, queryDate3, queryDate3, queryDate3,
+						queryDate1, queryDate2, queryDate1, queryDate2, queryDate1, queryDate2, queryDate3, queryDate3, queryDate3, queryDate3, queryDate3, queryDate3,
+						queryDate1, queryDate2, queryDate1, queryDate2, queryDate1, queryDate2, queryDate3, queryDate3, queryDate3, queryDate3, queryDate3, queryDate3,
+						queryDate1, queryDate2, queryDate1, queryDate2, queryDate1, queryDate2, queryDate3, queryDate3, queryDate3, queryDate3, queryDate3, queryDate3,
+						queryDate1, queryDate2, queryDate1, queryDate2, queryDate1, queryDate2, queryDate3, queryDate3, queryDate3, queryDate3, queryDate3, queryDate3,
+						queryDate3,queryDate3,
+						queryDate1, queryDate2, queryDate1, queryDate2, queryDate3, queryDate3, queryDate1, queryDate2, queryDate1, queryDate2, queryDate3, queryDate3,
+						queryDate1, queryDate2, queryDate1, queryDate2, queryDate3, queryDate3, queryDate1, queryDate2, queryDate1, queryDate2, queryDate3, queryDate3,
+						queryDate1, queryDate2, queryDate1, queryDate2, queryDate3, queryDate3, queryDate1, queryDate2, queryDate1, queryDate2, queryDate3, queryDate3,
+						queryDate1, queryDate2, queryDate1, queryDate2, queryDate3, queryDate3, queryDate1, queryDate2, queryDate1, queryDate2, queryDate3, queryDate3,
+						queryDate1, queryDate2, queryDate1, queryDate2, queryDate3, queryDate3, queryDate1, queryDate2, queryDate1, queryDate2, queryDate3, queryDate3,
+						queryDate1, queryDate2, queryDate1, queryDate2, queryDate3, queryDate3, queryDate1, queryDate2, queryDate1, queryDate2, queryDate3, queryDate3,
+						queryDate1, queryDate2, queryDate3, queryDate1, queryDate2, queryDate1, queryDate2, queryDate3, queryDate3,
+						queryDate3, queryDate3, queryDate3, queryDate3, queryDate3, queryDate3});
+	}
+	
+	public CoreReturnObject queryRclSizeDetailC(String fr_wth,String to_wth,String queryDate)
+	throws SQLException {
+String sql = XmlSqlParsersFactory.getSql("UIM020010_16.SELECT");
+return this.getDao("KgDao").ExcuteQuery(
+		sql,
+		new Object[]{fr_wth, to_wth, queryDate, fr_wth,
+				to_wth, queryDate, queryDate, queryDate, queryDate,
+				queryDate, queryDate, queryDate, fr_wth, to_wth,
+				queryDate,fr_wth, to_wth, queryDate, queryDate,
+				queryDate, queryDate, queryDate, queryDate, queryDate,
+				fr_wth, to_wth, queryDate, fr_wth, to_wth,
+				queryDate, fr_wth, to_wth, queryDate, fr_wth, to_wth,
+				queryDate, queryDate, fr_wth, to_wth,
+				queryDate, queryDate,fr_wth, to_wth, queryDate,
+				queryDate, queryDate, queryDate, queryDate, queryDate,
+				queryDate, queryDate, queryDate, queryDate, queryDate,
+				queryDate, queryDate, fr_wth, to_wth, queryDate,
+				fr_wth, to_wth, queryDate,fr_wth, to_wth,
+				queryDate, fr_wth, to_wth, queryDate, fr_wth, to_wth,
+				queryDate, fr_wth, to_wth, queryDate,
+				fr_wth, to_wth, queryDate, fr_wth, to_wth,
+				queryDate, queryDate, queryDate, queryDate, queryDate,
+				queryDate, queryDate, queryDate, queryDate, queryDate,
+				queryDate, queryDate, queryDate});
+}
+	
+	/**
+	 * 
+	 * @param queryDate
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryRclSizeDetailG(String fr_Date,String to_Date,String stl)
+	throws SQLException {
+String sql = XmlSqlParsersFactory.getSql("UIM020010_17.SELECT");
+return this.getDao("KgDao").ExcuteQuery(
+		sql,
+		new Object[]{fr_Date,to_Date,stl});
+}
+	
+	
+	
+	
+
+	/**
+	 * 库存出入库台帐
+	 * 
+	 * @param queryDate
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryStockHis(String beginDate, String endDate,
+			String coilNo, String stockFlag) throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		String sql = "";
+		try {
+			switch (Integer.parseInt(stockFlag)) {
+			case 1:
+				sql = XmlSqlParsersFactory.getSql("UIM020010_10.SELECT");// 原料库
+				cro = this.getDao("KgDao").ExcuteQuery(
+						sql,
+						new Object[] { beginDate, endDate, beginDate, endDate,
+								coilNo });
+				break;
+			case 2:
+				sql = XmlSqlParsersFactory.getSql("UIM020010_11.SELECT");// 中间库
+				cro = this.getDao("KgDao").ExcuteQuery(
+						sql,
+						new Object[] { beginDate, endDate, beginDate, endDate,
+								coilNo });
+				break;
+			case 3:
+			case 4:
+				sql = XmlSqlParsersFactory.getSql("UIM020010_12.SELECT");// 连退库
+				cro = this.getDao("KgDao").ExcuteQuery(sql,
+						new Object[] { beginDate, endDate, coilNo });
+				break;
+			case 5:
+				sql = XmlSqlParsersFactory.getSql("UIM020010_13.SELECT");// 重卷库
+				cro = this.getDao("KgDao").ExcuteQuery(sql,
+						new Object[] { beginDate, endDate, coilNo });
+				break;
+			default:
+				return cro;
+			}
+
+		} catch (NumberFormatException ex) {
+
+		}
+		return cro;
+	}
+}

+ 142 - 0
.svn/pristine/05/05c7906772c4b98e069a14f801d31e4c6815f01b.svn-base

@@ -0,0 +1,142 @@
+package UIK.UIK05;
+
+import java.sql.SQLException;
+
+import CoreFS.SA01.CoreIComponent;
+import CoreFS.SA06.CoreReturnObject;
+
+public class UIK050030 extends CoreIComponent {
+
+	public CoreReturnObject DoQueryShang(String zgNum,Boolean flag,String beginTime,String endTime) throws SQLException
+	{
+			CoreReturnObject cro = new CoreReturnObject();
+			String str = "STAND_ID,ROLL_TYPE,ROLLID_UP,ROLLID_LO,decode(REASON_CODE,'0','变规格','1','变品种','2','辊印','3','轧烂','4','刀花印','5','划伤','6','色差','7','乳化斑','8','板形差','9','到吨位','10','打滑','11','断带','12','横折印') REASON_CODE,TO_CHAR(DISMOUNT_TIME,'YYYY-MM-DD HH24:MI:SS') DISMOUNT_TIME,SHIFT,CREW,ROLLED_LENGTH_UP, ROLLED_WEIGHT_UP,ROLLED_TIME_UP,SPEC_NO,MEG_FLAG,REG_ID,TO_CHAR(REG_DTIME,'YYYY-MM-DD HH24:MI:SS') REG_DTIME";
+			
+			if(!flag)
+			{
+				
+					String sqlQuery	=	"select " + str+" from C_TBK05_ROLL_DOWN  order by REG_DTIME";                                        
+				       
+					cro = this.getDao("KgDao").ExcuteQuery(sqlQuery);
+					
+					return cro;
+					
+			}
+			else
+			{
+					String sqlQuery	=	"select " + str+" from C_TBK05_ROLL_DOWN  where STAND_ID = '"+zgNum+"' and (TO_CHAR(REG_DTIME,'YYYYMMDDHH24MISS') between '"+beginTime+"' and '"+endTime+"')";
+					
+					cro = this.getDao("KgDao").ExcuteQuery(sqlQuery);
+					
+					return cro;
+			}
+			
+	}
+	                        
+	public CoreReturnObject DoQueryXia(String zgNum,Boolean flag,String beginTime,String endTime) throws SQLException
+	{
+			CoreReturnObject cro = new CoreReturnObject();
+			String str ="STAND_ID,ROLL_TYPE,ROLLID_LO,REASON_CODE,TO_CHAR(DISMOUNT_TIME,'YYYY-MM-DD HH24:MI:SS') DISMOUNT_TIME,SHIFT,CREW,ROLLED_LENGTH_LO,to_char(ROLLED_WEIGHT_LO/1000) ROLLED_WEIGHT_LO,ROLLED_TIME_LO,SPEC_NO,REG_ID,TO_CHAR(REG_DTIME,'YYYY-MM-DD HH24:MI:SS') REG_DTIME";
+			
+			if(!flag)
+			{
+				
+				String sqlQuery	=	"select " + str+" from C_TBK05_ROLL_DOWN  order by REG_DTIME";
+			       
+				cro = this.getDao("KgDao").ExcuteQuery(sqlQuery );
+				return cro;
+				
+			}
+			
+			else
+			{
+				
+					String sqlQuery	=	"select " + str+" from C_TBK05_ROLL_DOWN  where STAND_ID = '"+zgNum+"' and (TO_CHAR(REG_DTIME,'YYYYMMDDHH24MISS') between '"+beginTime+"' and '"+endTime+"')";
+					
+					cro = this.getDao("KgDao").ExcuteQuery(sqlQuery);
+					return cro;
+			}
+				
+	}
+	public CoreReturnObject DoQueryShang1(String zgNum,Boolean flag,String beginTime,String endTime) throws SQLException
+	{
+			CoreReturnObject cro = new CoreReturnObject();
+			String str = "SPEC_NO,STAND_ID,ROLL_TYPE,ROLLID_UP,ROLLID_LO,decode(REASON_CODE,'0','变规格','1','变品种','2','辊印','3','轧烂','4','刀花印','5','划伤','6','色差','7','乳化斑','8','板形差','9','到吨位','10','打滑','11','断带','12','横折印') REASON_CODE,TO_CHAR(DISMOUNT_TIME,'YYYY-MM-DD HH24:MI:SS') DISMOUNT_TIME,SHIFT,CREW,ROLLED_LENGTH_UP, ROLLED_WEIGHT_UP,ROLLED_TIME_UP,REG_ID,TO_CHAR(REG_DTIME,'YYYY-MM-DD HH24:MI:SS') REG_DTIME,MEG_FLAG";
+			
+			
+					String sqlQuery	=	"select " + str+" from C_TBK05_ROLL_DOWN  where  (TO_CHAR(REG_DTIME,'YYYYMMDDHH24MISS') between '"+beginTime+"' and '"+endTime+"')" ;
+					
+					cro = this.getDao("KgDao").ExcuteQuery(sqlQuery);
+					
+					return cro;
+			
+			
+	}
+	                        
+	public CoreReturnObject DoQueryXia1(String zgNum,Boolean flag,String beginTime,String endTime) throws SQLException
+	{
+			CoreReturnObject cro = new CoreReturnObject();
+			String str ="SPEC_NO,REG_ID,TO_CHAR(REG_DTIME,'YYYY-MM-DD HH24:MI:SS') REG_DTIME,ROLLID_LO,REASON_CODE,TO_CHAR(DISMOUNT_TIME,'YYYY-MM-DD HH24:MI:SS') DISMOUNT_TIME,SHIFT,CREW,ROLLED_LENGTH_LO,to_char(ROLLED_WEIGHT_LO/1000) ROLLED_WEIGHT_LO,ROLLED_TIME_LO,STAND_ID,ROLL_TYPE";
+			
+			
+				
+					String sqlQuery	=	"select " + str+" from C_TBK05_ROLL_DOWN  where  (TO_CHAR(REG_DTIME,'YYYYMMDDHH24MISS') between '"+beginTime+"' and '"+endTime+"')";
+					
+					cro = this.getDao("KgDao").ExcuteQuery(sqlQuery);
+					return cro;
+			
+				
+	}
+	public CoreReturnObject DoSelect(String create_time) throws SQLException
+	{
+		CoreReturnObject cro = new CoreReturnObject();
+		
+		String str = "SPEC_NO,STAND_ID,ROLL_TYPE,ROLL_AREA,ROLLID_UP,ROLLID_LO,REG_ID,TO_CHAR(DISMOUNT_TIME,'YYYY-MM-DD') DISMOUNT_TIME,REASON_CODE,SHIFT,CREW,ROLLED_LENGTH_UP,ROLLED_WEIGHT_UP,ROLLED_TIME_UP,ROLLED_LENGTH_LO,ROLLED_WEIGHT_LO,ROLLED_TIME_LO,REG_DTIME";
+		
+		String sqlQuery	= "select "+str+" from C_TBK05_ROLL_DOWN where REG_DTIME =TO_DATE('"+create_time+"','YYYY-MM-DD HH24:MI:SS')";
+		       
+		cro = this.getDao("KgDao").ExcuteQuery(sqlQuery);
+		
+		return cro;
+			
+	}
+	
+	public CoreReturnObject PlanAdd(String spec_No,String sand_Id,String roll_Type,String roll_Area,String roll_Id_up,String roll_Id_lo,String z_time,String reason,String s_chang,String s_liang,String create_time) throws SQLException
+	{
+		CoreReturnObject cro = new CoreReturnObject();
+		
+
+		String addSql = "insert into C_TBK05_ROLL_DOWN(SPEC_NO,STAND_ID,ROLL_TYPE,ROLL_AREA,ROLLID_UP,ROLLID_LO,REG_ID,DISMOUNT_TIME,REASON_CODE,SHIFT,CREW,ROLLED_LENGTH_UP,ROLLED_WEIGHT_UP,ROLLED_TIME_UP,ROLLED_LENGTH_LO,ROLLED_WEIGHT_LO,ROLLED_TIME_LO,REG_DTIME,MEG_FLAG)values(?,?,?,?,?,?,null,TO_DATE('"+z_time+"', 'YYYY-MM-DD hh24:mi:ss'),?,null,null,?,?,null, null,null,null,TO_DATE('"+create_time+"', 'YYYY-MM-DD HH24:MI:SS'),'否')";
+		
+		cro = this.getDao("KgDao").ExcuteNonQuery(addSql,new Object[]{spec_No, sand_Id, roll_Type, roll_Area, roll_Id_up, roll_Id_lo, reason, s_chang, s_liang});
+		return cro;
+	 
+	}
+
+	public CoreReturnObject DoSend(String spec_No,String sand_Id,String roll_Type,String roll_Area,String roll_Id_up,String roll_Id_lo,String z_time,String reason,String banci,String banbie, String s_chang,String s_liang,String s_shi,String x_chang,String x_liang,String x_shi,String create_time,String uid) throws SQLException
+	{
+		
+			CoreReturnObject cro = new CoreReturnObject();
+			
+			String sql = "insert into TBS02_ROLL_CHANGE_DIS(SEQ_NO,STAND_NO,ROLL_TYPE,AREA,ROLLID_UP,ROLLID_LO,DISMOUNT_TIME,REASON_CODE,SHIFT,CREW,ROLLED_LENGTH_UP,ROLLED_WEIGHT_UP,ROLLED_TIME_UP,ROLLED_LENGTH_LO,ROLLED_WEIGHT_LO,ROLLED_TIME_LO,TRANS_DTIME,PROC_NAME) values(?,?,?,?,?,?,TO_DATE('"+z_time+"','yyyy-mm-dd hh24:mi:ss')"+",?,?,?,?,?,?,?,?,?,TO_DATE('"+create_time+"','yyyy-mm-dd hh24:mi:ss')"+",?)";
+			
+			Object[] obj	=	new Object[]{spec_No, sand_Id, roll_Type, roll_Area, roll_Id_up, roll_Id_lo, reason, banci, banbie, s_chang, s_liang, s_shi, x_chang, x_liang, x_shi,uid};
+			
+			cro = this.getDao("KgDao").ExcuteNonQuery(sql , obj);
+			
+			return cro;
+	}
+	
+	public CoreReturnObject DoUpdate(String reason,String zhazhiliang,String zhazhicd,String timexg,String number,String iddown,String idup,String namerg) throws SQLException
+	{
+			CoreReturnObject cro = new CoreReturnObject();					
+			
+			String sqlQuery	= "update C_TBK05_ROLL_DOWN set REASON_CODE = decode('"+reason+"','变规格','0','变品种','1','辊印','2','轧烂','3','刀花印','4','划伤','5','色差','6','乳化斑','7','板形差','8','到吨位','9','打滑','10','断带','11','横折印','12'),ROLLED_WEIGHT_UP='"+zhazhiliang+"' , ROLLED_LENGTH_UP='"+zhazhicd+"',reg_id='"+namerg+"',REG_DTIME = TO_DATE('"+timexg+"','YYYY-MM-DD HH24:MI:SS') where SPEC_NO='"+number+"' and ROLLID_UP='"+idup+"' and rollid_lo='"+iddown+"'";
+			//REG_DTIME = TO_DATE('"+create_time+"','YYYY-MM-DD HH24:MI:SS')	       
+			cro = this.getDao("KgDao").ExcuteNonQuery(sqlQuery);
+				
+			return cro;
+		
+	}
+
+}

+ 28 - 0
.svn/pristine/06/06ec12de4f5c2208679ac13dd0d30a0ac29df144.svn-base

@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding='UTF-8'?>
+
+<queryMap desc="">
+
+<!-- 根据条件获得已选取冷轧厚度编制量标准的明细信息 -->
+<query id="UIF041050.Query_THKLen_List" >
+	SELECT A.THK_GRP_CD GRP_CD,A.MINI,A.MAXI,B.MINI LMINI,B.MAXI LMAXI,
+	TO_CHAR(TO_DATE(B.REG_DTIME,'YYYY-MM-DD HH24:MI:SS'),'YYYY-MM-DD HH24:MI:SS') REG_DTIME,B.REG_ID,
+	TO_CHAR(TO_DATE(B.MOD_DTIME,'YYYY-MM-DD HH24:MI:SS'),'YYYY-MM-DD HH24:MI:SS') MOD_DTIME,B.MOD_ID 
+	FROM TBF02_ROLL_THK_GRP A,TBF02_ROLL_THK B WHERE A.THK_GRP_CD=B.THK_GRP_CD AND B.PLT='C' AND A.PLT='C'
+</query>
+<query id="UIF041050.Query_WTHLen_List" >
+	SELECT A.WTH_GRP_CD GRP_CD,A.MINI,A.MAXI,B.MINI LMINI,B.MAXI LMAXI,
+	TO_CHAR(TO_DATE(B.REG_DTIME,'YYYY-MM-DD HH24:MI:SS'),'YYYY-MM-DD HH24:MI:SS') REG_DTIME,B.REG_ID,
+	TO_CHAR(TO_DATE(B.MOD_DTIME,'YYYY-MM-DD HH24:MI:SS'),'YYYY-MM-DD HH24:MI:SS') MOD_DTIME,B.MOD_ID 
+	FROM TBF02_ROLL_WTH_GRP A,TBF02_ROLL_WTH B WHERE A.WTH_GRP_CD=B.WTH_GRP_CD AND B.PLT='C' AND A.PLT='C' 
+</query>
+<!-- 根据条件获得已选取冷轧厚度组的明细信息 -->
+<query id="UIF041050.Query_THK_GRP" >
+	SELECT THK_GRP_CD GRP_CD,MINI,MAXI 
+	FROM TBF02_ROLL_THK_GRP WHERE PLT='C'
+</query>
+<!-- 根据条件获得已选取冷轧宽度组的明细信息 -->
+<query id="UIF041050.Query_WTH_GRP" >
+	SELECT WTH_GRP_CD GRP_CD,MINI,MAXI  
+	FROM TBF02_ROLL_WTH_GRP A WHERE A.PLT='C'
+</query>
+</queryMap>

BIN
.svn/pristine/07/07b6bf82cea13570b5290d6ed841283a1fcce170.svn-base


+ 126 - 0
.svn/pristine/07/07d4ab871d8bcb4c7b97fdfb1e627a9969c3413f.svn-base

@@ -0,0 +1,126 @@
+<?xml version="1.0" encoding='UTF-8'?>
+
+<queryMap desc="">
+
+<query id="UIF052020.Query_RollPlan_Mill" desc='得到轧辊单元计划的明细信息'>
+	SELECT F.CAL_NO ROLL_MANA_NO,
+	F.CAL_COIL_SEQ ROLL_COIL_SEQ,
+	F.C_COIL_NO COIL_NO,
+	F.L_COIL_NO C_COIL_NO,
+	A.H_COIL_NO1,
+    A1.CJ_REMARK,
+    A1.SPM_RMK,
+    A1.DEAL_REMARK,
+    A1.CPCJ_REMARK,
+	A.COIL_THK,
+	A.COIL_WTH,
+	A.COIL_LEN,
+	A.COIL_INDIA,
+	A.COIL_OUTDIA,
+	A.ACT_WGT,
+	Q.C_ORD_INDIA INDIA,--冷轧订单内径
+    C.C_ORD_THK,
+    C.C_ORD_THK_MIN,
+    C.C_ORD_THK_MAX,
+    C.C_ORD_WTH,
+    C.C_ORD_WTH_MIN,
+    C.C_ORD_WTH_MAX,
+    C.C_ORD_LEN,
+    C.C_ORD_INDIA,
+    C.C_ORD_OUTDIA,
+    C.C_EXTSHAPE_REQ,
+    B.SM_CSNM CUR_PROG_CD,
+    F.STATUS_CD,
+    A.CUR_LOAD_LOC,
+    C.ACID_PROD_PATH,
+    C.ORD_NO,
+    C.ORD_SEQ,
+    C.C_SPEC_STL_GRD,
+    C.C_SPEC_ABBSYM,
+    H.SM_CFNM ORD_USEAGE_CD,
+    C.DEL_TO_DATE,
+    D.CUST_NM ORDCUST_CD,
+    E.SM_CFNM DEST_CD,
+    ROUND(SYSDATE-TO_DATE(A.MILL_DTIME,'YYYY-MM-DD HH24:MI:SS'),1) COLDTIM,
+    C.ORD_UNIT_WGT,
+    C.ORD_UNIT_WGT_MIN,
+    C.ORD_UNIT_WGT_MAX,
+    C.C_PRODNM_CD,
+    F.L_COIL_ID C_COIL_ID,
+    I.SM_CFNM PACK_METHOD,
+    DECODE(C.EDGE_PROC_YN,'Y','√',NULL) EDGE_PROC_YN,
+    (C.C_ORD_THK_MIN+C.C_ORD_THK_MAX)/2 M_THK
+    ,decode(F.CAL_TYPE,'1','正常退火','2','返修','3','过渡') CAL_TYPE
+   ,(nvl(F.CAL_ID,0)+1) CAL_CNT 
+   ,XB_PACKAGE.GF_COMNNAME_FIND('B02001' , A.CRK_CD1)||CASE WHEN A.CRK_CD2 IS NOT NULL THEN '+' ELSE ' ' END ||XB_PACKAGE.GF_COMNNAME_FIND('B02001' , A.CRK_CD2)    COIL_CRK
+   ,(SELECT  CC.CAL_TYPE_TEMP  FROM  C_TBC02_COIL_COMM CC WHERE CC.OLD_SAMPL_NO = F.L_COIL_NO AND ROWNUM = 1 )      CAL_TYPE_TEMP
+   ,C.MK_CONTENT --20121205
+   ,LWC.VALUE_C
+   ,LWC.VALUE_Mn
+   ,LWC.VALUE_Si
+   ,LWC.VALUE_Ti
+   ,A.L3_ROUGH
+   ,Q.OIL_DEF
+   ,F.CAL_MEMO
+    FROM 
+    C_TBL02_COIL_COMM A,
+    tbh02_coil_comm A1 ,
+    TBE02_ORD_PRC C,
+    TBZ00_COMMCD B,
+    TBZ00_CUSTOMER D,
+    TBZ00_COMMCD E,
+    L_TBF03_SPEC_MILL F,
+    L_TBF03_SPEC_CAL G,
+    TBZ00_COMMCD H,
+    TBZ00_COMMCD I,
+    tba01_ord_line Q
+    ,(select FF.C_COIL_NO COIL_NO_LWC,
+              max(DECODE(WI.CHEM_CD, 'C', WI.CHEM_VAL)) VALUE_C,
+              max(DECODE(WI.CHEM_CD, 'Mn', WI.CHEM_VAL)) VALUE_Mn,
+              max(DECODE(WI.CHEM_CD, 'Si', WI.CHEM_VAL)) VALUE_Si,
+              max(DECODE(WI.CHEM_CD, 'Ti', WI.CHEM_VAL)) VALUE_Ti
+           from C_TBL02_COIL_COMM AC, TBB02_WORK_INGR WI,TBG02_CHARGE_COMM_D CD,
+                TBE02_ORD_PRC     CC,
+                L_TBF03_SPEC_MILL FF,
+                L_TBF03_SPEC_CAL  GG
+           where  FF.ORD_NO = CC.ORD_NO
+                  AND FF.ORD_SEQ = CC.ORD_SEQ
+                  AND FF.CAL_NO = GG.CAL_MANA_NO
+                  AND AC.COIL_NO = FF.C_COIL_NO
+                  AND GG.STATUS_CD != 'D'
+                  AND FF.STATUS_CD IN ('A', 'B', 'C', 'D', 'F')
+                  AND WI.CHARGE_NO = CD.CHARGE_NO 
+                  AND WI.PROC_CD || WI.CHEM_SEQ = CD.LST_INGR_CD
+                  AND  SUBSTR(AC.SLAB_NO, 1, 10) = WI.CHARGE_NO 
+                  AND WI.CHEM_CD IN ('C','Mn','Si','Ti')
+                  GROUP BY FF.C_COIL_NO) LWC    
+    WHERE F.ORD_NO=C.ORD_NO 
+    AND F.ORD_SEQ=C.ORD_SEQ 
+    AND F.ORD_NO = Q.ORD_NO
+   	AND F.ORD_SEQ = Q.ORD_SEQ
+    AND A.CUR_PROG_CD=B.SM_CD(+) 
+    AND C.ORDCUST_CD=D.CUST_CD 
+    AND F.CAL_NO=G.CAL_MANA_NO 
+    AND A.COIL_NO = LWC.COIL_NO_LWC(+)
+    AND A.H_COIL_NO1 = A1.OLD_SAMPL_NO(+)
+    AND I.LG_CD='A01010' 
+    AND C.PACK_METHOD=I.SM_CD(+)  
+    AND C.C_ORD_USEAGE_CD=H.SM_CD(+) 
+    AND C.DEST_CD=E.SM_CD(+) 
+    AND A.COIL_NO=F.C_COIL_NO 
+    AND G.STATUS_CD &lt;> 'D' 
+    AND F.STATUS_CD IN('A','B','C','D','F') 
+    ORDER BY F.CAL_NO,F.CAL_COIL_SEQ
+</query>
+
+<query id="UIF052020.Query_RollPlan_Roll" desc='得到轧辊单元计划的信息'>
+	SELECT ROLL_MANA_NO,SUM(1) COIL_NUM FROM C_TBF03_SPEC_MILL WHERE STATUS_CD IN('A','B','C') GROUP BY ROLL_MANA_NO ORDER BY ROLL_MANA_NO
+</query>
+<query id="UIF052020.RollPlan_Edit" desc="调整轧辊单元计划" >
+		<![CDATA[
+			{call C_PKG_UIF_CAL.C_PRD_CALUNIT_EDIT(?,?,?,?,?,?)}
+		]]>
+</query>
+</queryMap>
+
+

BIN
.svn/pristine/08/08274abbf7065ca15cf877d199a8bf75dba87f36.svn-base


+ 104 - 0
.svn/pristine/08/0845627192237cd763c8f59c4257a1ab4b0ab5e8.svn-base

@@ -0,0 +1,104 @@
+package QCM.COMMUNAL;
+
+import java.sql.SQLException;
+import java.util.ArrayList;
+import CoreFS.SA01.CoreIComponent;
+import CoreFS.SA06.CoreReturnObject;
+import UIB.COM.XmlSqlParsersFactory;
+
+/**
+ * 
+ * @desc   简单查询
+ * @author meiguiping
+ * @date   2010 8:12:02 PM
+ */
+public class ComDBQueryQCM	extends CoreIComponent
+{
+	/**
+	 * @desc	简单查询,自动判断是否带有参数传递
+	 * @param list 第一个参数为SQL的ID
+	 * @return
+	 * @throws Exception
+	 */
+	public	CoreReturnObject	doSimpleQuery(ArrayList list)throws Exception
+	{
+		CoreReturnObject	cro	=	null;
+		if(list == null) throw new Exception("错误,参数不允许为null!");
+
+		if(list.size() == 0)  throw new Exception("错误,没有传入任何参数!");
+				
+		String			sqlID	=	list.get(0).toString();//传入的第一个参数为SQL的ID
+		try
+		{
+			if(list.size() == 1)//无参查询
+			{
+				cro		=	this.queryNoParameter(sqlID);
+			}
+			else//带参查询
+			{
+				cro		=	this.queryWithParameter(sqlID, list);
+			}
+		}
+		catch(Exception ex)
+		{
+			throw  new Exception(ex.getMessage());
+		}
+		
+		return cro;
+	}
+	
+	/**
+	 * @desc  连续查询,执行多条查询语句,一次返回结果
+	 * @param al
+	 * @return
+	 */
+	public   CoreReturnObject	doContinuousQluery(ArrayList  list)throws Exception
+	{
+		if(list == null) throw new Exception("错误,参数不允许为null!");
+		
+		if(list.size() == 0)  throw new Exception("错误,没有传入任何参数!");
+		ArrayList	al	=	new ArrayList();
+		CoreReturnObject		cro1	=	new CoreReturnObject();//最终结果
+		for(int i = 0; i < list.size(); i++)
+		{
+			al.add( doSimpleQuery((ArrayList)list.get(i)).getResult() );
+		}
+		cro1.setResult(al);
+		return cro1;
+	}
+	/**
+	 * @desc  带参数SQL
+	 * @param sqlID
+	 * @param list
+	 * @return
+	 * @throws SQLException
+	 */
+	private  CoreReturnObject	queryWithParameter(String sqlID , ArrayList list)throws SQLException
+	{
+		CoreReturnObject	cro		=	null;
+		int					len		=	list.size()-1;
+		Object[]	        obj		=	new Object[len];
+		//System.out.println("list长度:"+list.size());
+		for(int i = 0; i < len; i++)
+		{
+			obj[i]	=	list.get(i+1).toString();//第0个参数为SQL语句,SQL语句中的参数需要从第一个开始
+//			System.out.println("参数值:"+obj[i].toString());
+		}
+		cro		=	this.getDao("test1Dao").ExcuteQuery(XmlSqlParsersFactory.getSql(sqlID) , obj);
+		return cro;
+	}
+	
+	/**
+	 * @desc  无参数查询
+	 * @param sqlID
+	 * @return
+	 * @throws SQLException
+	 */
+	private CoreReturnObject	queryNoParameter(String sqlID)throws SQLException
+	{
+		CoreReturnObject	cro		=	null;
+		System.out.println(XmlSqlParsersFactory.getSql(sqlID));
+		cro							=	this.getDao("test1Dao").ExcuteQuery(XmlSqlParsersFactory.getSql(sqlID));
+		return cro;
+	}
+}

+ 200 - 0
.svn/pristine/08/0891d62d711e1a1fc4c96365eeb8d82a29b5d24a.svn-base

@@ -0,0 +1,200 @@
+package UIF.UIF06;
+
+import java.sql.SQLException;
+import java.util.ArrayList;
+import java.lang.Object;
+import CoreFS.SA01.CoreIComponent;
+import CoreFS.SA06.CoreReturnObject;
+import UIB.COM.XmlSqlParsersFactory;
+
+public class UIF061050 extends CoreIComponent 
+{
+	//获得基础数据信息
+	public CoreReturnObject queryBaseData() throws SQLException
+	{
+		try
+		{
+			CoreReturnObject cro=new CoreReturnObject();
+			java.util.ArrayList rtn_list = new java.util.ArrayList();
+			rtn_list.add(queryPMData());
+			rtn_list.add(queryBMData());
+			rtn_list.add(querySleeve());
+			rtn_list.add(querySPMMode());
+			rtn_list.add(querySPMWet());
+			cro.setResult(rtn_list);
+			return cro;
+		}
+		catch(Exception ex)
+		{
+			CoreReturnObject err = new CoreReturnObject();
+			err.SetErrInfo(ex.toString());
+			return err;
+		}
+	}
+	//获得交货状态基础信息
+	private Object queryPMData()
+	{
+		try
+		{
+			Object obj = new Object();
+			String Sql = XmlSqlParsersFactory.getSql("UIF061010_04.SELECT");
+			obj=this.getDao("KgDao").ExcuteQuery(Sql).getResult();
+			return obj;
+		}
+		catch(Exception ex)
+		{
+			System.out.print(ex.toString());
+			return null;
+		}
+	}
+	//获得表面要求基础信息
+	private Object queryBMData()
+	{
+		try
+		{
+			Object obj = new Object();
+			String Sql = XmlSqlParsersFactory.getSql("UIF061010_05.SELECT");
+			obj=this.getDao("KgDao").ExcuteQuery(Sql).getResult();
+			return obj;
+		}
+		catch(Exception ex)
+		{
+			System.out.print(ex.toString());
+			return null;
+		}
+	}
+	//获得套筒类型
+	private Object querySleeve()
+	{
+		try
+		{
+			Object obj = new Object();
+			String Sql = XmlSqlParsersFactory.getSql("UIF061010_06.SELECT");
+			obj=this.getDao("KgDao").ExcuteQuery(Sql).getResult();
+			return obj;
+		}
+		catch(Exception ex)
+		{
+			System.out.print(ex.toString());
+			return null;
+		}
+	}
+	//获得平整模式
+	private Object querySPMMode()
+	{
+		try
+		{
+			Object obj = new Object();
+			String Sql = XmlSqlParsersFactory.getSql("UIF061010_07.SELECT");
+			obj=this.getDao("KgDao").ExcuteQuery(Sql).getResult();
+			return obj;
+		}
+		catch(Exception ex)
+		{
+			System.out.print(ex.toString());
+			return null;
+		}
+	}
+	//获得湿平标识
+	private Object querySPMWet()
+	{
+		try
+		{
+			Object obj = new Object();
+			String Sql = XmlSqlParsersFactory.getSql("UIF061010_08.SELECT");
+			obj=this.getDao("KgDao").ExcuteQuery(Sql).getResult();
+			return obj;
+		}
+		catch(Exception ex)
+		{
+			System.out.print(ex.toString());
+			return null;
+		}
+	}
+	//根据条件获得重卷基料卷信息
+	public CoreReturnObject queryHotCoil(String where) throws SQLException
+	{
+		try
+		{
+			CoreReturnObject cro=new CoreReturnObject();
+			String Sql = XmlSqlParsersFactory.getSql("UIF061050_01.SELECT");
+			Sql = Sql + where;
+			cro = this.getDao("KgDao").ExcuteQuery(Sql);
+			return cro;
+		}
+		catch(Exception ex) 
+		{
+			CoreReturnObject err = new CoreReturnObject();
+			err.SetErrInfo(ex.toString());
+			return err;
+		}
+	}
+	public CoreReturnObject queryPltcmReelCoil(String where) throws SQLException
+	{
+		try
+		{
+			CoreReturnObject cro=new CoreReturnObject();
+			String Sql = XmlSqlParsersFactory.getSql("UIF061010_09.SELECT");
+			Sql = Sql + where;
+			cro = this.getDao("KgDao").ExcuteQuery(Sql);
+			return cro;
+		}
+		catch(Exception ex) 
+		{
+			CoreReturnObject err = new CoreReturnObject();
+			err.SetErrInfo(ex.toString());
+			return err;
+		}
+	}
+	//获取编制的重卷的汇总信息
+	public CoreReturnObject queryReelData() throws SQLException
+	{
+		try
+		{
+			CoreReturnObject cro=new CoreReturnObject();
+			String Sql = XmlSqlParsersFactory.getSql("UIF061050_11.SELECT");
+			cro = this.getDao("KgDao").ExcuteQuery(Sql);
+			return cro;
+		}
+		catch(Exception ex)
+		{
+			CoreReturnObject err = new CoreReturnObject();
+			err.SetErrInfo(ex.toString());
+			return err;
+		}
+	}
+	
+	//获取编制的重卷的明细信息
+	public CoreReturnObject queryHotList() throws SQLException
+	{
+		try
+		{
+			CoreReturnObject cro=new CoreReturnObject();
+			String Sql = XmlSqlParsersFactory.getSql("UIF061050_03.SELECT");
+			cro = this.getDao("KgDao").ExcuteQuery(Sql);
+			return cro;
+		}
+		catch(Exception ex)
+		{
+			CoreReturnObject err = new CoreReturnObject();
+			err.SetErrInfo(ex.toString());
+			return err;
+		}
+	}
+	public CoreReturnObject querypltcmReelList() throws SQLException
+	{
+		try
+		{
+			CoreReturnObject cro=new CoreReturnObject();
+			String Sql = XmlSqlParsersFactory.getSql("UIF061010_10.SELECT");
+			cro = this.getDao("KgDao").ExcuteQuery(Sql);
+			return cro;
+		}
+		catch(Exception ex)
+		{
+			CoreReturnObject err = new CoreReturnObject();
+			err.SetErrInfo(ex.toString());
+			return err;
+		}
+	}
+}

+ 79 - 0
.svn/pristine/08/089ddf02971658033fbcd49a4a7431a34017899a.svn-base

@@ -0,0 +1,79 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<queryMap desc="中间库库存现况查询">
+	<query id="UIM010150_01.SELECT"  desc="查询钢卷区域信息">
+		<![CDATA[
+		select a.row_id area_no,min(a.CLF_ROW)||'-'||max(a.CLF_ROW)||' 剩余垛位:'||sum(yardcount) area_name from (
+		     select ceil(y.CLF_ROW/15) row_id, y.CLF_ROW
+	       ,count(case when y.CLF_FL = 1 and y.COIL_NO is null then 1 else null end) yardcount  
+	       from c_tbk08_coil_yard_area a,c_tbk08_coil_yard y
+		     where a.AREA_NO = y.AREA_NO and a.area_type = 2 group by y.clf_row order by y.CLF_ROW
+		     ) a group by a.row_id order by a.row_id
+		 ]]>
+	</query>
+	<query id="UIM010150_02.SELECT"  desc="查询中间库垛位是否存在">
+		<![CDATA[ 
+		select distinct(y.clf_name||'-'||trim(to_char(y.clf_row,'00'))) clf_name
+		 from c_tbk08_coil_yard y,c_tbk08_coil_yard_area a
+		where a.AREA_NO = y.AREA_NO and a.AREA_TYPE = 2 and y.CLF_ROW >= ? and y.CLF_ROW <= ? order by clf_name
+		 ]]>
+	</query>
+	<query id="UIM010150_03.SELECT"  desc="查询每行垛位数及钢卷数">
+		<![CDATA[
+		select y.clf_name||'-'||trim(to_char(y.clf_row,'00')) row_name,
+		count(y.area_no)||'_('||count(y.coil_no)||')' row_count
+		from c_tbk08_coil_yard y,c_tbk08_coil_yard_area a
+		where y.area_no = a.area_no and a.area_type = ?
+		group by y.clf_name,y.clf_row
+		 ]]>
+	</query>
+	<query id="UIM010150_04.SELECT"  desc="查询钢卷总数及综合判定总数">
+		<![CDATA[
+		select count(y.coil_no) coil_count,
+		count(l.tot_dec_grd) tot_count from
+		c_tbk08_coil_yard y, c_tbl02_coil_comm l,
+		c_tbk08_coil_yard_area a
+		where y.coil_no = l.coil_no
+		and y.area_no = a.area_no
+		and a.area_type = ?
+		 ]]>
+	</query>
+	<query id="UIM010150_05.SELECT"  desc="查询一行垛位信息">
+		<![CDATA[
+		select y.clf_no,y.clf_name,y.clf_col,clf_row,y.clf_fl from
+		c_tbk08_coil_yard y,c_tbk08_coil_yard_area a
+		where y.area_no = a.area_no
+		and a.area_type = ?
+		and y.clf_name||'-'||trim(to_char(y.clf_row,'00'))= ?
+		 ]]>
+	</query>
+	<query id="UIM010150_06.SELECT"  desc="查询区域中一列的垛位中钢卷信息">
+		<![CDATA[
+		select y.clf_col,y.clf_fl,l.cur_load_loc, --位置
+		l.coil_no,l.stl_grd,
+		l.coil_outdia,l.coil_india,--外径,内径
+		to_char(l.instr_coil_thk,'FM990.099')||'*'||l.instr_coil_wth it_iw,--订单规格
+		to_char(l.coil_thk,'FM990.099')||'*'||l.coil_wth t_w,--实际规格
+		l.act_wgt,C_PKG_UIM.GET_STDDATESTR(l.devlmt_dtime) devlmt_dtime,
+		l.ord_no,l.ord_seq,
+		decode(l.tot_dec_grd,'1','合格','2','不合格','3','次品','4','废品') tot_dec_grd,
+		decode(l.ord_fl,'1','订单材','2','余材') ord_fl
+		from c_tbk08_coil_yard y,
+		c_tbl02_coil_comm l,
+		c_tbk08_coil_yard_area a
+		where y.coil_no = l.coil_no
+		and y.area_no = a.area_no
+		and a.area_type = ?
+		and y.clf_name||'-'||trim(to_char(y.clf_row,'00')) = ?
+		order by y.clf_col,y.clf_fl
+		 ]]>
+	</query>
+	<query id="UIM010150_07.SELECT"  desc="查询一行中编号最小的列">
+		<![CDATA[
+		select  min(clf_col) clf_col from
+		c_tbk08_coil_yard y,c_tbk08_coil_yard_area a
+		where y.area_no = a.area_no
+		and a.area_type = ?
+		and y.clf_name||'-'||trim(to_char(y.clf_row,'00'))= ?
+		 ]]>
+	</query>
+</queryMap>

BIN
.svn/pristine/08/08abae535dafbc48b379071efa7372bce1aa9782.svn-base


+ 115 - 0
.svn/pristine/08/08d67b4dfa3d1dfc15971753578eb066043001fd.svn-base

@@ -0,0 +1,115 @@
+package UIK.UIK08;
+
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.util.ArrayList;
+
+import UIB.COM.XmlSqlParsersFactory;
+
+import CoreFS.SA01.CoreIComponent;
+import CoreFS.SA06.CoreReturnObject;
+
+public class UIK080020 extends CoreIComponent {                 //查询
+	public CoreReturnObject doQuery(ArrayList<Object> list) throws SQLException
+	{
+		CoreReturnObject cro = new CoreReturnObject();
+		
+		String []queryParams = (String[])list.get(0);
+		
+		String startTime = queryParams[0];//入库开始时间
+		String endTime = queryParams[1];//入库结束时间
+		String specStlGrd = queryParams[2];//牌号
+		String coilWthMin = queryParams[3];//宽度最小值
+		String coilWthMax = queryParams[4];//宽度最大值
+		String coilThkMin = queryParams[5];//厚度最小值
+		String coilThkMax = queryParams[6];//厚度最大值
+		String curLoadLoc = queryParams[7];//垛位
+		String coilNo = queryParams[8];//钢卷号
+		String ordNo = queryParams[9];//订单号
+		String ordFl = queryParams[11];//订单区分
+		String devlmtDate = queryParams[12];//交货期
+		String progCd = queryParams[13];//进程状态
+		String smpSendTime = queryParams[14];//送样时间
+		String prodnmCd = queryParams[15];//产品类型
+		//System.out.println(startTime+"===="+endTime+"===="+coilThkMin+"==="+coilThkMax);
+		String sql = XmlSqlParsersFactory.getSql("UIKO80020_01.SELECT");
+		
+		cro = this.getDao("KgDao").ExcuteQuery(sql,new Object[]{coilNo,specStlGrd,curLoadLoc,
+				coilThkMin,coilThkMax,coilWthMin,coilWthMax,startTime,endTime,ordNo,progCd,
+				devlmtDate,smpSendTime,prodnmCd,ordFl});
+
+		return cro;
+	}
+	
+	//出库
+	public CoreReturnObject doOut(String oldsamplno,String curloadloc,
+			String regID, String trnfShift, String trnfGroup) throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();	
+
+		String str="update c_tbc02_coil_comm t " +
+				"set t.BEF_LOAD_LOC='"+curloadloc+"',"+
+				"t.CUR_LOAD_LOC = ''," +
+				"t.COIL_STAT = '3'," +
+				"t.TRNF_DTIME = to_char(sysdate,'yyyymmddhh24miss')," +
+				"t.TRNF_REG  = '"+regID+"'," +
+				"t.TRNF_SHIFT  = '"+trnfShift+"'," +
+				"t.TRNF_GROUP = '"+trnfGroup+"'" +
+				" WHERE t.OLD_SAMPL_NO = '"+oldsamplno+"'";
+		cro = this.getDao("KgDao").ExcuteNonQuery(str);
+		//this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
+
+		String str2="update c_tbk08_coil_yard t set t.COIL_NO  = '' WHERE t.COIL_NO  ='"+oldsamplno+"'";
+		cro = this.getDao("KgDao").ExcuteNonQuery(str2);
+		
+		String str3="insert into c_tbk08_coil_move t "+
+       "select (select max(roll_seq) from c_tbk08_coil_move)+1,cur_load_loc  ,''"+
+       ",old_sampl_no,'','"+regID+"',to_char(sysdate,'yyyymmddhh24miss') ,'"+trnfShift+"' ,'"+trnfGroup+"'"+
+       " ,'"+regID+"' ,to_char(sysdate,'yyyymmddhh24miss') ,''from c_tbc02_coil_comm t1 WHERE t1.OLD_SAMPL_NO ='"+oldsamplno+"'";
+				cro = this.getDao("KgDao").ExcuteNonQuery(str3);  
+				
+		return cro;
+	}
+	
+	//回退
+	public CoreReturnObject doBack(String oldsamplno,String curloadloc,
+			String regID, String trnfShift, String trnfGroup) throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		
+		String str="update c_tbc02_coil_comm t " +
+		"set t.CUR_LOAD_LOC = '"+curloadloc+"'," +
+		"t.COIL_STAT = '2'," +
+		"t.TRNF_DTIME = to_char(sysdate,'yyyymmddhh24miss')," +
+		"t.TRNF_REG  = '"+regID+"'," +
+		"t.TRNF_SHIFT  = '"+trnfShift+"'," +
+		"t.TRNF_GROUP = '"+trnfGroup+"'" +" WHERE t.OLD_SAMPL_NO = '"+oldsamplno+"'";
+        cro = this.getDao("KgDao").ExcuteNonQuery(str);
+
+        String str2="update c_tbk08_coil_yard t set t.COIL_NO  = '"+oldsamplno+"' WHERE t.COIL_NO  =''";
+		cro = this.getDao("KgDao").ExcuteNonQuery(str2);
+		
+		String str3="insert into c_tbk08_coil_move t "+
+	       "select (select max(roll_seq) from c_tbk08_coil_move)+1,cur_load_loc  ,''"+
+	       ",old_sampl_no,'','"+regID+"',to_char(sysdate,'yyyymmddhh24miss') ,'"+trnfShift+"' ,'"+trnfGroup+"'"+
+	      " ,'"+regID+"' ,to_char(sysdate,'yyyymmddhh24miss') ,''from c_tbc02_coil_comm t1 WHERE t1.OLD_SAMPL_NO ='"+oldsamplno+"'";
+		cro = this.getDao("KgDao").ExcuteNonQuery(str3); 
+					
+		return cro;
+	}
+
+	//修改
+	public CoreReturnObject DoUpdate(String oldsamplno,String curloadloc,String coilstat) throws SQLException
+{
+	CoreReturnObject cro = new CoreReturnObject();					
+
+	String sqlQuery	="update c_tbc02_coil_comm t  set t.CUR_LOAD_LOC = '"+curloadloc+"',"+
+	        " t.COIL_STAT = '"+coilstat+"'" +
+			" where t.OLD_SAMPL_NO = '"+oldsamplno+"'";
+	
+	//Object[] obj = new Object[]{oldsamplno,curloadloc,coilstat};
+	
+	cro = this.getDao("KgDao").ExcuteNonQuery(sqlQuery);	
+	
+	return cro;
+}
+}
+

+ 66 - 0
.svn/pristine/08/08e185c60aea3749a247f5dca3a303109ec44b01.svn-base

@@ -0,0 +1,66 @@
+package UIM;
+
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+
+import UIB.COM.XmlSqlParsersFactory;
+
+import CoreFS.SA01.CoreIComponent;
+import CoreFS.SA06.CoreReturnObject;
+
+/**
+ * ¿É·¢Á¿²éѯ
+ * 
+ * @author siy
+ * @date 2010-09-26
+ */
+public class UIM010280 extends CoreIComponent {
+	/**
+	 * ²éѯ¿É·¢Á¿
+	 * 
+	 * @param dlivTp
+	 * @param ordNo
+	 * @param specStlGrd
+	 * @param hsTot
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryOrdResultForSale(String dlivTp, String ordNo,
+			String specStlGrd, Integer hsTot) throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+
+		StringBuffer sqlBuffer = new StringBuffer();
+		sqlBuffer.append(XmlSqlParsersFactory.getSql("UIM010280_01.SELECT")
+				+ "\n");
+		if (1 != hsTot.intValue()) {
+			sqlBuffer
+					.append(" AND CUR_LOAD_LOC IS NOT NULL AND CUR_PROG_CD = 'DFA' AND TOT_DEC_GRD = '1'\n");
+		}
+		sqlBuffer.append(XmlSqlParsersFactory.getSql("UIM010280_02.SELECT")
+				+ "\n");
+
+		cro = this.getDao("KgDao").ExcuteQuery(sqlBuffer.toString(),
+				new Object[] { dlivTp, ordNo, specStlGrd });// .ExcuteQuery(sql);
+
+		return cro;
+	}
+
+	public CoreReturnObject queryCoilResultByOrd(String ordNo, String ordSeq, Integer hsTot)
+			throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		String sql = XmlSqlParsersFactory.getSql("UIM010280_03.SELECT");
+		if (1 != hsTot.intValue()) {
+			sql += "\nAND C.TOT_DEC_GRD = '1' AND C.CUR_PROG_CD = 'DFA' AND C.CUR_LOAD_LOC is not null";
+		}
+
+		cro = this.getDao("KgDao").ExcuteQuery(sql,
+				new Object[] { ordNo, ordSeq });// .ExcuteQuery(sql);
+
+		return cro;
+	}
+}

+ 44 - 0
.svn/pristine/09/09006c97d88fc6dbdd14c603cc66b1567951d942.svn-base

@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<queryMap desc="出库钢卷查询">
+<query id="UIM010370_01.SELECT"  desc="中间库废次品入库管理信息">
+<![CDATA[
+SELECT       T1.COIL_NO
+            ,T1.SLAB_NO
+            ,ZL_NORM_COMM.FZ00_COMM('E01002' ,T1.CUR_PROG_CD)                                               CUR_PROG_CD
+            ,T1.SPEC_STL_GRD
+            ,T1.STL_GRD
+            ,T1.ORD_NO
+            ,T1.ORD_SEQ
+            ,DECODE(T1.ORD_FL   ,'1'  ,'订单材'  ,'2' ,'余材')                          ORD_FL
+            ,T2.ORD_THK
+            ,T2.ORD_WTH
+            ,T2.ORD_LEN
+            ,T2.ORD_WGT
+            ,T1.COIL_INDIA
+            ,T1.COIL_OUTDIA
+            ,DECODE(T1.TOT_DEC_GRD,'1','合格','2','不合格','3','外观异常','4','废品')                        TOT_DEC_GRD
+            ,DECODE(T1.INGR_DEC_GRD,'0','综合判定取消','1','合格','2','不合格')                              INGR_DEC_GRD
+            ,DECODE(T1.MATLQLTY_DEC_GRD,'0','无性能要','1','合格','2','不合格')                              MATLQLTY_DEC_GRD
+            ,DECODE(T1.SIZE_DEC_RST,'1','合格','2','订单外合格','3','不合格','4','废品')                     SIZE_DEC_RST
+            ,DECODE(T1.EXTSHAPE_DEC_GRD,'1','合格','2','订单外合格','3','次品','4','废品')                   EXTSHAPE_DEC_GRD
+            ,DECODE(T1.WGT_DEC_RST,'1','合格','2','不合格')                                                 WGT_DEC_RST
+            ,TO_CHAR(TO_DATE(T1.MILL_DTIME , 'YYYYMMDDHH24MISS') ,'YYYY-MM-DD HH24:MI:SS')                  MILL_DTIME
+            ,DECODE(T1.YARD_ENTRY_SHIFT,'0','常白班','1','早班','2','中班','3','晚班')                       YARD_ENTRY_SHIFT
+            ,DECODE(T1.YARD_ENTRY_GROUP,'0','常白班','1','甲班','2','乙班','3','丙班','4','丁班')            YARD_ENTRY_GROUP
+            ,T1.CUR_LOAD_LOC
+            ,ZL_NORM_COMM.FZ00_COMM('H02001' ,T1.CRK_CD1)                                                    CRK_CD1
+            ,ZL_NORM_COMM.FZ00_COMM('H02001' ,T1.CRK_CD2)                                                    CRK_CD2
+            ,ZL_NORM_COMM.FZ00_COMM('H02001' ,T1.CRK_CD3)                                                    CRK_CD3
+            ,ZL_NORM_COMM.FZ00_COMM('H02001' ,T1.CRK_CD4)                                                    CRK_CD4
+            ,ZL_NORM_COMM.FZ00_COMM('H02001' ,T1.CRK_CD5)                                                    CRK_CD5
+            ,T1.CRK_CD_DESC
+FROM         C_TBK02_COIL_COMM             T1
+            ,TBA01_ORD_LINE                T2
+WHERE        T1.ORD_NO                     =              T2.ORD_NO(+)
+AND          T1.ORD_SEQ                    =              T2.ORD_SEQ(+)
+AND          T1.COIL_STAT                  =              '3'
+AND          NVL(T1.MILL_DTIME ,'X')       BETWEEN        NVL(?,'X')               AND         NVL(?,'X')
+AND          T1.COIL_NO                    LIKE           ?||'%'
+]]>
+</query>>
+</queryMap>

+ 167 - 0
.svn/pristine/09/098ec9a69022a40189889277ebf2431ff6a19253.svn-base

@@ -0,0 +1,167 @@
+package UIM;
+
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+
+import UIB.COM.XmlSqlParsersFactory;
+
+import CoreFS.SA01.CoreIComponent;
+import CoreFS.SA06.CoreReturnObject;
+
+/**
+ * 冷轧中间库库存数据移动
+ * 
+ * @author siy
+ * @date 2010-08-27
+ */
+public class UIM010181 extends CoreIComponent {
+	/**
+	 * 查询钢卷位置
+	 * 
+	 * @param coilNo
+	 *            冷轧卷号
+	 * @return CoreReturnObject
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryLoadLoc(String coilNo) throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		String sql = XmlSqlParsersFactory.getSql("UIM010181_02.SELECT");
+
+		List list = this.getDao("KgDao").ExcuteQueryReturnList(sql,
+				new Object[] { coilNo });// .ExcuteQuery(sql);
+
+		String curLoadLoc = "";
+
+		Iterator it = list.iterator();
+		while (it.hasNext()) {
+			Map map = (Map) it.next();
+
+			curLoadLoc = map.get("cur_load_loc").toString();
+		}
+		// System.out.println(count);
+		cro.setResult(curLoadLoc);
+
+		return cro;
+	}
+
+	public CoreReturnObject queryYardAreas() throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		String sql = XmlSqlParsersFactory.getSql("UIM010181_01.SELECT");
+		cro = this.getDao("KgDao").ExcuteQuery(sql);
+		return cro;
+	}
+
+	/**
+	 * 查询区域中的垛位及钢卷
+	 * 
+	 * @param areaName
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryYardCoils(String areaName) throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		String[] rowBetween = areaName.split("-");
+		if (rowBetween.length > 1) {
+			String sql = XmlSqlParsersFactory.getSql("UIM010181_03.SELECT");
+			cro = this.getDao("KgDao").ExcuteQuery(sql,
+					new Object[] { rowBetween[0], rowBetween[1] });
+		}
+		return cro;
+	}
+
+	/**
+	 * 钢卷移垛
+	 * 
+	 * @param moveList
+	 *            移垛钢卷垛位信息
+	 * @param regId
+	 *            移垛人
+	 * @param moveOrder
+	 *            移垛班次
+	 * @param moveGroup
+	 *            移垛班组
+	 * @param moveDate
+	 *            移垛时间
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject moveColdCoil(ArrayList<String[]> moveList,
+			String regId, String moveOrder, String moveGroup, String moveDate)
+			throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		StringBuffer sqlBuffer = null;
+
+		Map result = this.getDao("KgDao").CoreBeginTranscation();
+		try {
+			for (int i = 0; i < moveList.size(); i++) {
+				String[] moveCoil = moveList.get(i);
+				// 更新钢卷公共表
+				sqlBuffer = new StringBuffer();
+				sqlBuffer.append(XmlSqlParsersFactory
+						.getSql("UIM010181_01.UPDATE"));
+				this.getDao("KgDao").ExcuteNonQuery(sqlBuffer.toString(),
+						new Object[] { moveCoil[1], moveCoil[2] });
+
+				// 更新垛位表
+				sqlBuffer = new StringBuffer();
+				sqlBuffer.append(XmlSqlParsersFactory
+						.getSql("UIM010181_02.UPDATE"));
+				this.getDao("KgDao").ExcuteNonQuery(
+						sqlBuffer.toString(),
+						new Object[] { "", regId, moveCoil[0], moveCoil[0],
+								moveCoil[0], moveCoil[0] });
+
+				this.getDao("KgDao").ExcuteNonQuery(
+						sqlBuffer.toString(),
+						new Object[] { moveCoil[2], regId, moveCoil[1],
+								moveCoil[1], moveCoil[1], moveCoil[1] });
+
+				// 移垛完成后将移垛记录加入移垛记录表,便于跟踪钢卷移动记录
+				sqlBuffer = new StringBuffer();
+				sqlBuffer.append(XmlSqlParsersFactory
+						.getSql("UIM010181_01.INSERT"));
+				this.getDao("KgDao").ExcuteNonQuery(
+						sqlBuffer.toString(),
+						new Object[] { moveCoil[0], moveCoil[1], moveCoil[2],
+								regId, moveOrder, moveGroup, moveDate });
+			}
+			this.getDao("KgDao").CoreCommit(result);
+		} catch (Exception e) {
+			e.printStackTrace();
+			this.getDao("KgDao").CoreRollBack(result);
+		}
+
+		return cro;
+	}
+
+	/**
+	 * 查询空余垛位
+	 * 
+	 * @param areaName
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryEmptyYards(String areaName)
+			throws SQLException {
+		CoreReturnObject cro = null;
+		String[] rowBetween = null;
+		if (areaName != null && !areaName.equals("")) {
+			rowBetween = areaName.split("-");
+		}
+		String sql = "";
+		if (rowBetween != null && rowBetween.length > 1) {
+			sql = XmlSqlParsersFactory.getSql("UIM010181_06.SELECT");
+			cro = this.getDao("KgDao").ExcuteQuery(sql,
+					new Object[] { rowBetween[0], rowBetween[1] });
+		} else {
+			sql = XmlSqlParsersFactory.getSql("UIM010181_05.SELECT");
+			cro = this.getDao("KgDao").ExcuteQuery(sql);
+		}
+		return cro;
+	}
+}

+ 99 - 0
.svn/pristine/0a/0a4b7caa35516ac01e1c22c0ea6019f60a2ea25e.svn-base

@@ -0,0 +1,99 @@
+package UIF.UIF05;
+
+import java.sql.SQLException;
+import java.util.ArrayList;
+import java.lang.Object;
+import CoreFS.SA01.CoreIComponent;
+import CoreFS.SA06.CoreReturnObject;
+import UIB.COM.XmlSqlParsersFactory;
+
+public class UIF051020 extends CoreIComponent 
+{
+	//获得基础数据信息
+	public CoreReturnObject Query_BaseData() throws SQLException
+	{
+		try
+		{
+			CoreReturnObject cro=new CoreReturnObject();
+			java.util.ArrayList rtn_list = new java.util.ArrayList();
+			rtn_list.add(Query_PMData());
+			rtn_list.add(Query_YYData());
+			cro.setResult(rtn_list);
+			return cro;
+		}
+		catch(Exception ex)
+		{
+			CoreReturnObject err = new CoreReturnObject();
+			err.SetErrInfo(ex.toString());
+			return err;
+		}
+	}
+	//获得交货状态基础信息
+	private Object Query_PMData()
+	{
+		try
+		{
+			Object obj = new Object();
+			String Sql = XmlSqlParsersFactory.getSql("UIF051020_04.SELECT");
+			obj=this.getDao("KgDao").ExcuteQuery(Sql).getResult();
+			return obj;
+		}
+		catch(Exception ex)
+		{
+			System.out.print(ex.toString());
+			return null;
+		}
+	}
+	//获得申报原因基础信息
+	private Object Query_YYData()
+	{
+		try
+		{
+			Object obj = new Object();
+			String Sql = XmlSqlParsersFactory.getSql("UIF051020_03.SELECT");
+			obj=this.getDao("KgDao").ExcuteQuery(Sql).getResult();
+			return obj;
+		}
+		catch(Exception ex)
+		{
+			System.out.print(ex.toString());
+			return null;
+		}
+	}
+	//查询可申报的冷卷
+	public CoreReturnObject Get_CCoilData(String where) throws SQLException
+	{
+		try
+		{
+			CoreReturnObject cro=new CoreReturnObject();
+			String Sql = XmlSqlParsersFactory.getSql("UIF051020_01.SELECT");
+			Sql = Sql + where;
+			cro = this.getDao("KgDao").ExcuteQuery(Sql);
+			return cro;
+		}
+		catch(Exception ex)
+		{
+			CoreReturnObject err = new CoreReturnObject();
+			err.SetErrInfo(ex.toString());
+			return err;
+		}
+	}
+	//查询已连退申报的信息
+	public CoreReturnObject Get_DCLData(String where) throws SQLException
+	{
+		try
+		{
+			CoreReturnObject cro=new CoreReturnObject();
+			String Sql = XmlSqlParsersFactory.getSql("UIF051020_02.SELECT");
+			Sql = Sql + where;
+			cro = this.getDao("KgDao").ExcuteQuery(Sql);
+			return cro;
+		}
+		catch(Exception ex)
+		{
+			CoreReturnObject err = new CoreReturnObject();
+			err.SetErrInfo(ex.toString());
+			return err;
+		}
+	}
+}

+ 16 - 0
.svn/pristine/0a/0ac29935d20c28cfb5dbc1c9f6b0192586e5033e.svn-base

@@ -0,0 +1,16 @@
+-----BEGIN PRIVATE KEY-----
+MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBALGn68OHTm3Ewe08
+nYvyQUI7naTf9af3FEe4yikFlgsPTAKDXX1hrGfS1Amk2wVBiAjEfmlghqi557JB
+obeiTlXGMUF0ATLoXWKMdKMFZK3IcG/8hauQhW2l5RUiSN+4Qf38XP/yT3eoLvxA
+82+AzFrpuF4pR6UvjFo4eY7qlv2FAgMBAAECgYAvGCGSkqLCzH7QAdqNx6lvAli2
+5Tu8y+3PWXgVycpNoj93BxXYb/UBDM1yxQXebdG+6T/NdW4c+jMmeOmCwX7cItgH
+UgLmfEqF3PE/U7oIunNh2Q3wbqkljnh9Df7NTapu/6eOn4vhFdQRYJalM7FM5oZc
+9UETRESXoUqgKc/KIQJBAOBu1zQu0d5Sg+CIVZ6YWbm1NvdvtqPPyGjXBItIotRT
+128LLnEnd2OV5D1+l+uR+xPkozs5O/puOifN5w+9gu0CQQDKpMeN0Ed/8O7b6jxD
+uOo8FepXLjCBlq7WQmXIjv22W3LlOTS7Xmy5wf8dlQcORdg2U3cX4AueAdHhVhg4
+r5n5AkALymbt6+PErUsWWbM90L0t/3Iyz6ClvH3H3Dv14UwEoZ74y3qWIT+pcK97
+95Gdo56wLdvRebFH99CAVNXlwswFAkAXtCKrkftrGdG247Vc7ppnoOCihgKihe+5
+nFavmRpQZG4SJhjm+eqZ5/lhinci0kSyRh0eK9TwDKJyS1HV/6RxAkEA3mZizaTs
+9ppt9lXYhLudK6e1ryqFOdDg2wkWA5oUYZ0IDdM7z9jEkR0ya1keUIkTJCkegLrI
+RSSPXymOqTGfaA==
+-----END PRIVATE KEY-----

+ 178 - 0
.svn/pristine/0b/0b9d819f29c8931a705fd257779c2eebc4862cc3.svn-base

@@ -0,0 +1,178 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<queryMap desc="轧辊磨削">
+	
+	<query id="UIK050101_01.SELECT"  desc="查询磨削实绩">
+		<![CDATA[		
+			select t.roll_number,
+       to_char(t.grind_start_time,'yyyy-mm-dd-hh24:mi:ss') grind_start_time,
+       to_char(t.grind_end_time,'yyyy-mm-dd-hh24:mi:ss') grind_end_time,
+       t.roughness,
+       t.roll_diameter_md_before,
+       t.roll_diameter_md_after,
+       t.crownheight,
+       t.PROGRAM_NUMBE,
+       t.crackmax,
+       t.crackmaxlocation,
+       t.crackangle,
+       t.bruisemax,
+       t.bruiseangle,
+       t.stock_removeal_md,
+       t.station_no,
+       t.grindwheelsize,
+       t.operator,
+       t.hardness_md,
+       t.id,
+       t.flag,
+       t.grind_amount,
+       t.roll_roundness,
+       t.roll_type
+  from tbs02_roll_grind t
+ where t.roll_number like ? || '%'
+   and ((substr(to_char(t.grind_start_time, 'yyyymmddhh24miss'), 1, 8) between
+       ? and ?) or
+       (substr(t.grind_date, 1, 8) between ? and ?))	
+		]]>
+	</query>
+	<query id="UIK050101_02.SELECT"  desc="查询轧辊明细">
+		<![CDATA[		
+			select t.id,
+       to_char(t.timestart,'yyyy-mm-dd hh24:mi:ss') timestart,
+       to_char(t.timeend,'yyyy-mm-dd hh24:mi:ss' ) timeend,
+       t.code,
+       decode(t.flag,'ROLLDOWN','换辊','ROLLGRIND','磨削') flag
+  from tbs02_roll_detail t
+  where t.id like ?||'%'
+  and to_char(t.timestart,'yyyymmdd') between ? and ?		
+		]]>
+	</query>
+	<query id="UIK050101_03.SELECT"  desc="查询轧辊明细">
+		<![CDATA[		
+			select t.id,
+       to_char(t.timestart,'yyyy-mm-dd hh24:mi:ss') timestart,
+       to_char(t.timeend,'yyyy-mm-dd hh24:mi:ss' ) timeend,
+       t.code,
+       decode(t.flag,'ROLLDOWN','换辊','ROLLGRIND','磨削') flag
+  from tbs02_roll_detail t
+  where t.id like ?||'%'		
+		]]>
+	</query>
+	<query id="UIK050101_01.UPDATE"  desc="磨削更改">
+		<![CDATA[		
+			update tbs02_roll_grind t
+   				set PROGRAM_NUMBE           = ?,
+       			ROUGHNESS               = ?,
+       			ROLL_DIAMETER_MD_BEFORE = ?,
+       			BRUISEMAX               = ?,
+       			GRIND_AMOUNT            = ?,
+       			STATION_NO              = ?,
+       			ROLL_DIAMETER_MD_AFTER  = ?,
+       			HARDNESS_MD             = ?,
+       			ROLL_TYPE               = ?,
+       			ROLL_ROUNDNESS          = ?,
+       			CRACKMAX                = ?
+ 			where t.roll_number = ?
+ 			and substr(t.grind_start_time,1,8) between ? and ?	
+	
+		]]>
+	</query>
+	<query id="UIK050103_01.SELECT"  desc="轧辊消耗">
+		<![CDATA[		
+		select t.ROLLID_UP ROLLID,
+       t.roll_type,
+       t.RESERVE1 RESERVE,
+       t.stand_id,
+       to_char(t.reg_dtime, 'yyyy-mm-dd hh24:mi:ss') reg_dtime,
+       t.spec_no,
+       t.SHIFT,
+       'UP' DIS   
+  from c_tbk05_roll_up t
+ where t.rollid_up like ? || '%'
+   and (t.roll_type like ? || '%' or t.ROLL_TYPE is null)
+   and to_char(t.reg_dtime, 'yyyymmdd') between ? and ?
+   union all
+   select t.ROLLID_LO ROLLID,
+       t.roll_type,
+       t.RESERVE2 RESERVE,
+       t.stand_id,
+       to_char(t.reg_dtime, 'yyyy-mm-dd hh24:mi:ss') reg_dtime,
+       t.spec_no,
+       t.SHIFT,
+       'LO' DIS 
+  from c_tbk05_roll_up t
+ where t.rollid_up like ? || '%'
+   and (t.roll_type like ? || '%' or t.ROLL_TYPE is null)
+   and to_char(t.reg_dtime, 'yyyymmdd') between ? and ?
+		]]>
+	</query>
+	<query id="UIK050103_01.UPDATE"  desc="换辊更改">
+		<![CDATA[		
+			update c_tbk05_roll_up t
+   				set t.ROLL_TYPE = ?,
+       				t.RESERVE1  = ?,
+       				t.STAND_ID  = ?,
+       				t.REG_DTIME = to_date(?, 'yyyy-MM-dd HH24:mi:ss')
+ 				where t.ROLLID_UP = ?
+   					  and t.SPEC_NO = ?
+	
+		]]>
+	</query>
+	
+	<query id="UIK050103_02.UPDATE"  desc="换辊更改">
+		<![CDATA[		
+			update c_tbk05_roll_up t
+   				set t.ROLL_TYPE = ?,
+       				t.RESERVE2  = ?,
+       				t.STAND_ID  = ?,
+       				t.REG_DTIME = to_date(?, 'yyyy-MM-dd HH24:mi:ss')
+ 				where t.ROLLID_LO = ?
+   					  and t.SPEC_NO = ?
+	
+		]]>
+	</query>
+	<query id="UIK050103_01.CALL"  desc="">
+ 		<![CDATA[
+				{call C_PKG_UIK.ROLL_DETAIL(?,?,?)}
+			]]>
+	</query>
+	<query id="UIK050103_02.SELECT"  desc="轧辊消耗报表">
+		<![CDATA[		
+		select t.ROLL_id,
+       			t.roll_type,
+       			t.roll_diam_before,
+       			t.reg_dtime1,
+       			t.roll_diam_after,
+       			t.reg_dtime2,
+       			round(NVL(power(t.roll_diam_before,2) - power(t.roll_diam_after,2), 0) * 3.14 * 7.85 * 0.25 *
+             decode(t.roll_type, 'IMR', '1580', '1550'),
+             2) rolluse
+  		from tbk05_roll_expend t
+ 		where t.roll_id like ?||'%'
+   				and (t.roll_type like ?||'%' or t.roll_type is null)
+   				and substr(t.reg_dtime1,1,8) between ? and ?
+		]]>
+	</query>
+	<query id="UIK050103_03.SELECT"  desc="轧辊消耗报表">
+		<![CDATA[		
+ 		SELECT t.roll_type,
+          round(SUM(NVL(power(t.roll_diam_before, 2) -
+                        power(t.roll_diam_after, 2),
+                        0) * 3.14 * 7.85 * 0.25 *
+                    decode(t.roll_type, 'IMR', '1580', '1550')),
+                2) rolluse, --消耗量
+          
+          round(SUM(NVL(power(t.roll_diam_before, 2) - power(t.roll_diam_after, 2), 0) * 3.14 * 7.85 * 0.25 * decode(t.roll_type, 'IMR', '1580', '1550') / t.pltcm_wgt), 4) rolluse1,
+          
+          round(sum(NVL(power(t.roll_diam_before, 2) - power(t.roll_diam_after, 2), 0) * 3.14 * 7.85 * 0.25 * decode(t.roll_type, 'IMR', '1580', '1550') * decode(t.ROLL_TYPE, 'BUR', '23.11', '21.51')), 2) rolluse2,
+          
+          round(sum(NVL(power(t.roll_diam_before, 2) -
+                        power(t.roll_diam_after, 2),
+                        0) * 3.14 * 7.85 * 0.25 *
+                    decode(t.roll_type, 'IMR', '1580', '1550') *
+                    decode(t.ROLL_TYPE, 'BUR', '23.11', '21.51') /
+                    t.pltcm_wgt),
+                4) rolluse3
+      FROM tbk05_roll_expend t
+      GROUP BY t.roll_type
+		]]>
+	</query>
+</queryMap>

+ 298 - 0
.svn/pristine/0c/0c1004ebf4886ed0b7639da11a8cb01d7b89634f.svn-base

@@ -0,0 +1,298 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<queryMap desc="发运计划查询">
+	<query id="UIJ060010_01.SELECT"  desc="查询运输单位">
+		<![CDATA[
+		SELECT SHIP_COMP_NM AS LABEL, SHIP_COMP_CD AS VALUE
+		FROM TBJ00_SHIP_COMP
+		ORDER BY 1
+		 ]]>
+	</query>
+	<query id="UIJ060010_02.SELECT"  desc="查询排车计划">
+		<![CDATA[
+		SELECT '' CHK,
+		B.SHIP_DIRNO,
+		--B.GET_ON_PCD,
+		--B.DEST_PCD,
+		(SELECT sm_cfnm   FROM TBZ00_COMMCD      WHERE LG_CD = 'A01009'     AND b.DEST_PCD = SM_CD) DEST_PCD_DESC,
+		--B.EXLV_LINE_CD,
+		--(SELECT x.SM_CFNM   FROM TBZ00_COMMCD   x   WHERE LG_CD = 'A01015'     AND b.EXLV_LINE_CD = SM_CD) EXLV_LINE_CD_DESC,
+		(select CUST_NM FROM TBZ00_CUSTOMER WHERE CUST_CD = b.CUST_CD and REC_TP='01') CUST_NM, 
+		(select CUST_NM ORD_NM FROM TBZ00_CUSTOMER WHERE CUST_CD = b.ORD_CUST_CD and REC_TP='02') ORD_NM,
+		-- B.GET_OFF_PCD,
+		--B.DLIV_TP,
+		--D.SM_CFNM AS DLIV_TP_NM,
+		--B.SHIP_COMP_CD,
+		--C.SHIP_COMP_NM SM_CFNM,
+		B.TRAIN_DLIVNO,
+		B.DLIV_DIRNO,
+		NVL(B.CNT,0) AS CNT,
+		NVL(B.ACT_WGT,0) AS ACT_WGT,
+		B.ALLOC_SEQ,
+		 B.TRANS_CAR_NO,
+		B.LANE_TP,
+		B.ENTERANCE_SEQ,
+		B.ORD_NO,
+		B.ORD_SEQ,
+		B.SPEC_STL_GRD,
+		to_char(B.INSTR_COIL_THK,'FM990.099')||'*'||B.INSTR_COIL_WTH T_W   
+		FROM(SELECT *
+		FROM TBJ01_SHIP_DIR
+		WHERE 1 = 1
+		AND SHIP_PROG_CD = ?           -- SHIP_PROG_CD = '03' 发货指示状态
+		AND SHIP_DIRNO BETWEEN NVL(?,'00000101')||'0000' AND NVL(?,'99991231')||'9999'
+		AND SHIP_DIRNO LIKE ?||'%') A       
+		,(SELECT X.*, Y.CNT CNT, Y.ACT_WGT ACT_WGT,Y.ORD_NO,Y.ORD_SEQ,Y.SPEC_STL_GRD,Y.INSTR_COIL_THK,Y.INSTR_COIL_WTH 
+		FROM TBJ01_DLIV_DIR X
+		,(SELECT DLIV_DIRNO
+		, COUNT(*)            AS CNT
+		, NVL(SUM(ACT_WGT),0) AS ACT_WGT
+		, MAX(ORD_NO)         AS ORD_NO
+		, MAX(ORD_SEQ)        AS ORD_SEQ
+		, MAX(SPEC_STL_GRD)   AS SPEC_STL_GRD
+		, MAX(INSTR_COIL_THK) AS INSTR_COIL_THK
+		, MAX(INSTR_COIL_WTH) AS INSTR_COIL_WTH
+		FROM C_TBL02_COIL_COMM
+		WHERE 1 = 1
+		AND CUR_PROG_CD like ?||'%'            -- CUR_PROG_CD = 'SFB'(物料进度)
+		AND LINE_TP='S'  --酸洗线
+		AND SHIP_DIRNO BETWEEN NVL(?,'00000101')||'0000' AND NVL(?,'99991231')||'9999'
+		GROUP BY DLIV_DIRNO) Y
+		WHERE X.DLIV_DIRNO = Y.DLIV_DIRNO
+		AND X.DLIV_TP LIKE ?||'%'
+		AND NVL(X.LANE_TP,'*') LIKE ?||'%'
+		AND NVL(X.ENTERANCE_SEQ,0) = NVL(?,0)) B
+		,(SELECT *
+		FROM TBJ00_SHIP_COMP
+		WHERE SHIP_COMP_CD LIKE ?||'%') C
+		,(SELECT SM_CD, SM_CFNM FROM TBZ00_COMMCD WHERE LG_CD = 'A01012' AND SM_CD LIKE ?||'%') D
+		WHERE A.SHIP_DIRNO = B.SHIP_DIRNO(+)
+		AND B.SHIP_COMP_CD = C.SHIP_COMP_CD(+)
+		AND D.SM_CD = B.DLIV_TP 
+		AND B.ISDELETED = 0
+		AND B.ISCANCEL = 0
+		ORDER BY B.ALLOC_SEQ,B.DLIV_DIRNO
+		 ]]>
+	</query>
+	<query id="UIJ060010_03.SELECT"  desc="查询待装车钢卷">
+		<![CDATA[
+		SELECT '' CHK,
+		A.OLD_SAMPL_NO,
+		A.COIL_NO,
+		DECODE(A.TOT_DEC_GRD,'1','合格','2','次品',' ') TOT_DEC_GRD,
+		--DECODE(A.MATRL_END_CAUSE_CD,'1','合格','2','次品',' ') MATRL_END_CAUSE_CD,
+		a.instr_coil_wth COIL_WTH,
+		a.instr_coil_thk COIL_THK,
+		a.ORD_NO,
+		a.ORD_SEQ,
+		a.spec_stl_grd,
+		A.COIL_OUTDIA,
+		NVL(A.ACT_WGT,0) ACT_WGT,
+		NVL(A.CAL_WGT,0) CAL_WGT,
+		A.CUR_LOAD_LOC,
+		B.DEST_PCD,
+		B.ALLOC_SEQ,
+		B.TRANS_CAR_NO,
+		B.DLIV_DIRNO,
+		B.SHIP_DIRNO,
+		(SELECT sm_cfnm   FROM TBZ00_COMMCD      WHERE LG_CD = 'A01009'     AND b.DEST_PCD = SM_CD) DEST_PCD_DESC,
+		--(SELECT x.SM_CFNM   FROM TBZ00_COMMCD   x   WHERE LG_CD = 'A01015'     AND b.EXLV_LINE_CD = SM_CD) EXLV_LINE_CD_DESC,
+		(select CUST_NM FROM TBZ00_CUSTOMER WHERE CUST_CD = B.CUST_CD and REC_TP='01') CUST_NM, 
+		(select CUST_NM ORD_NM FROM TBZ00_CUSTOMER WHERE CUST_CD = B.ORD_CUST_CD and REC_TP='02') ORD_NM,
+		A.HCOLOUR_REM    
+		FROM C_TBL02_COIL_COMM A,TBJ01_DLIV_DIR B,TBJ01_SHIP_DIR C
+		WHERE A.DLIV_DIRNO = B.DLIV_DIRNO
+		AND B.SHIP_DIRNO = C.SHIP_DIRNO
+		AND A.SHIP_PROG_CD = '04'
+		AND B.DLIV_TP  = ? 
+		ORDER BY B.ALLOC_SEQ
+		 ]]>
+	</query>
+	<query id="UIJ060010_04.SELECT"  desc="查询下达排车计划时排车计划对应的钢卷信息">
+		<![CDATA[
+		SELECT substr(A.DLIV_NO,5,8) DLIV_NO,A.COIL_NO,A.COIL_STEEL,A.COIL_HEIGHT||'*'||A.COIL_WIDTH T_W FROM TBJ01_DLIVNO_COIL A 
+		WHERE A.DLIV_NO = ?  
+		order by a.COIL_NO
+		 ]]>
+	</query>
+	<query id="UIJ060010_05.SELECT"  desc="查询发运计划下钢卷详细信息">
+		<![CDATA[
+		SELECT T.COIL_NO,
+		       T.SPEC_STL_GRD,
+		       TO_CHAR(O.ORD_THK, 'FM990.099') || '*' || O.ORD_WTH ORD_SIZE,
+		       T.ACT_WGT,
+		       T.CUR_LOAD_LOC
+		  FROM C_TBL02_COIL_COMM T, TBA01_ORD_LINE O
+		 WHERE T.ORD_NO = O.ORD_NO
+		   AND T.ORD_SEQ = O.ORD_SEQ
+		   AND T.DLIV_DIRNO = ?
+		 ]]>
+	</query>
+	<query id="UIJ060010_06.SELECT"  desc="查询同合同号下可发钢卷">
+		<![CDATA[
+		SELECT 'FALSE' CHK,
+		       T.COIL_NO,
+		       T.SPEC_STL_GRD,
+		       T.COIL_THK,
+		       T.COIL_WTH,
+		       T.INSTR_COIL_THK,
+		       T.INSTR_COIL_WTH,
+		       T.ACT_WGT,
+		       T.COIL_LEN,
+		       T.COIL_INDIA,
+		       T.COIL_OUTDIA,
+		       T.CUR_LOAD_LOC,
+		       T.CUR_PROG_CD,
+		       T.ORD_NO,
+		       T.ORD_SEQ,
+		       DECODE(T.ORD_FL, '1', '订单材', '2', '余材') ORD_FL,
+		       O.ORDCUST_CD,
+		       O.CUST_CD,
+		       O.DEST_CD
+		  FROM C_TBL02_COIL_COMM T, TBE02_ORD_PRC O
+		 WHERE T.ORD_NO = O.ORD_NO
+		   AND T.ORD_SEQ = O.ORD_SEQ
+		   AND T.CUR_PROG_CD = 'DFA'
+		   AND T.ORD_NO = ?
+		   AND T.ORD_SEQ = ?
+		   AND T.COIL_NO || '&' LIKE ? || '%'
+		   AND T.COIL_THK BETWEEN NVL(?, '0') AND NVL(?, '999')
+		   AND T.COIL_WTH BETWEEN NVL(?, '0') AND NVL(?, '9999')
+		 ]]>
+	</query>
+	<!-- 待装车取消 -->
+	<query id="UIJ060010_01.UPDATE"  desc="取消运输表中排车顺序及车辆号">
+		<![CDATA[
+		update tbj01_dliv_dir
+		set 
+		ALLOC_SEQ = '',
+		TRANS_CAR_NO = '',
+		LANE_TP = '',
+		ENTERANCE_SEQ = ''   
+		where DLIV_DIRNO = ? 
+		 ]]>
+	</query>
+	<query id="UIJ060010_02.UPDATE"  desc="取消公共表中车辆号">
+		<![CDATA[
+		update C_TBL02_COIL_COMM
+			set 
+			TRAIN_STEP_NO = '',
+			TRANS_CAR_NO = '',
+			SHIP_PROG_CD = '03' 
+			where DLIV_DIRNO =?
+			AND SHIP_PROG_CD = '04' 
+		 ]]>
+	</query>
+	<query id="UIJ060010_03.UPDATE"  desc="更新发货表发运状态">
+		<![CDATA[
+		update tbj01_ship_dir
+			set 
+			ship_prog_cd = '03' 
+			where ship_dirno =?
+		 ]]>
+	</query>
+	<!-- 确认排车操作 -->
+	<query id="UIJ060010_04.UPDATE"  desc="生成发货清单号">
+		<![CDATA[
+		UPDATE   TBJ01_DLIV_DIR
+		SET      INV_NO = (select 'LJ'||to_char(sysdate,'y')||'-'||
+	    nvl((select to_char(to_number(nvl(substr(max(inv_no),5,6),0))+1,'FM000000') from tbj01_dliv_dir
+	    where inv_no like 'LJ'||to_char(sysdate,'y')||'%'),'000001')
+	    from dual) 
+		, INV_DTIME  = TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS')
+		WHERE   DLIV_DIRNO = ?
+		 ]]>
+	</query>
+	<query id="UIJ060010_05.UPDATE"  desc="发货清单号更新到钢卷公共表">
+		<![CDATA[
+		update C_TBL02_COIL_COMM X SET 
+				X.SHIP_INVNO = ?
+				WHERE X.DLIV_DIRNO = ?
+		 ]]>
+	</query>
+	<query id="UIJ060010_06.UPDATE"  desc="更新钢卷公共表排车顺序和车辆号">
+		<![CDATA[
+		update C_TBL02_COIL_COMM
+			set 
+			TRANS_CAR_NO = ?,
+			TRAIN_STEP_NO = ?,
+			DLIV_DIRNO = ?,
+			SHIP_DIRNO = ?,
+			ACT_WGT    = ?,
+			SHIP_PROG_CD = '06',
+			BEF_LOAD_LOC = CUR_LOAD_LOC,
+			BEF_LOAD_LOC_DTIME = CUR_LOAD_LOC_DTIME,
+			CUR_LOAD_LOC = '',CUR_LOAD_LOC_DTIME = TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS')
+			where OLD_SAMPL_NO =? 
+		 ]]>
+	</query>
+	<query id="UIJ060010_07.UPDATE"  desc="清除垛位表钢卷信息">
+		<![CDATA[
+		update C_TBK08_COIL_YARD A SET
+			A.COIL_NO = '',
+			A.MOD_ID = '',
+			A.MOD_TIME = ''
+			WHERE A.COIL_NO = ?
+		 ]]>
+	</query>
+	<query id="UIJ060010_08.UPDATE"  desc="更新发运表发运状态">
+		<![CDATA[
+		update tbj01_ship_dir
+				set 
+				ship_prog_cd = '05'
+				where ship_dirno =?
+		 ]]>
+	</query>
+	<query id="UIJ060010_09.UPDATE"  desc="将钢卷加入发运计划">
+		<![CDATA[
+		UPDATE C_TBL02_COIL_COMM T
+		   SET T.BEF_PROG_CD       = T.CUR_PROG_CD,
+		       T.BEF_PROG_CD_DTIME = T.CUR_PROG_CD_DTIME,
+		       T.BEF_PROG_CD_PGM   = T.CUR_PROG_CD_PGM,
+		       T.CUR_PROG_CD       = 'DFB',
+		       T.CUR_PROG_CD_DTIME = TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS'),
+		       T.CUR_PROG_CD_PGM   = 'UIJ030021',
+		       T.DLIV_DIRNO        = (SELECT max(A.DLIV_DIRNO) FROM C_TBL02_COIL_COMM A WHERE A.COIL_NO IN(?)),
+		       T.SHIP_DIRNO        = (SELECT max(A.SHIP_DIRNO) FROM C_TBL02_COIL_COMM A WHERE A.COIL_NO IN(?)),
+		       T.SHIP_PROG_CD      = (SELECT max(A.SHIP_PROG_CD) FROM C_TBL02_COIL_COMM A WHERE A.COIL_NO IN(?)),
+		       T.SHIP_DIR_DTIME    = (SELECT max(A.SHIP_DIR_DTIME) FROM C_TBL02_COIL_COMM A WHERE A.COIL_NO IN(?)),
+		       T.DLIV_TP           = (SELECT max(A.DLIV_TP) FROM C_TBL02_COIL_COMM A WHERE A.COIL_NO IN(?)),
+		       T.TRANS_CAR_NO      = (SELECT max(A.TRANS_CAR_NO) FROM C_TBL02_COIL_COMM A WHERE A.COIL_NO IN(?)),
+			   T.TRAIN_STEP_NO     = (SELECT max(A.TRAIN_STEP_NO) FROM C_TBL02_COIL_COMM A WHERE A.COIL_NO IN(?))
+		 WHERE T.COIL_NO IN (?)
+		 ]]>
+	</query>
+	<query id="UIJ060010_10.UPDATE"  desc="将钢卷从发运计划中删除">
+		<![CDATA[
+		UPDATE C_TBL02_COIL_COMM T
+		   SET T.BEF_PROG_CD       = T.CUR_PROG_CD,
+		       T.BEF_PROG_CD_DTIME = T.CUR_PROG_CD_DTIME,
+		       T.BEF_PROG_CD_PGM   = T.CUR_PROG_CD_PGM,
+		       T.CUR_PROG_CD       = 'DFA',
+		       T.CUR_PROG_CD_DTIME = TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS'),
+		       T.CUR_PROG_CD_PGM   = 'UIJ030021',
+		       T.DLIV_DIRNO        = '',
+		       T.SHIP_DIRNO        = '',
+		       T.SHIP_PROG_CD      = '',
+		       T.SHIP_DIR_DTIME    = '',
+		       T.DLIV_TP           = '',
+		       T.TRANS_CAR_NO      = '',
+			   T.TRAIN_STEP_NO     = ''
+		 WHERE T.COIL_NO IN (?)
+		 ]]>
+	</query>
+	<query id="UIJ060010_01.CALL"  desc="">
+		<![CDATA[
+		{call ZL_SUAN_DCS01.CRET_BOOK_GENT(?,?,?)}
+		 ]]>
+	</query>
+	<query id="UIJ060010_02.CALL"  desc="">
+		<![CDATA[
+		{call C_PKG_OS_COMM.ORD_STS_MAIN(?,?,?)}
+		 ]]>
+	</query>
+	<query id="UIJ060010_03.CALL"  desc="">
+		<![CDATA[
+		{call C_PKG_OS_COMM.SAVE_ORD_STS(?,?,?,?,?,?,?,?,?,?,?)}
+		 ]]>
+	</query>
+</queryMap>

BIN
.svn/pristine/0c/0c60815ff9402c7f4ed063bfb8ce61cc7aede33a.svn-base


+ 390 - 0
.svn/pristine/0c/0c74f3b244557788d1cc312c4f2abb491edc21d4.svn-base

@@ -0,0 +1,390 @@
+package QCM.COMMUNAL.VO;
+
+import java.io.Serializable;
+import java.util.Date;
+
+public class QcmJudgeLockingApply implements Serializable{
+
+	private String apply_id;
+private int lock_seq;
+	
+    
+
+	public int getLock_seq() {
+		return lock_seq;
+	}
+	public void setLock_seq(int lock_seq) {
+		this.lock_seq = lock_seq;
+	}
+	
+	private String material_no;
+	
+	
+
+	public String getMaterial_no() {
+		return material_no;
+	}
+	public void setMaterial_no(String material_no) {
+		this.material_no = material_no;
+	}
+
+	/** 
+	 * 锟斤拷锟斤拷锟斤拷源锟斤拷锟斤拷
+	 */ 
+	private String lock_type_code;
+	
+
+	public String getLock_type_code() {
+		return lock_type_code;
+	}
+	public void setLock_type_code(String lock_type_code) {
+		this.lock_type_code = lock_type_code;
+	}
+	
+	/** 
+	 * 锟斤拷锟斤拷锟斤拷源锟斤拷锟斤拷锟斤拷C锟斤拷锟缴凤拷锟斤拷,P锟斤拷锟斤拷锟斤拷锟斤拷,S锟斤拷锟斤拷锟斤拷锟斤拷,D锟斤拷探锟斤拷锟斤拷,F锟斤拷锟斤拷锟斤拷锟斤拷)
+	 */ 
+	private String lock_type_desc;
+	
+	
+
+	public String getLock_type_desc() {
+		return lock_type_desc;
+	}
+	public void setLock_type_desc(String lock_type_desc) {
+		this.lock_type_desc = lock_type_desc;
+	}
+
+	/** 
+	 * 锟斤拷锟斤拷原锟津(伙拷取锟斤拷锟较革拷锟斤拷目-拼锟斤拷值锟斤拷
+	 */ 
+	private String lock_memo;
+	
+
+	public String getLock_memo() {
+		return lock_memo;
+	}
+	public void setLock_memo(String lock_memo) {
+		this.lock_memo = lock_memo;
+	}
+	
+	private String unlock_type_code;
+	
+
+	public String getUnlock_type_code() {
+		return unlock_type_code;
+	}
+	public void setUnlock_type_code(String unlock_type_code) {
+		this.unlock_type_code = unlock_type_code;
+	}
+	
+	private String unlock_type_desc;
+	
+
+	public String getUnlock_type_desc() {
+		return unlock_type_desc;
+	}
+	public void setUnlock_type_desc(String unlock_type_desc) {
+		this.unlock_type_desc = unlock_type_desc;
+	}
+	
+	private String unlock_memo;
+	
+	
+
+	public String getUnlock_memo() {
+		return unlock_memo;
+	}
+	public void setUnlock_memo(String unlock_memo) {
+		this.unlock_memo = unlock_memo;
+	}
+	
+	/** 
+	 * 炉锟斤拷
+	 */ 
+	private String heat_no;
+	public String getHeat_no() {
+		return this.heat_no;
+	}
+	public void setHeat_no(String heat_no) {
+		this.heat_no = heat_no;
+	}
+
+	/** 
+	 * 锟斤拷锟斤拷锟�
+	 */ 
+	private String batch_no;
+	public String getBatch_no() {
+		return this.batch_no;
+	}
+	public void setBatch_no(String batch_no) {
+		this.batch_no = batch_no;
+	}
+
+	/** 
+	 * 母锟斤拷锟�锟缴凤拷锟斤拷)
+	 */ 
+	private String board_no;
+	public String getBoard_no() {
+		return this.board_no;
+	}
+	public void setBoard_no(String board_no) {
+		this.board_no = board_no;
+	}
+
+	/** 
+	 * 锟饺达拷锟斤拷锟�
+	 */ 
+	private String ht_no;
+	
+
+	public String getHt_no() {
+		return ht_no;
+	}
+	public void setHt_no(String ht_no) {
+		this.ht_no = ht_no;
+	}
+
+	/** 
+	 * 锟斤拷锟斤拷锟�
+	 */ 
+	private String plan_no;
+	
+
+	public String getPlan_no() {
+		return plan_no;
+	}
+	public void setPlan_no(String plan_no) {
+		this.plan_no = plan_no;
+	}
+
+	private String design_key;
+	
+	
+
+	public String getDesign_key() {
+		return design_key;
+	}
+	public void setDesign_key(String design_key) {
+		this.design_key = design_key;
+	}
+
+	/** 
+	 * 锟斤拷品锟芥范锟斤拷
+	 */ 
+	private String psc;
+	public String getPsc() {
+		return this.psc;
+	}
+	public void setPsc(String psc) {
+		this.psc = psc;
+	}
+
+	/** 
+	 * 锟斤拷锟竭达拷锟斤拷
+	 */ 
+	private String pline_code;
+	public String getPline_code() {
+		return this.pline_code;
+	}
+	public void setPline_code(String pline_code) {
+		this.pline_code = pline_code;
+	}
+
+	/** 
+	 * 锟斤拷锟斤拷锟斤拷锟斤拷
+	 */ 
+	private String pline_name;
+	public String getPline_name() {
+		return this.pline_name;
+	}
+	public void setPline_name(String pline_name) {
+		this.pline_name = pline_name;
+	}
+
+	/** 
+	 * 锟斤拷锟斤拷锟斤拷
+	 */ 
+	private String unlock_name;
+	
+
+	public String getUnlock_name() {
+		return unlock_name;
+	}
+	public void setUnlock_name(String unlock_name) {
+		this.unlock_name = unlock_name;
+	}
+
+	/** 
+	 * 锟斤拷锟斤拷时锟斤拷
+	 */ 
+	private Date unlock_time;
+
+
+
+	public Date getUnlock_time() {
+		return unlock_time;
+	}
+	public void setUnlock_time(Date unlock_time) {
+		this.unlock_time = unlock_time;
+	}
+	private String psc_desc;
+	private String prod_code;
+	private String prod_name;
+	private String steel_code;
+	private String steel_name;
+	private String std_code;
+	private String std_name;
+
+
+
+	public String getPsc_desc() {
+		return psc_desc;
+	}
+	public void setPsc_desc(String psc_desc) {
+		this.psc_desc = psc_desc;
+	}
+	public String getProd_code() {
+		return prod_code;
+	}
+	public void setProd_code(String prod_code) {
+		this.prod_code = prod_code;
+	}
+	public String getProd_name() {
+		return prod_name;
+	}
+	public void setProd_name(String prod_name) {
+		this.prod_name = prod_name;
+	}
+	public String getSteel_code() {
+		return steel_code;
+	}
+	public void setSteel_code(String steel_code) {
+		this.steel_code = steel_code;
+	}
+	public String getSteel_name() {
+		return steel_name;
+	}
+	public void setSteel_name(String steel_name) {
+		this.steel_name = steel_name;
+	}
+	public String getStd_code() {
+		return std_code;
+	}
+	public void setStd_code(String std_code) {
+		this.std_code = std_code;
+	}
+	public String getStd_name() {
+		return std_name;
+	}
+	public void setStd_name(String std_name) {
+		this.std_name = std_name;
+	}
+	private String lock_id;
+
+
+
+	public String getLock_id() {
+		return lock_id;
+	}
+	public void setLock_id(String lock_id) {
+		this.lock_id = lock_id;
+	}
+    private String create_id;
+    private String create_name;
+    private Date create_time;
+    
+    
+	
+
+	public String getApply_id() {
+		return apply_id;
+	}
+	public void setApply_id(String apply_id) {
+		this.apply_id = apply_id;
+	}
+	public String getCreate_id() {
+		return create_id;
+	}
+	public void setCreate_id(String create_id) {
+		this.create_id = create_id;
+	}
+	public String getCreate_name() {
+		return create_name;
+	}
+	public void setCreate_name(String create_name) {
+		this.create_name = create_name;
+	}
+	public Date getCreate_time() {
+		return create_time;
+	}
+	public void setCreate_time(Date create_time) {
+		this.create_time = create_time;
+	}
+
+	private String height;
+
+
+
+	public String getHeight() {
+		return height;
+	}
+	public void setHeight(String height) {
+		this.height = height;
+	}
+
+	
+	private String valid_flag;
+	private String cancel_name;
+	private String cancel_memo;
+	private Date cancel_time;
+	
+	private String status;
+	private String check_name;
+	private Date check_time;
+
+
+
+	public String getValid_flag() {
+		return valid_flag;
+	}
+	public void setValid_flag(String valid_flag) {
+		this.valid_flag = valid_flag;
+	}
+	public String getCancel_name() {
+		return cancel_name;
+	}
+	public void setCancel_name(String cancel_name) {
+		this.cancel_name = cancel_name;
+	}
+	public String getCancel_memo() {
+		return cancel_memo;
+	}
+	public void setCancel_memo(String cancel_memo) {
+		this.cancel_memo = cancel_memo;
+	}
+	public Date getCancel_time() {
+		return cancel_time;
+	}
+	public void setCancel_time(Date cancel_time) {
+		this.cancel_time = cancel_time;
+	}
+	public String getStatus() {
+		return status;
+	}
+	public void setStatus(String status) {
+		this.status = status;
+	}
+	public String getCheck_name() {
+		return check_name;
+	}
+	public void setCheck_name(String check_name) {
+		this.check_name = check_name;
+	}
+	public Date getCheck_time() {
+		return check_time;
+	}
+	public void setCheck_time(Date check_time) {
+		this.check_time = check_time;
+	}
+}

+ 15 - 0
.svn/pristine/0c/0ca70208941577dd768192dc39d81c8f1e4fd880.svn-base

@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" 
+    "http://www.springframework.org/dtd/spring-beans.dtd">
+<beans>
+
+	<bean id="hessionService"
+		class="CoreFS.SA01.CoreCommunicationService">
+	</bean>
+	<bean name="/HessianRemoting"
+		class="org.springframework.remoting.caucho.HessianServiceExporter">
+		<property name="service" ref="hessionService" />
+		<property name="serviceInterface"
+			value="CoreFS.SA06.CoreICommunicationService" />
+	</bean>
+</beans>

+ 68 - 0
.svn/pristine/0c/0ccaf597420726b13821e54d7e519c5891eb265b.svn-base

@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding='UTF-8'?>
+
+<queryMap desc="">
+
+<query id="UIF071030.Query_PkgPlan" desc='得到包装单元计划的明细信息'>
+	<![CDATA[
+		SELECT F.PKG_NO,
+		       F.C_COIL_NO COIL_NO,
+		       nvl(A.COIL_THK,0) COIL_THK,
+		       nvl(A.COIL_WTH,0) COIL_WTH,
+		       A.COIL_LEN,
+		       A.COIL_INDIA,
+		       A.COIL_OUTDIA,
+		       A.ACT_WGT,
+		       C.C_ORD_THK,
+		       C.C_ORD_WTH,
+		       C.C_ORD_LEN,
+		       C.C_ORD_INDIA,
+		       C.C_ORD_OUTDIA,
+		       C.C_EXTSHAPE_REQ,
+		       B.SM_CSNM CUR_PROG_CD,
+		       F.STATUS_CD,
+		       A.CUR_LOAD_LOC,
+		       C.ACID_PROD_PATH,
+		       C.ORD_NO,
+		       C.ORD_SEQ,
+		       C.C_SPEC_STL_GRD,
+		       C.C_SPEC_ABBSYM,
+		       H.SM_CFNM ORD_USEAGE_CD,
+		       C.DEL_TO_DATE,
+		       D.CUST_NM ORDCUST_CD,
+		       E.SM_CFNM DEST_CD,
+		       C.ORD_UNIT_WGT,
+		       C.ORD_UNIT_WGT_MIN,
+		       C.ORD_UNIT_WGT_MAX,
+		       C.C_PRODNM_CD,
+		       I.SM_CFNM PACK_METHOD,
+		       DECODE(C.EDGE_PROC_YN, 'Y', '√', NULL) EDGE_PROC_YN
+		  FROM C_TBC02_COIL_COMM A,
+		       TBE02_ORD_PRC     C,
+		       TBZ00_COMMCD      B,
+		       TBZ00_CUSTOMER    D,
+		       TBZ00_COMMCD      E,
+		       L_TBF03_SPEC_PACK F,
+		       TBZ00_COMMCD      H,
+		       TBZ00_COMMCD      I
+		 WHERE F.ORD_NO = C.ORD_NO(+)
+		   AND F.ORD_SEQ = C.ORD_SEQ(+)
+		   AND A.CUR_PROG_CD = B.SM_CD(+)
+		   AND C.ORDCUST_CD = D.CUST_CD(+)
+		   AND C.PACK_METHOD = I.SM_CD(+)
+		   AND C.C_ORD_USEAGE_CD = H.SM_CD(+)
+		   AND C.DEST_CD = E.SM_CD(+)
+		   AND A.OLD_SAMPL_NO = F.C_COIL_NO
+		   AND I.LG_CD(+) = 'A01010'
+		   AND F.FLAG = 'Y'
+		   AND (SELECT COUNT(1) FROM L_TBF03_SPEC_PACK T WHERE T.PKG_NO = F.PKG_NO AND T.STATUS_CD NOT IN('D','E')) > 0
+		   AND F.STATUS_CD IN('A', 'B', 'C', 'D', 'F') ORDER BY F.COIL_EDT_SEQ
+	]]>
+</query>
+<query id="UIF071030.Del_PkgCoil" desc="删除计划钢卷信息" >
+		<![CDATA[
+			{call C_PKG_UIF_PKG.P_PRD_PACKCOIL_DEL(?,?,?,?)}
+		]]>
+</query>
+</queryMap>
+
+

+ 14 - 0
.svn/pristine/0d/0d209167ae5647c17bbbd03f1e41239e2f7f1721.svn-base

@@ -0,0 +1,14 @@
+package QCM.JHY01.JHY0101;
+
+import javax.jws.WebMethod;
+import javax.jws.WebService;
+
+@WebService
+public class SampleDateWebService {
+	
+	@WebMethod
+	public void  test() {
+		System.out.print("999");
+	}
+
+}

+ 102 - 0
.svn/pristine/0e/0e03eff84e7f9a780e477585f47b5824527ca18f.svn-base

@@ -0,0 +1,102 @@
+package UIB.JHY;
+
+import java.sql.SQLException;
+import java.util.ArrayList;
+
+import CoreFS.SA01.CoreIComponent;
+import CoreFS.SA06.CoreReturnObject;
+import UIB.COM.XmlSqlParsersFactory;
+
+/**
+ * 
+ * @desc   
+ * @author meiguiping
+ * @date   2011 8:29:35 PM
+ */
+public class JHYComSave  extends CoreIComponent
+{
+	/**
+	 * @param list
+	 * 			用1、 按照SQLID、其它参数顺序放入前台list
+	 * 		    用2、在ArrayList中加入ArrayList,后者与1相同,可一次执行多条SQL
+	 * @return
+	 * @throws Exception
+	 */
+	public CoreReturnObject	doSimpleSave(ArrayList	list)	throws	Exception
+	{
+		CoreReturnObject	cro		=		new		CoreReturnObject();
+		try
+		{
+			if(list == null) throw new Exception("错误,参数不允许为null!");
+	
+			if(list.size() == 0)  throw new Exception("错误,没有传入任何参数!");
+			
+			if(list.get(0) instanceof ArrayList )
+			{
+				int		len		=	list.size();
+				for(int i = 0; i < len ; i++)
+				{
+					if(list.get(0) instanceof ArrayList)
+					{
+						doSimpleSave((ArrayList)list.get(i));
+					}
+					else
+					{
+						throw new Exception("参数类型错误,请检查!");
+					}
+				}
+			}
+			else
+			{
+				String			sqlID	=	list.get(0).toString();//传入的第一个参数为SQL的ID
+				if(list.size() == 1)//无参查询
+				{
+					cro		=	this.ExcuteNoParameter(sqlID);
+				}
+				else//带参查询
+				{
+					cro		=	this.ExcuteWithParameter(sqlID, list);
+				}
+			}
+		}catch(Exception ex)
+		{
+			System.out.print("保存操作参数错误: "+ex.getMessage());
+		}
+		return	cro;
+	}	
+	
+	/**
+	 * @desc  带参数SQL
+	 * @param sqlID
+	 * @param list
+	 * @return
+	 * @throws SQLException
+	 */
+	private  CoreReturnObject	ExcuteWithParameter(String sqlID , ArrayList list)throws SQLException
+	{
+		CoreReturnObject	cro		=	null;
+		int					len		=	list.size()-1;
+		Object[]	        obj		=	new Object[len];
+		//System.out.println("list长度:"+list.size());
+		for(int i = 0; i < len; i++)
+		{
+			obj[i]	=	list.get(i+1).toString();//第0个参数为SQL语句,SQL语句中的参数需要从第一个开始
+		}
+		cro		=	this.getDao("JhyDao").ExcuteNonQuery(XmlSqlParsersFactory.getSql(sqlID) , obj);
+
+		return cro;
+	}
+	
+	/**
+	 * @desc  无参数
+	 * @param sqlID
+	 * @return
+	 * @throws SQLException
+	 */
+	private CoreReturnObject	ExcuteNoParameter(String sqlID)throws SQLException
+	{
+		CoreReturnObject	cro		=	null;
+		cro							=	this.getDao("JhyDao").ExcuteNonQuery(XmlSqlParsersFactory.getSql(sqlID));
+		return cro;
+	}
+}

+ 142 - 0
.svn/pristine/0e/0e2ff5edca29bc23ac5c596a9e38e5282913ca4f.svn-base

@@ -0,0 +1,142 @@
+package UIJ.UIJ04;
+
+import java.sql.SQLException;
+import java.util.ArrayList;
+
+import CoreFS.SA01.CoreIComponent;
+import CoreFS.SA06.CoreReturnObject;
+
+/**
+ * 发运计划回退
+ * 
+ * @author siy
+ * @date 2010-9-13
+ */
+public class UIJ040040 extends CoreIComponent {
+
+	/**
+	 * 查询发运计划信息
+	 * 
+	 * @param fromDate
+	 * @param toDate
+	 * @param dlivTp
+	 * @param dlivDirNo
+	 * @param isCancel
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryDlivPlan(String fromDate, String toDate,
+			String dlivTp, String dlivDirNo, String isCancel)
+			throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		StringBuffer sqlBuffer = new StringBuffer();
+		sqlBuffer.append("SELECT '' CHK,\n");
+		sqlBuffer.append(" B.SHIP_DIRNO,\n");
+		sqlBuffer.append("  B.GET_ON_PCD,\n");
+		sqlBuffer.append(" B.DEST_PCD,\n");
+		sqlBuffer
+				.append(" (SELECT sm_cfnm   FROM TBZ00_COMMCD      WHERE LG_CD = 'A01009'     AND b.DEST_PCD = SM_CD) DEST_PCD_DESC,\n");
+		sqlBuffer.append(" B.EXLV_LINE_CD,\n");
+		sqlBuffer
+				.append(" (SELECT x.SM_CFNM   FROM TBZ00_COMMCD   x   WHERE LG_CD = 'A01015'     AND b.EXLV_LINE_CD = SM_CD) EXLV_LINE_CD_DESC,\n");
+		sqlBuffer
+				.append(" (select CUST_NM FROM TBZ00_CUSTOMER WHERE CUST_CD = b.CUST_CD and REC_TP='01') CUST_NM, \n");
+		sqlBuffer
+				.append(" (select CUST_NM ORD_NM FROM TBZ00_CUSTOMER WHERE CUST_CD = b.ORD_CUST_CD and REC_TP='02') ORD_NM,\n");
+		sqlBuffer.append(" B.GET_OFF_PCD,\n");
+		// sqlBuffer.append(" B.DLIV_TP,\n");
+		sqlBuffer.append(" D.SM_CFNM AS DLIV_TP_NM,\n");
+		// sqlBuffer.append(" B.SHIP_COMP_CD,\n");
+		sqlBuffer.append(" C.SHIP_COMP_NM SM_CFNM,\n");
+		sqlBuffer.append(" B.TRAIN_DLIVNO,\n");
+		sqlBuffer.append(" B.DLIV_DIRNO,\n");
+		sqlBuffer.append(" NVL(B.CNT,0) AS CNT,\n");
+		sqlBuffer.append(" NVL(B.ACT_WGT,0) AS ACT_WGT,\n");
+		sqlBuffer.append(" B.ALLOC_SEQ,\n");
+		sqlBuffer.append(" B.TRANS_CAR_NO,\n");
+		sqlBuffer.append(" B.LANE_TP,\n");
+		sqlBuffer.append(" B.ENTERANCE_SEQ,\n");
+		sqlBuffer.append(" B.ORD_NO,\n");
+		sqlBuffer.append(" B.ORD_SEQ,\n");
+		sqlBuffer.append(" B.SPEC_STL_GRD,\n");
+		sqlBuffer.append(" B.INSTR_COIL_THK||'*'||B.INSTR_COIL_WTH T_W,\n");
+		sqlBuffer.append(" ISCANCEL   \n");
+		sqlBuffer.append(" FROM(SELECT *\n");
+		sqlBuffer.append(" FROM TBJ01_SHIP_DIR\n");
+		sqlBuffer.append(" WHERE 1 = 1\n");
+		sqlBuffer
+				.append(" AND SHIP_PROG_CD = '03'           -- SHIP_PROG_CD = '03'\n");
+		sqlBuffer
+				.append(" AND SHIP_DIRNO BETWEEN NVL(?,'00000101')||'0000' AND NVL(?,'99991231')||'9999'\n");
+		sqlBuffer.append(" AND SHIP_DIRNO LIKE ''||'%') A       \n");
+		sqlBuffer
+				.append(" ,(SELECT X.*, Y.CNT CNT, Y.ACT_WGT ACT_WGT,Y.ORD_NO,Y.ORD_SEQ,Y.SPEC_STL_GRD,Y.INSTR_COIL_THK,Y.INSTR_COIL_WTH \n");
+		sqlBuffer.append(" FROM TBJ01_DLIV_DIR X\n");
+		sqlBuffer.append(" ,(SELECT DLIV_DIRNO\n");
+		sqlBuffer.append(" , COUNT(*)            AS CNT\n");
+		sqlBuffer.append(" , NVL(SUM(ACT_WGT),0) AS ACT_WGT\n");
+		sqlBuffer.append(" , MAX(ORD_NO)         AS ORD_NO\n");
+		sqlBuffer.append(" , MAX(ORD_SEQ)        AS ORD_SEQ\n");
+		sqlBuffer.append(" , MAX(SPEC_STL_GRD)   AS SPEC_STL_GRD\n");
+		sqlBuffer.append(" , MAX(INSTR_COIL_THK) AS INSTR_COIL_THK\n");
+		sqlBuffer.append(" , MAX(INSTR_COIL_WTH) AS INSTR_COIL_WTH\n");
+		sqlBuffer.append(" FROM TBH02_COIL_COMM\n");
+		sqlBuffer.append(" WHERE 1 = 1\n");
+		sqlBuffer
+				.append(" AND CUR_PROG_CD like 'SFB'||'%'            -- CUR_PROG_CD = 'SFB'\n");
+		sqlBuffer
+				.append(" AND SHIP_DIRNO BETWEEN NVL(?,'00000101')||'0000' AND NVL(?,'99991231')||'9999'\n");
+		sqlBuffer.append(" GROUP BY DLIV_DIRNO) Y\n");
+		sqlBuffer.append(" WHERE X.DLIV_DIRNO = Y.DLIV_DIRNO\n");
+		sqlBuffer.append(" AND X.DLIV_TP LIKE ?||'%'\n");
+		sqlBuffer.append(" AND NVL(X.LANE_TP,'*') LIKE ''||'%'\n");
+		sqlBuffer.append(" AND NVL(X.ENTERANCE_SEQ,0) = NVL('',0)) B\n");
+		sqlBuffer.append(" ,(SELECT *\n");
+		sqlBuffer.append(" FROM TBJ00_SHIP_COMP\n");
+		sqlBuffer.append(" WHERE SHIP_COMP_CD LIKE ''||'%') C\n");
+		sqlBuffer
+				.append(" ,(SELECT SM_CD, SM_CFNM FROM TBZ00_COMMCD WHERE LG_CD = 'A01012' AND SM_CD LIKE ?||'%') D\n");
+		sqlBuffer.append(" WHERE A.SHIP_DIRNO = B.SHIP_DIRNO(+)\n");
+		sqlBuffer.append(" AND B.SHIP_COMP_CD = C.SHIP_COMP_CD(+)\n");
+		sqlBuffer.append(" AND D.SM_CD = B.DLIV_TP \n");
+		sqlBuffer.append(" AND B.ISDELETED = 0\n");
+		sqlBuffer.append(" AND B.ISCANCEL = ?\n");
+		sqlBuffer.append(" AND B.DLIV_DIRNO LIKE ?||'%'\n");
+		sqlBuffer.append(" ORDER BY B.ALLOC_SEQ,B.DLIV_DIRNO \n");
+		cro = this.getDao("KgDao").ExcuteQuery(
+				sqlBuffer.toString(),
+				new Object[] { fromDate, toDate, fromDate, toDate, dlivTp,
+						dlivTp, isCancel, dlivDirNo });
+
+		return cro;
+	}
+
+	/**
+	 * 发运计划回退
+	 * 
+	 * @param regId
+	 * @param params
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject returnShipDir(String regId, ArrayList<String> params)
+			throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		StringBuffer sqlBuffer = new StringBuffer();
+		sqlBuffer.append("update TBJ01_DLIV_DIR a\n");
+		sqlBuffer.append(" set   A.RETURN_GED   = ?,\n");
+		sqlBuffer
+				.append("A.RETURN_DTIME = TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS'),\n");
+		sqlBuffer.append(" A.ISCANCEL     = '1',\n");
+		sqlBuffer.append(" A.DLIV_PROG_CD = '02' \n");
+		sqlBuffer.append(" WHERE A.DLIV_DIRNO   = ? \n");
+
+		for (int i = 0; i < params.size(); i++) {
+			String dlivDirNo = params.get(i);
+			this.getDao("KgDao").ExcuteNonQuery(sqlBuffer.toString(),
+					new Object[] { regId, dlivDirNo });
+		}
+
+		return cro;
+	}
+}

+ 52 - 0
.svn/pristine/0e/0eb9c6bc43c1ee2ba495039054f2d894249bc108.svn-base

@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<queryMap desc="酸轧上料">
+	<query id="UIM060010_01.SELECT"  desc="查询酸轧计划">
+		<![CDATA[
+		
+			SELECT M.ROLL_MANA_NO || '-' || M.ROLL_COIL_SEQ ROLL_SEQ ----编制号 
+			       ,
+			       K.COIL_NO H_COIL_NO --热卷号 
+			       ,
+			       M.C_COIL_NO --冷卷号 
+			       ,
+			       K.CUR_LOAD_LOC YARD_ADDR --垛位
+			        ,
+			       DECODE(K.TRNF_SHIFT,  '0', '常白班', '1','早班', '2', '中班', '3', '晚班') TRNF_SHIFT --出库班次 
+			       ,
+			       to_char(K.COIL_THK, 'FM990.099') || ' * ' || K.COIL_WTH T_W,
+			       to_char(E.ORD_THK, 'FM990.099') || ' * ' || E.ORD_WTH IT_IW,
+			       K.COIL_LEN,
+			       K.ACT_WGT COIL_WGT,
+			       M.SPEC_STL_GRD,
+			       M.STL_GRD,
+			       DECODE(M.STATUS_CD, 'A', '计划中',  'B', '上鞍座', 'C','焊接', 'D','生产完成','F','预备吊销钢卷','E','真正吊销钢卷') STATUS_CD,
+			       K.ORD_NO,
+			       K.ORD_SEQ,
+			       K.ORD_FL
+			  FROM C_TBK02_COIL_COMM K, S_TBF03_SPEC_MILL M, TBE02_ORD_PRC E
+			 WHERE K.COIL_NO = M.COIL_NO
+			   AND K.ORD_NO = E.ORD_NO(+)
+			   AND K.ORD_SEQ = E.ORD_SEQ(+)
+			   AND M.STATUS_CD IN ('A','B','F')
+			   AND M.ROLL_MANA_NO LIKE 'Z%'
+			 ORDER BY M.ROLL_MANA_NO, M.ROLL_COIL_SEQ
+		]]>
+	</query>
+	<query id="UIM060010_02.SELECT"  desc="查询未加班次班组的钢卷">
+		<![CDATA[		
+			select M.ROLL_MANA_NO,
+			       T.OLD_SAMPL_NO,
+			       M.C_COIL_NO,
+			       T.TRNF_SHIFT,
+			       T.TRNF_GROUP,
+			       T.TRNF_REG
+			  from c_tbk02_coil_comm t, S_tbf03_spec_mill m
+			 where t.OLD_SAMPL_NO = m.COIL_NO
+			   and m.STATUS_CD in ('B', 'C', 'D','F','E')
+			   AND T.TRNF_SHIFT IS NULL
+			   AND M.ROLL_MANA_NO LIKE 'Z%'
+			   ORDER BY ROLL_MANA_NO			
+		]]>
+	</query>
+	
+</queryMap>

+ 647 - 0
.svn/pristine/0f/0f12cc3527f2c5d5065527d3afcd36dde9922f82.svn-base

@@ -0,0 +1,647 @@
+package UIJ.UIJ03;
+
+import java.sql.CallableStatement;
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.sql.Statement;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.Map;
+import java.sql.Connection;
+import java.text.SimpleDateFormat;
+
+import org.apache.commons.lang.StringUtils;
+
+import UIB.COM.ProduceFactory;
+import UIB.COM.XmlSqlParsersFactory;
+
+import CoreFS.SA01.CoreIComponent;
+import CoreFS.SA06.CoreReturnObject;
+
+/**
+ * 发货实绩录入与发行装车明细
+ * 
+ * @author siy
+ * @date 2010-9-10
+ */
+public class UIJ030030 extends CoreIComponent {
+
+	/**
+	 * 查询发货实绩信息
+	 * 
+	 * @param dlivTp
+	 * @param curProgCd
+	 * @param transCarNo
+	 * @param dlivDirNo
+	 * @param shipProgCd
+	 * @param tranfDTime
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryShippingResult(String dlivTp,
+			String curProgCd, String transCarNo, String dlivDirNo,
+			String shipProgCd, String tranfDTime) throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		String sql = XmlSqlParsersFactory.getSql("UIJ030030_01.SELECT");
+		cro = this.getDao("KgDao").ExcuteQuery(
+				sql,
+				new Object[] { dlivTp, curProgCd, transCarNo, dlivDirNo,
+						shipProgCd, tranfDTime });
+
+		System.out.println(cro);
+		return cro;
+	}
+
+	/**
+	 * 生成发货实绩
+	 * 
+	 * @param trnfShift
+	 * @param trnfGroup
+	 * @param trnfRegId
+	 * @param trnfDTime
+	 * @param czdWgt
+	 * @param params
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject saveShippingResult(String trnfShift,
+			String trnfGroup, String trnfRegId, String trnfDTime,
+			String czdWgt, ArrayList<String[]> params) throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		Connection conn = null;
+		Statement sta = null;
+		ArrayList<String> list=new ArrayList<String>();
+		ArrayList<String[]> params1 = new ArrayList<String[]>(); 
+//		Map result = this.getDao("KgDao").CoreBeginTranscation();
+		try {
+			conn = this.getDao("KgDao").getConnection();
+			UIJ030060 uij030060 = new UIJ030060();
+			conn.setAutoCommit(false);
+			// 修改钢卷发运状态
+			updateCoilProgStatus(conn,trnfShift, trnfGroup, trnfRegId, trnfDTime,
+					params);
+					
+			// 修改钢卷表发运状态及发运相关信息 、发运表发运状态
+			updateShipProgStatus(conn,czdWgt, params);
+			//数据发送到优特钢
+			for (int i = 0; i < params.size(); i++) {
+				String[] param = params.get(i);
+			
+			if("新余新钢优特钢带有限公司".equals(param[32])) {
+				params1.add(params.get(i));
+			}			
+			}
+			
+			uij030060.saveYouTeTblData(params1);
+			
+			
+//			this.getDao("KgDao").CoreCommit(result);
+			conn.commit();
+		} catch (Exception ex) {
+//			this.getDao("KgDao").CoreRollBack(result);
+			if(conn != null){
+				conn.rollback();
+			}
+			cro.setV_errCode(-1);
+			cro.setV_errMsg("发运明细生成失败!");
+		} finally{
+			if(conn != null && !conn.isClosed()){
+				conn.close();
+			}
+		}
+		return cro;
+	}
+	public CoreReturnObject hasCoilINTBJ(String coil)
+	throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		int count = 0;
+				String clfName = coil;
+				StringBuffer sqlBuffer = new StringBuffer();
+				sqlBuffer.append("select count(coil_no) count from tbj02_coil_comm \n");
+	sqlBuffer.append(" where OLD_SAMPL_NO = '");
+	sqlBuffer.append(clfName);
+	sqlBuffer.append("'\n");
+	ResultSet rs = this.getDao("KgDao").ExceuteQueryForResultSet(
+			sqlBuffer.toString());
+	if (rs.next()) {
+		count = rs.getInt("COUNT");
+	}
+	//20131014系统连接异常优化
+	this.getDao("KgDao").closeRs(rs);
+
+
+cro.setResult(count);
+return cro;
+}
+	/**
+	 * 修改钢卷发运状态
+	 * 
+	 * @param trnfShift
+	 * @param trnfGroup
+	 * @param trnfRegId
+	 * @param trnfDTime
+	 * @param params
+	 * @return
+	 * @throws SQLException
+	 */
+	private void updateCoilProgStatus(Connection conn,String trnfShift, String trnfGroup,
+			String trnfRegId, String trnfDTime, ArrayList<String[]> params)
+			throws SQLException {
+		PreparedStatement pSta = null;
+		PreparedStatement pSta1 = null;
+		String trnftime ;
+		Date d = new Date(); 
+		SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
+		trnftime = sdf.format(d);
+		
+		for (int i = 0; i < params.size(); i++) {
+			String[] param = params.get(i);
+			// 更新钢卷公共表发货状态
+			String sql1 = XmlSqlParsersFactory.getSql("UIJ030030_01.UPDATE");
+			pSta = conn.prepareStatement(sql1);
+			pSta.setString(1, param[25]);
+			pSta.setString(2, param[26]);
+			pSta.setString(3, param[27]);
+			pSta.setString(4, param[19]);
+			pSta.setString(5, param[20]);
+			pSta.setString(6, param[21]);
+			pSta.setString(7, param[2]);
+			pSta.setString(8, trnfShift);
+			pSta.setString(9, trnfGroup);
+			pSta.setString(10, trnfRegId);
+			pSta.setString(11, trnfDTime);
+		//	pSta.setString(12, trnftime);
+			pSta.setString(12, param[10]);
+			pSta.executeUpdate();
+			pSta.close();
+			//保持同一车号下面操作时间一致  20190411  wl
+			String sql3 = XmlSqlParsersFactory.getSql("UIJ030030_time.UPDATE");
+			pSta1 = conn.prepareStatement(sql3);
+			pSta1.setString(1, trnftime);
+			pSta1.setString(2, param[1]);
+			pSta1.executeUpdate();
+			//conn.commit();
+			pSta1.close();
+			
+			
+//			this.getDao("KgDao").ExcuteNonQuery(
+//					sql1,
+//					new Object[] { param[25], param[26], param[27], param[19],
+//							param[20], param[21], param[2], trnfShift,
+//							trnfGroup, trnfRegId, trnfDTime, param[10] });
+			// 更新发运表车辆号
+			String sql2 = XmlSqlParsersFactory.getSql("UIJ030030_02.UPDATE");
+			pSta = conn.prepareStatement(sql2);
+			pSta.setString(1, param[2]);
+			pSta.setString(2, param[1]);
+			pSta.executeUpdate();
+			pSta.close();
+//			this.getDao("KgDao").ExcuteNonQuery(sql2,
+//					new Object[] { param[2], param[1] });
+		}
+	}
+
+	/**
+	 * 修改钢卷表发运状态及发运相关信息
+	 * 
+	 * @param czdWgt
+	 * @param params
+	 * @throws SQLException
+	 */
+	private void updateShipProgStatus(Connection conn,String czdWgt,ArrayList<String[]> params)
+			throws SQLException {
+		PreparedStatement pSta = null;
+		Statement sta = null;
+		for (int i = 0; i < params.size(); i++) {
+			String[] param = params.get(i);
+			// 更新钢卷公共表发运状态及发运相关信息
+			String sql1 = XmlSqlParsersFactory.getSql("UIJ030030_03.UPDATE");
+			pSta = conn.prepareStatement(sql1);
+			pSta.setString(1, param[17]);
+			pSta.setString(2, param[2]);
+			pSta.setString(3, czdWgt);
+			pSta.setString(4, param[10]);
+			pSta.executeUpdate();
+			pSta.close();
+			
+		}
+
+		for (int i = 0; i < params.size(); i++) {
+			String[] param = params.get(i);
+			// 查询钢卷公共表中SHIP_PROG_CD状态,看是否全部改变
+			boolean flag = true;
+			String sql2 = "select a.SHIP_PROG_CD from C_TBL02_COIL_COMM a  where a.ship_dirno = '"
+					+ param[0] + "' ";
+			sta = conn.createStatement();			
+			ResultSet rs = sta.executeQuery(sql2);
+//			ResultSet rs = this.getDao("KgDao").ExceuteQueryForResultSet(sql2);
+			while (rs.next()) {
+				String shipProgCd = rs.getString("SHIP_PROG_CD");
+				//&& !"09".equals(shipProgCd)
+				if (!"07".equals(shipProgCd) && !"08".equals(shipProgCd)
+						) {
+					flag = false;
+				}
+			}
+			rs.close();
+			sta.close();
+			//20131012
+//			this.getDao("KgDao").closeRs(rs);
+			// 判断同一发货指示下的钢卷是否全部保存,如果没有的话不能改变发货指示的状态
+			if (flag) {
+				String sql3 = XmlSqlParsersFactory.getSql("UIJ030030_04.UPDATE");
+				pSta = conn.prepareStatement(sql3);
+				pSta.setString(1, param[17]);
+				pSta.setString(2, param[0]);
+				pSta.executeUpdate();
+				pSta.close();
+//				this.getDao("KgDao").ExcuteNonQuery(sql3,
+//						new Object[] { param[17], param[0] });
+			}
+			
+		}
+		
+	}
+	/**
+	 * 保存发货明细状态的同时把钢卷数据保存到货运中国中间表去
+	 * @param params
+	 
+	public void saveCargocnData(ArrayList<String[]> params,String czdWgt,String trnfDTime,ArrayList<String> list) {
+		try {
+			for (int i = 0; i < params.size(); i++) {
+				String[] param = params.get(i);
+				String sql3 = XmlSqlParsersFactory.getSql("UIJ030030_cargocn.select");
+				String flat="1";
+				ArrayList coilList = (ArrayList) this.getDao("KgDao").ExcuteQueryReturnList(sql3,new Object[]{param[31]});
+				//若表中存在该钢卷则删除
+				if(null != coilList && 0 != coilList.size()){
+					String sql4 = XmlSqlParsersFactory.getSql("UIJ030030_cargocn.delete");
+					this.getDao("KgDao").ExcuteNonQuery(sql4, new Object[]{param[31]});
+					flat="0";
+				}
+				String sql2 = XmlSqlParsersFactory.getSql("UIJ030030_cargocn.insert");
+				Object[] param2 =  new Object[25];
+				param2[0] = param[10]; //真实钢卷号
+				param2[1] = param[1]; //发运指示号
+				param2[2] = param[18]; //牌号
+				param2[3] = param[2]; //车牌号
+				param2[4] = param[12]; //重量
+//				SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+//				String trnFTime = param[16];
+//				if(StringUtils.isEmpty(trnFTime) || "-".equals(trnFTime))
+//					trnFTime = sdf.format(Calendar.getInstance().getTime());
+				param2[5] = trnfDTime; //发货时间
+				param2[6] = param[33]; //收货单位
+				param2[7] = param[34]; //到站
+				param2[8] = param[32]; //合同单位
+				String SHIP_COMP = param[35];
+				if(StringUtils.isEmpty(SHIP_COMP))
+					SHIP_COMP = param[24];
+				param2[9] = SHIP_COMP; //运输公司
+				param2[10] = param[36]; //产品名称
+				param2[11] = "新余市"; //发货城市
+				param2[12] = "冷轧厂"; //发货地点
+				param2[13] = 1;  //订单类型
+				//通过到站地点从产销数据库查收货城市、收货人、电话
+				String receiveCity = param[34];
+				String dlivno = param[1];
+//				String sql5 = "SELECT CX.UNLOADDOCK,CX.SHR,CX.SHRDH FROM SEL_STATIONINFO@XGCX CX WHERE CX.STATIONNAME  LIKE '"
+//							+ receiveCity + "%' ";
+				String sql5="select a.UNLOADDOCK, a.SHR, a.SHRDH from sel_stationinfo a where a.STATIONCODE = (select DEST_PCD from tbj01_dliv_dir b where b.DLIV_DIRNO='"+dlivno+"' and rownum = 1)";
+				String receiveNM = "";
+				String receivePhone =  "";
+				ResultSet rs = this.getDao("KgDao").ExceuteQueryForResultSet(sql5);
+				if (rs.next()) {
+					receiveNM =  rs.getString("SHR"); //收货人
+				    receivePhone =  rs.getString("SHRDH"); //收货人电话
+				    if(StringUtils.isEmpty(receiveNM))
+				    	receiveNM="";
+				    if(StringUtils.isEmpty(receivePhone))
+				    	receivePhone="";
+					if(!StringUtils.isEmpty(rs.getString("UNLOADDOCK")))
+						receiveCity = rs.getString("UNLOADDOCK"); //收货城市
+				}
+				this.getDao("KgDao").closeRs(rs);
+				param2[14] =  receiveCity; //收货城市
+				param2[15] = receiveNM; //收货联系人
+				param2[16] = receivePhone; //收货联系人电话
+				param2[17] = "6"; //未发送状态
+				param2[18] = "LZMES_UIJ030030"; //程序id
+				param2[19] = param[28]; //操作人
+				param2[20]= param[29]; // 运输方式
+				param2[21]= "A"; // 修改标示
+				param2[22]= param[22]; // 合同号
+				String sql4 = XmlSqlParsersFactory.getSql("UIJ030030_cargocn.dlivselect");
+				ArrayList dlivList = (ArrayList) this.getDao("KgDao").ExcuteQueryReturnList(sql4,new Object[]{param[1]});
+				//若表中存在该钢卷则删除
+				if(null != dlivList && 0 != dlivList.size())
+				{
+					param2[23]="0";
+				}
+				else
+				{
+					param2[23]= czdWgt; // 草支垫扣重
+				}
+				param2[24]= param[37]; // 包装重量
+				this.getDao("KgDao").ExcuteNonQuery(sql2, param2);
+				if("0".equals(flat)){
+					String sql = XmlSqlParsersFactory.getSql("UIJ030030_cargocn_01.update");
+					this.getDao("KgDao").ExcuteNonQuery(sql, new Object[]{param2[1]});
+				}
+			}
+			if(!list.isEmpty())
+			{
+				for (int i = 0; i < list.size(); i++) {
+				String sql = XmlSqlParsersFactory.getSql("UIJ030030_cargocn_02.update");
+				this.getDao("KgDao").ExcuteNonQuery(sql, new Object[]{list.get(i)});
+				}
+			}
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
+	}
+	*/
+	public void saveCargocnData(Connection conn,ArrayList<String[]> params,String czdWgt,String trnfDTime,ArrayList<String> list) {
+		try {
+			for (int i = 0; i < params.size(); i++) {
+				String[] param = params.get(i);
+				
+				
+				Double wgt=Double.parseDouble(param[12]);
+				String sql = XmlSqlParsersFactory.getSql("UIJ030030_12.CALL");
+				CallableStatement cstm = conn.prepareCall(sql);
+				cstm.setString(1, "1");//标志
+				cstm.setString(2, param[10]);
+				cstm.setString(3, param[1]);
+				cstm.setString(4, param[18]);
+				cstm.setString(5, param[2]);
+				cstm.setString(6, wgt.toString());
+				cstm.setString(7, trnfDTime);
+				cstm.setString(8, czdWgt);
+				cstm.setString(9,  param[37]);
+				cstm.setString(10, "C");
+				cstm.setString(11, param[28]);
+				cstm.execute();
+				cstm.close();
+			}
+
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
+	}
+	
+	/**
+	 * 打印发货明细后修改相关状态
+	 * 
+	 * @param trnfShift
+	 * @param trnfGroup
+	 * @param trnfRegId
+	 * @param trnfDTime
+	 * @param czdWgt
+	 * @param params
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject printShippingResult(String trnfShift,
+			String trnfGroup, String trnfRegId, String trnfDTime,
+			String czdWgt, ArrayList<String[]> params) throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+//		Map result = this.getDao("KgDao").CoreBeginTranscation();
+		Connection conn = null;
+		Statement sta = null;
+		ArrayList<String> list=new ArrayList<String>();
+		//优特钢数据集合
+		ArrayList<String[]> params1 = new ArrayList<String[]>(); 
+		double sumCzdWgt = 0;
+		int a=0;
+		if(params != null){
+			sumCzdWgt = params.size()*25;//草支垫重量修改为每卷25KG
+		}
+		try {
+			conn = this.getDao("KgDao").getConnection();
+			conn.setAutoCommit(false);
+			updateInvoiceInfoOfDelivery(conn,params);
+			UIJ030060 uij030060 = new UIJ030060();
+			
+			for (int i = 0; i < params.size(); i++) {
+				String[] param = params.get(i);
+				String coilno = param[10];
+				String sql2 = "select * from TBB01_CARGOCN_DATA a  where COIL_NO = '"
+					+ param[10] + "' ";
+			sta = conn.createStatement();			
+			if("新余新钢优特钢带有限公司".equals(param[32])) {
+				params1.add(params.get(i));
+			}
+			sta.close();	
+			
+			//调用存货异动点存储过程
+			ProduceFactory PD= new ProduceFactory();
+			PD.ErpDataCover("CCOIL",coilno,"11AC","1","O",trnfRegId,"酸轧综判");
+			PD.ErpDataCover("CCOIL",coilno,"69A","1","O",trnfRegId,"酸轧发货");
+			}
+			uij030060.saveYouTeTblData(params1);
+			saveCargocnData(conn,params,czdWgt,trnfDTime,list);
+            // 修改钢卷表发运状态及发运相关信息 、发运表发运状态
+			updateShipProgStatus(conn,String.valueOf(sumCzdWgt), params);
+			updateShipProgStatusOfPrint(conn,String.valueOf(sumCzdWgt), params);
+			addshipdetail(conn,String.valueOf(sumCzdWgt),params);
+			addzycoil(conn,params);
+			conn.commit();
+		} catch (Exception ex) {
+			if(conn != null){
+				conn.rollback();
+			}
+			cro.setV_errCode(-2);
+			cro.setV_errMsg("发运明细打印失败!");
+			ex.printStackTrace();
+		} finally{
+			if(conn != null && !conn.isClosed()){
+				conn.close();
+			}
+		}
+        return cro;
+	}
+	private void addshipdetail(Connection conn,String czdWgt,ArrayList<String[]> params)
+	throws SQLException {
+			//boolean flag = true;
+					for (int i = 0; i < params.size(); i++) {
+						String[] param = params.get(i);
+						String rtMsg = "";
+						Double wgt=Double.parseDouble(param[12])/1000;
+						String sql = XmlSqlParsersFactory.getSql("UIJ030030_09.CALL");
+						CallableStatement cstm = conn.prepareCall(sql);
+						cstm.setString(1, "1");//标志
+						cstm.setString(2, param[1]);
+						cstm.setString(3, param[2]);
+						cstm.setString(4, param[18]);
+						cstm.setString(5, param[30]);
+						cstm.setString(6, "1");
+						cstm.setString(7, wgt.toString());
+						cstm.setString(8, czdWgt);
+						cstm.setString(9, "4001LZ1");
+						cstm.setString(10, "冷轧线");
+						//cstm.registerOutParameter(10, java.sql.Types.VARCHAR);
+						cstm.execute();
+						//rtMsg = cstm.getString(10);
+						cstm.close();
+// return rtMsg;
+						}
+						
+		}
+	private void addzycoil(Connection conn,ArrayList<String[]> params)
+	throws SQLException {
+			//boolean flag = true;
+					for (int i = 0; i < params.size(); i++) {
+						String[] param = params.get(i);
+						String rtMsg = "";
+						if(param[31].equals("224902")||param[31].equals("243187")){     //中冶新材客户代码
+							String sql = XmlSqlParsersFactory.getSql("UIJ030030_10.CALL");
+							CallableStatement cstm = conn.prepareCall(sql);
+							cstm.setString(1, param[10]);//钢卷号
+							cstm.execute();
+							cstm.close();							
+						}					
+						}						
+		}
+	/**
+	 * 修改车辆号
+	 * @param dlivDirNo
+	 * @param carNo
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject updateCarNo(String dlivDirNo,String carNo) throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		Map result = this.getDao("KgDao").CoreBeginTranscation();
+		
+		String sql = XmlSqlParsersFactory.getSql("UIJ030030_07.UPDATE");
+		this.getDao("KgDao").ExcuteNonQuery(sql, new Object[]{carNo,dlivDirNo});
+		sql = XmlSqlParsersFactory.getSql("UIJ030030_08.UPDATE");
+		this.getDao("KgDao").ExcuteNonQuery(sql, new Object[]{carNo,dlivDirNo}); 
+		sql = XmlSqlParsersFactory.getSql("UIJ030030_09.UPDATE");
+		this.getDao("KgDao").ExcuteNonQuery(sql, new Object[]{carNo,dlivDirNo});
+		this.getDao("KgDao").CoreCommit(result);
+		return cro;
+	}
+
+	private void updateInvoiceInfoOfDelivery(Connection conn,ArrayList<String[]> params)
+			throws SQLException {
+		PreparedStatement pSta = null;
+		String sql = XmlSqlParsersFactory.getSql("UIJ030030_05.UPDATE");
+    	String dlivDirNo = "";
+		for (int i = 0; i < params.size(); i++) {
+			String[] param = params.get(i);
+			if (i > 0) {
+				if (dlivDirNo.equals(param[1])) {
+					continue;
+				} else {
+					pSta = conn.prepareStatement(sql);
+					pSta.setString(1, param[2]);
+					pSta.setString(2, param[1]);
+					pSta.executeUpdate();
+					pSta.close();
+//					this.getDao("KgDao").ExcuteNonQuery(sql,
+//							new Object[] { param[2], param[1] });
+				}
+			} else {
+				pSta = conn.prepareStatement(sql);
+				pSta.setString(1, param[2]);
+				pSta.setString(2, param[1]);
+				pSta.executeUpdate();
+				pSta.close();
+//				this.getDao("KgDao").ExcuteNonQuery(sql,
+//						new Object[] { param[2], param[1] });
+			}
+			dlivDirNo = param[1];
+		}
+	}
+
+	/**
+	 * 修改钢卷表发运状态及发运相关信息
+	 * 
+	 * @param czdWgt
+	 * @param params
+	 * @throws SQLException
+	 */
+	private void updateShipProgStatusOfPrint(Connection conn,String czdWgt,
+			ArrayList<String[]> params) throws SQLException {
+		PreparedStatement pSta = null;
+		Statement sta = null;
+		for (int i = 0; i < params.size(); i++) {
+			String[] param = params.get(i);
+			// 更新钢卷公共表发运状态及发运相关信息
+			String sql1 = XmlSqlParsersFactory.getSql("UIJ030030_06.UPDATE");
+			pSta = conn.prepareStatement(sql1);
+			pSta.setString(1, param[17]);
+			pSta.setString(2, param[2]);
+			pSta.setString(3, czdWgt);
+			pSta.setString(4, param[10]);
+			pSta.executeUpdate();
+			pSta.close();
+//			this.getDao("KgDao").ExcuteNonQuery(sql1,
+//					new Object[] { param[17], param[2], czdWgt, param[10] });// ,
+		}
+
+		for (int i = 0; i < params.size(); i++) {
+			String[] param = params.get(i);
+			// 查询钢卷公共表中SHIP_PROG_CD状态,看是否全部改变
+			boolean flag = true;
+			String sql = "select a.SHIP_PROG_CD from C_TBL02_COIL_COMM a  where a.ship_dirno = '"
+					+ param[0] + "' ";
+			sta = conn.createStatement();
+			ResultSet rs = sta.executeQuery(sql);
+//			ResultSet rs = this.getDao("KgDao").ExceuteQueryForResultSet(sql);
+			while (rs.next()) {
+				String shipProgCd = rs.getString("SHIP_PROG_CD");
+				//&& !"09".equals(shipProgCd)
+				if (!"08".equals(shipProgCd)) {
+					flag = false;
+				}
+			}
+			rs.close();
+			sta.close();
+			//20131012
+//			this.getDao("KgDao").closeRs(rs);
+			// 判断同一发货指示下的钢卷是否全部保存,如果没有的话不能改变发货指示的状态
+			if (flag) {
+				String sql2 = XmlSqlParsersFactory.getSql("UIJ030030_04.UPDATE");
+				pSta = conn.prepareStatement(sql2);
+				pSta.setString(1, param[17]);
+				pSta.setString(2, param[0]);
+				pSta.executeUpdate();
+				pSta.close();
+//				this.getDao("KgDao").ExcuteNonQuery(sql2,
+//						new Object[] { param[17], param[0] });
+			}
+		}
+	}
+
+	/**
+	 * 生成质保书
+	 * 
+	 * @param dlivDirNo
+	 * @param ordNo
+	 * @param ordSeq
+	 * @return
+	 */
+	private boolean createQltyBook(ArrayList<String[]> params)
+			throws SQLException {
+		boolean flag = true;
+		for (int i = 0; i < params.size(); i++) {
+			String[] param = params.get(i);
+			CoreReturnObject cro = new CoreReturnObject();
+			String proName = XmlSqlParsersFactory.getSql("UIJ030030_01.CALL");
+			String QltyBookNo = "";
+			String retMsg = "";
+			String[] inparams = new String[] { param[0], param[22], param[23] };
+			String[] outparams = new String[] { QltyBookNo, retMsg };
+			cro = this.getDao("KgDao").ExcuteProcedure(proName, inparams,
+					outparams);
+			System.out.println("createQltyBook    QltyBookNo = " + QltyBookNo
+					+ "     retMsg = " + retMsg + "     cro = "
+					+ cro.getResult());
+		}
+		return flag;
+	}
+}

+ 107 - 0
.svn/pristine/0f/0fd2d7695eea41c6df9af933ed871f1ea79a3abc.svn-base

@@ -0,0 +1,107 @@
+<?xml version="1.0" encoding='UTF-8'?>
+
+<queryMap desc="新产品信息管理">
+
+<query id="UIB010350_01.INITSELECT"  desc="查询满足进程状态的合同号">
+	SELECT  T.SM_CD , T.SM_CFNM   FROM TBZ00_COMMCD T WHERE T.LG_CD = 'A01007' AND UPPER(USED_YN) = 'Y' ORDER BY SM_CFNM
+</query>
+
+<query id="UIB010350_02.INITSELECT">
+SELECT DISTINCT  T.SPEC_ABBSYM , T.SPEC_ABBSYM   SPEC_ABBSYM_   FROM TBB01_KEY_PROD T  ORDER BY T.SPEC_ABBSYM
+</query>
+
+<query id="UIB010350_03.INITSELECT">
+SELECT DISTINCT  T.SPEC_STL_GRD , T.SPEC_STL_GRD   SPEC_STL_GRD_   FROM TBB01_KEY_PROD T  ORDER BY T.SPEC_STL_GRD
+</query>
+
+<query id="UIB010350_01.SELECT" desc="查询满足条件的新产品">
+	SELECT          PROD_LINE
+	               ,PRDNM_CD
+	               ,SPEC_ABBSYM
+	               ,SPEC_STL_GRD
+	               ,ORD_USE_TP
+	               ,THK_MIN
+	               ,THK_MAX
+	               ,WTH_MIN
+	               ,WTH_MAX
+	               ,PROD_LINE	        PROD_LINE_1
+	               ,PRDNM_CD		 	PRDNM_CD_1
+	               ,SPEC_ABBSYM	      	SPEC_ABBSYM_1
+	               ,SPEC_STL_GRD      	SPEC_STL_GRD_1
+	               ,ORD_USE_TP			ORD_USE_TP_1
+	               ,THK_MIN				THK_MIN_1
+	               ,THK_MAX				THK_MAX_1
+	               ,WTH_MIN				WTH_MIN_1
+	               ,WTH_MAX				WTH_MAX_1
+	               ,NEW_PROC_TYPE
+	               ,NEW_PROC_DESC
+	               ,REG_ID
+	               ,REG_DTIME
+	               ,MOD_ID
+	               ,MOD_DTIME   
+	FROM           TBB01_NEW_PROD          T
+	WHERE          T.SPEC_STL_GRD          LIKE          ?||'%'
+</query>
+
+<query id="UIB010350_01.INSERT">
+	  INSERT  
+	  INTO            TBB01_NEW_PROD
+	                 (
+	                  PROD_LINE
+	                 ,PRDNM_CD
+	                 ,SPEC_ABBSYM
+	                 ,SPEC_STL_GRD
+	                 ,ORD_USE_TP
+	                 ,THK_MIN
+	                 ,THK_MAX
+	                 ,WTH_MIN
+	                 ,WTH_MAX
+	                 ,NEW_PROC_TYPE
+	                 ,NEW_PROC_DESC
+	                 ,REG_ID
+	                 ,REG_DTIME
+	                 )
+	  VALUES(?,?,?,?,?,?,?,?,?,?,?,?,TO_CHAR(SYSDATE , 'YYYYMMDDHH24MISS'))  
+</query>
+
+<query  id="UIB010350_01.UPDATE">
+	  UPDATE          TBB01_NEW_PROD          T
+	  SET             PROD_LINE               =            ?
+	                 ,PRDNM_CD                =            ?
+	                 ,SPEC_ABBSYM             =            ?
+	                 ,SPEC_STL_GRD            =            ?
+	                 ,ORD_USE_TP              =            ?
+	                 ,THK_MIN                 =            ?
+	                 ,THK_MAX                 =            ?
+	                 ,WTH_MIN                 =            ?
+	                 ,WTH_MAX                 =            ?
+	                 ,NEW_PROC_TYPE           =            ?
+	                 ,NEW_PROC_DESC           =            ?
+	                 ,MOD_ID                  =            ?
+	                 ,MOD_DTIME               =            TO_CHAR(SYSDATE , 'YYYYMMDDHH24MISS')
+	  WHERE           PROD_LINE               =            ?
+	  AND             PRDNM_CD                =            ?
+	  AND             SPEC_ABBSYM             =            ?
+	  AND             SPEC_STL_GRD            =            ?
+	  AND             ORD_USE_TP              =            ?
+	  AND             THK_MIN                 =            ?
+	  AND             THK_MAX                 =            ?
+	  AND             WTH_MIN                 =            ?
+	  AND             WTH_MAX                 =            ? 
+</query>
+
+<query id="UIB010350_01.DELETE">
+	  DELETE      
+	  FROM            TBB01_NEW_PROD          T
+	  WHERE           PROD_LINE               =            ?
+	  AND             PRDNM_CD                =            ?
+	  AND             SPEC_ABBSYM             =            ?
+	  AND             SPEC_STL_GRD            =            ?
+	  AND             ORD_USE_TP              =            ?
+	  AND             THK_MIN                 =            ?
+	  AND             THK_MAX                 =            ?
+	  AND             WTH_MIN                 =            ?
+	  AND             WTH_MAX                 =            ?   
+</query>
+
+</queryMap>

+ 48 - 0
.svn/pristine/10/1052360df8db626a364b54f8bac24b3e74f6aa33.svn-base

@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding='UTF-8'?>
+
+<queryMap desc="公共编码">
+
+<query id="UIB100103_01.SELECT"   desc="查询编码">
+    SELECT T.* , T.LG_CD  LG_CD_1, T.SM_CD SM_CD_1 FROM  TBB10_COMMCD T WHERE T.LG_CD LIKE ?||'%'  ORDER BY T.LG_CD  , T.CD_SEQ
+</query>
+
+<query id="UIB100103_01.UPDATE" desc="更新">
+	UPDATE      TBB10_COMMCD       T
+	SET         T.LG_CD            =       ?
+	           ,T.SM_CD            =       ?
+	           ,T.LG_NM            =       ?
+	           ,T.SM_CFNM          =       ?
+	           ,T.CD_SEQ           =       ?
+	           ,T.USED_YN          =       NVL(? , 'Y')
+	           ,T.CD_DESC          =       ?
+	           ,T.EDIT_TP          =       NVL(? , 'Y')
+	           ,T.MOD_ID           =       ?
+	           ,T.MOD_DTIME        =       TO_CHAR(SYSDATE , 'YYYYMMDDHH24MISS')
+	WHERE       T.LG_CD            =       ?
+	AND         T.SM_CD            =       ?       
+	AND	        T.EDIT_TP          =       'Y'
+</query>
+
+<query id="UIB100103_01.INSERT" desc="插入">
+	INSERT      
+	INTO        TBB10_COMMCD
+	            (
+	             LG_CD
+	            ,SM_CD
+	            ,LG_NM
+	            ,SM_CFNM
+	            ,CD_SEQ
+	            ,USED_YN
+	            ,CD_DESC
+	            ,EDIT_TP
+	            ,REG_ID
+	            ,REG_DTIME
+	            )
+	VALUES      (?,?,?,?,?,NVL(?,'Y'),?,NVL(? ,'Y'),?,TO_CHAR(SYSDATE , 'YYYYMMDDHH24MISS'))            
+</query>
+
+<query id="UIB100103_01.DELETE" desc="删除">
+    DELETE   FROM TBB10_COMMCD WHERE  LG_CD =? AND SM_CD = ? AND EDIT_TP = 'Y'
+</query>
+
+</queryMap>

+ 153 - 0
.svn/pristine/11/110ff8c3780578ed2ea6b3675efa201b02f79cce.svn-base

@@ -0,0 +1,153 @@
+package UIB.JHY;
+
+import CoreFS.SA01.CoreIComponent;
+import CoreFS.SA06.CoreReturnObject;
+import CoreFS.SA06.CoreSqlType.CoreOracleType;
+import UIB.COM.XmlSqlParsersFactory;
+import oracle.sql.ARRAY;
+import oracle.sql.ArrayDescriptor;
+import org.apache.commons.dbcp.DelegatingConnection;
+
+import java.sql.Array;
+import java.sql.CallableStatement;
+import java.sql.Connection;
+import java.sql.SQLException;
+import java.util.*;
+
+public class ComCallProc extends CoreIComponent {
+    /**
+     * @param sqlID xml中的SQL的ID
+     * @param ht    前台需要用hashtable传入,所有参数均存入hashmap中 ,前台必须以(I1,""),(I2,""),,(O1,""),,(O2,"")的方式存入
+     *              I表示in,O表示out。
+     * @return CoreReturnObject
+     * @throws Exception
+     * @desc 执行存储过程
+     */
+
+    public CoreReturnObject doCoreProc(String dao, String sqlID, HashMap ht) throws Exception {
+        CoreReturnObject cro = new CoreReturnObject();
+        ArrayList inParam = new ArrayList();//输入参数
+        ArrayList inParamType = new ArrayList();//输入参数类型
+
+        ArrayList aList = new ArrayList();
+        String key = "";
+
+        ArrayList outParam = new ArrayList();//输出参数
+        ArrayList outparamtype = new ArrayList();//输出参数类型
+        String[] str = new String[3];
+        int index = 0;
+
+        //取出hashmap中的key,存储进ArrayList中
+        for (Iterator it = ht.keySet().iterator(); it.hasNext(); ) {
+            key = it.next().toString();
+            aList.add(key);
+        }
+        Collections.sort(aList);
+
+        String key_1 = null;
+        for (int i = 0; i < aList.size(); i++) {
+            key_1 = aList.get(i).toString().toLowerCase();
+            if (key_1.startsWith("i"))//输入参数
+            {
+                if (key_1.indexOf(":") != -1) {
+                    ArrayList al = null;
+                    Object obj = ht.get(aList.get(i).toString());//是否按ArrayList传递
+                    if (obj instanceof ArrayList) {
+                        al = (ArrayList) obj;
+                    } else //进行转换
+                    {
+                        al = new ArrayList();
+                        al.add(obj.toString());
+                    }
+                    Array ar = this.getDao(dao).getArray(key_1.substring(key_1.indexOf(":") + 1).toUpperCase(), al);
+                    inParam.add(ar);
+                    inParamType.add(CoreOracleType.ARRAY_TYPE.ordinal());
+                } else//输出参数
+                {
+                    inParam.add(ht.get(aList.get(i).toString()));
+                    inParamType.add(new Integer(CoreOracleType.STRING_TYPE.ordinal()));
+                }
+            } else if (key_1.startsWith("o")) {
+                //outParam.add(str[index++]);
+//				outparamtype.add(new Integer(CoreSqlType.CoreOracleType.STRING_TYPE.ordinal()));
+                outparamtype.add(CoreOracleType.STRING_TYPE.ordinal());
+            }
+        }
+        ht = null;
+        String sqlString = XmlSqlParsersFactory.getSql(sqlID).trim();
+        cro = this.getDao(dao).ExcuteProcedure(sqlString, inParamType, inParam, outparamtype, outParam);
+//		cro = this.getDao(dao).ExcuteProcedure(sqlString, inParamType , inParam );
+        return cro;
+    }
+
+    /**
+     * @param sqlID
+     * @param ht
+     * @return
+     * @throws Exception
+     */
+    public CoreReturnObject doSimpleProc(String dao, String sqlID, HashMap ht) throws Exception {
+
+        CoreReturnObject cro = new CoreReturnObject();
+        if (ht == null) return cro;
+        String sqlString = XmlSqlParsersFactory.getSql(sqlID).trim();
+        Connection conn = this.getDao(dao).getConnection();
+        CallableStatement cstm = conn.prepareCall(sqlString);
+
+        String key = "";
+
+//		BasicDataSource   ds = (BasicDataSource)this.dbproxy.getJdbcTemplate().getDataSource();
+        try {
+            String[] outIndex = new String[3];//最多为3个输出
+            int j = 0;
+            for (Iterator it = ht.keySet().iterator(); it.hasNext(); ) {
+                key = it.next().toString();
+                if (key.toLowerCase().startsWith("i")) {
+                    if (key.toLowerCase().indexOf(":") > 0)//":"不会在字符串的最前面,判断是否包含“:”
+                    {
+                        String arrayType = key.substring(key.indexOf(":") + 1).toUpperCase();//数组类型
+                        ArrayDescriptor ad = ArrayDescriptor.createDescriptor(arrayType, getNativeConnection(conn));
+                        ARRAY array = new ARRAY(ad, getNativeConnection(conn), ((List) ht.get(key)).toArray());
+                        cstm.setArray(Integer.parseInt(key.substring(1, 2)), array);
+                    } else {
+                        cstm.setString(Integer.parseInt(key.substring(1)), ht.get(key).toString());
+                    }
+                } else if (key.toLowerCase().startsWith("o")) {
+                    cstm.registerOutParameter(Integer.parseInt(key.substring(1)), java.sql.Types.VARCHAR);
+                    outIndex[j++] = key.substring(1);
+                }
+            }
+
+            ht = null;
+            if (cstm == null) throw new Exception("获取存储过程出错,请检查!");
+
+            cstm.execute();
+
+            ArrayList aList = new ArrayList();
+            //输出
+            for (int i = 0; i < outIndex.length; i++) {
+                if (outIndex[i] != null) {
+                    aList.add(cstm.getString(Integer.parseInt(outIndex[i])));
+                }
+            }
+            cro.setResult(aList);
+        } catch (Exception ex) {
+            System.out.print("存储过程参数错误: " + ex.getMessage());
+        } finally {
+            if (cstm != null)
+                cstm.close();
+            if (conn != null)
+                conn.close();
+        }
+        return cro;
+    }
+
+    private static Connection getNativeConnection(Connection con)
+            throws SQLException {
+        if ((con instanceof DelegatingConnection)) {
+            Connection nativeCon = ((DelegatingConnection) con).getInnermostDelegate();
+            return nativeCon != null ? nativeCon : con.getMetaData().getConnection();
+        }
+        return con;
+    }
+}

BIN
.svn/pristine/11/11941d851674334db85d758d49a336853de7747d.svn-base


+ 334 - 0
.svn/pristine/11/119a7ed05160379768ad56d38312975101704e96.svn-base

@@ -0,0 +1,334 @@
+package QCM.COMMUNAL.VO;
+
+import java.io.Serializable;
+import java.util.Date;
+
+
+public class QcmJhySampleConsignD implements Serializable{
+
+
+	/** 
+	 * �����
+	 */ 
+	private String smp_no;
+	public String getSmp_no() {
+		return this.smp_no;
+	}
+	public void setSmp_no(String smp_no) {
+		this.smp_no = smp_no;
+	}
+
+	/** 
+	 * ȡ����  �����+2λ��ˮ��
+	 */ 
+	private String specimen_no;
+	public String getSpecimen_no() {
+		return this.specimen_no;
+	}
+	public void setSpecimen_no(String specimen_no) {
+		this.specimen_no = specimen_no;
+	}
+
+	/** 
+	 * ¯��
+	 */ 
+	private String heat_no;
+	public String getHeat_no() {
+		return this.heat_no;
+	}
+	public void setHeat_no(String heat_no) {
+		this.heat_no = heat_no;
+	}
+
+	/** 
+	 * �����
+	 */ 
+	private String batch_no;
+	public String getBatch_no() {
+		return this.batch_no;
+	}
+	public void setBatch_no(String batch_no) {
+		this.batch_no = batch_no;
+	}
+
+	/** 
+	 * �����
+	 */ 
+	private String inspection_lot;
+	public String getInspection_lot() {
+		return this.inspection_lot;
+	}
+	public void setInspection_lot(String inspection_lot) {
+		this.inspection_lot = inspection_lot;
+	}
+
+	/** 
+	 * ȡ��Ƶ�δ���
+	 */ 
+	private String freq_code;
+	public String getFreq_code() {
+		return this.freq_code;
+	}
+	public void setFreq_code(String freq_code) {
+		this.freq_code = freq_code;
+	}
+
+	/** 
+	 * ȡ��Ƶ�����
+	 */ 
+	private String freq_name;
+	public String getFreq_name() {
+		return this.freq_name;
+	}
+	public void setFreq_name(String freq_name) {
+		this.freq_name = freq_name;
+	}
+
+	/** 
+	 * ȡ����Ϻ�
+	 */ 
+	private String material_no;
+	public String getMaterial_no() {
+		return this.material_no;
+	}
+	public void setMaterial_no(String material_no) {
+		this.material_no = material_no;
+	}
+
+	/** 
+	 * ��Ʒ���ʹ���
+	 */ 
+	private String smp_type_code;
+	public String getSmp_type_code() {
+		return this.smp_type_code;
+	}
+	public void setSmp_type_code(String smp_type_code) {
+		this.smp_type_code = smp_type_code;
+	}
+
+	/** 
+	 * ��Ʒ�������
+	 */ 
+	private String smp_type_name;
+	public String getSmp_type_name() {
+		return this.smp_type_name;
+	}
+	public void setSmp_type_name(String smp_type_name) {
+		this.smp_type_name = smp_type_name;
+	}
+
+	/** 
+	 * ί�б�ţ����߼�д��ʶ��COM_BASE_PLINE.PLINE_ABBR��+2λ������+4λ��ˮ��
+	 */ 
+	private String consign_no;
+	public String getConsign_no() {
+		return this.consign_no;
+	}
+	public void setConsign_no(String consign_no) {
+		this.consign_no = consign_no;
+	}
+
+	/** 
+	 * ί�б����ţ�ͬ���������ˮ��
+	 */ 
+	private Long consign_no_seq;
+	public Long getConsign_no_seq() {
+		return this.consign_no_seq;
+	}
+	public void setConsign_no_seq(Long consign_no_seq) {
+		this.consign_no_seq = consign_no_seq;
+	}
+
+	/** 
+	 * �������
+	 */ 
+	private Long test_qty;
+	public Long getTest_qty() {
+		return this.test_qty;
+	}
+	public void setTest_qty(Long test_qty) {
+		this.test_qty = test_qty;
+	}
+
+	/** 
+	 * ȡ������
+	 */ 
+	private Long smp_qty;
+	public Long getSmp_qty() {
+		return this.smp_qty;
+	}
+	public void setSmp_qty(Long smp_qty) {
+		this.smp_qty = smp_qty;
+	}
+	
+	/**
+	 * ȡ��λ��
+	 */
+	private String smp_location;
+	
+
+	public String getSmp_location() {
+		return smp_location;
+	}
+	public void setSmp_location(String smp_location) {
+		this.smp_location = smp_location;
+	}
+
+	/** 
+	 * ĸ��ţ�ȡ��Ƶ��='408603',����Ϊ��,��ĸ��ȡ��
+	 */ 
+	private String board_no;
+	public String getBoard_no() {
+		return this.board_no;
+	}
+	public void setBoard_no(String board_no) {
+		this.board_no = board_no;
+	}
+
+	/** 
+	 * ����ȡ����
+	 */ 
+	private String quote_consign_no;
+	public String getQuote_consign_no() {
+		return this.quote_consign_no;
+	}
+	public void setQuote_consign_no(String quote_consign_no) {
+		this.quote_consign_no = quote_consign_no;
+	}
+
+	/** 
+	 * ����ȡ���ţ�������Ϊ�գ�
+	 */ 
+	private String old_consign_no;
+	public String getOld_consign_no() {
+		return this.old_consign_no;
+	}
+	public void setOld_consign_no(String old_consign_no) {
+		this.old_consign_no = old_consign_no;
+	}
+
+	/** 
+	 * ���ߴ���
+	 */ 
+	private String pline_code;
+	public String getPline_code() {
+		return this.pline_code;
+	}
+	public void setPline_code(String pline_code) {
+		this.pline_code = pline_code;
+	}
+
+	/** 
+	 * ��������
+	 */ 
+	private String pline_name;
+	public String getPline_name() {
+		return this.pline_name;
+	}
+	public void setPline_name(String pline_name) {
+		this.pline_name = pline_name;
+	}
+
+	/** 
+	 * ״̬(0,δ����,1,�ѷ���,2,�ѽ���,3,�����)
+	 */ 
+	private String status;
+	public String getStatus() {
+		return this.status;
+	}
+	public void setStatus(String status) {
+		this.status = status;
+	}
+
+	/** 
+	 * ��Ч��־(1:��Ч��0:��Ч)
+	 */ 
+	private String validflag;
+	public String getValidflag() {
+		return this.validflag;
+	}
+	public void setValidflag(String validflag) {
+		this.validflag = validflag;
+	}
+
+	/** 
+	 * ������
+	 */ 
+	private String send_name;
+	public String getSend_name() {
+		return this.send_name;
+	}
+	public void setSend_name(String send_name) {
+		this.send_name = send_name;
+	}
+
+	/** 
+	 * ����ʱ��
+	 */ 
+	private Date send_time;
+	public Date getSend_time() {
+		return this.send_time;
+	}
+	public void setSend_time(Date send_time) {
+		this.send_time = send_time;
+	}
+	
+	/**
+	 * �����Դ��0:������1:��������
+	 */
+	private String source;
+	public String getSource() {
+		return source;
+	}
+	public void setSource(String source) {
+		this.source = source;
+	}
+	/**
+	 * GUID
+	 */
+	private String guid;
+	public String getGuid() {
+		return guid;
+	}
+	public void setGuid(String guid) {
+		this.guid = guid;
+	}
+	private String process_no;
+	public String getProcess_no() {
+		return process_no;
+	}
+	public void setProcess_no(String process_no) {
+		this.process_no = process_no;
+	}
+	private String process_nos;
+	public String getProcess_nos() {
+		return process_nos;
+	}
+	public void setProcess_nos(String process_nos) {
+		this.process_nos = process_nos;
+	}
+	private String rz_mixroll;
+	private String rz_old_sampl_no;
+	private String rz_roll_slab_seq;
+	public String getRz_mixroll() {
+		return rz_mixroll;
+	}
+	public void setRz_mixroll(String rz_mixroll) {
+		this.rz_mixroll = rz_mixroll;
+	}
+	public String getRz_old_sampl_no() {
+		return rz_old_sampl_no;
+	}
+	public void setRz_old_sampl_no(String rz_old_sampl_no) {
+		this.rz_old_sampl_no = rz_old_sampl_no;
+	}
+	public String getRz_roll_slab_seq() {
+		return rz_roll_slab_seq;
+	}
+	public void setRz_roll_slab_seq(String rz_roll_slab_seq) {
+		this.rz_roll_slab_seq = rz_roll_slab_seq;
+	}
+	
+	
+	
+}

+ 355 - 0
.svn/pristine/11/11d2984f2ef65a70371249e129a6c1b7c38c8877.svn-base

@@ -0,0 +1,355 @@
+package UIE.UIE03;
+
+import java.io.ByteArrayOutputStream;
+import java.io.PrintStream;
+import java.sql.SQLException;
+import java.text.DecimalFormat;
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+
+import org.apache.commons.lang.StringUtils;
+
+import UIB.COM.XmlSqlParsersFactory;
+
+import CoreFS.SA01.CoreIComponent;
+import CoreFS.SA06.CoreReturnObject;
+
+public class UIE043010 extends CoreIComponent {
+	public CoreReturnObject repSave()throws Exception
+	{
+		//String sqlstr = XmlSqlParsersFactory.getSql("UIE043010_01.update");
+		String sqlstr = "UPDATE test_tbb02_work SET ABC = '11' WHERE COIL_NO = '1'";
+		CoreReturnObject cro = this.getDao("KgDao").ExcuteNonQuery(sqlstr);
+		
+		sqlstr = "UPDATE test_tbb02_work SET ABC = '22' WHERE COIL_NO = '2'";
+		cro = this.getDao("KgDao").ExcuteNonQuery(sqlstr);
+		
+		sqlstr = "UPDATE test_tbb02_work SET ABC = '33' WHERE COIL_NO1 = '3'";
+		cro = this.getDao("KgDao").ExcuteNonQuery(sqlstr);
+		return null;
+	}
+	public CoreReturnObject query01(String areaType) throws SQLException
+	{
+		CoreReturnObject cro=new CoreReturnObject();
+		StringBuffer str = new StringBuffer();
+		str.append("SELECT \n");
+		str.append("a.ROLL_MANA_NO           --轧制单元号	    	\n");
+		str.append(",a.ROLL_COIL_SEQ         --单元内序号			\n");																																		
+		str.append(",a.COIL_EDT_SEQ          --轧制序号				\n");																																	
+		str.append(",a.C_COIL_NO             --冷卷号				\n");																																
+		str.append(",a.COIL_NO               --热卷号				\n");																																
+		str.append(",a.SPEC_STL_GRD          --酸轧牌号				\n");																																	
+		str.append(",a.STL_GRD               --热轧牌号				\n");																																	
+		str.append(",a.STL_GRP_CD            --钢号组				\n");																																
+		str.append(",a.COIL_THK              --热卷厚度				\n");																																	
+		str.append(",a.COIL_WTH              --热卷宽度				\n");																																	
+		str.append(",a.COIL_WGT              --热卷重量				\n");																																	
+		str.append(",b.cur_load_loc          --堆放位置				\n");																																	
+		str.append(",a.ORD_NO                --合同号				\n");																																
+		str.append(",a.ORD_SEQ               --订单号				\n");																																
+		str.append(",a.ORD_THK               --订单厚度				\n");																																	
+		str.append(",a.ORD_WTH               --订单宽度				\n");																																	
+		str.append(",a.ORD_WGT               --订单重量				\n");																																	
+		str.append(",a.ORD_WGT_MIN           --订单下限				\n");																																	
+		str.append(",a.ORD_WGT_MAX           --订单上限				\n");																																	
+		str.append(",a.ORD_INDIA             --订单内径				\n");																																	
+		str.append(",a.ORD_OUTDIA            --订单外径				\n");																																	
+		str.append("FROM c_tbf03_spec_mill a, 	\n");
+		str.append("c_tbk02_coil_comm b 		\n");
+		str.append("WHERE a.COIL_NO = b.COIL_NO \n");
+		str.append("and   a.ROLL_MANA_NO = :1 	\n");
+		str.append("and   a.REG_DTIME between :2||'000000' and :3||'999999' 	\n");
+		str.append("and   b.MILL_DTIME between :4||'000000' and :5||'999999' 	\n");
+		str.append("and   b.ORD_NO = :6 	\n");
+		str.append("and   b.ORD_SEQ = :7 	\n");
+		str.append("ORDER BY a.ROLL_MANA_NO,a.ROLL_COIL_SEQ 	\n");
+
+		String sql = str.toString();
+		cro=this.getDao("KgDao").ExcuteQuery(sql);
+		
+		System.out.println(cro);
+		return cro;
+	}
+	/**
+	 * 连退成品充当时判断订单材质项目与钢卷材质是否匹配
+	 * @author KM
+	 */
+	public  CoreReturnObject compareOrdCoilQlty(String coilNo,String ordNO,String ordSeq) {
+		CoreReturnObject	cro		=		new		CoreReturnObject();
+		//获取订单要求材质项目sql
+		String Sql1 = XmlSqlParsersFactory.getSql("UIE043010_ord_01.select");
+		//获取钢卷对应的材质项目sql
+		String Sql2 = XmlSqlParsersFactory.getSql("UIE043010_ord_02.select");
+		//查询钢卷是否 在改判中
+		String Sql3 = XmlSqlParsersFactory.getSql("UIE043010_ord_03.select");
+		Object[] ordParams = new Object[]{ordNO,ordSeq,ordNO,ordSeq};
+		StringBuffer QLTY_ORD_DESC = new StringBuffer("");
+		StringBuffer QLTY_COIL_DESC = new StringBuffer("");
+		int ordEqual = 0;  //表示材质与订单匹配一致;
+		try {
+			//查询钢卷是否 在改判中,处于改判中的钢卷不能充当
+			ArrayList coilGP_List = (ArrayList) this.getDao("KgDao").ExcuteQueryReturnList(Sql3,new String[] {coilNo});
+			if(coilGP_List == null || 0 == coilGP_List.size()) {
+				cro.setV_errMsg("GP"); // CoreClientParam.ReturnInfo
+				//cro.setResult("setResult:" + state);  //CoreClientParam.ReturnObject
+				return cro;
+			}
+			//获取订单要求的材质项目
+			ArrayList ordList = (ArrayList) this.getDao("KgDao").ExcuteQueryReturnList(Sql1,ordParams);
+			System.out.println("ordQlty_sql------- "  + Sql1);
+			//获取钢卷对应的材质项目
+			ArrayList coilQlty_List = (ArrayList) this.getDao("KgDao").ExcuteQueryReturnList(Sql2,new String[] {coilNo});
+			System.out.println("coilQlty_sql------- "  + Sql2);
+			if(0 == ordList.size() || 0 == coilQlty_List.size()) {
+				cro.setV_errMsg(QLTY_ORD_DESC.toString()); // CoreClientParam.ReturnInfo
+				//cro.setResult("setResult:" + state);  //CoreClientParam.ReturnObject
+				return cro;
+			}
+			Double val_8050 = Double.valueOf(0); //存放伸长率转换后的值
+			DecimalFormat df = new DecimalFormat("#0.000"); 
+			for (int j = 0; j < ordList.size(); j++) {
+				Map map = (Map) ordList.get(j);
+				String QLTY_CD1 = map.get("QLTY_CD").toString();
+				Object QLTY_CD_CFNM1 = map.get("QLTY_CD_CFNM");
+				Object QLTY_MIN1 = map.get("QLTY_MIN"); 
+				Object QLTY_MAX1 = map.get("QLTY_MAX"); 
+				Object QLTY_DEC_CD1 = map.get("QLTY_DEC_CD");
+				if(QLTY_MIN1 == null) QLTY_MIN1 = "";
+				if(QLTY_MAX1 == null) QLTY_MAX1 = "";
+				if(QLTY_DEC_CD1 == null) QLTY_DEC_CD1 = "";
+				String dxDesc = (QLTY_MIN1 == "" ? "" : (QLTY_MIN1 + "(最小)")) + (QLTY_MAX1 == "" ? "" : (QLTY_MAX1 + "(最大)"));
+				if(!StringUtils.isEmpty(QLTY_DEC_CD1.toString()) && !"B".equals(QLTY_DEC_CD1.toString())) {
+					QLTY_ORD_DESC.append(QLTY_CD1+" " + QLTY_CD_CFNM1.toString() +  " " + dxDesc + "\n");
+				 
+				} else { //对伸长率、屈服强度、抗拉强度进行匹配
+					int qltyEqual = 0;  //表示单个材质没找到匹配的;
+					String qlty_VAL = "";
+					String qlty_coil_cd = "";  //伸长率EL05
+					String isEL = "" ;  //表示钢卷材质项目中是否有伸长率
+					for (int t = 0; t < coilQlty_List.size(); t++) {
+						Map tMap = (Map) coilQlty_List.get(t);
+						String PROD_CD = tMap.get("QLTY_CD").toString(); 
+						Object PROD_CD_CFNM = tMap.get("QLTY_CD_CFNM");  //名称
+						Object PROD_VAL = tMap.get("QLTY_VAL_WK");  //实绩值
+						if(PROD_VAL == null) PROD_VAL = "";
+						if(QLTY_CD1.equals(PROD_CD)) {
+							int isHege = 1; // 
+							if(!"".equals(QLTY_MIN1)) {
+								if("".equals(PROD_VAL))
+									isHege =0;
+								else if(Double.valueOf(PROD_VAL.toString()) < Double.valueOf(QLTY_MIN1.toString()))
+									isHege =0;
+							}
+							if(!"".equals(QLTY_MAX1)) {
+								if(!"".equals(PROD_VAL)) {
+									if(Double.valueOf(PROD_VAL.toString()) > Double.valueOf(QLTY_MAX1.toString()))
+										isHege =0;
+								}
+							}
+							if(isHege == 0) {
+								qltyEqual = 2;  //表示匹配了但不合格
+							} else
+								qltyEqual = 1;  //表示匹配了
+							break;  //找到了匹配的材质项目就结束当前for循环
+						} else if("EL".equals(strIsStarwith(PROD_CD))) {  //伸长率
+							isEL = "TRUE"; //有伸长率
+							qlty_VAL = PROD_VAL.toString();
+							if("EL05".equals(PROD_CD)) {
+								qlty_coil_cd = "EL05";
+							} 
+						}
+					}
+					if("EL".equals(strIsStarwith(QLTY_CD1)) && qltyEqual == 0) {  //伸长率
+						int isHege = 1;
+						if("TRUE".equals(isEL) && !StringUtils.isEmpty(qlty_VAL)) {
+							if("EL05".equals(qlty_coil_cd)) {   //充当钢卷伸长率为A80
+								val_8050 = Double.valueOf(df.format(Double.valueOf(qlty_VAL)*1.207));   //A80转换成A50
+							} else if("EL05".equals(QLTY_CD1)) {   //订单伸长率为A80
+								val_8050 = Double.valueOf(df.format(Double.valueOf(qlty_VAL)*0.829));   //A50转换成A80
+							} else {
+								isHege = 2;
+								val_8050 = null;
+							}
+						}
+						if(!"".equals(QLTY_MIN1) && val_8050 != null) {
+							if(val_8050 < Double.valueOf(QLTY_MIN1.toString()))
+								isHege =0;
+						}
+						if(!"".equals(QLTY_MAX1) && val_8050 != null) {
+							if(val_8050 > Double.valueOf(QLTY_MAX1.toString()))
+								isHege =0;
+						}
+						if(isHege == 0)
+							qltyEqual = 3; //表示伸长率转换后不合格
+						else if(isHege == 2)
+							qltyEqual = 5; //表示伸长率中没有A80项目
+						else 
+							qltyEqual = 4; //表示不匹配但转换后合格
+					}
+					if(qltyEqual == 1) {
+						QLTY_ORD_DESC.append(QLTY_CD1+" " + QLTY_CD_CFNM1.toString() + " " +  dxDesc + "\n");
+					} else if(qltyEqual == 0 || qltyEqual == 5) {
+						QLTY_ORD_DESC.append(QLTY_CD1+"【不匹配】" + QLTY_CD_CFNM1.toString() + " " +  dxDesc + "\n");
+						ordEqual = 1;  //标识不匹配
+					} else if(qltyEqual == 2) {
+						QLTY_ORD_DESC.append(QLTY_CD1+"【不合格】" + QLTY_CD_CFNM1.toString() + " " +  dxDesc + "\n");
+					} else if(qltyEqual == 3) {
+						QLTY_ORD_DESC.append(QLTY_CD1+"【转换后" + val_8050 + "不合格】" + QLTY_CD_CFNM1.toString() + " " +  dxDesc + "\n");
+						ordEqual = 1;  //标识不匹配
+					} else if(qltyEqual == 4) {
+						QLTY_ORD_DESC.append(QLTY_CD1+"【转换后" + val_8050 + "合格】" + QLTY_CD_CFNM1.toString() + " " +  dxDesc + "\n");
+						ordEqual = 1;  //标识不匹配
+					}
+				}
+			}
+			for (int n = 0; n < coilQlty_List.size(); n++) {
+				Map tMap = (Map) coilQlty_List.get(n);
+				String PROD_CD = tMap.get("QLTY_CD").toString(); 
+				Object PROD_CD_CFNM = tMap.get("QLTY_CD_CFNM");  //名称
+				Object PROD_VAL = tMap.get("QLTY_VAL_WK");  //实绩值
+				if(PROD_VAL == null) PROD_VAL = "";
+				QLTY_COIL_DESC.append(PROD_CD+" " + PROD_CD_CFNM.toString() + " " + (PROD_VAL == ""? "" : (PROD_VAL + "(实际值)" )) + "\n");
+			}
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
+		String msg = QLTY_COIL_DESC.toString();
+		if(!StringUtils.isEmpty(msg))
+			msg = "◆钢卷" + coilNo + "对应的材质实绩:\n" + msg;
+		if(!StringUtils.isEmpty(QLTY_ORD_DESC.toString()))
+			msg = msg + "\n◆订单" + ordNO + "-" + ordSeq + "要求材质项目:\n" + QLTY_ORD_DESC.toString();
+		cro.setV_errMsg(msg);  // CoreClientParam.ReturnInfo
+		cro.setV_errCode(ordEqual); //对应客户端显示CoreClientParam.ReturnCode 
+		//cro.setResult("setResult:" + state);  //CoreClientParam.ReturnObject
+		return cro;
+	}
+	
+	/**
+	 * 连退成品充当时不匹配的钢卷材质转换成订单要求材质保存到TBB02_WORK_QLTY_MS表中
+	 * 此方法暂时没用到
+	 * @author KM
+	 */
+	public  CoreReturnObject coilQltyToOrd(String coilNo,String ordNO,String ordSeq,String REG_ID) {
+		CoreReturnObject cro = new CoreReturnObject();
+		//获取订单要求材质项目sql
+		String Sql1 = XmlSqlParsersFactory.getSql("UIE043010_ord_01.select");
+		//获取钢卷对应的材质项目sql
+		String Sql2 = XmlSqlParsersFactory.getSql("UIE043010_ord_02.select");
+		Object[] ordParams = new Object[]{ordNO,ordSeq,ordNO,ordSeq};
+		String msg = "";
+		try {
+			//获取订单要求的材质项目
+			ArrayList ordList = (ArrayList) this.getDao("KgDao").ExcuteQueryReturnList(Sql1,ordParams);
+			System.out.println("ordQlty_sql------- "  + Sql1);
+			//获取钢卷对应的材质项目
+			ArrayList coilQlty_List = (ArrayList) this.getDao("KgDao").ExcuteQueryReturnList(Sql2,new String[] {coilNo});
+			System.out.println("coilQlty_sql------- "  + Sql2);
+			if(0 == ordList.size() || 0 == coilQlty_List.size()) {
+				cro.setV_errMsg(msg);
+				return cro;
+			}
+			Object val_8050 = null; //存放伸长率转换后的值
+			DecimalFormat df = new DecimalFormat("#0.000");    
+			for (int j = 0; j < coilQlty_List.size(); j++) {
+				Map map = (Map) coilQlty_List.get(j);
+				String C_SMP_NO = map.get("SMP_NO").toString();
+				String C_SMP_CUT_LOC = map.get("SMP_CUT_LOC").toString();
+				String C_QLTY_CD = map.get("QLTY_CD").toString();
+				Object C_QLTY_VAL_WK = map.get("QLTY_VAL_WK");  //实绩值
+				Object C_QLTY_UNIT_WK = map.get("QLTY_UNIT_WK");
+				Object C_QLTY_TYPE_WK = map.get("QLTY_TYPE_WK");
+				Object C_QLTY_WK_TP = map.get("QLTY_WK_TP");
+				Object C_UPDATE_NO_TP = map.get("UPDATE_NO_TP");
+				Object C_QLTY_CD_AFTER = map.get("QLTY_CD_AFTER");
+				if(C_QLTY_VAL_WK == null) C_QLTY_VAL_WK = "";
+				if(C_QLTY_UNIT_WK == null) C_QLTY_UNIT_WK = "";
+				if(C_QLTY_TYPE_WK == null) C_QLTY_TYPE_WK = "";
+				if(C_QLTY_WK_TP == null) C_QLTY_WK_TP = "";
+				if(C_UPDATE_NO_TP == null) C_UPDATE_NO_TP = "";
+				if(C_QLTY_CD_AFTER == null) C_QLTY_CD_AFTER = "";
+				val_8050 = C_QLTY_VAL_WK;
+				//只对伸长率、屈服强度、抗拉强度不匹配时进行转换
+				if(!"XX".equals(strIsStarwith(C_QLTY_CD))) { 
+					for (int t = 0; t < ordList.size(); t++) {
+						Map tMap = (Map) ordList.get(t);
+						String PROD_CD = tMap.get("QLTY_CD").toString(); 
+						if(C_QLTY_CD.equals(PROD_CD)) {
+							break;  //找到了匹配的材质项目就结束当前for循环
+						} else if(!"XX".equals(strIsStarwith(PROD_CD))) {  
+							if("EL".equals(strIsStarwith(C_QLTY_CD)) && "EL".equals(strIsStarwith(PROD_CD))) {  //伸长率
+								if("EL05".equals(C_QLTY_CD) && !StringUtils.isEmpty(C_QLTY_VAL_WK.toString())) {   //充当钢卷伸长率为A80
+									val_8050 = df.format(Double.valueOf(C_QLTY_VAL_WK.toString())*1.207);   //A80转换成A50
+								} else if("EL05".equals(PROD_CD) && !StringUtils.isEmpty(C_QLTY_VAL_WK.toString())) {   //订单伸长率为A80
+									val_8050 = df.format(Double.valueOf(C_QLTY_VAL_WK.toString())*0.829);   //A50转换成A80
+								}  
+								C_QLTY_CD_AFTER = C_QLTY_CD;
+								C_QLTY_CD = PROD_CD;
+								C_QLTY_VAL_WK = val_8050;
+							} else if("YS".equals(strIsStarwith(C_QLTY_CD)) && "YS".equals(strIsStarwith(PROD_CD))) {
+								C_QLTY_CD_AFTER = C_QLTY_CD;
+								C_QLTY_CD = PROD_CD;
+							} else if("TE".equals(strIsStarwith(C_QLTY_CD)) && "TE".equals(strIsStarwith(PROD_CD))) {
+								C_QLTY_CD_AFTER = C_QLTY_CD;
+								C_QLTY_CD = PROD_CD;
+							}
+						}
+					}
+				}
+				//检查是否存在同样的材质项目
+				String sql3 = XmlSqlParsersFactory.getSql("UIE043010_WORK_QLTY_MS.select");
+				ArrayList coilMsList = (ArrayList) this.getDao("KgDao").ExcuteQueryReturnList(sql3,new Object[]{C_SMP_NO,C_SMP_CUT_LOC,C_QLTY_CD});
+				if(null == coilMsList || 0 == coilMsList.size()){
+					//插入到质保书材质转换表中
+					insertWQMS(C_SMP_NO, C_SMP_CUT_LOC, C_QLTY_CD, C_QLTY_VAL_WK, C_QLTY_UNIT_WK,
+							C_QLTY_TYPE_WK, C_QLTY_WK_TP, C_UPDATE_NO_TP, REG_ID, C_QLTY_CD_AFTER);
+				}
+			}
+		} catch (Exception e) {
+			ByteArrayOutputStream baos = new ByteArrayOutputStream();  
+            e.printStackTrace(new PrintStream(baos));  
+            String exception = baos.toString();
+            cro.setV_errMsg("Error : " + exception); // CoreClientParam.ReturnInfo
+			e.printStackTrace();
+			return cro;
+		}
+		cro.setV_errMsg(msg);  // CoreClientParam.ReturnInfo
+		//cro.setV_errCode(Integer.valueOf(state)); //对应客户端显示CoreClientParam.ReturnCode 
+		//cro.setResult("setResult:" + state);  //CoreClientParam.ReturnObject
+		return cro;
+	}
+	
+	protected void insertWQMS(Object SMP_NO,Object SMP_CUT_LOC,Object QLTY_CD,Object QLTY_VAL_WK,Object QLTY_UNIT_WK,Object QLTY_TYPE_WK
+							,Object QLTY_WK_TP,Object UPDATE_NO_TP,Object REG_ID,Object QLTY_CD_AFTER) throws SQLException {
+		String sql = XmlSqlParsersFactory.getSql("UIE043010_WORK_QLTY_MS.insert");
+		Object[] param2 =  new Object[11];
+		param2[0] = SMP_NO; //试样号
+		param2[1] = SMP_CUT_LOC; 
+		param2[2] = QLTY_CD; 
+		param2[3] = QLTY_VAL_WK; 
+		param2[4] = QLTY_UNIT_WK; 
+		param2[5] = QLTY_TYPE_WK; 
+		param2[6] = QLTY_WK_TP; 
+		param2[7] = UPDATE_NO_TP; 
+		param2[8] = "UIE043010"; 
+		param2[9] = REG_ID; 
+		param2[10] = QLTY_CD_AFTER; 
+		this.getDao("KgDao").ExcuteNonQuery(sql, param2);
+	}
+	
+	/**
+	 * 判断材质代码是否是以EL、YS、TE开头
+	 * @return
+	 */
+	public  String strIsStarwith(String qltyCD) {
+		if(qltyCD.startsWith("EL")) 
+			return "EL";
+		else if(qltyCD.startsWith("YS")) 
+			return "YS";
+		else if(qltyCD.startsWith("TE")) 
+			return "TE";
+		else
+			return "XX";
+	}
+}

+ 297 - 0
.svn/pristine/12/1223f1561d54adba48601dd2ba5b55826cc7787c.svn-base

@@ -0,0 +1,297 @@
+package QCM.COMMUNAL.VO;
+
+import java.io.Serializable;
+import java.util.Date;
+
+
+public class QcmJhyInspElements implements Serializable{
+    private String assay_no;
+    /**
+    *成分化验号
+    */
+    public String getAssay_no(){
+         return this.assay_no;
+    }
+    /**
+    *成分化验号
+    */
+    public void setAssay_no(String assay_no){
+         this.assay_no=assay_no;
+    }
+
+    private String heat_no;
+    /**
+    *炉号
+    */
+    public String getHeat_no(){
+         return this.heat_no;
+    }
+    /**
+    *炉号
+    */
+    public void setHeat_no(String heat_no){
+         this.heat_no=heat_no;
+    }
+
+    private String batch_no;
+    /**
+    *轧批号
+    */
+    public String getBatch_no(){
+         return this.batch_no;
+    }
+    /**
+    *轧批号
+    */
+    public void setBatch_no(String batch_no){
+         this.batch_no=batch_no;
+    }
+
+    private String inspection_lot;
+    /**
+    *检验号
+    */
+    public String getInspection_lot(){
+         return this.inspection_lot;
+    }
+    /**
+    *检验号
+    */
+    public void setInspection_lot(String inspection_lot){
+         this.inspection_lot=inspection_lot;
+    }
+ 
+    private String smp_no;
+    /**
+    *试样号
+    */
+    public String getSmp_no(){
+         return this.smp_no;
+    }
+    /**
+    *试样号
+    */
+    public void setSmp_no(String smp_no){
+         this.smp_no=smp_no;
+    }
+
+    private String specimen_no;
+    /**
+    *取样编号
+    */
+    public String getSpecimen_no(){
+         return this.specimen_no;
+    }
+    /**
+    *取样编号
+    */
+    public void setSpecimen_no(String specimen_no){
+         this.specimen_no=specimen_no;
+    }
+
+    private String material_no;
+    /**
+    *取样材料号(卷/块号)
+    */
+    public String getMaterial_no(){
+         return this.material_no;
+    }
+    /**
+    *取样材料号(卷/块号)
+    */
+    public void setMaterial_no(String material_no){
+         this.material_no=material_no;
+    }
+ 
+    private String pline_code;
+    /**
+    *产线代码
+    */
+    public String getPline_code(){
+         return this.pline_code;
+    }
+    /**
+    *产线代码
+    */
+    public void setPline_code(String pline_code){
+         this.pline_code=pline_code;
+    }
+ 
+    private String pline_name;
+    /**
+    *产线描述
+    */
+    public String getPline_name(){
+         return this.pline_name;
+    }
+    /**
+    *产线描述
+    */
+    public void setPline_name(String pline_name){
+         this.pline_name=pline_name;
+    }
+
+    private String steel_code;
+    /**
+    *牌号代码
+    */
+    public String getSteel_code(){
+         return this.steel_code;
+    }
+    /**
+    *牌号代码
+    */
+    public void setSteel_code(String steel_code){
+         this.steel_code=steel_code;
+    }
+
+    private String steel_name;
+    /**
+    *牌号名称
+    */
+    public String getSteel_name(){
+         return this.steel_name;
+    }
+    /**
+    *牌号名称
+    */
+    public void setSteel_name(String steel_name){
+         this.steel_name=steel_name;
+    }
+
+    private String assay_type;
+    /**
+    *类型(L:熔炼成分,P:成品成分)
+    */
+    public String getAssay_type(){
+         return this.assay_type;
+    }
+    /**
+    *类型(L:熔炼成分,P:成品成分)
+    */
+    public void setAssay_type(String assay_type){
+         this.assay_type=assay_type;
+    }
+ 
+    private String chem_code;
+    /**
+    *化学元素代码
+    */
+    public String getChem_code(){
+         return this.chem_code;
+    }
+    /**
+    *化学元素代码
+    */
+    public void setChem_code(String chem_code){
+         this.chem_code=chem_code;
+    }
+
+    private String chem_name;
+    /**
+    *化学元素描述
+    */
+    public String getChem_name(){
+         return this.chem_name;
+    }
+    /**
+    *化学元素描述
+    */
+    public void setChem_name(String chem_name){
+         this.chem_name=chem_name;
+    }
+
+    private String chem_value;
+    /**
+    *成分值
+    */
+    public String getChem_value(){
+         return this.chem_value;
+    }
+    /**
+    *成分值
+    */
+    public void setChem_value(String chem_value){
+         this.chem_value=chem_value;
+    }
+
+    private String source;
+    /**
+    *数据来源(0:新钢,1:外购)
+    */
+    public String getSource(){
+         return this.source;
+    }
+    /**
+    *数据来源(0:新钢,1:外购)
+    */
+    public void setSource(String source){
+         this.source=source;
+    }
+ 
+    private String sample_type;
+    /**
+    *样品类型(0:初样,1:复样,2:预留)
+    */
+    public String getSample_type(){
+         return this.sample_type;
+    }
+    /**
+    *样品类型(0:初样,1:复样,2:预留)
+    */
+    public void setSample_type(String sample_type){
+         this.sample_type=sample_type;
+    }
+
+    private String memo;
+    /**
+    *备注
+    */
+    public String getMemo(){
+         return this.memo;
+    }
+    /**
+    *备注
+    */
+    public void setMemo(String memo){
+         this.memo=memo;
+    }
+
+    private String create_name;
+    /**
+    *创建人
+    */
+    public String getCreate_name(){
+         return this.create_name;
+    }
+    /**
+    *创建人
+    */
+    public void setCreate_name(String create_name){
+         this.create_name=create_name;
+    }
+
+    private Date create_time;
+    /**
+    *创建时间
+    */
+    public Date getCreate_time(){
+         return this.create_time;
+    }
+    /**
+    *创建时间
+    */
+    public void setCreate_time(Date create_time){
+         this.create_time=create_time;
+    }
+    /**
+     * 原料卷类别
+     */
+    private String coil_sort;
+	public String getCoil_sort() {
+		return coil_sort;
+	}
+	public void setCoil_sort(String coil_sort) {
+		this.coil_sort = coil_sort;
+	}
+}

BIN
.svn/pristine/12/124830279e275117dc377af0b765ff99e0233289.svn-base


+ 5166 - 0
.svn/pristine/12/125793a0cb020a3335daefbf87f8fa3137d0c455.svn-base

@@ -0,0 +1,5166 @@
+package QCM.JHY01.JHY0102;
+
+import java.math.BigDecimal;
+import java.sql.CallableStatement;
+import java.sql.Connection;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.TreeSet;
+import java.util.UUID;
+
+import org.apache.commons.lang.StringUtils;
+import org.apache.ibatis.session.SqlSession;
+
+import CoreFS.SA01.CoreIComponent;
+import CoreFS.SA06.CoreReturnObject;
+import QCM.COMMUNAL.VO.QcmJudgeLog;
+import QCM.COMMUNAL.VO.QcmJudgeOperateLog;
+import QCM.JHY01.VO.JhyQltyModel;
+import QCM.JHY01.VO.JhySampleDItemModel;
+import QCM.JHY01.VO.JhySampleDModel;
+import QCM.JHY01.VO.JhySampleMMdoel;
+import QCM.JHY01.VO.JhySampleOrdMdoel;
+import QCM.QCM03.QCM0301.QcmJhyElementsServiceImpl;
+
+
+public class UpdateInfo extends CoreIComponent{
+
+	CoreReturnObject cro = new CoreReturnObject();	
+	ResultSet rs = null;
+	SqlSession SqlSession = QCM.COMMUNAL.SqlSessionBuilder.openSqlSession();
+	QCM.COMMUNAL.OrderSqMapper mapper = SqlSession.getMapper(QCM.COMMUNAL.OrderSqMapper.class);
+	
+	/**
+	 * 修改热处理号  取样材料号 (作废)
+	 * @param materialInfo
+	 * @return
+	 * @throws Exception
+	 */
+	public CoreReturnObject doAllUpdate(HashMap parmas) throws Exception {
+		try {
+			String rclState = "000000";
+			/*String sqls= "";
+			if(parmas.get("PLINE_CODE").equals("ZB1")){
+				sqls = " select t.* from KCZ_TURNOFFLIST@xgcx t where t.BILLETID = '"+parmas.get("MATERIAL_NO")+"'"
+						+ " and t.rcl_state is not null ";
+			}
+			if(parmas.get("PLINE_CODE").equals("HB1")){
+				sqls = " select t.* from KCH_TURNOFFLIST@xgcx t where t.BILLETID = '"+parmas.get("MATERIAL_NO")+"'"
+						+ " and t.rcl_state is not null ";
+			}
+			List<HashMap> tarMemo=mapper.query(sqls.toString());
+			if (tarMemo!=null && tarMemo.size()>=1){
+				if(StringUtils.isNotBlank(tarMemo.get(0).get("RCL_STATE").toString())){
+				rclState = (String) tarMemo.get(0).get("RCL_STATE");
+				}
+			}
+			
+			if(rclState.equals("000000")){
+				rclState=parmas.get("PROCESS_NOS").toString();
+			}*/
+			
+			rclState=parmas.get("PROCESS_NOS").toString();
+			String processNo ="";
+			String sqlStr ="";
+			//判断是否是模拟焊后
+			String sqlmn="select * from QCM_JHY_SAMPLE_CONSIGN_D t where t.SMP_NO = '"+parmas.get("SMP_NO")+"' and t.SMP_LOCATION like '%模拟焊后%' and t.smp_type_code = '0' ";
+			List<HashMap> map2=mapper.query(sqlmn.toString());
+			if(map2!=null && map2.size()>=1){
+				sqlStr="select * from QCM_JHY_SAMPLE_CONSIGN_D t where t.smp_no = '"+parmas.get("SMP_NO")+"' and t.smp_type_code='0'  and t.freq_code <>'D'";
+			}else{
+		      sqlStr = "select * from QCM_JHY_SAMPLE_CONSIGN_D t"
+		     		+ " where t.BATCH_NO = '"+parmas.get("BATCH_NO")+"' "
+		     		+ " and t.SPECIMEN_NO = '"+parmas.get("SPECIMEN_NO")+"' "
+		     		+ " and t.SMP_NO = '"+parmas.get("SMP_NO")+"' ";
+			}
+		 	List<HashMap> map=mapper.query(sqlStr.toString());
+			if(map !=null && map.size()>=1){
+				String str = parmas.get("USER_NAME")+"修改热处理号为"+rclState;
+				for (HashMap<String,String> hashMap : map) {
+					sqlStr="";
+					sqlStr="update QCM_JHY_SAMPLE_CONSIGN_D t set PROCESS_NOS='"+rclState+"',"
+							+ " MATERIAL_NO='"+parmas.get("MATERIAL_NO")+"',"
+							+ " ARTIFICIAL_MEMO=t.ARTIFICIAL_MEMO||',"+str+"'||'原委托热处理号为:'||t.PROCESS_NOS  "
+							+ " where t.BATCH_NO = '"+hashMap.get("BATCH_NO")+"' "
+				     		+ " and t.SPECIMEN_NO = '"+hashMap.get("SPECIMEN_NO")+"' "
+				     		+ " and t.SMP_NO = '"+hashMap.get("SMP_NO")+"' ";
+					  mapper.updateJudgeStatus(sqlStr.toString());
+					  
+					  String strMemo = "取样编号:"+hashMap.get("SPECIMEN_NO")+str+",原委托热处理号为:"+hashMap.get("PROCESS_NOS")
+					            +"原子板号:"+hashMap.get("MATERIAL_NO")+"现子板号:"+parmas.get("MATERIAL_NO");
+						QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
+						qjog.setOperate_name(parmas.get("USER_NAME").toString());
+						qjog.setBatchno(parmas.get("BATCH_NO") == null ?"":parmas.get("BATCH_NO").toString());			
+						qjog.setOperate_type("修改");
+						qjog.setParams(parmas.get("MATERIAL_NO") == null ?"":parmas.get("MATERIAL_NO").toString());
+						qjog.setProd_line(parmas.get("PLINE_CODE") == null ?"":parmas.get("PLINE_CODE").toString());
+						qjog.setMemo(strMemo);
+						mapper.insertQcmJudgeOperateLog(qjog);
+				}
+			}
+			} catch (Exception e) {
+				SqlSession.rollback();
+				SqlSession.close();
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("修改失败!");
+				return cro;
+			}
+		SqlSession.commit();
+		SqlSession.close();
+		cro.setV_errCode(1);
+		return cro;
+	}
+	
+	/**
+	 * 修改取样材料号
+	 * @param materialInfo
+	 * @return
+	 * @throws Exception
+	 */
+	public CoreReturnObject updateMaterialNo(ArrayList<String> smpNo,ArrayList<String> specimenNo,ArrayList<String> batchNo,ArrayList<String> materialNo, ArrayList<String> sendMemo,
+			ArrayList<String> inspectionLot,ArrayList<String> plineCode) throws Exception {
+		
+		
+		try {
+
+				for (int i = 0; i < smpNo.size(); i++) {
+					
+					UpdateInfo uinfo= new UpdateInfo();
+					uinfo.doPhyItem(specimenNo.get(i).toString());
+					
+					StringBuffer sqlucomm = new StringBuffer();
+					if(plineCode.get(i).equals("ZB1") || plineCode.get(i).equals("HB1")){
+						String mater = materialNo.get(i).toString();
+						String boardNo=mater.substring(0,mater.lastIndexOf("."));
+					
+						sqlucomm.append(" update qcm_jhy_sample_consign_d set MATERIAL_NO = '"+materialNo.get(i)+"' ");
+						sqlucomm.append(" , SEND_MEMO = '"+sendMemo.get(i)+"' ,BOARD_NO='"+boardNo+"' ");
+						sqlucomm.append(" where SMP_NO = '"+smpNo.get(i)+"' and SPECIMEN_NO = '"+specimenNo.get(i)+"' ");
+						sqlucomm.append(" and BATCH_NO = '"+batchNo.get(i)+"' ");
+					    this.getDao("testDao").ExcuteNonQuery(sqlucomm.toString());
+					    
+					    String mstr=" update QCM_JHY_SAMPLE_CONSIGN_M set MATERIAL_NO='"+materialNo.get(i)+"' ,BOARD_NO='"+boardNo+"' "
+					    		+ " where SMP_NO = '"+smpNo.get(i)+"' and BATCH_NO = '"+batchNo.get(i)+"' ";
+					    this.getDao("testDao").ExcuteNonQuery(mstr.toString());
+					 }else{
+						    sqlucomm.append(" update qcm_jhy_sample_consign_d set MATERIAL_NO = '"+materialNo.get(i)+"' ");
+							sqlucomm.append(" , SEND_MEMO = '"+sendMemo.get(i)+"' ");
+							sqlucomm.append(" where SMP_NO = '"+smpNo.get(i)+"' and SPECIMEN_NO = '"+specimenNo.get(i)+"' ");
+							sqlucomm.append(" and BATCH_NO = '"+batchNo.get(i)+"' ");
+						    this.getDao("testDao").ExcuteNonQuery(sqlucomm.toString());
+					 }
+				    
+				    
+				    if(plineCode.get(i).equals("ZB1") || plineCode.get(i).equals("HB1")){
+				    	
+				    String sqlAmemo="select * from qcm_jhy_sample_consign_d t where t.specimen_no = '"+specimenNo.get(i)+"' and t.Artificial_Memo like '%原委托热处理号%'";
+				    List<HashMap> hmAmemo=mapper.query(sqlAmemo.toString());
+				    
+				    String sqlAmemo2="select * from qcm_jhy_sample_consign_d t where t.specimen_no = '"+specimenNo.get(i)+"' and t.FREQ_CODE in ('C','H','I')";
+				    List<HashMap> hmAmemo2=mapper.query(sqlAmemo2.toString());
+				    
+				    //中板线  厚板线热处理号
+					if((plineCode.get(i).equals("ZB1") || plineCode.get(i).equals("HB1")) && hmAmemo.size()<=0 && hmAmemo2.size()>=1){
+						String sqls= "";
+						sqls="select r.rcl_state from (select t.RCL_STATE from KCZ_TURNOFFLIST@xgcx t where t.BILLETID =  '"+materialNo.get(i)+"' "
+					             +"  and t.rcl_state is not null "
+					             +" union  "
+					             +" select t.RCL_STATE from KCH_TURNOFFLIST@xgcx t where t.BILLETID = '"+materialNo.get(i)+"' "
+								 +" and t.rcl_state is not null) r group by r.rcl_state order by r.rcl_state desc ";
+						
+						List<HashMap> tarMemo=mapper.query(sqls.toString());
+						if (tarMemo!=null && tarMemo.size()>=1 && StringUtils.isNotBlank(tarMemo.get(0).get("RCL_STATE").toString())) {
+							if(tarMemo.get(0).get("RCL_STATE").toString().contains("G")){
+								continue;
+							}
+							//性能改善限制
+							String sqlim =" select t.* from qcm_jhy_sample_consign_d t where t.specimen_no='"+specimenNo.get(i)+"' and IMPROVE_MEMO='性能改善' ";
+							List<HashMap> hmim=mapper.query(sqlim.toString());
+							if(hmim!=null && hmim.size()>=1){
+								if(!tarMemo.get(0).get("RCL_STATE").toString().contains("G")){
+									continue;
+								}
+							}
+							
+							if(tarMemo.get(0).get("RCL_STATE").toString().contains("G")){
+								//19HJGP
+								String sql =" select t.* from qcm_jhy_sample_consign_d t,qcm_jhy_sample_r_ord r "
+											+" where t.smp_no = r.smp_no and r.design_key like '19HJGP%' "
+											+" and t.freq_code<>'D' and t.specimen_no='"+specimenNo.get(i)+"' ";
+								List<HashMap> hmap=mapper.query(sql.toString());
+								if(hmap!=null && hmap.size()>=1){
+									sqlucomm.setLength(0);
+									sqlucomm.append(" update qcm_jhy_sample_consign_d set ARTIFICIAL_MEMO=ARTIFICIAL_MEMO ||',初委托热处理号'||PROCESS_NOS ,PROCESS_NO = '"+tarMemo.get(0).get("RCL_STATE")+"',PROCESS_NOS= '"+tarMemo.get(0).get("RCL_STATE")+"' ");
+									sqlucomm.append(" where SMP_NO = '"+smpNo.get(i)+"' and SPECIMEN_NO = '"+specimenNo.get(i)+"' ");
+									sqlucomm.append(" and BATCH_NO = '"+batchNo.get(i)+"' ");
+								    this.getDao("testDao").ExcuteNonQuery(sqlucomm.toString());
+								}
+								continue;
+							}
+							String sql ="select * from qcm_jhy_sample_consign_d where SMP_NO = '"+smpNo.get(i)+"' "
+									+ " and SPECIMEN_NO = '"+specimenNo.get(i)+"' and FREQ_CODE <> 'D'  ";
+							List<HashMap> hmap=mapper.query(sql.toString());
+							if(hmap!=null && hmap.size()>=1){
+								if(StringUtils.isNotBlank(hmap.get(0).get("FREQ_CODE").toString()) && !hmap.get(0).get("FREQ_CODE").equals("D")){
+								sqlucomm.setLength(0);
+								sqlucomm.append(" update qcm_jhy_sample_consign_d set ARTIFICIAL_MEMO=ARTIFICIAL_MEMO ||',初委托热处理号'||PROCESS_NOS ,PROCESS_NO = '"+tarMemo.get(0).get("RCL_STATE")+"',PROCESS_NOS= '"+tarMemo.get(0).get("RCL_STATE")+"' ");
+								sqlucomm.append(" where SMP_NO = '"+smpNo.get(i)+"' and SPECIMEN_NO = '"+specimenNo.get(i)+"' ");
+								sqlucomm.append(" and BATCH_NO = '"+batchNo.get(i)+"' ");
+							    this.getDao("testDao").ExcuteNonQuery(sqlucomm.toString());
+								}
+							}else{
+								
+								sql="";
+								sql ="select t.* from QCM_JHY_SAMPLE_CONSIGN_D_ITEM t "
+									+"	 where t.specimen_no = '"+specimenNo.get(i)+"' "
+									+"	   and t.seq >= 50 "
+									+"	   and t.phy_code_l <> 'HJ' ";
+								 hmap = null;
+								 hmap=mapper.query(sql.toString());
+								
+								 if(hmap!=null && hmap.size()>=1){
+									 sql="";
+									 sql ="select * from qcm_jhy_sample_consign_d where SMP_NO = '"+smpNo.get(i)+"' "
+											+ " and SPECIMEN_NO = '"+specimenNo.get(i)+"' and SMP_TYPE_CODE in ('1','3','4')  ";
+								 }else{
+						   		 sql="";
+								 sql ="select * from qcm_jhy_sample_consign_d where SMP_NO = '"+smpNo.get(i)+"' "
+										+ " and SPECIMEN_NO = '"+specimenNo.get(i)+"' and SMP_TYPE_CODE in ('3','4')  ";
+								 }
+								 hmap = null;
+								 hmap=mapper.query(sql.toString());
+								 if(hmap!=null && hmap.size()>=1){
+									sqlucomm.setLength(0);
+									sqlucomm.append(" update qcm_jhy_sample_consign_d set ARTIFICIAL_MEMO=ARTIFICIAL_MEMO ||',初委托热处理号'||PROCESS_NOS,PROCESS_NO = '"+tarMemo.get(0).get("RCL_STATE")+"',PROCESS_NOS= '"+tarMemo.get(0).get("RCL_STATE")+"' ");
+									sqlucomm.append(" where SMP_NO = '"+smpNo.get(i)+"' and SPECIMEN_NO = '"+specimenNo.get(i)+"' ");
+									sqlucomm.append(" and BATCH_NO = '"+batchNo.get(i)+"' ");
+								    this.getDao("testDao").ExcuteNonQuery(sqlucomm.toString()); 
+								 }
+							}
+						    
+						}else{
+							sqlucomm.setLength(0);
+							sqlucomm.append(" update qcm_jhy_sample_consign_d set PROCESS_NO = '000000' ");
+							sqlucomm.append(" where SMP_NO = '"+smpNo.get(i)+"' and SPECIMEN_NO = '"+specimenNo.get(i)+"' ");
+							sqlucomm.append(" and BATCH_NO = '"+batchNo.get(i)+"' ");
+						    this.getDao("testDao").ExcuteNonQuery(sqlucomm.toString());
+						}
+					}
+				    }
+				    //热轧  连退  复制 初样委托  选择物料号时  修改 相应的检验号
+				/*    if(plineCode.get(i).equals("RZ1") || plineCode.get(i).equals("LT1")){
+				    	  String sql = "update QCM_JUDGE_COIL_RESULT set INSPECTION_LOT = '"+inspectionLot.get(i)+"' "
+			    		            + " where COIL_NO = '"+materialNo.get(i)+"'   ";
+			             this.getDao("testDao").ExcuteNonQuery(sql.toString());
+				    }*/
+
+				}
+		
+			} catch (Exception e) {
+				
+			}
+		SqlSession.close();
+		return cro;
+	}
+	
+	/**
+	 * 复样 修改轧批号
+	 * @param materialInfo
+	 * @return
+	 * @throws Exception
+	 */
+	public CoreReturnObject updateBatchNo(ArrayList<String> smpNo,ArrayList<String> specimenNo,ArrayList<String> batchNo,ArrayList<String> materialNo, ArrayList<String> sendMemo,
+			ArrayList<String> inspectionLot,ArrayList<String> plineCode) throws Exception {
+		 Connection  conn = this.getDao("testDao").getConnection();
+		
+		try {
+			String maxVal ="";
+			String minVal = "";
+			TreeSet<String> treeSet = new TreeSet<String>();
+			TreeSet<String> treeSet2 = new TreeSet<String>();
+			for (int i = 0; i < batchNo.size(); i++) {
+				treeSet.add(batchNo.get(i));
+				treeSet2.add(specimenNo.get(i));
+			}
+ 
+			if(treeSet2.size() != 1){
+            	cro.setV_errCode(-1);
+				cro.setV_errMsg("请勾选一个轧批修改!不能同时修改两个轧批");
+				return cro;
+            }
+			
+			//判断是否是一个轧批号
+			if(smpNo.size()>1){
+				maxVal = treeSet.last();//最大值
+				minVal = treeSet.first() ;//最小值
+			}
+			
+			String sqlsp="select * from qcm_jhy_sample_consign_d t where t.specimen_no = '"+treeSet2.first()+"' and rownum=1 ";
+			List<HashMap> sphm=mapper.query(sqlsp.toString());
+			if(sphm!=null && sphm.size()>=1){
+				if(treeSet.first().equals(sphm.get(0).get("BATCH_NO").toString())){
+					cro.setV_errCode(-1);
+					cro.setV_errMsg("修改轧批号不能修改为同轧号请核实修改数据!");
+					return cro;
+				}
+			}
+	
+			for (int i = 0; i < smpNo.size(); i++) {
+				String sqlno=" select r.* from qcm_jhy_sample_consign_d t,qcm_jhy_sample_r_ord r "
+                            +" where t.smp_no = r.smp_no and t.specimen_no = '"+specimenNo.get(i)+"' and rownum = 1 ";
+				List<HashMap> listhm=mapper.query(sqlno.toString());
+				
+				String storage = "{CALL ZHB1_HJ_HEATNO_QUOTE(?,?,?,?,?)}";
+			    CallableStatement cstm = conn.prepareCall(storage);
+			    cstm.setString(1,batchNo.get(i));
+			    cstm.setString(2,smpNo.get(i));
+			    cstm.setString(3,specimenNo.get(i));
+			    cstm.setString(4,sendMemo.get(i));
+			    cstm.registerOutParameter(5,java.sql.Types.VARCHAR);
+			    cstm.execute();
+			    if(cstm.getString(5) != null){
+		    		if(!cstm.getString(5).equals("1")){
+		    			SqlSession.close();
+						conn.close();
+		    			cro.setV_errCode(-1);
+		    			cro.setV_errMsg(cstm.getString(5).toString());
+		    			return cro;
+		    		}
+		    	}
+			    cstm.close();
+			    
+			  //判断当前订单下是否还有复样
+			    if(listhm !=null && listhm.size()>=1){
+			    	String DESIGN_KEY = listhm.get(0).get("DESIGN_KEY").toString();
+			    	String INSPECTION_LOT = listhm.get(0).get("INSPECTION_LOT").toString();
+			    	String BATCH_NO = listhm.get(0).get("BATCH_NO").toString();
+			    	String sqlf="select r.* from qcm_jhy_sample_consign_d t,qcm_jhy_sample_r_ord r "
+								+" where t.smp_no = r.smp_no and t.freq_code = 'D' and t.smp_type_code = '1' "
+								+" and r.design_key = '"+DESIGN_KEY+"' and r.batch_no = '"+BATCH_NO+"' "
+								+" and r.inspection_lot = '"+INSPECTION_LOT+"' and rownum = 1 ";
+			    	List<HashMap> list2=mapper.query(sqlf.toString());
+			    	if(list2 != null && list2.size()>=1){
+			    		String sql2="select r.* from qcm_jhy_sample_consign_d t,qcm_jhy_sample_r_ord r "
+								+" where t.smp_no = r.smp_no and t.freq_code = 'D' and t.smp_type_code = '0' "
+								+" and r.design_key = '"+DESIGN_KEY+"' and r.batch_no = '"+BATCH_NO+"' "
+								+" and r.inspection_lot = '"+INSPECTION_LOT+"' and rownum = 1 ";
+			    	List<HashMap> list3=mapper.query(sql2.toString());
+			    	if(list3 != null && list3.size()>=1){
+			    		 //有复样,但是初没有清空检验号
+			    		String sql3 =" update QCM_JHY_SAMPLE_R_ORD set inspection_lot = '' "
+						            +" where SMP_NO = '"+list3.get(0).get("SMP_NO")+"' and batch_no = '"+list3.get(0).get("BATCH_NO")+"' ";
+					    mapper.updateJudgeStatus(sql3.toString());
+			    	  }
+			    	
+			    	}
+			    	
+			    }
+				SqlSession.commit();
+				SqlSession.close();
+				conn.close();
+				cro.setV_errCode(1);
+				cro.setV_errMsg("修改轧批号成功!");
+				return cro;
+			}
+			
+			/*	for (int i = 0; i < smpNo.size(); i++) {
+					
+					//判断当前试样号是否有两个复样  如果一个试样号下有两个复样说明复样夹杂时  只有一个轧批号满足条件复样
+					String smpNoDSql = " select * from qcm_jhy_sample_consign_d t "
+										+" where t.smp_no = '"+smpNo.get(i)+"' "
+										+" and t.smp_type_code = '1' "
+										+" and t.freq_code = 'D' ";
+					List<HashMap> smpNoDSqlhm=mapper.query(smpNoDSql.toString());
+					if(smpNoDSqlhm !=null && smpNoDSqlhm.size()>=2){
+						//当前修改的轧批号是否初样已判定
+						String ordSql = "select r.* from qcm_jhy_sample_r_ord r,qcm_jhy_sample_consign_d t "
+								+" where r.smp_no = t.smp_no "
+								+" and t.SMP_TYPE_CODE = '0' "
+								+" and r.batch_no = '"+batchNo.get(i)+"' "
+								+" and r.judge_status = '0' ";
+							List<HashMap> ordhm=mapper.query(ordSql.toString());
+							if(ordhm !=null && ordhm.size()>=1){
+								
+								String storage = "{CALL ZHB1_HJ_HEATNO_QUOTE(?,?,?,?,?)}";
+							    CallableStatement cstm = conn.prepareCall(storage);
+							    cstm.setString(1,batchNo.get(i));
+							    cstm.setString(2,smpNo.get(i));
+							    cstm.setString(3,specimenNo.get(i));
+							    cstm.setString(4,sendMemo.get(i));
+							    cstm.registerOutParameter(5,java.sql.Types.VARCHAR);
+							    cstm.execute();
+							    if(cstm.getString(5) != null){
+						    		if(!cstm.getString(5).equals("1")){
+						    			SqlSession.close();
+										conn.close();
+						    			cro.setV_errCode(-1);
+						    			cro.setV_errMsg(cstm.getString(5).toString());
+						    			return cro;
+						    		}
+						    	}
+							    cstm.close();
+							SqlSession.commit();
+							SqlSession.close();
+							conn.close();
+							cro.setV_errCode(1);
+							cro.setV_errMsg("修改轧批号成功!");
+							
+								//初样未判定
+								//cro.setV_errCode(-1);
+								//cro.setV_errMsg("轧批号【"+batchNo.get(i)+"】初样未判定,请选择其它轧批号");
+								return cro;
+							}else{
+								String batchPline2 = batchNo.get(i).substring(0, 1);
+								String batchPlines2 = batchPline2;
+								String batchNoplieCode = "";
+								if(batchPlines2.equals("Z")){
+									batchNoplieCode = "ZB1";
+								}else if (batchPlines2.equals("H")){
+									batchNoplieCode = "HB1";
+								}
+								String smp_no = createQltySamNo(batchNoplieCode);//新试样号
+								String specimen_no = createSpecimen_no(smp_no);//新取样材料号
+								String delSmpNo = smpNo.get(i);//要删除的试样号
+								
+								String delSpecimenNo ="";
+								String sqlitem = "select * from qcm_jhy_sample_consign_d_item t where t.specimen_no='"+specimenNo.get(i)+"' and t.phy_code_l='HJ' and t.seq >=50 ";
+								List<HashMap> sqlitemHM=mapper.query(sqlitem.toString());
+								if(sqlitemHM==null || sqlitemHM.size()<=0){
+								  delSpecimenNo = specimenNo.get(i);//要删除的取样编号
+								}else{
+									sqlitem="";
+									sqlitem = " select * from qcm_jhy_sample_consign_d t "
+											+" where t.smp_no = '"+smpNo.get(i)+"' "
+											+" and t.smp_type_code = '1' "
+											+" and t.freq_code = 'D' and t.specimen_no<>'"+specimenNo.get(i)+"' ";
+								   sqlitemHM.clear();
+						           sqlitemHM=mapper.query(sqlitem.toString());
+						           if(sqlitemHM!=null && sqlitemHM.size()>=1){
+						        	   delSpecimenNo = sqlitemHM.get(0).get("SPECIMEN_NO").toString();//要删除的取样编号
+						           }else{
+						        	   delSpecimenNo = specimenNo.get(i);//要删除的取样编号
+						           }
+								}
+								 String sql ="select * from qcm_jhy_sample_consign_d t "
+											+" where t.smp_no = '"+delSmpNo+"' "
+											+" and t.specimen_no = '"+delSpecimenNo+"' "
+											+" and t.freq_code = 'D' "
+											+" and t.smp_type_code = '1' ";
+								 List<HashMap> hmSql=mapper.query(sql.toString());
+								 if(hmSql!=null && hmSql.size()==1){
+									//删除最开始的复样
+										sql ="";
+										sql =" delete from QCM_JHY_INSP_PHYSICS t where t.SPECIMEN_NO='"+delSpecimenNo+"' ";
+									    mapper.delete(sql.toString());
+									    
+									    sql ="";
+										sql =" delete from QCM_JHY_SAMPLE_CONSIGN_D_ITEM t where t.SPECIMEN_NO='"+delSpecimenNo+"' and t.SMP_NO='"+delSmpNo+"' ";
+									    mapper.delete(sql.toString());
+									    
+									    sql ="";
+										sql =" delete from QCM_JHY_SAMPLE_CONSIGN_D t where t.SPECIMEN_NO='"+delSpecimenNo+"' and t.SMP_NO='"+delSmpNo+"' ";
+									    mapper.delete(sql.toString());
+										
+									    //要修改成的轧批号初样的轧批信息
+									    sql ="";
+									    sql = "select t.* from qcm_jhy_sample_consign_d t "
+											+"	where t.SMP_TYPE_CODE = '0' "
+											+"	and t.batch_no = '"+batchNo.get(i)+"' "
+											+"	and t.freq_code = 'D' and rownum = 1 ";
+										List<HashMap> ydhm=mapper.query(sql.toString());
+										if(ydhm!=null && ydhm.size()>=1){
+											sql = "";
+											 sql ="Insert into QCM_JHY_SAMPLE_CONSIGN_M(SMP_NO,HEAT_NO,BATCH_NO,INSPECTION_LOT,BOARD_NO,MATERIAL_NO,PSC, "   
+													+"   PSC_DESC,SMP_CATG,CERT_INST_CODE,CERT_INST_NAME,SMP_TYPE_CODE,SMP_TYPE_NAME,GRADE_CODE,GRADE_NAME, "
+													+"   PLINE_CODE,PLINE_NAME,VALIDFLAG,MEMO,CREATE_ID,CREATE_NAME,CREATE_TIME,ITEM_FLAG,DUPLICATE_SAMPLE) "
+													+"   select '"+smp_no+"',HEAT_NO,BATCH_NO,INSPECTION_LOT,BOARD_NO,MATERIAL_NO,PSC, "
+													+"   PSC_DESC,SMP_CATG,CERT_INST_CODE,CERT_INST_NAME,SMP_TYPE_CODE,SMP_TYPE_NAME,GRADE_CODE,GRADE_NAME, "
+													+"   PLINE_CODE,PLINE_NAME,VALIDFLAG,MEMO,'sys','sys',sysdate,ITEM_FLAG,'复样' "
+													 +"   from QCM_JHY_SAMPLE_CONSIGN_M t where t.SMP_NO = '"+ydhm.get(0).get("SMP_NO")+"'"
+													 		+ " and  t.batch_no = '"+ydhm.get(0).get("BATCH_NO")+"' and rownum <= 1 ";
+										mapper.insert(sql);
+										
+										sql = "";
+										sql = "Insert into QCM_JHY_SAMPLE_R_ORD(DESIGN_KEY,SMP_NO,PSC,PSC_DESC,HEAT_NO,BATCH_NO,INSPECTION_LOT,DELIVERY_STATE_CODE, "
+												+ " DELIVERY_STATE_DESC,THICK,WIDTH,LENGTH,PLINE_CODE,PLINE_NAME,MSC_PLINE,PROCESS_CODE,CERT_INST_CODE,CERT_INST_NAME, "
+												+ " SMP_TYPE_CODE,SMP_TYPE_NAME,SMELTING_CNT,PRODUCT_CNT,ASSAY_NO_CP,ASSAY_NO_RL,CIC_ID,PHY_ID,JUDGE_STATUS,PROD_CODE,"
+												+ " PROD_NAME,STEEL_CODE,STEEL_NAME,STD_CODE,STD_NAME,CREATE_TIME,CREATE_ID,CREATE_NAME,DUPLICATE_SAMPLE) "
+												+ " select DESIGN_KEY,'"+smp_no+"',PSC,PSC_DESC,HEAT_NO,BATCH_NO,INSPECTION_LOT,DELIVERY_STATE_CODE,DELIVERY_STATE_DESC, "
+														+ " THICK,WIDTH,LENGTH,PLINE_CODE,PLINE_NAME,MSC_PLINE,PROCESS_CODE,CERT_INST_CODE,CERT_INST_NAME,SMP_TYPE_CODE,"
+														+ " SMP_TYPE_NAME,SMELTING_CNT,PRODUCT_CNT,ASSAY_NO_CP,ASSAY_NO_RL,CIC_ID,PHY_ID,'0',PROD_CODE,PROD_NAME,STEEL_CODE, "
+														+ " STEEL_NAME,STD_CODE,STD_NAME,sysdate,'sys','sys','复样' "
+														+ " from QCM_JHY_SAMPLE_R_ORD t where t.SMP_NO = '"+ydhm.get(0).get("SMP_NO")+"' "
+																+ " and  t.batch_no = '"+ydhm.get(0).get("BATCH_NO")+"' and rownum <= 1 ";
+										mapper.insert(sql);
+										
+										  //把选中的初样轧批号 检验号置空
+										    sql ="";
+											sql +=" update QCM_JHY_SAMPLE_R_ORD set inspection_lot = '' ";
+											sql +=" where SMP_NO = '"+ydhm.get(0).get("SMP_NO")+"' and batch_no = '"+ydhm.get(0).get("BATCH_NO")+"' ";
+										    mapper.updateJudgeStatus(sql.toString());
+										    
+										//插入D表
+										sql = "";
+										sql = "insert into qcm_jhy_sample_consign_d "
+											+" (smp_no, specimen_no, heat_no, batch_no, inspection_lot, freq_code, freq_name, material_no, smp_type_code, smp_type_name, consign_no, consign_no_seq, test_qty, smp_qty, smp_location, board_no,  old_consign_no, pline_code, pline_name, status, validflag, source, guid,  chem_item, product_cnt, create_time, smp_location_code, memo, weight, weight_std, weight_sfd,  process_no, quote_batch_no,PROCESS_NOS,PROCESS_CODE,ARTIFICIAL_MEMO) "
+											+" select "
+											+" '"+smp_no+"', '"+specimen_no+"', heat_no, batch_no, inspection_lot, freq_code, freq_name, material_no,  '1', '复样', consign_no, consign_no_seq, test_qty, smp_qty, smp_location, board_no,  '"+ydhm.get(0).get("SPECIMEN_NO")+"', pline_code, pline_name, '0', validflag, source, guid,  chem_item, product_cnt, sysdate, smp_location_code, memo, weight, weight_std, weight_sfd,  process_no, '"+ydhm.get(0).get("BATCH_NO")+"',PROCESS_NOS,PROCESS_CODE,'复样修改轧批号' "
+											+" from qcm_jhy_sample_consign_d t "
+											+" where t.SMP_NO = '"+ydhm.get(0).get("SMP_NO")+"' and t.heat_no = '"+ydhm.get(0).get("HEAT_NO")+"' and  t.batch_no = '"+ydhm.get(0).get("BATCH_NO")+"' and  t.freq_code = 'D' and t.smp_type_code = '0' and rownum <= 1";
+										mapper.insert(sql);
+										
+										//插入ITEM表
+										sql = "";
+										sql = "insert into qcm_jhy_sample_consign_d_item "
+											+"  (specimen_no, seq, smp_no, phy_name_l, phy_code_l, phy_code_m, phy_name_m, phy_code_s, phy_name_s, item_code_d, item_name_d, item_code_t, item_name_t, item_code_s, item_name_s, item_code_l, item_desc_l, stdmin_sign, stdmin, stdmax_sign, stdmax, test_qty, smp_qty, specl_fl, isjudge, judge_basis, phy_unit, group_seq, quote_seq, item_flag, memo, create_id, create_name, create_time, stdmemo, resmp_seq, phy_group_code) "
+											+" select '"+specimen_no+"', seq, '"+smp_no+"', phy_name_l, phy_code_l, phy_code_m, phy_name_m, phy_code_s, phy_name_s, item_code_d, item_name_d, item_code_t, item_name_t, item_code_s, item_name_s, item_code_l, item_desc_l, stdmin_sign, stdmin, stdmax_sign, stdmax, test_qty, smp_qty, specl_fl, isjudge, judge_basis, phy_unit, group_seq, quote_seq, item_flag, memo, '复样','复样' , SYSDATE, stdmemo, resmp_seq, phy_group_code "
+											+" from qcm_jhy_sample_consign_d_item t where t.specimen_no = '"+ydhm.get(0).get("SPECIMEN_NO")+"' ";
+										mapper.insert(sql);
+										
+										//复样 引用 当前轧批初样实绩 
+										  //查询当前初样取样编号的所有实绩
+											sql = "";
+											sql = " select t.* from QCM_JHY_INSP_PHYSICS t "
+										          +" where t.specimen_no in (select d.specimen_no from QCM_JHY_SAMPLE_CONSIGN_D d where d.smp_no = '"+ydhm.get(0).get("SMP_NO")+"' ) "
+										          		+ " order by t.SPECIMEN_NO asc, t.phy_code_l asc,t.phy_code_s asc  ";
+											List<HashMap> hmPhysics = mapper.query(sql.toString());
+											//把初样的项目  放到 复样中
+											for (HashMap hashMap1 : hmPhysics) {
+												sql = "";
+												sql = "select decode(max(seq),'','49',max(seq))+1 as SEQ from QCM_JHY_INSP_PHYSICS t "
+														+ " where t.specimen_no = '"+specimen_no+"'";
+												List<HashMap> seqhm = mapper.query(sql.toString());
+												BigDecimal big = (BigDecimal)seqhm.get(0).get("SEQ");
+												String seqs = big.toString();
+												Integer seqint = Integer.parseInt(seqs);
+												sql = "";
+												sql = " insert into QCM_JHY_INSP_PHYSICS "
+										+" (SPECIMEN_NO,SEQ,TEST_QTY,PHY_CODE_L,PHY_NAME_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S,ITEM_CODE_D,ITEM_NAME_D, "
+										+" ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+										+" VAL13,VAL14,VAL15,AVG_VAL,GUID,CREATE_NAME,CREATE_TIME,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,ITEM_CODE_L,ITEM_DESC_L, "
+										+" PHY_UNIT,MEMO,QUOTE_SPECIMEN_NO) "
+										+" select '"+specimen_no+"','"+seqint+"',TEST_QTY,PHY_CODE_L,PHY_NAME_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S,ITEM_CODE_D,ITEM_NAME_D, "
+										+"  ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+										+"  VAL13,VAL14,VAL15,AVG_VAL,GUID,CREATE_NAME,CREATE_TIME,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,ITEM_CODE_L,ITEM_DESC_L, "
+										+" PHY_UNIT,MEMO,'"+(String)hashMap1.get("SPECIMEN_NO")+"' from QCM_JHY_INSP_PHYSICS t "
+										+ " where t.specimen_no = '"+(String)hashMap1.get("SPECIMEN_NO")+"' "
+										+ " and t.phy_code_l = '"+hashMap1.get("PHY_CODE_L")+"' "
+										+ " and t.phy_code_s = '"+hashMap1.get("PHY_CODE_S")+"' "
+										+ " and t.PHY_CODE_M = '"+hashMap1.get("PHY_CODE_M")+"' "
+										+ " and t.test_qty = '"+hashMap1.get("TEST_QTY")+"' ";
+												mapper.insert(sql);
+												
+												sql = "";
+												sql = "insert into QCM_JHY_SAMPLE_CONSIGN_D_ITEM "
+												+"  (SPECIMEN_NO,SEQ,SMP_NO,PHY_NAME_L,PHY_CODE_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S,  "
+												+"	ITEM_CODE_D,ITEM_NAME_D,ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,ITEM_CODE_L,ITEM_DESC_L, "
+												+"	STDMIN_SIGN,STDMIN,STDMAX_SIGN,STDMAX,TEST_QTY,SMP_QTY,SPECL_FL,ISJUDGE,JUDGE_BASIS,PHY_UNIT,GROUP_SEQ, "
+												+"	QUOTE_SPECIMEN_NO,QUOTE_SEQ,ITEM_FLAG,MEMO,CREATE_ID,CREATE_NAME,CREATE_TIME,STDMEMO,RESMP_SEQ, "
+												+"	PHY_GROUP_CODE,FY_QUOTE_SPECIMEN_NO)  "
+												+"	select '"+specimen_no+"','"+seqint+"','"+smp_no+"',PHY_NAME_L,PHY_CODE_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S, "
+												+"	ITEM_CODE_D,ITEM_NAME_D,ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,ITEM_CODE_L,ITEM_DESC_L, "
+												+"	STDMIN_SIGN,STDMIN,STDMAX_SIGN,STDMAX,TEST_QTY,SMP_QTY,SPECL_FL,ISJUDGE,JUDGE_BASIS,PHY_UNIT,GROUP_SEQ, "
+												+"	QUOTE_SPECIMEN_NO,QUOTE_SEQ,ITEM_FLAG,MEMO,CREATE_ID,CREATE_NAME,CREATE_TIME,STDMEMO,RESMP_SEQ, "
+												+"	PHY_GROUP_CODE,'"+(String)hashMap1.get("SPECIMEN_NO")+"' from QCM_JHY_SAMPLE_CONSIGN_D_ITEM "
+												+ " where specimen_no = '"+(String)hashMap1.get("SPECIMEN_NO")+"' "
+												+ " and phy_code_l = '"+hashMap1.get("PHY_CODE_L")+"' "
+												+ " and PHY_CODE_M = '"+hashMap1.get("PHY_CODE_M")+"' "
+												+ " and phy_code_s = '"+hashMap1.get("PHY_CODE_S")+"' ";
+												mapper.insert(sql);
+										    }
+										
+										}else{
+											cro.setV_errCode(-1);
+											cro.setV_errMsg("轧批号【"+batchNo.get(i)+"】未找到初样信息");
+											return cro;
+										}
+									    
+								 }
+								 
+								
+							}
+							continue;
+					}
+					
+	
+					
+					//查找复样的原本轧批号
+				   String dsql = "select t.BATCH_NO,t.HEAT_NO,t.smp_no from QCM_JHY_SAMPLE_CONSIGN_D t where "
+				    		+ "  t.SPECIMEN_NO = '"+specimenNo.get(i)+"' and t.SMP_TYPE_CODE= '1'  ";
+					List<HashMap> SampleD=mapper.query(dsql.toString());
+					
+					if (SampleD == null || SampleD.size()<0) {
+						cro.setV_errCode(-1);
+						cro.setV_errMsg("没有找到相应的复样轧批号【"+batchNo.get(i)+"】");
+						return cro;
+					}
+					dsql ="";
+					dsql = "select t.* from QCM_JHY_SAMPLE_CONSIGN_D t where t.smp_no = '"+smpNo.get(i)+"' "
+							+ " and t.smp_type_code='0' and t.freq_code<>'D' ";
+					List<HashMap> SampleD2=mapper.query(dsql.toString());
+					if(SampleD2 != null && SampleD2.size()>=1){
+							String storage = "{CALL ZHB1_HJ_HEATNO_QUOTE(?,?,?,?,?)}";
+						    CallableStatement cstm = conn.prepareCall(storage);
+						    cstm.setString(1,batchNo.get(i));
+						    cstm.setString(2,smpNo.get(i));
+						    cstm.setString(3,specimenNo.get(i));
+						    cstm.setString(4,sendMemo.get(i));
+						    cstm.registerOutParameter(5,java.sql.Types.VARCHAR);
+						    cstm.execute();
+						    if(cstm.getString(5) != null){
+					    		if(!cstm.getString(5).equals("1")){
+					    			SqlSession.close();
+									conn.close();
+					    			cro.setV_errCode(-1);
+					    			cro.setV_errMsg(cstm.getString(5).toString());
+					    			return cro;
+					    		}
+					    	}
+						    cstm.close();
+						SqlSession.commit();
+						SqlSession.close();
+						conn.close();
+						cro.setV_errCode(1);
+						cro.setV_errMsg("修改轧批号成功!");
+						return cro;
+					}
+					//查询当前轧批ord表
+					dsql ="";
+					dsql = "select m.INSPECTION_LOT,d.SMP_LOCATION,d.smp_no,d.specimen_no,d.heat_no,d.batch_no,d.freq_code,d.freq_name,d.material_no,d.smp_type_code,d.smp_type_name,"
+							+ " d.board_no,d.pline_code,d.pline_name,d.process_no,d.process_nos,m.GRADE_CODE,m.GRADE_NAME,r.psc,r.psc_desc,r.delivery_state_code,r.delivery_state_desc,r.thick,r.width,"
+							+ " r.length,r. msc_pline,r.process_code,r.cert_inst_code,r.cert_inst_name,r.smp_type_code,r.smp_type_name,r.prod_code,r.prod_name,"
+							+ " r.steel_code,r.steel_name,r.std_code,r.std_name,r.DESIGN_KEY"
+							+ " from qcm_jhy_sample_consign_d d,qcm_jhy_sample_consign_m m,qcm_jhy_sample_r_ord r "
+						+" where d.smp_no = m.smp_no  "
+						+"     and d.smp_no = r.smp_no "
+						+"     and m.smp_no = r.smp_no "
+						+"     and r.batch_no = '"+batchNo.get(i)+"' and d.Freq_Code = 'D' and d.smp_type_code='0' and rownum = 1 ";
+					List<HashMap> map=mapper.query(dsql.toString());
+					if(map == null || map.size()<=0){
+						cro.setV_errCode(-1);
+						cro.setV_errMsg("没有查找到当前要修改的轧批的信息!!!");
+						return cro;
+					}
+					
+					String sql ="";
+					sql +=" update QCM_JHY_SAMPLE_CONSIGN_M set BATCH_NO = '"+batchNo.get(i)+"',inspection_lot = '"+batchNo.get(i)+"0001',"
+							+ " BOARD_NO='"+map.get(0).get("BOARD_NO")+"',PSC='"+map.get(0).get("PSC")+"', PSC_DESC='"+map.get(0).get("PSC_DESC")+"',"
+							+ " CERT_INST_CODE='"+map.get(0).get("CERT_INST_CODE")+"',CERT_INST_NAME='"+map.get(0).get("CERT_INST_NAME")+"',"
+							+ " GRADE_CODE='"+map.get(0).get("GRADE_CODE")+"',GRADE_NAME='"+map.get(0).get("GRADE_NAME")+"',"
+							+ " PLINE_CODE='"+map.get(0).get("PLINE_CODE")+"',PLINE_NAME='"+map.get(0).get("PLINE_NAME")+"',"
+							+ " MATERIAL_NO='"+map.get(0).get("MATERIAL_NO")+"'";
+					sql +=" where SMP_NO = '"+smpNo.get(i)+"' ";
+				    mapper.updateJudgeStatus(sql.toString());
+				    
+					 sql ="";
+					sql +=" update QCM_JHY_SAMPLE_R_ORD set BATCH_NO = '"+batchNo.get(i)+"' ,INSPECTION_LOT = '"+batchNo.get(i)+"0001',"
+							+ "PSC='"+map.get(0).get("PSC")+"', PSC_DESC='"+map.get(0).get("PSC_DESC")+"',"
+							+ "DELIVERY_STATE_CODE='"+map.get(0).get("DELIVERY_STATE_CODE")+"',DELIVERY_STATE_DESC='"+map.get(0).get("DELIVERY_STATE_DESC")+"', "
+							+ "THICK='"+map.get(0).get("THICK")+"', WIDTH='"+map.get(0).get("WIDTH")+"', LENGTH='"+map.get(0).get("LENGTH")+"',"
+							+ "PLINE_CODE='"+map.get(0).get("PLINE_CODE")+"',PLINE_NAME='"+map.get(0).get("PLINE_NAME")+"',"
+							+ "CERT_INST_CODE='"+map.get(0).get("CERT_INST_CODE")+"',CERT_INST_NAME='"+map.get(0).get("CERT_INST_NAME")+"', "
+							+ "PROD_CODE='"+map.get(0).get("PROD_CODE")+"',PROD_NAME='"+map.get(0).get("PROD_NAME")+"',"
+							+ "STEEL_CODE='"+map.get(0).get("STEEL_CODE")+"',STEEL_NAME='"+map.get(0).get("STEEL_NAME")+"',"
+							+ "STD_CODE='"+map.get(0).get("STD_CODE")+"',STD_NAME='"+map.get(0).get("STD_NAME")+"',"
+							+ "DESIGN_KEY='"+map.get(0).get("DESIGN_KEY")+"' ";
+					sql +=" where SMP_NO = '"+smpNo.get(i)+"' ";
+				    mapper.updateJudgeStatus(sql.toString());
+				    
+				    //把选中的初样轧批号 检验号置空
+					 sql ="";
+						sql +=" update QCM_JHY_SAMPLE_R_ORD set inspection_lot = '' ";
+						sql +=" where SMP_NO in (select SMP_NO from QCM_JHY_SAMPLE_CONSIGN_D "
+								+ " where BATCH_NO = '"+batchNo.get(i)+"' and freq_code = 'D' AND smp_type_code='0' ) ";
+					    mapper.updateJudgeStatus(sql.toString());
+		
+					    
+				    //把换下来的初样轧批号 检验号返回原来的检验号
+					 for (HashMap hm : SampleD) {
+					 sql ="";
+						sql +=" update QCM_JHY_SAMPLE_R_ORD set inspection_lot = '"+hm.get("BATCH_NO")+"0001' ";
+						sql +=" where BATCH_NO in (select batch_no from QCM_JHY_SAMPLE_CONSIGN_D "
+								+ " where BATCH_NO = '"+hm.get("BATCH_NO")+"' and freq_code = 'D' AND smp_type_code='0' ) ";
+					    mapper.updateJudgeStatus(sql.toString());
+					    }
+				    
+						String batchPline2 = batchNo.get(i).substring(0, 1);
+						String batchPlines2 = batchPline2;
+						String batchNoplieCode = "";
+						if(batchPlines2.equals("Z")){
+							batchNoplieCode = "ZB1";
+						}else if (batchPlines2.equals("H")){
+							batchNoplieCode = "HB1";
+						}
+						
+						if(batchNoplieCode.equals("HB1")){
+							//厚
+							sql ="";
+							sql = "select BILLETID as MATERIAL_NO from kch_turnofflist@xgcx where BILLETID like '"+batchNo.get(i)+"'||'%' and rownum=1  ";
+							}else if(batchNoplieCode.equals("ZB1")){
+							//中
+							sql ="";
+							sql = "select BILLETID as MATERIAL_NO from kcz_turnofflist@xgcx where BILLETID like '"+batchNo.get(i)+"'||'%' and rownum=1  ";
+							}
+					List<HashMap> listEle= mapper.query(sql.toString());
+					String VmaterialNo = "";
+					 if(listEle!=null && listEle.size()>=1){
+						 VmaterialNo = listEle.get(0).get("MATERIAL_NO").toString();
+					 }
+	
+				    //换成修改的轧批号
+				    sql ="";
+					sql +=" update QCM_JHY_SAMPLE_CONSIGN_D set BATCH_NO = '"+batchNo.get(i)+"',inspection_lot = '"+batchNo.get(i)+"0001',MATERIAL_NO='"+VmaterialNo+"',"
+							+ " FREQ_CODE='"+map.get(0).get("FREQ_CODE")+"',FREQ_NAME='"+map.get(0).get("FREQ_NAME")+"',"
+							+ " SMP_LOCATION='"+map.get(0).get("SMP_LOCATION")+"',BOARD_NO='"+map.get(0).get("BOARD_NO")+"',"
+							+ " PLINE_CODE='"+map.get(0).get("PLINE_CODE")+"',PLINE_NAME='"+map.get(0).get("PLINE_NAME")+"',"
+							+ " process_no='"+map.get(0).get("process_no")+"',PROCESS_NOS='"+map.get(0).get("PROCESS_NOS")+"' ";
+					sql +=" where SMP_NO = '"+smpNo.get(i)+"' and SPECIMEN_NO = '"+specimenNo.get(i)+"'  ";
+				    mapper.updateJudgeStatus(sql.toString());
+				    
+				  //删除当前复样的初样
+				    sql ="";
+					sql +=" delete from QCM_JHY_INSP_PHYSICS t where t.SPECIMEN_NO='"+specimenNo.get(i)+"' and t.SEQ >= 50 ";
+				    mapper.delete(sql.toString());
+				    
+				    sql ="";
+					sql +=" delete from QCM_JHY_SAMPLE_CONSIGN_D_ITEM t where t.SPECIMEN_NO='"+specimenNo.get(i)+"' and t.SEQ >= 50 ";
+				    mapper.delete(sql.toString());
+				    
+					//复样 引用 当前轧批初样实绩 
+				  //查询当前初样取样编号的所有实绩
+					sql = "";
+					sql = " select t.* from QCM_JHY_INSP_PHYSICS t "
+				          +" where t.specimen_no in (select d.specimen_no from QCM_JHY_SAMPLE_CONSIGN_D d where d.smp_no = '"+map.get(0).get("SMP_NO")+"' ) "
+				          		+ " order by t.SPECIMEN_NO asc, t.phy_code_l asc,t.phy_code_s asc  ";
+					List<HashMap> hmPhysics = mapper.query(sql.toString());
+					//把初样的项目  放到 复样中
+					for (HashMap hashMap1 : hmPhysics) {
+						sql = "";
+						sql = "select decode(max(seq),'','49',max(seq))+1 as SEQ from QCM_JHY_INSP_PHYSICS t "
+								+ " where t.specimen_no = '"+specimenNo.get(i)+"'";
+						List<HashMap> seqhm = mapper.query(sql.toString());
+						BigDecimal big = (BigDecimal)seqhm.get(0).get("SEQ");
+						String seqs = big.toString();
+						Integer seqint = Integer.parseInt(seqs);
+						sql = "";
+						sql = " insert into QCM_JHY_INSP_PHYSICS "
+				+" (SPECIMEN_NO,SEQ,TEST_QTY,PHY_CODE_L,PHY_NAME_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S,ITEM_CODE_D,ITEM_NAME_D, "
+				+" ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+				+" VAL13,VAL14,VAL15,AVG_VAL,GUID,CREATE_NAME,CREATE_TIME,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,ITEM_CODE_L,ITEM_DESC_L, "
+				+" PHY_UNIT,MEMO,QUOTE_SPECIMEN_NO,QUOTE_STATUS) "
+				+" select '"+specimenNo.get(i)+"','"+seqint+"',TEST_QTY,PHY_CODE_L,PHY_NAME_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S,ITEM_CODE_D,ITEM_NAME_D, "
+				+"  ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+				+"  VAL13,VAL14,VAL15,AVG_VAL,GUID,CREATE_NAME,CREATE_TIME,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,ITEM_CODE_L,ITEM_DESC_L, "
+				+" PHY_UNIT,MEMO,'"+(String)hashMap1.get("SPECIMEN_NO")+"','0' from QCM_JHY_INSP_PHYSICS t "
+				+ " where t.specimen_no = '"+(String)hashMap1.get("SPECIMEN_NO")+"' "
+				+ " and t.phy_code_l = '"+hashMap1.get("PHY_CODE_L")+"' "
+				+ " and t.phy_code_s = '"+hashMap1.get("PHY_CODE_S")+"' "
+				+ " and t.PHY_CODE_M = '"+hashMap1.get("PHY_CODE_M")+"' "
+				+ " and t.test_qty = '"+hashMap1.get("TEST_QTY")+"' ";
+						mapper.insert(sql);
+						
+						sql = "";
+						sql = "insert into QCM_JHY_SAMPLE_CONSIGN_D_ITEM "
+						+"  (SPECIMEN_NO,SEQ,SMP_NO,PHY_NAME_L,PHY_CODE_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S,  "
+						+"	ITEM_CODE_D,ITEM_NAME_D,ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,ITEM_CODE_L,ITEM_DESC_L, "
+						+"	STDMIN_SIGN,STDMIN,STDMAX_SIGN,STDMAX,TEST_QTY,SMP_QTY,SPECL_FL,ISJUDGE,JUDGE_BASIS,PHY_UNIT,GROUP_SEQ, "
+						+"	QUOTE_SPECIMEN_NO,QUOTE_SEQ,ITEM_FLAG,MEMO,CREATE_ID,CREATE_NAME,CREATE_TIME,STDMEMO,RESMP_SEQ, "
+						+"	PHY_GROUP_CODE,FY_QUOTE_SPECIMEN_NO,FY_QUOTE_STATUS)  "
+						+"	select '"+specimenNo.get(i)+"','"+seqint+"','"+smpNo.get(i)+"',PHY_NAME_L,PHY_CODE_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S, "
+						+"	ITEM_CODE_D,ITEM_NAME_D,ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,ITEM_CODE_L,ITEM_DESC_L, "
+						+"	STDMIN_SIGN,STDMIN,STDMAX_SIGN,STDMAX,TEST_QTY,SMP_QTY,SPECL_FL,ISJUDGE,JUDGE_BASIS,PHY_UNIT,GROUP_SEQ, "
+						+"	QUOTE_SPECIMEN_NO,QUOTE_SEQ,ITEM_FLAG,MEMO,CREATE_ID,CREATE_NAME,CREATE_TIME,STDMEMO,RESMP_SEQ, "
+						+"	PHY_GROUP_CODE,'"+(String)hashMap1.get("SPECIMEN_NO")+"','0' from QCM_JHY_SAMPLE_CONSIGN_D_ITEM "
+						+ " where specimen_no = '"+(String)hashMap1.get("SPECIMEN_NO")+"' "
+						+ " and phy_code_l = '"+hashMap1.get("PHY_CODE_L")+"' "
+						+ " and PHY_CODE_M = '"+hashMap1.get("PHY_CODE_M")+"' "
+						+ " and phy_code_s = '"+hashMap1.get("PHY_CODE_S")+"' ";
+						mapper.insert(sql);
+				    }
+				    
+				}*/
+				
+			
+				
+		
+			} catch (Exception e) {
+				SqlSession.rollback();
+				SqlSession.close();
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("修改轧批号失败!");
+				return cro;
+			}
+	
+		SqlSession.commit();
+		SqlSession.close();
+		conn.close();
+		cro.setV_errCode(1);
+		cro.setV_errMsg("修改轧批号成功!");
+		return cro;
+	}
+	
+	/**
+	 * 初样 修改取样轧批号按炉 
+	 * @param materialInfo
+	 * @return
+	 * @throws Exception
+	 */
+	public CoreReturnObject DoUpRefBatchNo(ArrayList<String> smpNo,ArrayList<String> specimenNo,ArrayList<String> batchNo,ArrayList<String> heatnNo,
+			ArrayList<String> materialNo, ArrayList<String> sendMemo,ArrayList<String> inspectionLot,ArrayList<String> plineCode) throws Exception {
+		
+		try {
+		TreeSet<String> treeSet = new TreeSet<String>();
+		for (int i = 0; i < batchNo.size(); i++) {
+			treeSet.add(batchNo.get(i));
+		}
+	      if(treeSet.size() != 1){
+	    	cro.setV_errCode(-1);
+			cro.setV_errMsg("只能按同炉修改取样轧批号,请一个轧批一个轧批修改");
+			return cro;
+	       }
+	      
+	      //判断该轧批号有没有生成委托
+	      String dsql = "select t.* from QCM_JHY_SAMPLE_CONSIGN_D t where "
+		    		+ "  t.BATCH_NO = '"+batchNo.get(0)+"' and t.SMP_TYPE_CODE= '0' and t.freq_code = 'D' and rownum <= 1";
+			List<HashMap> SampleD=mapper.query(dsql.toString());
+			
+			if (SampleD == null || SampleD.size()<0) {
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("轧批号【'"+batchNo.get(0)+"'】按炉取样还未生成委托!");
+				return cro;
+			}
+			
+	  	for (int i = 0; i < treeSet.size(); i++) {
+	  		
+	  	   //查到当前轧批的取样编号
+			   String selsql = "select t.* from QCM_JHY_SAMPLE_CONSIGN_D t where "
+			    		+ "  t.SMP_NO = '"+smpNo.get(i)+"' and t.SMP_TYPE_CODE= '0' and t.freq_code = 'D' and rownum <= 1 ";
+				List<HashMap> selhmbno=mapper.query(selsql.toString());
+				if(selhmbno!=null && selhmbno.size()>=1){
+					if(selhmbno.get(0).get("BATCH_NO").toString().equals(batchNo.get(i))){
+						cro.setV_errCode(-1);
+						cro.setV_errMsg("同轧批修改!无效操作!");
+						return cro;
+					}
+				}
+				
+		
+				
+			   //查到当前轧批的取样编号
+			   String sNOsql = "select t.SPECIMEN_NO from QCM_JHY_SAMPLE_CONSIGN_D t where "
+			    		+ "  t.BATCH_NO = '"+batchNo.get(0)+"' and t.SMP_TYPE_CODE= '0' and t.freq_code = 'D' and rownum <= 1 ";
+				List<HashMap> fYspecimenNo=mapper.query(sNOsql.toString());
+				
+				  String logmemo = specimenNo.get(i)+','+materialNo.get(i)+"初样夹杂修改成"+batchNo.get(i);
+				  String sql3= "INSERT INTO QCM_JUDGE_OPERATE_LOG (OPERATE_TYPE,PARAMS,OPERATE_NAME,PROD_LINE,BATCHNO,MEMO) "
+				    		+ " VALUES('初样修改夹杂接口','"+materialNo.get(i)+"','createQtlySample','"+plineCode.get(i)+"',"
+				    				+ " '"+batchNo.get(i)+"','"+logmemo+"') ";
+				    mapper.insert(sql3);
+				
+				//修改引用取样编号  当前
+				String sql =" update QCM_JHY_SAMPLE_CONSIGN_D "
+						+ " set QUOTE_CONSIGN_NO = '' , STATUS = '0', SEND_ID='',SEND_NAME = '',SEND_TIME = '' ";
+				sql +=" where SPECIMEN_NO = '"+fYspecimenNo.get(0).get("SPECIMEN_NO")+"'  ";
+			    //this.getDao("testDao").ExcuteNonQuery(sql.toString());
+			    mapper.updateJudgeStatus(sql.toString());
+			    
+			    sql = "";
+			    sql =" update QCM_JHY_SAMPLE_CONSIGN_D_ITEM  set QUOTE_SPECIMEN_NO = ''  ";
+				sql +=" where SPECIMEN_NO = '"+fYspecimenNo.get(0).get("SPECIMEN_NO")+"'  ";
+			    //this.getDao("testDao").ExcuteNonQuery(sql.toString());
+				 mapper.updateJudgeStatus(sql.toString());
+			    
+			    //修改其它引用轧批
+			    sql = "";
+				 sql =" update QCM_JHY_SAMPLE_CONSIGN_D "
+						+ " set QUOTE_CONSIGN_NO = '"+fYspecimenNo.get(0).get("SPECIMEN_NO")+"' , STATUS = '1', SEND_ID='sys',SEND_NAME = '引用发送',SEND_TIME = sysdate ";
+				sql +=" where HEAT_NO = '"+heatnNo.get(0)+"' and SPECIMEN_NO <> '"+fYspecimenNo.get(0).get("SPECIMEN_NO")+"' and freq_code = 'D' ";
+			    //this.getDao("testDao").ExcuteNonQuery(sql.toString());
+				 mapper.updateJudgeStatus(sql.toString());
+			    
+			    //查询当前炉号的引用取样编号
+				   String sNOsqls = "select t.SPECIMEN_NO from QCM_JHY_SAMPLE_CONSIGN_D t "
+				   		+ " where HEAT_NO = '"+heatnNo.get(0)+"' and SPECIMEN_NO <> '"+fYspecimenNo.get(0).get("SPECIMEN_NO")+"' and freq_code = 'D' ";
+					List<HashMap> listhm=mapper.query(sNOsqls.toString());
+			    
+					if (listhm != null && listhm.size()>0) {
+						for (HashMap hashMap : listhm) {
+							   sql = "";
+							    sql =" update QCM_JHY_SAMPLE_CONSIGN_D_ITEM  set QUOTE_SPECIMEN_NO = '"+fYspecimenNo.get(0).get("SPECIMEN_NO")+"'  ";
+								sql +=" where SPECIMEN_NO = '"+hashMap.get("SPECIMEN_NO")+"'  ";
+							    //this.getDao("testDao").ExcuteNonQuery(sql.toString());
+								mapper.updateJudgeStatus(sql.toString());
+						}
+					 
+					}
+			 
+				
+	  	}
+		} catch (Exception e) {
+			SqlSession.rollback();
+			SqlSession.close();
+			cro.setV_errCode(-1);
+			cro.setV_errMsg("修改轧批号失败!");
+			return cro;
+		}
+		SqlSession.commit();
+		SqlSession.close();
+		cro.setV_errCode(1);
+		cro.setV_errMsg("修改轧批号成功!");
+		return cro;
+	}
+	/**
+	 * 删除检验项 检验委托明细项目表
+	 * @param materialInfo
+	 * @return
+	 * @throws Exception
+	 */
+	public CoreReturnObject deleteInfo(String seq,String specimenNo) throws Exception {
+		
+		
+		try {
+
+					StringBuffer sqlucomm = new StringBuffer();
+					sqlucomm.append(" delete from qcm_jhy_sample_consign_d_item  ");
+					sqlucomm.append(" where SPECIMEN_NO = '"+specimenNo+"' and SEQ = '"+seq+"' ");
+				    this.getDao("testDao").ExcuteNonQuery(sqlucomm.toString());
+
+		
+			} catch (Exception e) {
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("删除失败!");
+				return cro;
+			}
+		cro.setV_errCode(1);
+		cro.setV_errMsg("删除成功!");
+		return cro;
+	}
+	
+	/**
+	 * 删除委托
+	 * @param materialInfo
+	 * @return
+	 * @throws Exception
+	 */
+	public CoreReturnObject DoDelete(ArrayList<String> batchNo,ArrayList<String> designKey,ArrayList<String> smpNo,ArrayList<String> specimenNo,ArrayList<String> smpTypeName,String userName) throws Exception {
+		try {
+		    Integer num = 0;
+            TreeSet<String> treeSet = new TreeSet<String>(); 
+			for(String batchNoVal :  batchNo){
+				if(StringUtils.isBlank(batchNoVal)){
+					cro.setV_errCode(-1);
+					cro.setV_errMsg("轧批号为空!!!");
+					return cro;
+				}
+				treeSet.add(batchNoVal);
+				num++;
+			}
+			
+			if(treeSet.size()>1){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("只能删除同轧批号的委托!!!");
+				return cro;
+			}
+			
+			//件件取样
+		/*	for(int i=0;i<specimenNo.size();i++){
+				String specimen = specimenNo.get(i);
+			    String jsql="select * from qcm_jhy_sample_consign_d t where t.status = '0' and t.SMP_TYPE_CODE = '3' and t.specimen_no = '"+specimen+"' ";
+			    List<HashMap> hm=mapper.query(jsql.toString());
+			    if(hm != null && hm.size()>=1){
+			    	for (HashMap hmap : hm) {
+			    	String spmNo= hmap.get("SMP_NO").toString();
+			    	//删除 检验委托明细项目表
+					String sql = "DELETE QCM_JHY_SAMPLE_CONSIGN_D_ITEM t where  t.specimen_no= '"+specimen+"'  ";
+					mapper.delete(sql.toString());
+					
+					//删除 检验委托明细表
+					 sql = "DELETE QCM_JHY_SAMPLE_CONSIGN_D t where t.specimen_no= '"+specimen+"'  ";
+					mapper.delete(sql.toString());
+					
+					//删除 检验委托主表
+					 sql = "DELETE QCM_JHY_SAMPLE_CONSIGN_M t where t.smp_no = '"+spmNo+"'  ";
+					mapper.delete(sql.toString());
+					
+					//删除 试样号与合同信息关系表
+					 sql = "DELETE QCM_JHY_SAMPLE_R_ORD t where t.smp_no = '"+spmNo+"'  ";
+					mapper.delete(sql.toString());
+			    	}
+			    }
+			}*/
+			
+			for(int i=0;i<batchNo.size();i++){
+				if(smpTypeName.get(i).equals("件件取样")){
+					cro.setV_errCode(-1);
+					cro.setV_errMsg("件件取样暂时不支持删除!!!");
+					return cro;
+				}
+			/*	if(smpTypeName.get(i).equals("件件取样")){
+					continue;
+				}
+				String jsql="select * from qcm_jhy_sample_consign_d t where t.status = '0' and t.SMP_TYPE_CODE = '3' and t.specimen_no = '"+specimenNo.get(i)+"' ";
+			    List<HashMap> hm=mapper.query(jsql.toString());
+			    if(hm != null && hm.size()>=1){
+			    	continue;
+			    }*/
+				    
+				//线棒限制
+				String BCGX="select t.* from QCM_JHY_SAMPLE_CONSIGN_D t where "
+				    	+ " t.SPECIMEN_NO = '"+specimenNo.get(i)+"' and t.pline_code in ('BC2','GX1','GX2') and rownum = 1 ";
+					List<HashMap> bcgxhm=mapper.query(BCGX.toString());
+					if (bcgxhm != null && bcgxhm.size()>=1) {
+						String BATCH_NO_BCGX = bcgxhm.get(0).get("BATCH_NO").toString();
+						String INSPECTION_LOT_BCGX= bcgxhm.get(0).get("INSPECTION_LOT").toString();
+						
+						String BCGX2=" select * from qcm_jhy_sample_r_ord r "
+								+ " where r.batch_no = '"+BATCH_NO_BCGX+"' and r.inspection_lot = '"+INSPECTION_LOT_BCGX+"' "
+								+ " and r.judge_status = '1' and r.inspection_lot is not null ";
+							List<HashMap> bcgxhm2=mapper.query(BCGX2.toString());
+							if(bcgxhm2 !=null && bcgxhm2.size()>=1){
+								cro.setV_errCode(-1);
+								cro.setV_errMsg("【"+BATCH_NO_BCGX+"】轧批下的委托有判定请撤销判定再删除!");
+								return cro;
+							}
+					}
+				
+				
+				String dsql="select count(1) cnum from QCM_JHY_SAMPLE_CONSIGN_D t where "
+				    	+ " t.QUOTE_CONSIGN_NO = '"+specimenNo.get(i)+"' and FREQ_CODE = 'D' ";
+					List<HashMap> Sampley=mapper.query(dsql.toString());
+					if (Sampley != null && Sampley.size()>=1) {
+						if(!Sampley.get(0).get("CNUM").toString().equals("0")){
+							cro.setV_errCode(-1);
+							cro.setV_errMsg("该夹杂已被同炉的夹杂引用不能删除!!!");
+							return cro;
+						}
+					}
+					
+					//英国250吨
+					 dsql="";
+					 dsql="select count(1) cnum from QCM_JHY_SAMPLE_CONSIGN_D_ITEM t, qcm_jhy_sample_consign_d d "
+					 		+ " where t.specimen_no = d.specimen_no  and d.pline_code in ('ZB1','HB1') and t.Quote_Specimen_No = '"+specimenNo.get(i)+"'  ";
+						List<HashMap> lrastr=mapper.query(dsql.toString());
+						if (lrastr != null && lrastr.size()>=1) {
+							if(!lrastr.get(0).get("CNUM").toString().equals("0")){
+								cro.setV_errCode(-1);
+								cro.setV_errMsg("该轧批已被引用英国船级社!!!");
+								return cro;
+							}
+						}
+					
+					
+				     TreeSet<String> treeSteelCode = new TreeSet<String>(); //牌号
+			         TreeSet<String> treeSpecimenNo = new TreeSet<String>(); //取样编号
+			         int numsno=0;
+					//XGEC- 订单开头的一个订单两个牌号
+					String sqlLog = "select * from QCM_JHY_SAMPLE_CONSIGN_D t,Qcm_Jhy_Sample_r_Ord r "
+							+ " where t.SMP_NO=r.SMP_NO and r.DESIGN_KEY = '"+designKey.get(i)+"' and t.batch_no = '"+batchNo.get(i)+"' ";
+					List<HashMap> lists = mapper.query(sqlLog);	
+					if(lists!=null && lists.size()>1){
+						for (HashMap hashMap : lists) {
+							treeSteelCode.add(hashMap.get("STEEL_CODE").toString());
+							treeSpecimenNo.add(hashMap.get("SPECIMEN_NO").toString());
+						}
+						if(treeSteelCode.size()>=2){//一个订单两个牌号,需要一起删除
+							for (String strsno : treeSpecimenNo) {
+								for(int j=0;j<specimenNo.size();j++){
+									if(strsno.equals(specimenNo.get(j))){
+										numsno++;
+									}
+								}
+							}
+							if(numsno!=lists.size()){
+								cro.setV_errCode(-1);
+								cro.setV_errMsg("不能单独删除订单号【"+designKey.get(i)+"】的委托,这个订单有多个牌号的委托删除其中一个牌号会缺少委托项目,不能综判!请谨慎操作!");
+								return cro;
+							}
+						}
+					}
+			}
+			
+			//检验委托明细表
+		     String dsql = "select count(1) cnum from QCM_JHY_SAMPLE_CONSIGN_D t where "
+		    		+ "  t.batch_no = '"+batchNo.get(0)+"' and t.STATUS = '0' and t.SEND_TIME is null ";
+			
+			List<HashMap> SampleD=mapper.query(dsql.toString());
+			if (SampleD == null || SampleD.size()<=0 || SampleD.get(0).get("CNUM").toString().equals("0")) {
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("检验委托明细表未找到相应数据!!!");
+				return cro;
+			}
+			
+			for(int i=0;i<batchNo.size();i++){
+				/*if(smpTypeName.get(i).equals("件件取样")){
+					continue;
+				}
+				String jsql="select * from qcm_jhy_sample_consign_d t where t.status = '0' and t.SMP_TYPE_CODE = '3' and t.specimen_no = '"+specimenNo.get(i)+"' ";
+			    List<HashMap> hm=mapper.query(jsql.toString());
+			    if(hm != null && hm.size()>=1){
+			    	continue;
+			    }*/
+			    
+				String sqlLog = "select nvl(t.PROCESS_NOS,'null') PROCESS_NOS1,t.*,r.* from QCM_JHY_SAMPLE_CONSIGN_D t,Qcm_Jhy_Sample_r_Ord r "
+						+ " where t.SMP_NO=r.SMP_NO and t.specimen_no = '"+specimenNo.get(i)+"'";
+				List<HashMap> lists = mapper.query(sqlLog);
+				for (HashMap list : lists) {
+					String strMemo = list.get("SPECIMEN_NO").toString()+","+list.get("DESIGN_KEY").toString()+","+list.get("STEEL_CODE").toString()+","
+				                    +list.get("THICK").toString()+","+list.get("INSPECTION_LOT").toString()+","+list.get("SMP_TYPE_NAME").toString()+","
+							        +list.get("PROCESS_NOS1").toString();
+					QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
+					qjog.setOperate_name(userName);
+					qjog.setBatchno(list.get("BATCH_NO") == null ?"":list.get("BATCH_NO").toString());			
+					qjog.setOperate_type("删除检验委托");
+					qjog.setParams(list.get("MATERIAL_NO") == null ?"":list.get("MATERIAL_NO").toString());
+					qjog.setProd_line(list.get("PLINE_CODE") == null ?"":list.get("PLINE_CODE").toString());
+					qjog.setMemo(strMemo);
+					mapper.insertQcmJudgeOperateLog(qjog);	 				 
+				 }
+			if(smpTypeName.get(i).equals("初样") || smpTypeName.get(i).equals("认证样") || smpTypeName.get(i).equals("按母板取样") ){
+			    //记录删除的数据
+				String sqlDel = " Insert into QCM_JHY_SAMPLE_CONSIGN_D_DEL(SMP_NO,SPECIMEN_NO,HEAT_NO,BATCH_NO,INSPECTION_LOT,FREQ_CODE,FREQ_NAME,MATERIAL_NO,SMP_TYPE_CODE,SMP_TYPE_NAME,CONSIGN_NO,CONSIGN_NO_SEQ,TEST_QTY,SMP_QTY,SMP_LOCATION,BOARD_NO,QUOTE_CONSIGN_NO,OLD_CONSIGN_NO,PLINE_CODE,PLINE_NAME,STATUS,VALIDFLAG,SOURCE,GUID,SEND_ID,SEND_NAME,SEND_TIME,CHEM_ITEM,PRODUCT_CNT,CREATE_TIME,SMP_LOCATION_CODE,MEMO,WEIGHT,WEIGHT_STD,WEIGHT_SFD,SPECIMENNOZH,SEND_MEMO,ITEM_FLAG,CREATETIMEDEL,CREATENAMEDEL,ARTIFICIAL_MEMO) "
+						+ " select SMP_NO,SPECIMEN_NO,HEAT_NO,BATCH_NO,INSPECTION_LOT,FREQ_CODE,FREQ_NAME,MATERIAL_NO,SMP_TYPE_CODE,SMP_TYPE_NAME,CONSIGN_NO,CONSIGN_NO_SEQ,TEST_QTY,SMP_QTY,SMP_LOCATION,BOARD_NO,QUOTE_CONSIGN_NO,OLD_CONSIGN_NO,PLINE_CODE,PLINE_NAME,STATUS,VALIDFLAG,SOURCE,GUID,SEND_ID,SEND_NAME,SEND_TIME,CHEM_ITEM,PRODUCT_CNT,CREATE_TIME,SMP_LOCATION_CODE,MEMO,WEIGHT,WEIGHT_STD,WEIGHT_SFD,'删除委托接口',SEND_MEMO,ITEM_FLAG,SYSDATE,'"+userName+"S',ARTIFICIAL_MEMO from QCM_JHY_SAMPLE_CONSIGN_D d"
+						+ " where d.smp_no = '"+smpNo.get(i)+"' and d.specimen_no= '"+specimenNo.get(i)+"' and d.batch_no = '"+batchNo.get(i)+"' ";
+				mapper.insert(sqlDel);
+				
+				dsql ="";
+				   dsql = "select count(1) cnum from QCM_JHY_SAMPLE_CONSIGN_D t where "
+				    		+ "  t.smp_no = '"+smpNo.get(i)+"' ";
+					
+				List<HashMap> smpNot=mapper.query(dsql.toString());
+				if(smpNot!=null && smpNot.size()>=1 && !smpNot.get(0).get("CNUM").toString().equals("1")){
+					//删除 检验委托明细项目表
+					String sql = "DELETE QCM_JHY_INSP_PHYSICS t where  t.specimen_no= '"+specimenNo.get(i)+"'  ";
+					 mapper.delete(sql.toString());
+					 
+					//删除 检验委托明细项目表
+					 sql = "DELETE QCM_JHY_SAMPLE_CONSIGN_D_ITEM t where  t.specimen_no= '"+specimenNo.get(i)+"'  ";
+					mapper.delete(sql.toString());
+					
+					//删除 检验委托明细表
+					 sql = "DELETE QCM_JHY_SAMPLE_CONSIGN_D t where t.smp_no = '"+smpNo.get(i)+"' and t.specimen_no= '"+specimenNo.get(i)+"'"
+					 		+ "  and t.batch_no = '"+batchNo.get(i)+"' ";
+					mapper.delete(sql.toString());
+				}else{
+				
+			//删除 检验委托明细项目表
+			String sql = "DELETE QCM_JHY_SAMPLE_CONSIGN_D_ITEM t where  t.specimen_no= '"+specimenNo.get(i)+"'  ";
+			mapper.delete(sql.toString());
+			
+			//删除 检验委托明细表
+			 sql = "DELETE QCM_JHY_SAMPLE_CONSIGN_D t where t.smp_no = '"+smpNo.get(i)+"' and t.specimen_no= '"+specimenNo.get(i)+"'"
+			 		+ "  and t.batch_no = '"+batchNo.get(i)+"'  ";
+			mapper.delete(sql.toString());
+			
+			//删除 检验委托主表
+			 sql = "DELETE QCM_JHY_SAMPLE_CONSIGN_M t where t.smp_no = '"+smpNo.get(i)+"' "
+			 		+ "  and t.batch_no = '"+batchNo.get(i)+"'  ";
+			mapper.delete(sql.toString());
+			
+			//删除 试样号与合同信息关系表
+			 sql = "DELETE QCM_JHY_SAMPLE_R_ORD t where t.design_key = '"+designKey.get(i)+"' and t.smp_no = '"+smpNo.get(i)+"' "
+			 		+ "  and t.batch_no = '"+batchNo.get(i)+"'  ";
+			mapper.delete(sql.toString());
+			
+			//删除 检验委托明细项目表
+			 sql = "DELETE QCM_JHY_INSP_PHYSICS t where  t.specimen_no= '"+specimenNo.get(i)+"'  ";
+			 mapper.delete(sql.toString());
+				}
+			}else if (smpTypeName.get(0).equals("复样")){
+				
+				//删除 检验委托明细项目表
+				String sql = "DELETE QCM_JHY_SAMPLE_CONSIGN_D_ITEM t where  t.specimen_no= '"+specimenNo.get(i)+"'  ";
+				mapper.delete(sql.toString());
+				
+				//删除 检验委托明细表
+				 sql = "DELETE QCM_JHY_SAMPLE_CONSIGN_D t where t.smp_no = '"+smpNo.get(i)+"' and t.specimen_no= '"+specimenNo.get(i)+"'"
+				 		+ "  and t.batch_no = '"+batchNo.get(i)+"' and t.smp_type_code = '1' ";
+				mapper.delete(sql.toString());
+				
+				//删除 检验委托主表
+				 sql = "DELETE QCM_JHY_SAMPLE_CONSIGN_M t where t.smp_no = '"+smpNo.get(i)+"' "
+				 		+ "  and t.batch_no = '"+batchNo.get(i)+"' and t.DUPLICATE_SAMPLE = '复样' ";
+				mapper.delete(sql.toString());
+				
+				//删除 试样号与合同信息关系表
+				 sql = "DELETE QCM_JHY_SAMPLE_R_ORD t where t.design_key = '"+designKey.get(i)+"' and t.smp_no = '"+smpNo.get(i)+"' "
+				 		+ "  and t.batch_no = '"+batchNo.get(i)+"' and t.DUPLICATE_SAMPLE = '复样' ";
+				mapper.delete(sql.toString());
+				
+				//如果要删除复样委托时 也要删除实绩表qcm_jhy_insp_physics
+				//删除 检验委托明细项目表
+				 sql = "DELETE QCM_JHY_INSP_PHYSICS t where  t.specimen_no= '"+specimenNo.get(i)+"'  ";
+				 mapper.delete(sql.toString());
+			}
+			 
+			}
+			
+			 //删除复样时  初样检验号返回
+			if (smpTypeName.get(0).equals("复样")){
+				for (String  batchNo2 : treeSet) {
+					 //把初样的检验号  修改到ord表中
+					String sql =" select t.smp_no,t.inspection_lot from QCM_JHY_SAMPLE_CONSIGN_D t "
+								+"	 where t.smp_type_code = '0' and t.batch_no = '"+batchNo2+"' ";
+					List<HashMap> hmap = mapper.query(sql.toString());
+					 
+					for (HashMap hm : hmap) {
+					sql =" update QCM_JHY_SAMPLE_R_ORD t set t.inspection_lot = '"+(String)hm.get("INSPECTION_LOT")+"' "
+					 + " where  t.smp_no = '"+(String)hm.get("SMP_NO")+"' and t.batch_no = '"+batchNo2+"'  ";
+					mapper.updateJudgeStatus(sql.toString());
+					}
+				}
+			}
+				
+			
+			} catch (Exception e) {
+				SqlSession.rollback();
+				SqlSession.close();
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("删除委托失败!");
+				return cro;
+			}
+		SqlSession.commit();
+		SqlSession.close();
+		cro.setV_errCode(1);
+		cro.setV_errMsg("删除委托成功!");
+		return cro;
+	}
+	
+	/**
+	 * 取消复样接口
+	 * @param materialInfo
+	 * @return
+	 * @throws Exception
+	 */
+	public CoreReturnObject DoDeleteFY(String batchNo,String designKey,String smpNo,String userName,String steelCode,String thick) throws Exception {
+		try {
+		    Integer num = 0;
+		    String PLINE_CODE="";
+            TreeSet<String> treeSet = new TreeSet<String>(); 
+			if(StringUtils.isBlank(batchNo)){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("轧批号为空!!!");
+				return cro;
+			}
+			if(StringUtils.isBlank(designKey)){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("订单号为空!!!");
+				return cro;
+			}
+			if(StringUtils.isBlank(smpNo)){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("试样号为空!!!");
+				return cro;
+			}
+			if(StringUtils.isBlank(steelCode)){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("牌号为空!!!");
+				return cro;
+			}
+			if(StringUtils.isBlank(thick)){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("规格为空!!!");
+				return cro;
+			}
+		
+	
+			 String dinsql = "select nvl(t.PROCESS_NOS,'null') PROCESS_NOS1,t.* from QCM_JHY_SAMPLE_CONSIGN_D t,qcm_jhy_sample_r_ord r where t.smp_no = r.smp_no "
+			    		+ "  and t.batch_no like '"+batchNo+"%' and t.SMP_TYPE_CODE= '0' and t.SMP_NO = '"+smpNo+"' "
+			    		+ "  and r.steel_code = '"+steelCode+"' and to_char(r.thick, 'fm990.099') = to_char('"+thick+"', 'fm990.099') ";
+			 List<HashMap> Samplein=mapper.query(dinsql.toString());
+			 if(Samplein == null || Samplein.size()<=0){
+					cro.setV_errCode(1);
+					cro.setV_errMsg("未找到该试样号的初样信息:"+smpNo);
+					return cro;
+			 }
+			    PLINE_CODE=Samplein.get(0).get("PLINE_CODE").toString();//产线
+				String strMemo = "试样号:"+smpNo+','+designKey+','+steelCode+','+thick;
+				if(Samplein.get(0).get("PLINE_CODE").toString().equals("HB1") || Samplein.get(0).get("PLINE_CODE").toString().equals("ZB1")){
+					strMemo+=",热处理号:"+Samplein.get(0).get("PROCESS_NOS1").toString();
+				}
+				QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
+				qjog.setOperate_name(userName);
+				qjog.setBatchno(batchNo);			
+				qjog.setOperate_type("取消复样委托");
+				qjog.setParams(Samplein.get(0).get("MATERIAL_NO").toString());
+				qjog.setProd_line(Samplein.get(0).get("PLINE_CODE").toString());
+				qjog.setMemo(strMemo);
+				mapper.insertQcmJudgeOperateLog(qjog);	
+				
+			//检验委托明细表
+		     String dsql = "select t.* from QCM_JHY_SAMPLE_CONSIGN_D t,qcm_jhy_sample_r_ord r where t.smp_no = r.smp_no "
+		    		+ "  and t.batch_no like '"+batchNo+"%' and t.SMP_TYPE_CODE= '1' and r.DESIGN_KEY='"+designKey+"' "
+		    		+ "  and r.steel_code = '"+steelCode+"' and to_char(r.thick, 'fm990.099') = to_char('"+thick+"', 'fm990.099') "
+		    		+ "  and t.FREQ_CODE = '"+Samplein.get(0).get("FREQ_CODE")+"' and r.INSPECTION_LOT = '"+Samplein.get(0).get("INSPECTION_LOT")+"' ";
+			
+			List<HashMap> SampleD=mapper.query(dsql.toString());
+			if (SampleD == null || SampleD.size()<=0) {
+				dsql = "select t.* from QCM_JHY_SAMPLE_CONSIGN_D t,qcm_jhy_sample_r_ord r where t.smp_no = r.smp_no "
+			    		+ "  and t.batch_no like '"+batchNo+"%' and t.SMP_TYPE_CODE= '1' "
+			    		+ "  and r.steel_code = '"+steelCode+"' and to_char(r.thick, 'fm990.099') = to_char('"+thick+"', 'fm990.099')"
+			    		+ "  and t.FREQ_CODE = '"+Samplein.get(0).get("FREQ_CODE")+"' and r.INSPECTION_LOT = '"+Samplein.get(0).get("INSPECTION_LOT")+"'";
+				SampleD=null;
+				SampleD=mapper.query(dsql.toString());
+				if (SampleD == null || SampleD.size()<=0) {
+					SqlSession.commit();
+					SqlSession.close();
+					cro.setV_errCode(1);
+					cro.setV_errMsg("取消复样委托成功!");
+					return cro;
+				}
+			}
+			
+			for (HashMap hm : SampleD) {
+				if(!hm.get("STATUS").equals("0")){
+					SqlSession.rollback();
+					SqlSession.close();
+					cro.setV_errCode(-1);
+					cro.setV_errMsg("轧批号【'"+batchNo+"'】已发送委托不可撤销!");
+					return cro;
+				}
+			}
+
+			for (HashMap hmap : SampleD) {
+				
+				//删除 检验委托明细项目表
+				String sql = "DELETE QCM_JHY_SAMPLE_CONSIGN_D_ITEM t where  t.specimen_no= '"+hmap.get("SPECIMEN_NO")+"'  ";
+				mapper.delete(sql.toString());
+				
+				//删除 检验委托明细表
+				 sql = "DELETE QCM_JHY_SAMPLE_CONSIGN_D t where t.smp_no = '"+hmap.get("SMP_NO")+"' and t.specimen_no= '"+hmap.get("SPECIMEN_NO")+"'"
+				 		+ "  and t.batch_no like '"+batchNo+"%' and t.smp_type_code = '1' ";
+				mapper.delete(sql.toString());
+				
+				//删除 检验委托主表
+				/* sql = "DELETE QCM_JHY_SAMPLE_CONSIGN_M t where t.smp_no = '"+hmap.get("SMP_NO")+"' "
+				 		+ "  and t.batch_no like '"+batchNo+"%' and t.DUPLICATE_SAMPLE = '复样' ";
+				mapper.delete(sql.toString());*/
+				
+				//删除 试样号与合同信息关系表
+			/*	 sql = "DELETE QCM_JHY_SAMPLE_R_ORD t where t.smp_no = '"+hmap.get("SMP_NO")+"' "
+				 		+ "  and t.batch_no like '"+batchNo+"%' and t.DUPLICATE_SAMPLE = '复样' ";
+				mapper.delete(sql.toString());*/
+				
+				//如果要删除复样委托时 也要删除实绩表qcm_jhy_insp_physics
+				//删除 检验委托明细项目表
+				 sql = "DELETE QCM_JHY_INSP_PHYSICS t where  t.specimen_no= '"+hmap.get("SPECIMEN_NO")+"'  ";
+				 mapper.delete(sql.toString());
+			
+			}
+	
+	         for (HashMap hmap : SampleD) {
+				//删除 检验委托主表
+	        	 String sql = "DELETE QCM_JHY_SAMPLE_CONSIGN_M t where t.smp_no = '"+hmap.get("SMP_NO")+"' "
+				 		+ "  and t.batch_no like '"+batchNo+"%' and t.DUPLICATE_SAMPLE = '复样' ";
+				mapper.delete(sql.toString());
+				
+				//删除 试样号与合同信息关系表
+				 sql = "DELETE QCM_JHY_SAMPLE_R_ORD t where t.smp_no = '"+hmap.get("SMP_NO")+"' "
+				 		+ "  and t.batch_no like '"+batchNo+"%' and t.DUPLICATE_SAMPLE = '复样' ";
+				mapper.delete(sql.toString());
+			}
+			
+	         String strSmpNo = " and r.SMP_NO = '"+smpNo+"' ";
+	         if(PLINE_CODE.equals("GX1") || PLINE_CODE.equals("GX2") || PLINE_CODE.equals("BC2")){
+	        	 strSmpNo="";
+	         }
+			 //删除复样时  初样检验号返回
+			 //把初样的检验号  修改到ord表中
+			String sql =" select t.smp_no,t.inspection_lot from QCM_JHY_SAMPLE_CONSIGN_D t,qcm_jhy_sample_r_ord r where t.smp_no = r.smp_no "
+						+"	 and t.smp_type_code = '0' and t.batch_no like '"+batchNo+"%' and r.DESIGN_KEY='"+designKey+"' "
+						+"   and r.steel_code = '"+steelCode+"' and to_char(r.thick, 'fm990.099') = to_char('"+thick+"', 'fm990.099')"
+						+ strSmpNo;
+			List<HashMap> hmap = mapper.query(sql.toString());
+			 if(hmap==null || hmap.size()<=0){
+				 sql =" select t.smp_no,t.inspection_lot from QCM_JHY_SAMPLE_CONSIGN_D t,qcm_jhy_sample_r_ord r where t.smp_no = r.smp_no "
+							+"	 and t.smp_type_code = '0' and t.batch_no like '"+batchNo+"%' " + strSmpNo
+							+"   and r.steel_code = '"+steelCode+"' and to_char(r.thick, 'fm990.099') = to_char('"+thick+"', 'fm990.099')";
+				 hmap=null;
+				 hmap = mapper.query(sql.toString());
+			 }
+			for (HashMap hm : hmap) {
+			sql =" update QCM_JHY_SAMPLE_R_ORD t set t.inspection_lot = '"+(String)hm.get("INSPECTION_LOT")+"' "
+			 + " where  t.smp_no = '"+(String)hm.get("SMP_NO")+"' and t.batch_no like '"+batchNo+"%'  ";
+			mapper.updateJudgeStatus(sql.toString());
+			}
+				
+			
+			
+			} catch (Exception e) {
+				SqlSession.rollback();
+				SqlSession.close();
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("取消复样委托失败!");
+				return cro;
+			}
+		SqlSession.commit();
+		SqlSession.close();
+		cro.setV_errCode(1);
+		cro.setV_errMsg("取消复样委托成功!");
+		return cro;
+	}
+	
+	/**
+	 * 取消件件取样接口
+	 * @param materialInfo
+	 * @return
+	 * @throws Exception
+	 */
+	public CoreReturnObject DoDeleteJ(String materialNo,String designKey,String smpNo,String userName,String steelCode,String thick) throws Exception {
+		try {
+			if(StringUtils.isBlank(materialNo)){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("子板号为空!!!");
+				return cro;
+			}
+			if(StringUtils.isBlank(designKey)){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("订单号为空!!!");
+				return cro;
+			}
+			if(StringUtils.isBlank(smpNo)){//为原不合格的试样号
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("试样号为空!!!");
+				return cro;
+			}
+			if(StringUtils.isBlank(steelCode)){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("牌号为空!!!");
+				return cro;
+			}
+			if(StringUtils.isBlank(thick)){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("规格为空!!!");
+				return cro;
+			}
+		
+	
+			 String dinsql = "select nvl(t.PROCESS_NOS, 'null') PROCESS_NOS,t.* from QCM_JHY_SAMPLE_CONSIGN_D t,qcm_jhy_sample_r_ord r where t.smp_no = r.smp_no "
+			    		+ "  and t.MATERIAL_NO = '"+materialNo+"' and t.SMP_TYPE_CODE= '3' and r.DESIGN_KEY = '"+designKey+"' "
+			    		+ "  and r.steel_code = '"+steelCode+"' and to_char(r.thick, 'fm990.099') = to_char('"+thick+"', 'fm990.099') and rownum=1 ";
+			 List<HashMap> Samplein=mapper.query(dinsql.toString());
+			 if(Samplein == null || Samplein.size()<=0){
+					cro.setV_errCode(1);
+					cro.setV_errMsg("未找到该子板号件件取样信息:"+materialNo);
+					return cro;
+			 }
+			 if(!Samplein.get(0).get("STATUS").equals("0")){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("子板号【'"+materialNo+"'】件件取样已发送委托不可取消!请先把委托撤销回来");
+				return cro;
+			 }
+				String strMemo = "原试样号:"+smpNo+','+designKey+','+steelCode+','+thick;
+				if(Samplein.get(0).get("PLINE_CODE").toString().equals("HB1") || Samplein.get(0).get("PLINE_CODE").toString().equals("ZB1")){
+					strMemo+=",热处理号:"+Samplein.get(0).get("PROCESS_NOS").toString();
+				}
+				QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
+				qjog.setOperate_name(userName);
+				qjog.setBatchno(Samplein.get(0).get("BATCH_NO").toString());			
+				qjog.setOperate_type("取消件件取样委托");
+				qjog.setParams(Samplein.get(0).get("MATERIAL_NO").toString());
+				qjog.setProd_line(Samplein.get(0).get("PLINE_CODE").toString());
+				qjog.setMemo(strMemo);
+				mapper.insertQcmJudgeOperateLog(qjog);	
+				
+			  	for (HashMap hmap : Samplein) {
+			    	String spmNo= hmap.get("SMP_NO").toString();
+			    	String specimenNO= hmap.get("SPECIMEN_NO").toString();
+			    	//删除 检验委托明细项目表
+					String sql = "DELETE QCM_JHY_SAMPLE_CONSIGN_D_ITEM t where  t.specimen_no= '"+specimenNO+"'  ";
+					mapper.delete(sql.toString());
+					
+					//删除 检验委托明细表
+					 sql = "DELETE QCM_JHY_SAMPLE_CONSIGN_D t where t.specimen_no= '"+specimenNO+"'  ";
+					mapper.delete(sql.toString());
+					
+					//删除 检验委托主表
+					 sql = "DELETE QCM_JHY_SAMPLE_CONSIGN_M t where t.smp_no = '"+spmNo+"'  ";
+					mapper.delete(sql.toString());
+					
+					//删除 试样号与合同信息关系表
+					 sql = "DELETE QCM_JHY_SAMPLE_R_ORD t where t.smp_no = '"+spmNo+"'  ";
+					mapper.delete(sql.toString());
+					
+					 sql = "DELETE QCM_JHY_INSP_PHYSICS t where  t.specimen_no= '"+specimenNO+"'  ";
+					 mapper.delete(sql.toString());
+			    	}
+			
+			} catch (Exception e) {
+				SqlSession.rollback();
+				SqlSession.close();
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("取消件件取样委托失败!");
+				return cro;
+			}
+		SqlSession.commit();
+		SqlSession.close();
+		cro.setV_errCode(1);
+		cro.setV_errMsg("取消件件取样委托成功!");
+		return cro;
+	}
+	
+	/**
+	 * 初样 撤销复制当前委托一条
+	 * @param materialInfo
+	 * @return
+	 * @throws Exception
+	 */
+	public CoreReturnObject DoDelWtZy(String batchNo,String designKey,String smpNo,String specimenNo,String userName) throws Exception {
+		try {
+
+			if(StringUtils.isBlank(batchNo)){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("轧批号为空!!!");
+				return cro;
+			}
+			if(StringUtils.isBlank(smpNo)){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("试样号为空!!!");
+				return cro;
+			}
+			if(StringUtils.isBlank(specimenNo)){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("取样编号为空!!!");
+				return cro;
+			}
+			if(StringUtils.isBlank(designKey)){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("订单号为空!!!");
+				return cro;
+			}
+			
+			//删除 检验委托明细项目表
+			String sql = "DELETE QCM_JHY_SAMPLE_CONSIGN_D_ITEM t where  t.specimen_no= '"+specimenNo+"' and t.item_flag = '1' ";
+			mapper.delete(sql.toString());
+			
+			//删除 检验委托明细表
+			 sql = "DELETE QCM_JHY_SAMPLE_CONSIGN_D t where t.smp_no = '"+smpNo+"' and t.specimen_no= '"+specimenNo+"'"
+			 		+ "  and t.batch_no = '"+batchNo+"' and t.item_flag = '1' ";
+			mapper.delete(sql.toString());
+			
+			//删除 试样号与合同信息关系表
+			 sql = "DELETE QCM_JHY_SAMPLE_R_ORD t where t.design_key = '"+designKey+"' and t.smp_no = '"+smpNo+"' "
+			 		+ "  and t.batch_no = '"+batchNo+"' and t.item_flag = '1' ";
+			mapper.delete(sql.toString());
+
+			//删除 检验委托主表
+			 sql = "DELETE QCM_JHY_SAMPLE_CONSIGN_M t where t.smp_no = '"+smpNo+"' "
+			 		+ "  and t.batch_no = '"+batchNo+"' and t.item_flag = '1' ";
+			mapper.delete(sql.toString());
+		
+			String sqlLog = "select * from QCM_JHY_SAMPLE_CONSIGN_D t where t.specimen_no like '"+specimenNo+"'";
+			List<HashMap> lists = mapper.query(sqlLog);
+			for (HashMap list : lists) {
+				QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
+				qjog.setOperate_name(userName);
+				qjog.setBatchno(list.get("BATCH_NO") == null ?"":list.get("BATCH_NO").toString());			
+				qjog.setOperate_type("撤销初样检验委托[复制]");
+				qjog.setParams(list.get("MATERIAL_NO") == null ?"":list.get("MATERIAL_NO").toString());
+				qjog.setProd_line(list.get("PLINE_CODE") == null ?"":list.get("PLINE_CODE").toString());
+				mapper.insertQcmJudgeOperateLog(qjog);	 				 
+			 }
+			
+			} catch (Exception e) {
+				SqlSession.rollback();
+				SqlSession.close();
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("撤销失败![复制委托]");
+				return cro;
+			}
+		SqlSession.commit();
+		SqlSession.close();
+		cro.setV_errCode(1);
+		cro.setV_errMsg("撤销复制委托成功!");
+		return cro;
+	}
+	
+	
+	/**
+	 * 复样 撤销复制当前委托一条
+	 * @param materialInfo
+	 * @return
+	 * @throws Exception
+	 */
+	public CoreReturnObject DoDelWtFy(String batchNo,String designKey,String smpNo,String specimenNo,String userName) throws Exception {
+		try {
+
+			if(StringUtils.isBlank(batchNo)){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("轧批号为空!!!");
+				return cro;
+			}
+			if(StringUtils.isBlank(smpNo)){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("试样号为空!!!");
+				return cro;
+			}
+			if(StringUtils.isBlank(specimenNo)){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("取样编号为空!!!");
+				return cro;
+			}
+			if(StringUtils.isBlank(designKey)){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("订单号为空!!!");
+				return cro;
+			}
+			
+			//删除 检验委托明细项目表
+			String sql = "DELETE QCM_JHY_SAMPLE_CONSIGN_D_ITEM t where  t.specimen_no= '"+specimenNo+"' and t.item_flag = '1' ";
+			mapper.delete(sql.toString());
+			
+			//删除 检验委托明细表
+			 sql = "DELETE QCM_JHY_SAMPLE_CONSIGN_D t where t.smp_no = '"+smpNo+"' and t.specimen_no= '"+specimenNo+"'"
+			 		+ "  and t.batch_no = '"+batchNo+"' and t.item_flag = '1' ";
+			mapper.delete(sql.toString());
+		
+			String sqlLog = "select * from QCM_JHY_SAMPLE_CONSIGN_D t where t.specimen_no like '"+specimenNo+"'";
+			List<HashMap> lists = mapper.query(sqlLog);
+			for (HashMap list : lists) {
+				QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
+				qjog.setOperate_name(userName);
+				qjog.setBatchno(list.get("BATCH_NO") == null ?"":list.get("BATCH_NO").toString());			
+				qjog.setOperate_type("撤销复样检验委托[复制]");
+				qjog.setParams(list.get("MATERIAL_NO") == null ?"":list.get("MATERIAL_NO").toString());
+				qjog.setProd_line(list.get("PLINE_CODE") == null ?"":list.get("PLINE_CODE").toString());
+				mapper.insertQcmJudgeOperateLog(qjog);	 				 
+			 }
+			} catch (Exception e) {
+				SqlSession.rollback();
+				SqlSession.close();
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("撤销复样委托失败![复制]");
+				return cro;
+			}
+		SqlSession.commit();
+		SqlSession.close();
+		cro.setV_errCode(1);
+		cro.setV_errMsg("撤销复样委托成功![复制]");
+		return cro;
+	}
+	
+	
+	/**
+	 * 初样 新增当前复制委托一条
+	 * @param materialInfo
+	 * @return
+	 * @throws Exception
+	 */
+	public CoreReturnObject DoAddWtZy(String batchNo,String designKey,String smpNo,String specimenNo,String userName) throws Exception {
+		try {
+			String plineCode = "";
+			String inspectionLot = "";//检验号
+			String smp_no = "";//试样号
+			String specimen_no = "";//取样编号
+			String material_no = "";//取样材料号
+			if(StringUtils.isBlank(batchNo)){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("轧批号为空!!!");
+				return cro;
+			}
+			if(StringUtils.isBlank(smpNo)){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("试样号为空!!!");
+				return cro;
+			}
+			if(StringUtils.isBlank(specimenNo)){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("取样编号为空!!!");
+				return cro;
+			}
+			if(StringUtils.isBlank(designKey)){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("订单号为空!!!");
+				return cro;
+			}
+
+			
+			//检验委托主表
+		    String sql = "select * from QCM_JHY_SAMPLE_CONSIGN_M t where "
+		    		+ " t.smp_no = '"+smpNo+"'  and t.batch_no = '"+batchNo+"' ";
+			
+			List<HashMap> SampleM=mapper.query(sql.toString());
+			if (SampleM == null || SampleM.size()<0) {
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("检验委托主表未找到相应数据!!!");
+				return cro;
+			}
+			
+			//D表  用来做中厚板子板复制
+			sql = "";
+		     sql = "select t.freq_code from QCM_JHY_SAMPLE_CONSIGN_D t where "
+		    		+ " t.smp_no = '"+smpNo+"'  and t.batch_no = '"+batchNo+"' "
+		    		+ " and t.specimen_no = '"+specimenNo+"' ";
+			List<HashMap> SampleM2=mapper.query(sql.toString());
+			
+			HashMap SampleMs = SampleM.get(0);
+			
+			//产线   热轧 连退 产线  需要修改检验号
+			plineCode = (String) SampleMs.get("PLINE_CODE");
+			if(plineCode.equals("RZ1") || plineCode.equals("LT1")){
+				sql = "select max(to_number(substr(t.inspection_lot,-3))) maxlot from QCM_JHY_SAMPLE_CONSIGN_M t where "
+			    		+ "  t.batch_no = '"+batchNo+"' ";
+				List<HashMap> maxInspectionLot=mapper.query(sql.toString());	
+				BigDecimal cou = (BigDecimal)maxInspectionLot.get(0).get("MAXLOT");
+				String coun2 = cou.toString();
+				Integer integ2 = Integer.parseInt(coun2);
+				String lotnum = integ2.toString();
+				if (lotnum ==null || "".equals(lotnum)) {
+					if(plineCode.equals("RZ1")){
+					inspectionLot=batchNo+ String.format("%05d", 1);//轧批号+00001
+					}else if(plineCode.equals("LT1")){
+					inspectionLot=batchNo+ String.format("%03d", 1);//轧批号+001
+					}
+				}else{
+					Integer lonums=Integer.parseInt(lotnum);
+					lonums++;
+					if(plineCode.equals("RZ1")){
+						inspectionLot=batchNo+ String.format("%05d", lonums);//轧批号+00001
+					}else if(plineCode.equals("LT1")){
+						inspectionLot=batchNo+ String.format("%03d", lonums);//轧批号+001
+					}
+				}
+				
+			}else if(plineCode.equals("HB1") || plineCode.equals("ZB1")){
+				
+				if(SampleM2.get(0).get("FREQ_CODE").equals("C")|| SampleM2.get(0).get("FREQ_CODE").equals("H")){//子板复制
+					sql = "";
+				     sql = "select max(to_number(substr(t.inspection_lot,-3))) MAXLOT from QCM_JHY_SAMPLE_CONSIGN_D t where "
+				    		+ "  t.batch_no = '"+batchNo+"' ";
+					List<HashMap> SampleM3=mapper.query(sql.toString());
+					BigDecimal cou = (BigDecimal)SampleM3.get(0).get("MAXLOT");
+					String coun2 = cou.toString();
+					Integer integ2 = Integer.parseInt(coun2);
+					String lotnum = integ2.toString();
+					if (lotnum ==null || "".equals(lotnum) || lotnum.equals("0")) {
+						inspectionLot=batchNo+ String.format("%04d", 1);//轧批号+0001
+					}else{
+						Integer lonums=Integer.parseInt(lotnum);
+						lonums++;
+					   inspectionLot=batchNo+ String.format("%04d", lonums);//轧批号+0001
+					}
+				}
+			}
+			
+			//生成试样信息主表 (检验委托主表) 
+			smp_no = createQltySamNo((String) SampleMs.get("PLINE_CODE"));
+			JhySampleMMdoel model=getSampleM(smp_no,SampleMs,userName);
+			if(plineCode.equals("RZ1") || plineCode.equals("LT1")){
+			 model.setInspection_lot(inspectionLot);//卷板  修改检验号
+			}else if((plineCode.equals("HB1") || plineCode.equals("ZB1")) && (SampleM2.get(0).get("FREQ_CODE").equals("C")||SampleM2.get(0).get("FREQ_CODE").equals("H"))){
+				
+				    sql ="";
+					if(plineCode.equals("HB1")){
+						//厚
+						sql+="select min(t.MATERIAL_NO) MATERIAL_NO from (select BILLETID as MATERIAL_NO from kch_turnofflist@xgcx where BILLETID like '"+batchNo+"'||'%' )t"
+								+ " where t.MATERIAL_NO not in "
+								+ "(select d.material_no from QCM_JHY_SAMPLE_CONSIGN_D d where d.material_no like '"+batchNo + "%' and d.pline_code = '"+plineCode+"') ";
+						}else if(plineCode.equals("ZB1")){
+						//中
+						sql+="select min(t.MATERIAL_NO) MATERIAL_NO from (select BILLETID as MATERIAL_NO from kcz_turnofflist@xgcx where BILLETID like '"+batchNo+"'||'%' )t"
+								+ "  where t.MATERIAL_NO not in"
+								+ "  (select d.material_no from QCM_JHY_SAMPLE_CONSIGN_D d where d.material_no like '"+batchNo + "%' and d.pline_code = '"+plineCode+"') ";
+						}
+					List<HashMap> SampleM3=mapper.query(sql.toString());
+					material_no = (String)SampleM3.get(0).get("MATERIAL_NO");
+					model.setMaterial_no(material_no);//取样材料号
+					model.setInspection_lot(inspectionLot);//  修改检验号
+					
+			}
+			mapper.insertSampleM(model);
+			
+			
+			sql = "";
+			//试样号与合同信息关系表
+		     sql = "select * from QCM_JHY_SAMPLE_R_ORD t where "
+		    		+ " t.DESIGN_KEY = '"+designKey+"' and t.smp_no = '"+smpNo+"'  "
+		    	    + "  and t.batch_no = '"+batchNo+"' ";
+			
+			List<HashMap> rord=mapper.query(sql.toString());
+			if (rord == null || rord.size()<0) {
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("生成合同表未找到相应数据!!!");
+				return cro;
+			}
+			HashMap rords = rord.get(0);
+			//生成合同表
+			JhySampleOrdMdoel ord=getSampleOrd(smp_no,rords,userName);
+			if(plineCode.equals("RZ1") || plineCode.equals("LT1")){
+				ord.setInspection_lot(inspectionLot);//卷板  修改检验号
+			}else if((plineCode.equals("HB1") || plineCode.equals("ZB1")) && (SampleM2.get(0).get("FREQ_CODE").equals("C")|| SampleM2.get(0).get("FREQ_CODE").equals("H"))){
+				ord.setInspection_lot(inspectionLot);//  修改检验号
+		}
+			mapper.insertSampleOrd(ord);
+			
+			
+			sql = "";
+			//检验委托明细表
+		     sql = "select * from QCM_JHY_SAMPLE_CONSIGN_D t where "
+		    		+ " t.smp_no = '"+smpNo+"' and t.specimen_no = '"+specimenNo+"'   and t.batch_no = '"+batchNo+"' ";
+			
+			List<HashMap> SampleD=mapper.query(sql.toString());
+			if (SampleD == null || SampleD.size()<0) {
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("检验委托明细表未找到相应数据!!!");
+				return cro;
+			}
+			HashMap SampleDs = SampleD.get(0);
+			specimen_no = createSpecimen_no(smp_no);
+			JhySampleDModel modelD = getSampleD(smp_no,specimen_no, SampleDs);
+			if(plineCode.equals("RZ1") || plineCode.equals("LT1")){
+				modelD.setInspection_lot(inspectionLot);//卷板  修改检验号
+			}else if((plineCode.equals("HB1") || plineCode.equals("ZB1")) && (SampleM2.get(0).get("FREQ_CODE").equals("C")||SampleM2.get(0).get("FREQ_CODE").equals("H"))){
+				modelD.setMaterial_no(material_no);//取样材料号
+				modelD.setInspection_lot(inspectionLot);//  修改检验号
+				String sqlzj = "";
+				sqlzj += " update zj_result_all@xgcx t set t.billetid_jy = '"+inspectionLot+"' ";
+				sqlzj += " where  t.billetid = '"+material_no+"' ";
+				mapper.updateJudgeStatus(sqlzj.toString());
+		}
+			mapper.insertSampleD(modelD);
+			
+			
+			sql = "";
+			//检验委托明细项目表
+		     sql = "select * from QCM_JHY_SAMPLE_CONSIGN_D_ITEM t where "
+		    		+ " t.smp_no = '"+smpNo+"' and t.specimen_no = '"+specimenNo+"'  ";
+			
+			List<HashMap> SampleDitem=mapper.query(sql.toString());
+			if (SampleDitem == null || SampleDitem.size()<0) {
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("检验委托明细项目表未找到相应数据!!!");
+				return cro;
+			}
+			for(HashMap map : SampleDitem){
+				//生成材质项目表
+				JhySampleDItemModel item=getSampleItem(smp_no,specimen_no,map,userName);
+				mapper.insertSampleItem(item);
+			}
+			String sqlLog = "select * from QCM_JHY_SAMPLE_CONSIGN_D t where t.specimen_no like '"+specimenNo+"'";
+			List<HashMap> lists = mapper.query(sqlLog);
+			for (HashMap list : lists) {
+				QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
+				qjog.setOperate_name(userName);
+				qjog.setBatchno(list.get("BATCH_NO") == null ?"":list.get("BATCH_NO").toString());			
+				qjog.setOperate_type("复制初样检验委托");
+				qjog.setParams(list.get("MATERIAL_NO") == null ?"":list.get("MATERIAL_NO").toString());
+				qjog.setProd_line(list.get("PLINE_CODE") == null ?"":list.get("PLINE_CODE").toString());
+				//qjog.setMemo(zhyy);
+				mapper.insertQcmJudgeOperateLog(qjog);	 				 
+			 }
+		
+			} catch (Exception e) {
+				SqlSession.rollback();
+				SqlSession.close();
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("新增初样委托失败!");
+				return cro;
+			}
+		SqlSession.commit();
+		SqlSession.close();
+		cro.setV_errCode(1);
+		cro.setV_errMsg("新增初样委托成功!");
+		return cro;
+	}
+
+	/**
+	 * 复样 新增当前复制委托一条
+	 * @param materialInfo
+	 * @return
+	 * @throws Exception
+	 */
+	public CoreReturnObject DoAddWtFy(String batchNo,String designKey,String smpNo,String specimenNo,String userName) throws Exception {
+		try {
+			String smp_no = "";//试样号
+			String specimen_no = "";//取样编号
+			if(StringUtils.isBlank(batchNo)){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("轧批号为空!!!");
+				return cro;
+			}
+			if(StringUtils.isBlank(smpNo)){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("试样号为空!!!");
+				return cro;
+			}
+			if(StringUtils.isBlank(specimenNo)){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("取样编号为空!!!");
+				return cro;
+			}
+			if(StringUtils.isBlank(designKey)){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("订单号为空!!!");
+				return cro;
+			}
+			
+			
+			String sql = "";
+			//检验委托明细表
+		     sql = "select * from QCM_JHY_SAMPLE_CONSIGN_D t where "
+		    		+ " t.smp_no = '"+smpNo+"' and t.specimen_no = '"+specimenNo+"'   and t.batch_no = '"+batchNo+"' ";
+			
+			List<HashMap> SampleD=mapper.query(sql.toString());
+			if (SampleD == null || SampleD.size()<0) {
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("检验委托明细表未找到相应数据!!!");
+				return cro;
+			}
+			HashMap SampleDs = SampleD.get(0);
+			specimen_no = createSpecimen_no((String) SampleDs.get("SMP_NO"));
+			JhySampleDModel modelD = getSampleD((String) SampleDs.get("SMP_NO"),specimen_no, SampleDs);
+			mapper.insertSampleD(modelD);
+			
+			
+			sql = "";
+			//检验委托明细项目表
+		     sql = "select * from QCM_JHY_SAMPLE_CONSIGN_D_ITEM t where "
+		    		+ " t.smp_no = '"+smpNo+"' and t.specimen_no = '"+specimenNo+"' and t.fy_quote_specimen_no is null ";
+			
+			List<HashMap> SampleDitem=mapper.query(sql.toString());
+			if (SampleDitem == null || SampleDitem.size()<0) {
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("检验委托明细项目表未找到相应数据!!!");
+				return cro;
+			}
+			for(HashMap map : SampleDitem){
+				smp_no = (String)map.get("SMP_NO");
+				//生成材质项目表
+				JhySampleDItemModel item=getSampleItem(smp_no,specimen_no,map,userName);
+				mapper.insertSampleItem(item);
+			}
+			String sqlLog = "select * from QCM_JHY_SAMPLE_CONSIGN_D t where t.specimen_no like '"+specimenNo+"'";
+			List<HashMap> lists = mapper.query(sqlLog);
+			for (HashMap list : lists) {
+				QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
+				qjog.setOperate_name(userName);
+				qjog.setBatchno(list.get("BATCH_NO") == null ?"":list.get("BATCH_NO").toString());			
+				qjog.setOperate_type("复制复样检验委托");
+				qjog.setParams(list.get("MATERIAL_NO") == null ?"":list.get("MATERIAL_NO").toString());
+				qjog.setProd_line(list.get("PLINE_CODE") == null ?"":list.get("PLINE_CODE").toString());
+				//qjog.setMemo(zhyy);
+				mapper.insertQcmJudgeOperateLog(qjog);	 				 
+			 }
+		
+			} catch (Exception e) {
+				SqlSession.rollback();
+				SqlSession.close();
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("新增复样委托失败!");
+				return cro;
+			}
+		SqlSession.commit();
+		SqlSession.close();
+		cro.setV_errCode(1);
+		cro.setV_errMsg("新增复样委托成功!");
+		return cro;
+	}
+	
+	
+	
+	/**
+	 * 创建试样号
+	 * @param pline_code 产线代码
+	 * @return
+	 */
+	private String createQltySamNo(String pline_code) {
+		// TODO Auto-generated method stub
+		String smp_no="";
+		SimpleDateFormat sdf = new SimpleDateFormat("yyMMdd");
+		if (pline_code.length()>3){
+			pline_code=pline_code.substring(0,3);
+        }else if (pline_code.length()==2){
+        	pline_code="0"+pline_code;
+        }else if (pline_code.length()==1){
+        	pline_code="00"+pline_code;
+        }
+		
+		String syh = pline_code +sdf.format(new Date());
+		
+		StringBuffer sqlucomm = new StringBuffer();
+		sqlucomm.append("SELECT max(to_number(substr(smp_no,10))) SMP_NO FROM QCM_JHY_SAMPLE_CONSIGN_M  WHERE SMP_NO like '"+syh+"%' ");
+		HashMap result=mapper.queryOne(sqlucomm.toString());
+		BigDecimal seq=BigDecimal.ZERO;
+		if (result!=null && result.get("SMP_NO")!=null ) {
+			seq=(BigDecimal)result.get("SMP_NO");
+		}
+		seq=seq.add(BigDecimal.ONE);
+		
+		smp_no=syh+ String.format("%04d", seq.intValue());
+		return smp_no;
+	}
+	
+	/**
+	 * 获取取样编号
+	 * 
+	 * @param smp_no
+	 * @return
+	 */
+	private String createSpecimen_no(String smp_no) {
+		// TODO Auto-generated method stub
+		String specimen_no = "";
+
+		StringBuffer sqlucomm = new StringBuffer();
+		sqlucomm.append("SELECT max(to_number(substr(SPECIMEN_NO,14))) SPECIMEN_NO FROM QCM_JHY_SAMPLE_CONSIGN_D  "
+				+ "WHERE SPECIMEN_NO like '" + smp_no + "%' and SMP_NO='" + smp_no + "'");
+		HashMap result = mapper.queryOne(sqlucomm.toString());
+		BigDecimal seq = BigDecimal.ZERO;
+		if (result != null && result.get("SPECIMEN_NO") != null) {
+			seq = (BigDecimal) result.get("SPECIMEN_NO");
+		}
+		seq = seq.add(BigDecimal.ONE);
+		specimen_no = smp_no + String.format("%02d", seq.intValue());
+		return specimen_no;
+	}
+	
+	/**
+	 * 设置试样信息主表对象值
+	 * @param smp_no
+	 * @param qlty
+	 * @param smp_catg
+	 * @return
+	 */
+	private JhySampleMMdoel getSampleM(String smp_no, HashMap qlty,String userName) {
+		// TODO Auto-generated method stub
+		JhySampleMMdoel model=new JhySampleMMdoel();
+		model.setSmp_no(smp_no);
+		model.setHeat_no((String) qlty.get("HEAT_NO"));
+		model.setBatch_no((String) qlty.get("BATCH_NO"));
+		model.setInspection_lot((String) qlty.get("INSPECTION_LOT"));
+		model.setBoard_no((String) qlty.get("BOARD_NO"));
+		model.setMaterial_no((String) qlty.get("MATERIAL_NO"));
+		model.setPsc((String) qlty.get("PSC"));
+		model.setPsc_desc((String) qlty.get("PSC_DESC"));
+		model.setSmp_catg((String) qlty.get("SMP_CATG"));
+		model.setCert_inst_code((String) qlty.get("CERT_INST_CODE"));
+		model.setCert_inst_name((String) qlty.get("CERT_INST_NAME"));
+		//试样类型
+		model.setSmp_type_code((String) qlty.get("SMP_TYPE_CODE"));
+		model.setSmp_type_name((String) qlty.get("SMP_TYPE_NAME"));
+		model.setGrade_code((String) qlty.get("GRADE_CODE"));
+		model.setGrade_name((String) qlty.get("GRADE_NAME"));
+		model.setPline_code((String) qlty.get("PLINE_CODE"));
+		model.setPline_name((String) qlty.get("PLINE_NAME"));
+		
+		model.setCreate_id((String) qlty.get("CREATE_ID"));
+		model.setCreate_name(userName);
+		model.setCreate_time(new Date());
+		model.setItem_flag("1");//人工
+		return model;
+	}
+	
+	/**
+	 * 设置试样信息明细表对象值
+	 * @param smp_no
+	 * @param qlty
+	 * @return
+	 */
+	private JhySampleOrdMdoel getSampleOrd(String smp_no, HashMap qlty,String userName) {
+		// TODO Auto-generated method stub
+		JhySampleOrdMdoel ord=new JhySampleOrdMdoel();
+		ord.setSmp_no(smp_no);
+		ord.setDesign_key((String) qlty.get("DESIGN_KEY"));
+		ord.setPsc((String) qlty.get("PSC"));
+		ord.setPsc_desc((String) qlty.get("PSC_DESC"));
+		
+		ord.setHeat_no((String) qlty.get("HEAT_NO"));
+		ord.setBatch_no((String) qlty.get("BATCH_NO"));
+		ord.setInspection_lot((String) qlty.get("INSPECTION_LOT"));
+		ord.setDelivery_state_code((String) qlty.get("DELIVERY_STATE_CODE"));
+		ord.setDelivery_state_desc((String) qlty.get("DELIVERY_STATE_DESC"));
+		ord.setThick((String) qlty.get("THICK"));
+		ord.setWidth((String) qlty.get("WIDTH"));
+		ord.setLength((String) qlty.get("LENGTH"));
+		ord.setPline_code((String) qlty.get("PLINE_CODE"));
+		ord.setPline_name((String) qlty.get("PLINE_NAME"));
+		ord.setMsc_pline((String) qlty.get("MSC_PLINE"));
+		
+		ord.setProcess_code((String) qlty.get("PROCESS_CODE"));
+		ord.setCert_inst_code((String) qlty.get("CERT_INST_CODE"));
+		ord.setCert_inst_name((String) qlty.get("CERT_INST_NAME"));
+		ord.setSmp_type_code((String) qlty.get("SMP_TYPE_CODE"));
+		ord.setSmp_type_name((String) qlty.get("SMP_TYPE_NAME"));
+		
+		ord.setProduct_cnt((BigDecimal) qlty.get("PRODUCT_CNT"));
+		ord.setProd_code((String) qlty.get("PROD_CODE"));
+		ord.setProd_name((String) qlty.get("PROD_NAME"));
+		ord.setSteel_code((String) qlty.get("STEEL_CODE"));
+		ord.setSteel_name((String) qlty.get("STEEL_NAME"));
+		ord.setStd_code((String) qlty.get("STD_CODE"));
+		ord.setStd_name((String) qlty.get("STD_NAME"));
+		ord.setCreate_id((String) qlty.get("CREATE_ID"));
+		ord.setCreate_name(userName);
+		ord.setCreate_time(new Date());
+	    ord.setItem_flag("1");
+		return ord;
+	}
+	
+	/**
+	 * QCM_JHY_SAMPLE_CONSIGN_D  检验委托明细表  赋值
+	 * 
+	 * @param smp_no
+	 * @return
+	 */
+	private JhySampleDModel getSampleD(String smp_no,String specimen_no, HashMap result) {
+		// TODO Auto-generated method stub
+		JhySampleDModel model = new JhySampleDModel();
+		model.setSmp_no(smp_no);
+		model.setSpecimen_no(specimen_no);
+		model.setHeat_no((String) result.get("HEAT_NO"));
+		model.setBatch_no((String) result.get("BATCH_NO"));
+		model.setInspection_lot((String) result.get("INSPECTION_LOT"));
+		model.setFreq_code((String) result.get("FREQ_CODE"));
+		model.setFreq_name((String) result.get("FREQ_NAME"));
+
+	    model.setMaterial_no((String) result.get("MATERIAL_NO"));// 取样材料号
+		// 样品类型
+		model.setSmp_type_code((String) result.get("SMP_TYPE_CODE"));
+		model.setSmp_type_name((String) result.get("SMP_TYPE_NAME"));
+		// 试验次数
+		model.setTest_qty((BigDecimal) result.get("TEST_QTY"));
+		model.setSmp_qty((BigDecimal) result.get("SMP_QTY"));
+		model.setSmp_location((String) result.get("SMP_LOCATION"));
+		model.setBoard_no((String) result.get("BOARD_NO"));
+		model.setQuote_consign_no((String) result.get("QUOTE_CONSIGN_NO"));
+		
+		// 初样取样编号
+		model.setOld_consign_no((String) result.get("OLD_CONSIGN_NO"));
+		model.setPline_code((String) result.get("PLINE_CODE"));
+		model.setPline_name((String) result.get("PLINE_NAME"));
+		model.setStatus("0");
+		model.setValidflag("1");
+		model.setSource((String) result.get("SOURCE"));
+		model.setGuid(this.getUUID());
+		model.setChem_item((String) result.get("CHEM_ITEM"));
+		model.setProduct_cnt((BigDecimal) result.get("PRODUCT_CNT"));
+		model.setSmp_location_code((String) result.get("SMP_LOCATION_CODE"));
+
+		model.setMemo((String) result.get("MEMO"));
+		model.setWeight((String)result.get("WEIGHT"));
+		model.setWeight_std((String)result.get("WEIGHT_STD"));
+		model.setWeight_sfd((String)result.get("WEIGHT_SFD"));
+		model.setItem_flag("1");
+		return model;
+	}
+	
+	/**
+	 * 获取材质项目对象
+	 * @param smp_no
+	 * @param specimen_no
+	 * @param qlty
+	 * @return
+	 * @throws Exception 
+	 */
+	private JhySampleDItemModel getSampleItem(String smp_no, String specimen_no, HashMap qlty,String userName) throws Exception {
+
+		JhySampleDItemModel model=new JhySampleDItemModel();
+		model.setSmp_no(smp_no);
+		model.setSpecimen_no(specimen_no);
+		
+		model.setSeq(createItemSeq(smp_no,specimen_no));
+		
+		
+		model.setPhy_code_l((String)qlty.get("PHY_CODE_L"));;
+		model.setPhy_code_m((String)qlty.get("PHY_CODE_M"));
+		model.setPhy_code_s((String)qlty.get("PHY_CODE_S"));
+		model.setPhy_name_l((String)qlty.get("PHY_NAME_L"));
+		model.setPhy_name_m((String)qlty.get("PHY_NAME_M"));
+		model.setPhy_name_s((String)qlty.get("PHY_NAME_S"));
+		model.setItem_code_d((String)qlty.get("ITEM_CODE_D"));
+		model.setItem_code_t((String)qlty.get("ITEM_CODE_T"));
+		model.setItem_code_s((String)qlty.get("ITEM_CODE_S"));
+		model.setItem_code_l((String)qlty.get("ITEM_CODE_L"));
+		model.setItem_name_d((String)qlty.get("ITEM_NAME_D"));
+		model.setItem_name_t((String)qlty.get("ITEM_NAME_T"));
+		model.setItem_name_s((String)qlty.get("ITEM_NAME_S"));
+		model.setItem_desc_l((String)qlty.get("ITEM_DESC_L"));
+		
+		model.setStdmax((String)qlty.get("STDMAX"));
+		model.setStdmax_sign((String)qlty.get("STDMAX_SIGN"));
+		model.setStdmin((String)qlty.get("STDMIN"));
+		model.setStdmin_sign((String)qlty.get("STDMIN_SIGN"));
+		
+		//试验次数
+		model.setTest_qty((BigDecimal) qlty.get("TEST_QTY"));
+		model.setSmp_qty((BigDecimal) qlty.get("SMP_QTY"));
+		
+		model.setSpecl_fl((String)qlty.get("SPECL_FL"));
+		model.setIsjudge((String)qlty.get("ISJUDGE"));
+		model.setPhy_unit((String)qlty.get("PHY_UNIT"));
+		model.setGroup_seq((String)qlty.get("GROUP_SEQ"));
+		
+		model.setQuote_specimen_no((String)qlty.get("QUOTE_SPECIMEN_NO"));
+		model.setQuote_seq((Integer)qlty.get("QUOTE_SEQ"));
+		model.setMemo((String)qlty.get("MEMO"));
+
+		model.setCreate_id((String)qlty.get("CREATE_ID"));
+		model.setCreate_name(userName);
+		model.setCreate_time(new Date());
+		
+		model.setStdmemo((String)qlty.get("STDMEMO"));
+		model.setPhy_group_code((String)qlty.get("PHY_GROUP_CODE"));
+		model.setResmp_seq((String)qlty.get("RESMP_SEQ"));
+		model.setItem_flag("1");
+		//样品类型
+		return model;
+	}
+	
+	
+	/**
+	 * 生成不带 "-" 的UUID
+	 *
+	 * @return
+	 */
+	private String getUUID() {
+		UUID uuid = UUID.randomUUID();
+		String str = uuid.toString();
+		String uuidStr = str.replace("-", "");
+		return uuidStr;
+	}
+	
+	/**
+	 * 创建项目seq
+	 * 
+	 * @param specimen_no
+	 * @param smp_no
+	 * @param cn
+	 * @return
+	 * @throws Exception
+	 */
+	private Integer createItemSeq(String smp_no, String specimen_no) throws Exception {
+		StringBuffer sqlucomm = new StringBuffer();
+		sqlucomm.append("SELECT max(SEQ) SEQ FROM QCM_JHY_SAMPLE_CONSIGN_D_ITEM  WHERE SMP_NO ='" + smp_no
+				+ "' and SPECIMEN_NO='" + specimen_no + "'");
+		HashMap result = mapper.queryOne(sqlucomm.toString());
+		Integer SEQ = 0;
+		if (result != null && result.get("SEQ") != null) {
+			SEQ = ((BigDecimal) result.get("SEQ")).intValue();
+		}
+		SEQ++;
+
+		return SEQ;
+	}
+	
+	/**
+	 * 不同订单 同轧批号  项目一样引用
+	 * @param materialInfo
+	 * @return
+	 * @throws Exception
+	 */
+	public CoreReturnObject DoQuoteBatchNo(HashMap parmas) throws Exception {
+		
+		try {
+			String strSql=" and r.CERT_INST_CODE !='IC005' ";//美国船级社不能被引用
+			//判断是否是模拟焊后 模拟焊后不可引用  231201上午开会决定的
+			String mlhSql="select t.* from qcm_jhy_sample_consign_d t,qcm_jhy_sample_r_ord r "
+					+ " where t.smp_no = r.smp_no  and r.design_key not like '19%' "
+					+ " and t.smp_no = '"+parmas.get("SMP_NO")+"' and t.SMP_LOCATION like '%模拟焊后%' and rownum <= 1 ";
+			 HashMap resultMlh = mapper.queryOne(mlhSql.toString());
+			if(resultMlh != null && resultMlh.size()>=1){
+				String msgmemo="订单号:"+parmas.get("DESIGN_KEY")+"下的轧批号:"+parmas.get("BATCH_NO")+"委托需全部下发实绩样委托!请核实数据";
+				SqlSession.close();
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("引用失败!当前轧批订单号下有模拟焊后标准,技术中心规定订单号下有模拟焊后标准不可引用需送实物样,"+msgmemo);
+				return cro;
+			}
+			
+			//厚板是手动选择,中板自动  小于等于-40度冲击都单独送样做
+			if(parmas.get("PLINE_CODE").equals("ZB1")){
+				String zbSql = " select i.* from qcm_jhy_sample_consign_d t,qcm_jhy_sample_r_ord r,qcm_jhy_sample_consign_d_item i "
+						+" where t.smp_no = r.smp_no and t.specimen_no = i.specimen_no and r.smp_no = i.smp_no and i.phy_code_l = 'HC' "
+						+" and r.design_key not like '19%' and to_number(REGEXP_REPLACE(i.item_code_t,'[^-0-9]','')) <= -40 "
+						+" and t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' and rownum <= 1 ";
+				HashMap hmapZb = mapper.queryOne(zbSql.toString());
+				if(hmapZb != null && hmapZb.size()>=1){
+					String msgmemo="订单号:"+parmas.get("DESIGN_KEY")+"轧批号:"+parmas.get("BATCH_NO");
+					SqlSession.close();
+					cro.setV_errCode(-1);
+					cro.setV_errMsg("引用失败!勾选的轧批中有冲击项目并且是小于等于-40度不可引用需要下发委托,"+msgmemo);
+					return cro;
+				}
+			}
+				
+			String MATERIAL_NO = "1";
+			String smpLocationCode = "";
+			String CERT_INST_CODE = "";
+			String FREQ_CODE = "";
+			String sql="";
+			sql = " select r.CERT_INST_CODE,t.* from QCM_JHY_SAMPLE_CONSIGN_D t, qcm_jhy_sample_r_ord r"
+				+ " where t.smp_no = r.smp_no and t.SPECIMEN_NO='"+parmas.get("SPECIMEN_NO")+"' and rownum <= 1";
+			 HashMap resultM = mapper.queryOne(sql.toString());
+			if(resultM != null && resultM.size()>=1){
+				MATERIAL_NO = resultM.get("MATERIAL_NO").toString();
+				smpLocationCode = resultM.get("SMP_LOCATION_CODE").toString();
+				CERT_INST_CODE = resultM.get("CERT_INST_CODE").toString();
+				FREQ_CODE = resultM.get("FREQ_CODE").toString();
+			}
+			//记录
+			QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
+			qjog.setOperate_name(parmas.get("CREATE_NAME")== null ?"":parmas.get("CREATE_NAME").toString());
+			qjog.setBatchno(parmas.get("BATCH_NO") == null ?"":parmas.get("BATCH_NO").toString());			
+			qjog.setOperate_type("引用同批实绩");
+			qjog.setParams(MATERIAL_NO == null ?"":MATERIAL_NO);
+			qjog.setProd_line(parmas.get("PLINE_CODE") == null ?"":parmas.get("PLINE_CODE").toString());
+			qjog.setMemo(parmas.get("SPECIMEN_NO").toString());
+			mapper.insertQcmJudgeOperateLog(qjog);
+			//19订单引用
+			String dkey = parmas.get("DESIGN_KEY").toString().substring(0, 2);
+			if("19".equals(dkey)){//19订单
+				parmas.put("DESIGN_KEY", parmas.get("DESIGN_KEY").toString());
+				if(parmas.get("SEND_ID").equals("1")){
+					parmas.put("SEND_ID", "系统自动");
+					parmas.put("CREATE_NAME", "系统自动");
+				}
+				String ret = DoQuoteBatchNo191(parmas);
+				if(!ret.equals("1")){
+					SqlSession.close();
+					cro.setV_errCode(-1);
+					cro.setV_errMsg("引用失败!"+ret);
+					return cro;
+				}
+				SqlSession.close();
+				cro.setV_errCode(1);
+				cro.setV_errMsg("引用成功!");
+				return cro;
+			}
+			
+			//复样引用
+			if(parmas.get("SMP_TYPE_CODE").toString().equals("1")){
+				String ret = DoQuoteBatchNoFy(parmas);
+				if(!ret.equals("1")){
+					SqlSession.close();
+					cro.setV_errCode(-1);
+					cro.setV_errMsg("引用失败!"+ret);
+					return cro;
+				}
+				SqlSession.close();
+				cro.setV_errCode(1);
+				cro.setV_errMsg("引用成功!");
+				return cro;
+			
+			}
+			//判断是否是船检
+			String strAgent="";
+			String strZ="select r.* from qcm_jhy_sample_consign_d t,qcm_jhy_sample_r_ord r where t.smp_no = r.smp_no "
+                      +" and t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' and r.Cert_Inst_Code in ('IC002','IC005','IC006','IC007','IC009','IC008') and rownum <= 1";
+			HashMap hmZ=mapper.queryOne(strZ.toString());
+			if(hmZ!=null && hmZ.size()>=1){ //同牌号同规格
+				strAgent = " and r.steel_code = '"+hmZ.get("STEEL_CODE")+"' and r.thick = '"+hmZ.get("THICK")+"'  and r.CERT_INST_CODE != '5000' ";
+			}
+			
+			//引用中有两条委托  两条委托中都有冲击   而冲击温度不一样
+			String HCSTR="0";
+			HashMap result=null;
+			sql ="";
+			sql = "select t.* from QCM_JHY_SAMPLE_CONSIGN_D_ITEM t where t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"'  and t.PHY_CODE_L='HC' ";
+			List<HashMap> hmHC=mapper.query(sql.toString());
+			if(hmHC!=null && hmHC.size()>=1){
+				String nuowei = "";
+				if("IC001".equals(CERT_INST_CODE)){//判断是否是挪威  挪威冲击温度一致可引用
+					nuowei =" and i.Item_Code_t = '"+hmHC.get(0).get("ITEM_CODE_T")+"' ";
+					HCSTR="1";
+				}
+				if(FREQ_CODE.equals("C") || FREQ_CODE.equals("H") || FREQ_CODE.equals("I")){
+					nuowei +=" and t.MATERIAL_NO = '"+MATERIAL_NO+"' ";
+				}
+				sql="";
+				sql="select t.* from qcm_jhy_sample_r_ord r,qcm_jhy_sample_consign_d t,qcm_jhy_sample_consign_d_item i "
+					+" where t.smp_no = r.smp_no and t.specimen_no = i.specimen_no and i.seq<=49 and i.Item_Code_t <= '"+hmHC.get(0).get("ITEM_CODE_T")+"' "
+					+" and t.batch_no = '"+parmas.get("BATCH_NO")+"' and i.Phy_Code_l='HC' and t.status='3' and t.freq_code <> 'D' and t.CHEM_ITEM is null "
+					+" and t.smp_type_code = '0' and nvl(t.QUOTE_MEMO ,'null') <> '引用实绩' and t.SMP_LOCATION_CODE='"+smpLocationCode+"' "
+					+" and to_char(r.thick, 'fm990.099') = to_char('"+parmas.get("THICK")+"', 'fm990.099') " + strAgent + strSql +nuowei
+					+" order by Item_Code_t asc ";
+				List<HashMap> hmHC2=mapper.query(sql.toString());
+				if(hmHC2!=null && hmHC2.size()>=1){
+					 sql ="";
+					 sql = "select t.* from QCM_JHY_SAMPLE_CONSIGN_D t where t.specimen_no = '"+hmHC2.get(0).get("SPECIMEN_NO")+"' and rownum <= 1  ";
+					 result=null;
+					 result = mapper.queryOne(sql.toString());
+					 HCSTR="1";
+				}
+			}
+			
+			if("0".equals(HCSTR)){
+			    //同子板引用
+			    sql ="";
+			    sql = "select t.* from QCM_JHY_SAMPLE_CONSIGN_D t,qcm_jhy_sample_r_ord r "
+					  +" where t.smp_no = r.smp_no and t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'  "
+					  +" and t.smp_type_code = '0' and t.status = '3' and nvl(t.QUOTE_MEMO ,'null') <> '引用实绩' "
+					  +" and t.freq_code <> 'D' and CHEM_ITEM is null and t.MATERIAL_NO = '"+MATERIAL_NO+"' and t.SMP_LOCATION_CODE='"+smpLocationCode+"' "
+					  +" and to_char(r.thick, 'fm990.099') = to_char('"+parmas.get("THICK")+"', 'fm990.099') " + strAgent + strSql
+					  +" and rownum <= 1 order by t.send_time asc ";
+			  result=null;
+			  result = mapper.queryOne(sql.toString());
+			 //同订单引用
+			 if(result == null || result.size()<=0){
+			 sql = "select t.* from QCM_JHY_SAMPLE_CONSIGN_D t,qcm_jhy_sample_r_ord r "
+					  +" where t.smp_no = r.smp_no and t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'  "
+					  +" and t.smp_type_code = '0' and t.status = '3' and nvl(t.QUOTE_MEMO ,'null') <> '引用实绩' and t.freq_code <> 'D' "
+					  +" and t.CHEM_ITEM is null and r.DESIGN_KEY = '"+parmas.get("DESIGN_KEY")+"' " + strAgent + strSql
+					  +" and rownum <= 1 order by t.send_time asc ";
+			 result=null;
+			 result = mapper.queryOne(sql.toString());
+			 //同规格同牌号
+			 if(result == null || result.size()<=0){
+				 sql ="";
+				 sql = "select * from (select * from ("
+				 		+ " select (select count(1) from qcm_jhy_sample_consign_d_item i where i.specimen_no = t.specimen_no) nums,t.* "
+				 		+ " from QCM_JHY_SAMPLE_CONSIGN_D t,qcm_jhy_sample_r_ord r "
+						  +" where t.smp_no = r.smp_no and t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'  "
+						  +" and t.smp_type_code = '0' and t.status = '3' and nvl(t.QUOTE_MEMO ,'null') <> '引用实绩' and t.SMP_LOCATION_CODE='"+smpLocationCode+"' "
+						  +" and t.freq_code <> 'D' and t.CHEM_ITEM is null and to_char(r.thick, 'fm990.099') = '"+parmas.get("THICK")+"' " + strSql
+						  +" and r.steel_name = '"+parmas.get("STEEL_NAME")+"' ) t order by t.nums desc) t where rownum=1 ";
+				 result=null;
+				 result = mapper.queryOne(sql.toString());
+			 //同规格引用
+			if(result == null || result.size()<=0){
+				 sql ="";
+				 sql = "select * from (select * from ("
+				 	 +" select (select count(1) from qcm_jhy_sample_consign_d_item i where i.specimen_no = t.specimen_no) nums,t.* "
+				 	 +" from QCM_JHY_SAMPLE_CONSIGN_D t,qcm_jhy_sample_r_ord r "
+					 +" where t.smp_no = r.smp_no and t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'  "
+					 +" and t.smp_type_code = '0' and t.status = '3' and nvl(t.QUOTE_MEMO ,'null') <> '引用实绩' and t.SMP_LOCATION_CODE='"+smpLocationCode+"' "
+				     +" and t.freq_code <> 'D' and t.CHEM_ITEM is null and to_char(r.thick, 'fm990.099') = '"+parmas.get("THICK")+"' " + strAgent + strSql
+					 +" ) t order by t.nums desc) t where rownum=1 ";
+				 result=null;
+				 result = mapper.queryOne(sql.toString());
+			 
+					 //随机引用
+					if((result == null || result.size()<=0) && strAgent.length()<=0){
+					 sql="";
+					 sql = "select * from (select * from (select (select count(1) from qcm_jhy_sample_consign_d_item i where i.specimen_no = t.specimen_no) nums, t.* "
+					 	+ " from QCM_JHY_SAMPLE_CONSIGN_D t,qcm_jhy_sample_r_ord r where t.smp_no = r.smp_no " + strSql
+					    + " and t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'  "
+						+ " and t.smp_type_code = '0' and t.status = '3' and nvl(t.QUOTE_MEMO ,'null') <> '引用实绩' "
+						+ " and t.freq_code <> 'D' and t.CHEM_ITEM is null ) t order by t.nums desc) t where rownum=1 ";
+					 result=null;
+					 result = mapper.queryOne(sql.toString());
+					}
+			      }
+			    }
+			  }
+			}
+			if (result != null && result.size()>=1) {
+				
+				//判断厚度是否大于引用的厚度
+				sql ="";
+				sql = "select to_char(t.THICK, 'fm990.099') THICK,t.* from Qcm_Jhy_Sample_r_Ord t where t.SMP_NO = '"+result.get("SMP_NO")+"' and rownum <= 1 ";
+				List<HashMap> OrdLists=mapper.query(sql.toString());
+				if(OrdLists!=null && OrdLists.size()>=1){
+					String thick2 = OrdLists.get(0).get("THICK").toString();
+					String thick = parmas.get("THICK").toString();
+					if(!thick2.equals(thick)){
+						SqlSession.rollback();
+						SqlSession.close();
+						cro.setV_errCode(-1);
+						cro.setV_errMsg("引用失败!规格不一样");
+						return cro;
+					}
+				}
+				//查询引用的所有明细  240308增加代码 and t.specl_fl <> '4' 把加项项目排除
+				sql ="";
+				sql = "select t.* from QCM_JHY_SAMPLE_CONSIGN_D_ITEM t where t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' and t.specl_fl <> '4' ";
+				List<HashMap> qltyLists=mapper.query(sql.toString());
+				
+				List<HashMap> qltyLists2=null;
+				//查询是否有LRA加项项目
+				sql="";
+				sql="select * from qcm_jhy_sample_consign_d_item i where i.specimen_no = '"+result.get("SPECIMEN_NO")+"' and i.specl_fl = '4' and i.phy_code_l='HC' ";
+				List<HashMap> qltyLRA=mapper.query(sql.toString());
+				if(qltyLRA!=null && qltyLRA.size()>=1){
+				//查询被引用的所有明细
+				sql ="";
+				sql = "select t.* from QCM_JHY_INSP_PHYSICS t where t.specimen_no = '"+result.get("SPECIMEN_NO")+"' and t.quote_specimen_no is null and t.phy_code_l<>'HC' ";
+				qltyLists2=mapper.query(sql.toString());
+				}else{
+				//查询被引用的所有明细
+				sql ="";
+				sql = "select t.* from QCM_JHY_INSP_PHYSICS t where t.specimen_no = '"+result.get("SPECIMEN_NO")+"' and t.quote_specimen_no is null ";
+			    qltyLists2=mapper.query(sql.toString());
+				}
+				
+				Integer bQuote = qltyLists.size();//引用
+				Integer yQuote = qltyLists2.size();//被引用
+		
+				int quotenum = 0;//已引用数据
+				String hbB01 ="";//弯曲
+				//引用
+					for (int i = 0; i < qltyLists.size(); i++) {//引用在外层循环 对比 引用中有没有相应的项目有 插入
+						if("B01".equals((String) qltyLists.get(i).get("PHY_CODE_S"))){
+							hbB01 ="0";
+						}else{
+							hbB01 ="";
+						}
+						//代码
+						String phyCodeL = (String) qltyLists.get(i).get("PHY_CODE_L");//材质检验大项代码
+						String phyCodeM = (String) qltyLists.get(i).get("PHY_CODE_M");//试样组代码
+						String phyCodeS = (String) qltyLists.get(i).get("PHY_CODE_S");//材质检验项目代码
+						String itemCodeD = (String) qltyLists.get(i).get("ITEM_CODE_D");//试验方向代码
+						String itemCodeT = (String) qltyLists.get(i).get("ITEM_CODE_T");//试验温度代码 试验温度代码  冲击 被引用
+						String itemCodeS = (String) qltyLists.get(i).get("ITEM_CODE_S");//试样尺寸代码
+						//名称
+						String phyNameL = (String) qltyLists.get(i).get("PHY_NAME_L");//材质检验大项代码
+						String phyNameM = (String) qltyLists.get(i).get("PHY_NAME_M");//试样组代码
+						String phyNameS = (String) qltyLists.get(i).get("PHY_NAME_S");//材质检验项目代码
+						String itemNameD = (String) qltyLists.get(i).get("ITEM_NAME_D");//试验方向代码
+						String itemNameT = (String) qltyLists.get(i).get("ITEM_NAME_T");//试验温度代码 试验温度代码  冲击 被引用
+						String itemNameS = (String) qltyLists.get(i).get("ITEM_NAME_S");//试样尺寸代码
+						
+						String itemCodeL = (String) qltyLists.get(i).get("ITEM_CODE_L");//试验位置代码
+						String itemDescL = (String) qltyLists.get(i).get("ITEM_DESC_L");
+						BigDecimal seq = (BigDecimal) qltyLists.get(i).get("SEQ");
+						String bigdjs = seq.toString();
+						Integer bigd4 = Integer.parseInt(bigdjs);
+			
+						String newItem=phyCodeL+"-"+phyCodeM+"-"+phyCodeS;
+						newItem=newItem+"-"+(itemCodeD!=null?itemCodeD:"null");
+						newItem=newItem+"-"+(itemCodeT!=null?itemCodeT:"null");
+						newItem=newItem+"-"+(itemCodeS!=null?itemCodeS:"null");
+						//newItem=newItem+"-"+(itemCodeL!=null?itemCodeL:"null");
+						//弯曲 
+					/////	String newItemHB=phyCodeL+"-"+phyCodeM+"-"+phyCodeS+"-"+(itemCodeD!=null?itemCodeD:"null")+"-"+(itemCodeT!=null?itemCodeT:"null");
+						
+				    //被引用
+					for (HashMap hashMap : qltyLists2) {
+						
+						//代码
+						String phyCodeL2 = (String) hashMap.get("PHY_CODE_L");//材质检验大项代码
+						String phyCodeM2 = (String) hashMap.get("PHY_CODE_M");//试样组代码
+						String phyCodeS2 = (String) hashMap.get("PHY_CODE_S");//材质检验项目代码
+						String itemCodeD2 = (String) hashMap.get("ITEM_CODE_D");//试验方向代码
+						String itemCodeT2 = (String) hashMap.get("ITEM_CODE_T");//试验温度代码 试验温度代码  冲击 被引用
+						String itemCodeS2 = (String) hashMap.get("ITEM_CODE_S");//试样尺寸代码
+						String itemCodeL2 = (String) hashMap.get("ITEM_CODE_L");//试验位置代码
+						
+						String newItem2=phyCodeL2+"-"+phyCodeM2+"-"+phyCodeS2;
+						newItem2=newItem2+"-"+(itemCodeD2!=null?itemCodeD2:"null");
+						newItem2=newItem2+"-"+(itemCodeT2!=null?itemCodeT2:"null");
+						newItem2=newItem2+"-"+(itemCodeS2!=null?itemCodeS2:"null");
+						//newItem2=newItem2+"-"+(itemCodeL2!=null?itemCodeL2:"null");
+						
+						//弯曲 
+					/////	String newItemHB2=phyCodeL2+"-"+phyCodeM2+"-"+phyCodeS2+"-"+(itemCodeD2!=null?itemCodeD2:"null")+"-"+(itemCodeT2!=null?itemCodeT2:"null");
+						
+						//判断是否是冲击试验
+						if(phyCodeS.equals("C01") || phyCodeS.equals("C02")){
+							if(phyCodeS.equals(phyCodeS2)){
+								Integer co1t= Integer.parseInt(itemCodeT);//引用
+								Integer co2t= Integer.parseInt(itemCodeT2);//被引用
+								if(co1t >= co2t){
+									sql = "";
+									sql = " insert into QCM_JHY_INSP_PHYSICS "
+							+" (SPECIMEN_NO,SEQ,TEST_QTY,PHY_CODE_L,PHY_NAME_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S,ITEM_CODE_D,ITEM_NAME_D, "
+							+" ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+							+" VAL13,VAL14,VAL15,AVG_VAL,CREATE_NAME,CREATE_TIME,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,ITEM_CODE_L,ITEM_DESC_L, "
+							+" PHY_UNIT,MEMO) "
+							+" select '"+parmas.get("SPECIMEN_NO")+"','"+bigd4+"',TEST_QTY,'"+phyCodeL+"','"+phyNameL+"','"+phyCodeM+"','"+phyNameM+"','"+phyCodeS+"','"+phyNameS+"','"+itemCodeD+"','"+itemNameD+"', "
+							+"  '"+itemCodeT+"','"+itemNameT+"','"+itemCodeS+"','"+itemNameS+"',VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+							+"  VAL13,VAL14,VAL15,AVG_VAL,'"+parmas.get("CREATE_NAME")+"',sysdate,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,'"+itemCodeL+"','"+itemDescL+"', "
+							+" PHY_UNIT,MEMO from QCM_JHY_INSP_PHYSICS t "
+							+ " where t.specimen_no = '"+(String)hashMap.get("SPECIMEN_NO")+"' "
+							+ "and t.seq = '"+hashMap.get("SEQ")+"'  ";
+									mapper.insert(sql);
+									
+									//修改ITEM表
+									sql = "";
+									sql =" update QCM_JHY_SAMPLE_CONSIGN_D_ITEM t set t.QUOTE_MEMO = '已引用"+result.get("SPECIMEN_NO")+"' "
+											+ " where t.SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"' and t.seq = '"+seq+"' ";
+									mapper.updateJudgeStatus(sql.toString());
+									quotenum++;
+									break;
+								}
+							}
+							
+						}/*else if (phyCodeS.equals("B01")){//弯曲试验   冷弯(面弯)试验/////
+							//标准一样的引用
+							if(newItemHB.equals(newItemHB2)){
+								
+										sql = "";
+										sql = " insert into QCM_JHY_INSP_PHYSICS "
+								+" (SPECIMEN_NO,SEQ,TEST_QTY,PHY_CODE_L,PHY_NAME_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S,ITEM_CODE_D,ITEM_NAME_D, "
+								+" ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+								+" VAL13,VAL14,VAL15,AVG_VAL,CREATE_NAME,CREATE_TIME,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,ITEM_CODE_L,ITEM_DESC_L, "
+								+" PHY_UNIT,MEMO) "
+								+" select '"+parmas.get("SPECIMEN_NO")+"','"+bigd4+"',TEST_QTY,'"+phyCodeL+"','"+phyNameL+"','"+phyCodeM+"','"+phyNameM+"','"+phyCodeS+"','"+phyNameS+"','"+itemCodeD+"','"+itemNameD+"', "
+								+"  '"+itemCodeT+"','"+itemNameT+"','"+itemCodeS+"','"+itemNameS+"',VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+								+"  VAL13,VAL14,VAL15,AVG_VAL,'"+parmas.get("CREATE_NAME")+"',sysdate,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,'"+itemCodeL+"','"+itemDescL+"', "
+								+" PHY_UNIT,MEMO from QCM_JHY_INSP_PHYSICS t "
+								+ " where t.specimen_no = '"+(String)hashMap.get("SPECIMEN_NO")+"' "
+								+ "and t.seq = '"+hashMap.get("SEQ")+"'  ";
+									mapper.insert(sql);
+									
+									//修改ITEM表
+									sql = "";
+									sql =" update QCM_JHY_SAMPLE_CONSIGN_D_ITEM t set t.QUOTE_MEMO = '已引用"+result.get("SPECIMEN_NO")+"' "
+											+ " where t.SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"' and t.seq = '"+seq+"' ";
+									mapper.updateJudgeStatus(sql.toString());
+									quotenum++;
+									hbB01 ="1";
+									break;
+								}
+							
+						}*/else{//其它试验
+						
+						//标准一样的引用
+						if(newItem.equals(newItem2)){
+							
+									sql = "";
+									sql = " insert into QCM_JHY_INSP_PHYSICS "
+							+" (SPECIMEN_NO,SEQ,TEST_QTY,PHY_CODE_L,PHY_NAME_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S,ITEM_CODE_D,ITEM_NAME_D, "
+							+" ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+							+" VAL13,VAL14,VAL15,AVG_VAL,CREATE_NAME,CREATE_TIME,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,ITEM_CODE_L,ITEM_DESC_L, "
+							+" PHY_UNIT,MEMO) "
+							+" select '"+parmas.get("SPECIMEN_NO")+"','"+bigd4+"',TEST_QTY,'"+phyCodeL+"','"+phyNameL+"','"+phyCodeM+"','"+phyNameM+"','"+phyCodeS+"','"+phyNameS+"','"+itemCodeD+"','"+itemNameD+"', "
+							+"  '"+itemCodeT+"','"+itemNameT+"','"+itemCodeS+"','"+itemNameS+"',VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+							+"  VAL13,VAL14,VAL15,AVG_VAL,'"+parmas.get("CREATE_NAME")+"',sysdate,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,'"+itemCodeL+"','"+itemDescL+"', "
+							+" PHY_UNIT,MEMO from QCM_JHY_INSP_PHYSICS t "
+							+ " where t.specimen_no = '"+(String)hashMap.get("SPECIMEN_NO")+"' "
+							+ "and t.seq = '"+hashMap.get("SEQ")+"'  ";
+								mapper.insert(sql);
+								
+								//修改ITEM表
+								sql = "";
+								sql =" update QCM_JHY_SAMPLE_CONSIGN_D_ITEM t set t.QUOTE_MEMO = '已引用"+result.get("SPECIMEN_NO")+"' "
+										+ " where t.SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"' and t.seq = '"+seq+"' ";
+								mapper.updateJudgeStatus(sql.toString());
+								quotenum++;
+								break;
+							}
+						
+			             }
+				  }
+					
+					//申报:郭明清 主题:非计划船板改普板,冷弯需要系统默认合格  申报时间:2023-04-27 16:49:59
+					//原牌号为船板   BV/IC003法国船级社,KR/IC004韩国船级社,DNV/IC001挪威船级社,CCS/IC010中国船级社 、ABS/IC005美国船级社、LR/IC009 英国船级社、NK/KA36/IC006 日本船级社、RINA/IC007 意大利船级社 、RS/IC002 俄罗斯  IC012 客户认证
+					//改成普锰板(Q235A/B、Q345A/B、Q355B)
+					//被引用是原牌号船板  引用是改判 普锰板
+					//弯曲 默认合格 
+					if("B01".equals((String) qltyLists.get(i).get("PHY_CODE_S"))&& !"".equals(hbB01) && hbB01.equals("0")){
+						sql="";
+						sql="select d.* from qcm_jhy_sample_consign_d d,qcm_jhy_sample_r_ord r "
+							+"	where d.smp_no = r.smp_no and r.steel_code in ('Q235A','Q235B','Q345A','Q345B','Q355B') "
+							+"	and d.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' ";
+						List<HashMap> hashMap=mapper.query(sql.toString());
+						if(hashMap!=null && hashMap.size()>=1){
+							sql="";
+							sql="select r.* from qcm_jhy_sample_consign_d d,qcm_jhy_sample_r_ord r "
+								+"	where d.smp_no = r.smp_no and r.cert_inst_code in ('IC005','IC009','IC006','IC007','IC002','IC003','IC004','IC001','IC010') "
+								+"	and d.specimen_no = '"+result.get("SPECIMEN_NO")+"' ";
+							List<HashMap> hashMap2=mapper.query(sql.toString());
+							
+							//船板没有弯曲
+							sql="";
+							sql="select * from qcm_jhy_sample_consign_d_item  where specimen_no = '"+result.get("SPECIMEN_NO")+"' and phy_code_s='B01' ";
+							List<HashMap> hashMap3=mapper.query(sql.toString());
+							if(hashMap2!=null && hashMap2.size()>=1 && hashMap3.size()<=0 ){
+								sql="";
+								sql="insert into QCM_JHY_INSP_PHYSICS "
+						            +" (SPECIMEN_NO,SEQ,TEST_QTY,PHY_CODE_L,PHY_NAME_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S,ITEM_CODE_D,ITEM_NAME_D,  "
+						            +"   ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,VAL1,AVG_VAL,CREATE_NAME,CREATE_TIME,DEFECT_FLAG,MAX_VAL, "
+						            +"   MIN_VAL,ITEM_CODE_L,ITEM_DESC_L,PHY_UNIT,MEMO) "
+									+"	select t.specimen_no,t.seq,t.test_qty,t.phy_code_l,t.phy_name_l,t.phy_code_m,t.phy_name_m,t.phy_code_s,t.phy_name_s,t.item_code_d,t.item_name_d, "
+									+"	       t.item_code_t,t.item_name_t,t.item_code_s,t.item_name_s,'合格','合格','"+parmas.get("CREATE_NAME")+"',sysdate,'0','合格','合格',t.item_code_l,t.item_desc_l, "
+									+"	       t.phy_unit,'默认合格' "
+									+"	 from qcm_jhy_sample_consign_d_item t "
+									+"	 where t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' "
+									+"	 and t.phy_code_s = 'B01' ";
+								mapper.insert(sql);
+								
+								//修改ITEM表
+								sql = "";
+								sql =" update QCM_JHY_SAMPLE_CONSIGN_D_ITEM t set t.QUOTE_MEMO = '默认合格' "
+										+ " where t.SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"' and t.phy_code_s = 'B01' ";
+								mapper.updateJudgeStatus(sql.toString());
+								quotenum++;
+							}
+						}
+					}
+					
+		    }
+					//被引用的项目  全部  已引用
+					if(quotenum == qltyLists.size()){
+						//修改D表
+						sql = "";
+						sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.STATUS = '3',t.SEND_ID = '"+parmas.get("SEND_ID")+"',"
+								+ " t.SEND_NAME = '"+parmas.get("CREATE_NAME")+"',t.SEND_TIME = sysdate,t.SEND_MEMO = '有引用',t.QUOTE_MEMO = '引用实绩' "
+								+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+										+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+						mapper.updateJudgeStatus(sql.toString());
+						
+						//往log表中插入p
+						sql = "";
+						sql = " INSERT INTO QCM_JUDGE_LOG ( JUDGE_TYPE,MATERIAL_NO,CREATE_TIME,CREATE_NAME,PROD_LINE) "
+				    		+" VALUES ( 'P', '"+parmas.get("SMP_NO")+"', SYSDATE,'system','"+parmas.get("PLINE_CODE")+"')";
+						mapper.insert(sql);
+					}else{
+						//修改D表
+						sql = "";
+						sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.SEND_MEMO = '有引用',t.QUOTE_MEMO = '引用实绩' "
+								+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+										+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+						mapper.updateJudgeStatus(sql.toString());
+					}
+			
+				
+				
+			}else{
+				SqlSession.close();
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("该轧批未返回实绩或没有引用的对象!请在委托记录中核实相应委托数据");
+				return cro;
+			}
+
+		} catch (Exception e) {
+			SqlSession.rollback();
+			SqlSession.close();
+			cro.setV_errCode(-1);
+			cro.setV_errMsg("引用失败!"+e.getMessage());
+			return cro;
+		}
+		SqlSession.commit();
+		SqlSession.close();
+		cro.setV_errCode(1);
+		cro.setV_errMsg("引用成功!");
+		return cro;
+	}
+	
+	
+	
+	/**
+	 * 19订单自动引用  不同订单 同轧批号  项目一样引用
+	 * @param materialInfo
+	 * @return
+	 * @throws Exception
+	 */
+	public void DoQuoteBatchNo19(HashMap parmas) throws Exception {
+		 SqlSession = QCM.COMMUNAL.SqlSessionBuilder.openSqlSession();
+		 mapper = SqlSession.getMapper(QCM.COMMUNAL.OrderSqMapper.class);
+		try {
+			String chiStr = "";
+			String process_nos="";
+			String pno1="";
+			String pno2="";
+			String pno3="";
+			if(parmas.get("CREATE_NAME").equals("调试人员")){
+				parmas.put("SEND_ID", "系统自动");
+				parmas.put("CREATE_NAME", "系统自动");
+			}
+			//判断是否按子板取样 19订单
+			String chi = "select t.* from QCM_JHY_SAMPLE_CONSIGN_D t where t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' and rownum <= 1 ";
+			List<HashMap> CHILists=mapper.query(chi.toString());
+			if(CHILists != null && CHILists.size()>=1 ){
+				process_nos=CHILists.get(0).get("PROCESS_NOS").toString();
+				if(CHILists.get(0).get("FREQ_CODE").equals("C") || CHILists.get(0).get("FREQ_CODE").equals("H") || CHILists.get(0).get("FREQ_CODE").equals("I")){
+				chiStr = " and t.MATERIAL_NO = '"+CHILists.get(0).get("MATERIAL_NO")+"' ";
+				}
+			}
+			pno1=process_nos.substring(0, 1);//第一位
+			pno2=process_nos.substring(3, 4);//第四位
+			pno3=process_nos.substring(4, 5);//第五位
+			String sql ="";
+			 sql = "select * from (select * from ("
+				 		+ " select (select count(1) from qcm_jhy_sample_consign_d_item i where i.specimen_no = t.specimen_no AND i.Phy_Code_l <> 'HJ') nums,t.* "
+				 		+ " from QCM_JHY_SAMPLE_CONSIGN_D t,qcm_jhy_sample_r_ord r "
+						  +" where t.smp_no = r.smp_no and t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'  "
+						   +" and t.smp_type_code = '0' and t.status = '3' and t.freq_code <> 'D' and t.CHEM_ITEM is null "
+						   +" and to_char(r.thick, 'fm990.099') = to_char('"+parmas.get("THICK")+"', 'fm990.099') and r.DESIGN_KEY not like '19%' "
+						   + chiStr
+						   +" and substr(t.PROCESS_NOS,0,1)='"+pno1+"' "
+			               +" and substr(t.PROCESS_NOS,4,1)='"+pno2+"' "
+			               +" and substr(t.PROCESS_NOS,5,1)='"+pno3+"' "
+						   + " ) t where t.nums !=0 order by t.nums desc) t where rownum=1 ";
+			HashMap result = mapper.queryOne(sql.toString());
+			
+			if(result==null || result.size()<=0){
+		   sql = "select t.* from (select (select count(1) from qcm_jhy_sample_consign_d_item i where i.specimen_no = t.specimen_no AND i.Phy_Code_l <> 'HJ') nums, t.* from QCM_JHY_SAMPLE_CONSIGN_D t "
+						  +" where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'  "
+						   +" and t.smp_type_code = '0' and t.status = '3'  "
+						   +" and t.freq_code <> 'D' and CHEM_ITEM is null "
+						   +" and substr(t.PROCESS_NOS,0,1)='"+pno1+"' "
+			               +" and substr(t.PROCESS_NOS,4,1)='"+pno2+"' "
+			               +" and substr(t.PROCESS_NOS,5,1)='"+pno3+"' "
+						   +" and rownum <= 1 order by t.send_time asc ) t where t.nums != 0";
+				 result=null;
+				 result = mapper.queryOne(sql.toString());
+			}
+	
+			if (result != null && result.size()>=1) {
+				//判断厚度是否大于引用的厚度
+				sql ="";
+				sql = "select To_Number(t.thick) thick from Qcm_Jhy_Sample_r_Ord t where t.SMP_NO = '"+result.get("SMP_NO")+"' and rownum <= 1 ";
+				List<HashMap> OrdLists=mapper.query(sql.toString());
+				if(OrdLists!=null && OrdLists.size()>=1 && !StringUtils.isBlank(OrdLists.get(0).get("THICK").toString())){
+					String hmap2 = OrdLists.get(0).get("THICK").toString();
+					double thick1 = Double.parseDouble(hmap2);
+					String thick = parmas.get("THICK").toString();
+					double thick2 = Double.parseDouble(thick);
+					if(thick2>thick1){
+						String str =thick2+">"+thick1;
+						//修改D表
+						sql = "";
+						sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.ONEMEMO = '19订单委托厚度大于引用厚度不可引用:'||'"+str+"' ,t.ARTIFICIAL_MEMO='0' "
+								+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+										+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+						mapper.updateJudgeStatus(sql.toString());
+						SqlSession.commit();
+						SqlSession.close();
+						return;//被引用不能大于引用
+					}
+					if((thick1-thick2)>=3){
+						String str =thick2+"<"+thick1;
+						sql = "";
+						sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.ONEMEMO = '19订单委托厚度小于引用厚度不可超过2mm,超过2mm不可引用:'||'"+str+"' ,t.ARTIFICIAL_MEMO='0' "
+								+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+										+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+						mapper.updateJudgeStatus(sql.toString());
+						SqlSession.commit();
+						SqlSession.close();
+						return;//引用-被引用不能大于等于3  小2mm
+					}
+				}
+
+				//查询被引用的所有明细
+				sql ="";
+				sql = "select t.* from QCM_JHY_SAMPLE_CONSIGN_D_ITEM t where t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' ";
+				List<HashMap> qltyLists=mapper.query(sql.toString());
+				
+				//查询引用的所有明细
+				sql ="";
+				sql = "select t.* from QCM_JHY_INSP_PHYSICS t where t.specimen_no = '"+result.get("SPECIMEN_NO")+"' "
+					+ " and t.quote_specimen_no is null and t.VAL1 is not null and t.create_name <>'现场默认' ";
+				List<HashMap> qltyLists2=mapper.query(sql.toString());
+				
+				Integer bQuote = qltyLists.size();//被引用
+				Integer yQuote = qltyLists2.size();//引用
+	
+				int quotenum = 0;//已引用数据
+				String hbB01 ="";//弯曲
+				//被引用
+					for (int i = 0; i < qltyLists.size(); i++) {//被引用在外层循环 对比 引用中有没有相应的项目有 插入
+						if("B01".equals((String) qltyLists.get(i).get("PHY_CODE_S"))){
+							hbB01 ="0";
+						}else{
+							hbB01 ="";
+						}
+						
+						//代码
+						String phyCodeL = (String) qltyLists.get(i).get("PHY_CODE_L");//材质检验大项代码
+						String phyCodeM = (String) qltyLists.get(i).get("PHY_CODE_M");//试样组代码
+						String phyCodeS = (String) qltyLists.get(i).get("PHY_CODE_S");//材质检验项目代码
+						String itemCodeD = (String) qltyLists.get(i).get("ITEM_CODE_D");//试验方向代码
+						String itemCodeT = (String) qltyLists.get(i).get("ITEM_CODE_T");//试验温度代码 试验温度代码  冲击 被引用
+						String itemCodeS = (String) qltyLists.get(i).get("ITEM_CODE_S");//试样尺寸代码
+						//名称
+						String phyNameL = (String) qltyLists.get(i).get("PHY_NAME_L");//材质检验大项代码
+						String phyNameM = (String) qltyLists.get(i).get("PHY_NAME_M");//试样组代码
+						String phyNameS = (String) qltyLists.get(i).get("PHY_NAME_S");//材质检验项目代码
+						String itemNameD = (String) qltyLists.get(i).get("ITEM_NAME_D");//试验方向代码
+						String itemNameT = (String) qltyLists.get(i).get("ITEM_NAME_T");//试验温度代码 试验温度代码  冲击 被引用
+						String itemNameS = (String) qltyLists.get(i).get("ITEM_NAME_S");//试样尺寸代码
+						
+						String itemCodeL = (String) qltyLists.get(i).get("ITEM_CODE_L");//试验位置代码
+						String itemDescL = (String) qltyLists.get(i).get("ITEM_DESC_L");
+						BigDecimal seq = (BigDecimal) qltyLists.get(i).get("SEQ");
+						String bigdjs = seq.toString();
+						Integer bigd4 = Integer.parseInt(bigdjs);
+			
+						String newItem=phyCodeL+"-"+phyCodeM+"-"+phyCodeS;
+						newItem=newItem+"-"+(itemCodeD!=null?itemCodeD:"null");
+						newItem=newItem+"-"+(itemCodeT!=null?itemCodeT:"null");
+						newItem=newItem+"-"+(itemCodeS!=null?itemCodeS:"null");
+						
+				    //引用
+					for (HashMap hashMap : qltyLists2) {
+						
+						//代码
+						String phyCodeL2 = (String) hashMap.get("PHY_CODE_L");//材质检验大项代码
+						String phyCodeM2 = (String) hashMap.get("PHY_CODE_M");//试样组代码
+						String phyCodeS2 = (String) hashMap.get("PHY_CODE_S");//材质检验项目代码
+						String itemCodeD2 = (String) hashMap.get("ITEM_CODE_D");//试验方向代码
+						String itemCodeT2 = (String) hashMap.get("ITEM_CODE_T");//试验温度代码 试验温度代码  冲击 被引用
+						String itemCodeS2 = (String) hashMap.get("ITEM_CODE_S");//试样尺寸代码
+						
+						String newItem2=phyCodeL2+"-"+phyCodeM2+"-"+phyCodeS2;
+						newItem2=newItem2+"-"+(itemCodeD2!=null?itemCodeD2:"null");
+						newItem2=newItem2+"-"+(itemCodeT2!=null?itemCodeT2:"null");
+						newItem2=newItem2+"-"+(itemCodeS2!=null?itemCodeS2:"null");
+						
+						//判断是否是冲击试验
+						if(phyCodeS.equals("C01") || phyCodeS.equals("C02")){
+							if(phyCodeS.equals(phyCodeS2)){
+								double co1t = Double.valueOf(itemCodeT);
+								double co2t = Double.valueOf(itemCodeT2);
+								//Integer co1t= Integer.parseInt(itemCodeT);//被引用
+								//Integer co2t= Integer.parseInt(itemCodeT2);//引用
+								if(co1t >= co2t){
+									sql = "";
+									sql = " insert into QCM_JHY_INSP_PHYSICS "
+							+" (SPECIMEN_NO,SEQ,TEST_QTY,PHY_CODE_L,PHY_NAME_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S,ITEM_CODE_D,ITEM_NAME_D, "
+							+" ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+							+" VAL13,VAL14,VAL15,AVG_VAL,CREATE_NAME,CREATE_TIME,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,ITEM_CODE_L,ITEM_DESC_L, "
+							+" PHY_UNIT,MEMO) "
+							+" select '"+parmas.get("SPECIMEN_NO")+"','"+bigd4+"',TEST_QTY,'"+phyCodeL+"','"+phyNameL+"','"+phyCodeM+"','"+phyNameM+"','"+phyCodeS+"','"+phyNameS+"','"+itemCodeD+"','"+itemNameD+"', "
+							+"  '"+itemCodeT+"','"+itemNameT+"','"+itemCodeS+"','"+itemNameS+"',VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+							+"  VAL13,VAL14,VAL15,AVG_VAL,'"+parmas.get("CREATE_NAME")+"',sysdate,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,'"+itemCodeL+"','"+itemDescL+"', "
+							+" PHY_UNIT,MEMO from QCM_JHY_INSP_PHYSICS t "
+							+ " where t.specimen_no = '"+(String)hashMap.get("SPECIMEN_NO")+"' "
+							+ "and t.seq = '"+hashMap.get("SEQ")+"'  ";
+									mapper.insert(sql);
+									
+									//修改ITEM表
+									sql = "";
+									sql =" update QCM_JHY_SAMPLE_CONSIGN_D_ITEM t set t.QUOTE_MEMO = '已引用"+result.get("SPECIMEN_NO")+"' "
+											+ " where t.SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"' and t.seq = '"+seq+"' ";
+									mapper.updateJudgeStatus(sql.toString());
+									quotenum++;
+									break;
+								}
+							}
+							
+						}else{//其它试验
+						
+						//标准一样的引用
+						if(newItem.equals(newItem2)){
+							
+							sql = "";
+							sql = " insert into QCM_JHY_INSP_PHYSICS "
+					+" (SPECIMEN_NO,SEQ,TEST_QTY,PHY_CODE_L,PHY_NAME_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S,ITEM_CODE_D,ITEM_NAME_D, "
+					+" ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+					+" VAL13,VAL14,VAL15,AVG_VAL,CREATE_NAME,CREATE_TIME,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,ITEM_CODE_L,ITEM_DESC_L, "
+					+" PHY_UNIT,MEMO) "
+					+" select '"+parmas.get("SPECIMEN_NO")+"','"+bigd4+"',TEST_QTY,'"+phyCodeL+"','"+phyNameL+"','"+phyCodeM+"','"+phyNameM+"','"+phyCodeS+"','"+phyNameS+"','"+itemCodeD+"','"+itemNameD+"', "
+					+"  '"+itemCodeT+"','"+itemNameT+"','"+itemCodeS+"','"+itemNameS+"',VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+					+"  VAL13,VAL14,VAL15,AVG_VAL,'"+parmas.get("CREATE_NAME")+"',sysdate,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,'"+itemCodeL+"','"+itemDescL+"', "
+					+" PHY_UNIT,MEMO from QCM_JHY_INSP_PHYSICS t "
+					+ " where t.specimen_no = '"+(String)hashMap.get("SPECIMEN_NO")+"' "
+					+ "and t.seq = '"+hashMap.get("SEQ")+"'  ";
+						mapper.insert(sql);
+						
+						//修改ITEM表
+						sql = "";
+						sql =" update QCM_JHY_SAMPLE_CONSIGN_D_ITEM t set t.QUOTE_MEMO = '已引用"+result.get("SPECIMEN_NO")+"' "
+								+ " where t.SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"' and t.seq = '"+seq+"' ";
+						mapper.updateJudgeStatus(sql.toString());
+						quotenum++;
+						if("B01".equals(phyCodeS2) && "B01".equals((String) qltyLists.get(i).get("PHY_CODE_S"))){
+							hbB01="1";
+						}
+						break;
+							}
+			          }
+				}
+					//中厚板非计划处置维护  袁传泉 2023-11-07 10:47:23 
+					if("B01".equals((String) qltyLists.get(i).get("PHY_CODE_S"))&& !"".equals(hbB01) && hbB01.equals("0")){
+						sql="";
+						sql="insert into QCM_JHY_INSP_PHYSICS "
+				            +" (SPECIMEN_NO,SEQ,TEST_QTY,PHY_CODE_L,PHY_NAME_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S,ITEM_CODE_D,ITEM_NAME_D,  "
+				            +"   ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,VAL1,AVG_VAL,CREATE_NAME,CREATE_TIME,DEFECT_FLAG,MAX_VAL, "
+				            +"   MIN_VAL,ITEM_CODE_L,ITEM_DESC_L,PHY_UNIT,MEMO) "
+							+"	select t.specimen_no,t.seq,t.test_qty,t.phy_code_l,t.phy_name_l,t.phy_code_m,t.phy_name_m,t.phy_code_s,t.phy_name_s,t.item_code_d,t.item_name_d, "
+							+"	       t.item_code_t,t.item_name_t,t.item_code_s,t.item_name_s,'合格','合格','"+parmas.get("CREATE_NAME")+"',sysdate,'0','合格','合格',t.item_code_l,t.item_desc_l, "
+							+"	       t.phy_unit,'默认合格' "
+							+"	 from qcm_jhy_sample_consign_d_item t "
+							+"	 where t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' "
+							+"	 and t.phy_code_s = 'B01' ";
+						mapper.insert(sql);
+						
+						//修改ITEM表
+						sql = "";
+						sql =" update QCM_JHY_SAMPLE_CONSIGN_D_ITEM t set t.QUOTE_MEMO = '默认合格' "
+								+ " where t.SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"' and t.phy_code_s = 'B01' ";
+						mapper.updateJudgeStatus(sql.toString());
+						quotenum++;
+					}
+					//申报:郭明清 主题:非计划船板改普板,冷弯需要系统默认合格  申报时间:2023-04-27 16:49:59
+					//原牌号为船板   BV/IC003法国船级社,KR/IC004韩国船级社,DNV/IC001挪威船级社,CCS/IC010中国船级社 、ABS/IC005美国船级社、LR/IC009 英国船级社、NK/KA36/IC006 日本船级社、RINA/IC007 意大利船级社 、RS/IC002 俄罗斯  IC012 客户认证
+					//改成普锰板(Q235A/B、Q345A/B、Q355B)
+					//被引用是原牌号船板  引用是改判 普锰板
+					//弯曲 默认合格 
+					/*if("B01".equals((String) qltyLists.get(i).get("PHY_CODE_S"))&& !"".equals(hbB01) && hbB01.equals("0")){
+						sql="";
+						sql="select d.* from qcm_jhy_sample_consign_d d,qcm_jhy_sample_r_ord r "
+							+"	where d.smp_no = r.smp_no and r.steel_code in ('Q235A','Q235B','Q345A','Q345B','Q355B') "
+							+"	and d.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' ";
+						List<HashMap> hashMap=mapper.query(sql.toString());
+						if(hashMap!=null && hashMap.size()>=1){
+							sql="";
+							sql="select r.* from qcm_jhy_sample_consign_d d,qcm_jhy_sample_r_ord r "
+								+"	where d.smp_no = r.smp_no and r.cert_inst_code in ('IC005','IC009','IC006','IC007','IC002','IC003','IC004','IC001','IC010') "
+								+"	and d.specimen_no = '"+result.get("SPECIMEN_NO")+"' ";
+							List<HashMap> hashMap2=mapper.query(sql.toString());
+							
+							//船板没有弯曲
+							sql="";
+							sql="select * from qcm_jhy_sample_consign_d_item  where specimen_no = '"+result.get("SPECIMEN_NO")+"' and phy_code_s='B01' ";
+							List<HashMap> hashMap3=mapper.query(sql.toString());
+							if(hashMap2!=null && hashMap2.size()>=1 && hashMap3.size()<=0 ){
+								sql="";
+								sql="insert into QCM_JHY_INSP_PHYSICS "
+						            +" (SPECIMEN_NO,SEQ,TEST_QTY,PHY_CODE_L,PHY_NAME_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S,ITEM_CODE_D,ITEM_NAME_D,  "
+						            +"   ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,VAL1,AVG_VAL,CREATE_NAME,CREATE_TIME,DEFECT_FLAG,MAX_VAL, "
+						            +"   MIN_VAL,ITEM_CODE_L,ITEM_DESC_L,PHY_UNIT,MEMO) "
+									+"	select t.specimen_no,t.seq,t.test_qty,t.phy_code_l,t.phy_name_l,t.phy_code_m,t.phy_name_m,t.phy_code_s,t.phy_name_s,t.item_code_d,t.item_name_d, "
+									+"	       t.item_code_t,t.item_name_t,t.item_code_s,t.item_name_s,'合格','合格','"+parmas.get("CREATE_NAME")+"',sysdate,'0','合格','合格',t.item_code_l,t.item_desc_l, "
+									+"	       t.phy_unit,'默认合格' "
+									+"	 from qcm_jhy_sample_consign_d_item t "
+									+"	 where t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' "
+									+"	 and t.phy_code_s = 'B01' ";
+								mapper.insert(sql);
+								
+								//修改ITEM表
+								sql = "";
+								sql =" update QCM_JHY_SAMPLE_CONSIGN_D_ITEM t set t.QUOTE_MEMO = '默认合格' "
+										+ " where t.SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"' and t.phy_code_s = 'B01' ";
+								mapper.updateJudgeStatus(sql.toString());
+								quotenum++;
+							}
+						}
+					}*/
+					
+		    }
+					//19HJGP 不自动下发
+					sql="";
+					sql="select r.* from qcm_jhy_sample_consign_d t,qcm_jhy_sample_r_ord r "
+					 + " where t.smp_no = r.smp_no and t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"'  and r.design_key like '19HJGP%' and rownum=1 ";
+					HashMap resultHJGP = mapper.queryOne(sql.toString());
+					if(resultHJGP!=null && resultHJGP.size()>=1){
+						if(quotenum == qltyLists.size()){
+							//修改D表
+							sql = "";
+							sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.STATUS = '3',t.SEND_ID = '"+parmas.get("SEND_ID")+"',"
+									+ " t.SEND_NAME = '"+parmas.get("CREATE_NAME")+"',t.SEND_TIME = sysdate,t.SEND_MEMO = '有引用',t.QUOTE_MEMO = '引用实绩' "
+									+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+											+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+							mapper.updateJudgeStatus(sql.toString());
+							
+							//往log表中插入p
+							sql = "";
+							sql = " INSERT INTO QCM_JUDGE_LOG ( JUDGE_TYPE,MATERIAL_NO,CREATE_TIME,CREATE_NAME,PROD_LINE) "
+					    		+" VALUES ( 'P', '"+resultHJGP.get("SMP_NO")+"', SYSDATE,'system','"+parmas.get("PLINE_CODE")+"')";
+							mapper.insert(sql);
+						}else if(quotenum==0){
+							sql = "";
+							sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.ONEMEMO = '未找到一项可以引用的项目,订单标准全部不一样' ,t.ARTIFICIAL_MEMO='0' "
+									+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+											+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+							mapper.updateJudgeStatus(sql.toString());
+						}else{
+							//修改D表
+							sql = "";
+							sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.SEND_MEMO = '有引用',t.QUOTE_MEMO = '引用实绩' , t.ARTIFICIAL_MEMO='0', "
+									+ " t.ONEMEMO ='需下发委托' "
+									+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+											+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+							mapper.updateJudgeStatus(sql.toString());
+						}
+					}else{
+					//被引用的项目  全部  已引用
+						if(quotenum!=0){
+							//修改D表
+							sql = "";
+							sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.STATUS = '3',t.SEND_ID = '"+parmas.get("SEND_ID")+"',"
+									+ " t.SEND_NAME = '"+parmas.get("CREATE_NAME")+"',t.SEND_TIME = sysdate,t.SEND_MEMO = '有引用',t.QUOTE_MEMO = '引用实绩' "
+									+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+											+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+							mapper.updateJudgeStatus(sql.toString());
+							
+							//往log表中插入p
+							sql = "";
+							sql = " INSERT INTO QCM_JUDGE_LOG ( JUDGE_TYPE,MATERIAL_NO,CREATE_TIME,CREATE_NAME,PROD_LINE) "
+					    		+" VALUES ( 'P', '"+parmas.get("SMP_NO")+"', SYSDATE,'system','"+parmas.get("PLINE_CODE")+"')";
+							mapper.insert(sql);
+						}else if(quotenum==0){
+							sql = "";
+							sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.ONEMEMO = '未找到一项可以引用的项目,订单标准全部不一样' ,t.ARTIFICIAL_MEMO='0' "
+									+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+											+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+							mapper.updateJudgeStatus(sql.toString());
+						}
+					}
+			
+			}else{
+				sql="";
+				 sql = "select * from (select * from ("
+					 		+ " select (select count(1) from qcm_jhy_sample_consign_d_item i where i.specimen_no = t.specimen_no) nums,t.* "
+					 		+ " from QCM_JHY_SAMPLE_CONSIGN_D t,qcm_jhy_sample_r_ord r "
+							  +" where t.smp_no = r.smp_no and t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'  "
+							   +" and t.smp_type_code = '0' and t.status in('0','2','7') "
+							   +" and t.freq_code <> 'D' and t.CHEM_ITEM is null and to_char(r.thick, 'fm990.099') = to_char('"+parmas.get("THICK")+"', 'fm990.099') "
+							   +" and r.DESIGN_KEY not like '19%' "
+							   +" and substr(t.PROCESS_NOS,0,1)='"+pno1+"' "
+				               +" and substr(t.PROCESS_NOS,4,1)='"+pno2+"' "
+				               +" and substr(t.PROCESS_NOS,5,1)='"+pno3+"' "
+							   + ") t order by t.nums desc) t where rownum=1 ";
+				 result=null;
+				 result = mapper.queryOne(sql.toString());
+				
+				if(result==null || result.size()<=0){
+					 sql = "select t.* from QCM_JHY_SAMPLE_CONSIGN_D t,qcm_jhy_sample_r_ord r "
+							  +" where t.smp_no = r.smp_no and t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'  "
+							   +" and t.smp_type_code = '0' and t.status in('0','2','7') "
+							   +" and t.freq_code <> 'D' and r.DESIGN_KEY not like '19%' and CHEM_ITEM is null "
+							   +" and substr(t.PROCESS_NOS,0,1)='"+pno1+"' "
+				               +" and substr(t.PROCESS_NOS,4,1)='"+pno2+"' "
+				               +" and substr(t.PROCESS_NOS,5,1)='"+pno3+"' "
+							   +" and rownum <= 1 order by t.send_time asc ";
+					 result=null;
+					 result = mapper.queryOne(sql.toString());
+				}
+		
+				if (result != null && result.size()>=1) {
+					sql = "";
+					sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.ONEMEMO = '力学性能实绩未返回或未下发委托,请等实绩返回人工引用' ,t.ARTIFICIAL_MEMO='1' "
+							+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+									+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+					mapper.updateJudgeStatus(sql.toString());
+				}else{
+				//修改D表
+				sql = "";
+				sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.ONEMEMO = '没有找到相应力学性能委托' ,t.ARTIFICIAL_MEMO='0' "
+						+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+								+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+				mapper.updateJudgeStatus(sql.toString());
+				}
+			}
+
+		} catch (Exception e) {
+			SqlSession.rollback();
+			SqlSession.close();
+		}
+		SqlSession.commit();
+		SqlSession.close();
+	}
+	
+	public String DoQuoteBatchNo191(HashMap parmas) throws Exception {
+		 SqlSession = QCM.COMMUNAL.SqlSessionBuilder.openSqlSession();
+		 mapper = SqlSession.getMapper(QCM.COMMUNAL.OrderSqMapper.class);
+		 String retnum = "0";
+		try {
+			String process_nos="";
+			String pno1="";
+			String pno2="";
+			String pno3="";
+			String chiStr = "";
+			//判断是否按子板取样 19订单
+			String chi = "select t.* from QCM_JHY_SAMPLE_CONSIGN_D t where t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' and rownum <= 1 ";
+			List<HashMap> CHILists=mapper.query(chi.toString());
+			if(CHILists != null && CHILists.size()>=1 ){
+				process_nos=CHILists.get(0).get("PROCESS_NOS").toString();
+				if(CHILists.get(0).get("FREQ_CODE").equals("C") || CHILists.get(0).get("FREQ_CODE").equals("H") || CHILists.get(0).get("FREQ_CODE").equals("I")){
+				chiStr = " and t.MATERIAL_NO = '"+CHILists.get(0).get("MATERIAL_NO")+"' ";
+				}
+			}
+			pno1=process_nos.substring(0, 1);//第一位
+			pno2=process_nos.substring(3, 4);//第四位
+			pno3=process_nos.substring(4, 5);//第五位
+			//and nvl(t.QUOTE_MEMO ,'null') <> '引用实绩'
+			String sql ="";
+			 sql = "select * from (select * from ("
+				 		+ " select (select count(1) from qcm_jhy_sample_consign_d_item i where i.specimen_no = t.specimen_no AND i.Phy_Code_l <> 'HJ' ) nums,t.* "
+				 		+ " from QCM_JHY_SAMPLE_CONSIGN_D t,qcm_jhy_sample_r_ord r "
+						  +" where t.smp_no = r.smp_no and t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'  "
+						   +" and t.smp_type_code = '0' and t.status = '3'  and t.freq_code <> 'D' and t.CHEM_ITEM is null "
+						   + "  and to_char(r.thick, 'fm990.099') = to_char('"+parmas.get("THICK")+"', 'fm990.099') and r.DESIGN_KEY not like '19%' "
+						   + chiStr
+						   +" and substr(t.PROCESS_NOS,0,1)='"+pno1+"' "
+			               +" and substr(t.PROCESS_NOS,4,1)='"+pno2+"' "
+			               +" and substr(t.PROCESS_NOS,5,1)='"+pno3+"' "
+						   + " ) t  where t.nums !=0 order by t.nums desc) t where rownum=1 ";
+			HashMap result = mapper.queryOne(sql.toString());
+			
+			if(result==null || result.size()<=0){
+		    sql = "select t.* from (select (select count(1) from qcm_jhy_sample_consign_d_item i where i.specimen_no = t.specimen_no AND i.Phy_Code_l <> 'HJ') nums, t.* from QCM_JHY_SAMPLE_CONSIGN_D t "
+						  +" where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'  "
+						   +" and t.smp_type_code = '0' and t.status = '3' "
+						   +" and t.freq_code <> 'D' and CHEM_ITEM is null "
+						   +" and substr(t.PROCESS_NOS,0,1)='"+pno1+"' "
+			               +" and substr(t.PROCESS_NOS,4,1)='"+pno2+"' "
+			               +" and substr(t.PROCESS_NOS,5,1)='"+pno3+"' "
+						   +" and rownum <= 1 order by t.send_time asc ) t where t.nums != 0";
+				 result=null;
+				 result = mapper.queryOne(sql.toString());
+			}
+			
+			if (result != null && result.size()>=1) {
+				//判断厚度是否大于引用的厚度
+				sql ="";
+				sql = "select To_Number(t.thick) thick from Qcm_Jhy_Sample_r_Ord t where t.SMP_NO = '"+result.get("SMP_NO")+"' and rownum <= 1 ";
+				List<HashMap> OrdLists=mapper.query(sql.toString());
+				if(OrdLists!=null && OrdLists.size()>=1 && !StringUtils.isBlank(OrdLists.get(0).get("THICK").toString())){
+					String hmap2 = OrdLists.get(0).get("THICK").toString();
+					double thick1 = Double.parseDouble(hmap2);
+					String thick = parmas.get("THICK").toString();
+					double thick2 = Double.parseDouble(thick);
+					if(thick2>thick1){
+						String str =thick2+">"+thick1;
+						//修改D表
+						sql = "";
+						sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.ONEMEMO = '19订单委托厚度大于引用厚度不可引用:'||'"+str+"' ,t.ARTIFICIAL_MEMO='0' "
+								+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+										+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+						mapper.updateJudgeStatus(sql.toString());
+						SqlSession.commit();
+						SqlSession.close();
+						return "厚度大于引用厚度不能引用";//被引用不能大于引用
+					}
+					if((thick1-thick2)>=3){
+						String str =thick2+"<"+thick1;
+						sql = "";
+						sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.ONEMEMO = '19订单委托厚度小于引用厚度不可超过2mm,超过2mm不可引用:'||'"+str+"' ,t.ARTIFICIAL_MEMO='0' "
+								+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+										+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+						mapper.updateJudgeStatus(sql.toString());
+						SqlSession.commit();
+						SqlSession.close();
+						return "只能引用大2mm厚度";//引用-被引用不能大于等于3  小2mm
+					}
+				}
+
+				//查询被引用的所有明细
+				sql ="";
+				sql = "select t.* from QCM_JHY_SAMPLE_CONSIGN_D_ITEM t where t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' ";
+				List<HashMap> qltyLists=mapper.query(sql.toString());
+				
+				//查询引用的所有明细
+				sql ="";
+				sql = "select t.* from QCM_JHY_INSP_PHYSICS t where t.specimen_no = '"+result.get("SPECIMEN_NO")+"' "
+					+ " and t.quote_specimen_no is null and t.val1 is not null and t.create_name <>'现场默认' ";
+				List<HashMap> qltyLists2=mapper.query(sql.toString());
+				
+				Integer bQuote = qltyLists.size();//被引用
+				Integer yQuote = qltyLists2.size();//引用
+	
+				int quotenum = 0;//已引用数据
+				String hbB01 ="";//弯曲
+				//被引用
+					for (int i = 0; i < qltyLists.size(); i++) {//被引用在外层循环 对比 引用中有没有相应的项目有 插入
+						//System.out.println("======="+qltyLists.get(i).get("PHY_CODE_S"));
+						if("B01".equals((String) qltyLists.get(i).get("PHY_CODE_S"))){
+							hbB01 ="0";
+						}else{
+							hbB01 ="";
+						}
+						//代码
+						String phyCodeL = (String) qltyLists.get(i).get("PHY_CODE_L");//材质检验大项代码
+						String phyCodeM = (String) qltyLists.get(i).get("PHY_CODE_M");//试样组代码
+						String phyCodeS = (String) qltyLists.get(i).get("PHY_CODE_S");//材质检验项目代码
+						String itemCodeD = (String) qltyLists.get(i).get("ITEM_CODE_D");//试验方向代码
+						String itemCodeT = (String) qltyLists.get(i).get("ITEM_CODE_T");//试验温度代码 试验温度代码  冲击 被引用
+						String itemCodeS = (String) qltyLists.get(i).get("ITEM_CODE_S");//试样尺寸代码
+						//名称
+						String phyNameL = (String) qltyLists.get(i).get("PHY_NAME_L");//材质检验大项代码
+						String phyNameM = (String) qltyLists.get(i).get("PHY_NAME_M");//试样组代码
+						String phyNameS = (String) qltyLists.get(i).get("PHY_NAME_S");//材质检验项目代码
+						String itemNameD = (String) qltyLists.get(i).get("ITEM_NAME_D");//试验方向代码
+						String itemNameT = (String) qltyLists.get(i).get("ITEM_NAME_T");//试验温度代码 试验温度代码  冲击 被引用
+						String itemNameS = (String) qltyLists.get(i).get("ITEM_NAME_S");//试样尺寸代码
+						
+						String itemCodeL = (String) qltyLists.get(i).get("ITEM_CODE_L");//试验位置代码
+						String itemDescL = (String) qltyLists.get(i).get("ITEM_DESC_L");
+						BigDecimal seq = (BigDecimal) qltyLists.get(i).get("SEQ");
+						String bigdjs = seq.toString();
+						Integer bigd4 = Integer.parseInt(bigdjs);
+			
+						String newItem=phyCodeL+"-"+phyCodeM+"-"+phyCodeS;
+						newItem=newItem+"-"+(itemCodeD!=null?itemCodeD:"null");
+						newItem=newItem+"-"+(itemCodeT!=null?itemCodeT:"null");
+						newItem=newItem+"-"+(itemCodeS!=null?itemCodeS:"null");
+						
+				    //引用
+					for (HashMap hashMap : qltyLists2) {
+						
+						//代码
+						String phyCodeL2 = (String) hashMap.get("PHY_CODE_L");//材质检验大项代码
+						String phyCodeM2 = (String) hashMap.get("PHY_CODE_M");//试样组代码
+						String phyCodeS2 = (String) hashMap.get("PHY_CODE_S");//材质检验项目代码
+						String itemCodeD2 = (String) hashMap.get("ITEM_CODE_D");//试验方向代码
+						String itemCodeT2 = (String) hashMap.get("ITEM_CODE_T");//试验温度代码 试验温度代码  冲击 被引用
+						String itemCodeS2 = (String) hashMap.get("ITEM_CODE_S");//试样尺寸代码
+						
+						String newItem2=phyCodeL2+"-"+phyCodeM2+"-"+phyCodeS2;
+						newItem2=newItem2+"-"+(itemCodeD2!=null?itemCodeD2:"null");
+						newItem2=newItem2+"-"+(itemCodeT2!=null?itemCodeT2:"null");
+						newItem2=newItem2+"-"+(itemCodeS2!=null?itemCodeS2:"null");
+						
+						//判断是否是冲击试验
+						if(phyCodeS.equals("C01") || phyCodeS.equals("C02")){
+							if(phyCodeS.equals(phyCodeS2)){
+								double co1t = Double.valueOf(itemCodeT);
+								double co2t = Double.valueOf(itemCodeT2);
+								//Integer co1t= Integer.parseInt(itemCodeT);//被引用
+								//Integer co2t= Integer.parseInt(itemCodeT2);//引用
+								if(co1t >= co2t){
+									sql = "";
+									sql = " insert into QCM_JHY_INSP_PHYSICS "
+							+" (SPECIMEN_NO,SEQ,TEST_QTY,PHY_CODE_L,PHY_NAME_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S,ITEM_CODE_D,ITEM_NAME_D, "
+							+" ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+							+" VAL13,VAL14,VAL15,AVG_VAL,CREATE_NAME,CREATE_TIME,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,ITEM_CODE_L,ITEM_DESC_L, "
+							+" PHY_UNIT,MEMO) "
+							+" select '"+parmas.get("SPECIMEN_NO")+"','"+bigd4+"',TEST_QTY,'"+phyCodeL+"','"+phyNameL+"','"+phyCodeM+"','"+phyNameM+"','"+phyCodeS+"','"+phyNameS+"','"+itemCodeD+"','"+itemNameD+"', "
+							+"  '"+itemCodeT+"','"+itemNameT+"','"+itemCodeS+"','"+itemNameS+"',VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+							+"  VAL13,VAL14,VAL15,AVG_VAL,'"+parmas.get("CREATE_NAME")+"',sysdate,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,'"+itemCodeL+"','"+itemDescL+"', "
+							+" PHY_UNIT,MEMO from QCM_JHY_INSP_PHYSICS t "
+							+ " where t.specimen_no = '"+(String)hashMap.get("SPECIMEN_NO")+"' "
+							+ "and t.seq = '"+hashMap.get("SEQ")+"'  ";
+									mapper.insert(sql);
+									
+									//修改ITEM表
+									sql = "";
+									sql =" update QCM_JHY_SAMPLE_CONSIGN_D_ITEM t set t.QUOTE_MEMO = '已引用"+result.get("SPECIMEN_NO")+"' "
+											+ " where t.SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"' and t.seq = '"+seq+"' ";
+									mapper.updateJudgeStatus(sql.toString());
+									quotenum++;
+									break;
+								}
+							}
+							
+						}else{//其它试验
+						
+						//标准一样的引用
+						if(newItem.equals(newItem2)){
+							
+							sql = "";
+							sql = " insert into QCM_JHY_INSP_PHYSICS "
+					+" (SPECIMEN_NO,SEQ,TEST_QTY,PHY_CODE_L,PHY_NAME_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S,ITEM_CODE_D,ITEM_NAME_D, "
+					+" ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+					+" VAL13,VAL14,VAL15,AVG_VAL,CREATE_NAME,CREATE_TIME,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,ITEM_CODE_L,ITEM_DESC_L, "
+					+" PHY_UNIT,MEMO) "
+					+" select '"+parmas.get("SPECIMEN_NO")+"','"+bigd4+"',TEST_QTY,'"+phyCodeL+"','"+phyNameL+"','"+phyCodeM+"','"+phyNameM+"','"+phyCodeS+"','"+phyNameS+"','"+itemCodeD+"','"+itemNameD+"', "
+					+"  '"+itemCodeT+"','"+itemNameT+"','"+itemCodeS+"','"+itemNameS+"',VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+					+"  VAL13,VAL14,VAL15,AVG_VAL,'"+parmas.get("CREATE_NAME")+"',sysdate,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,'"+itemCodeL+"','"+itemDescL+"', "
+					+" PHY_UNIT,MEMO from QCM_JHY_INSP_PHYSICS t "
+					+ " where t.specimen_no = '"+(String)hashMap.get("SPECIMEN_NO")+"' "
+					+ "and t.seq = '"+hashMap.get("SEQ")+"'  ";
+						mapper.insert(sql);
+						
+						//修改ITEM表
+						sql = "";
+						sql =" update QCM_JHY_SAMPLE_CONSIGN_D_ITEM t set t.QUOTE_MEMO = '已引用"+result.get("SPECIMEN_NO")+"' "
+								+ " where t.SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"' and t.seq = '"+seq+"' ";
+						mapper.updateJudgeStatus(sql.toString());
+						quotenum++;
+						if("B01".equals(phyCodeS2) && "B01".equals((String) qltyLists.get(i).get("PHY_CODE_S"))){
+							hbB01="1";
+						}
+						break;
+							}
+			          }
+						
+				}
+					
+					if("B01".equals((String) qltyLists.get(i).get("PHY_CODE_S"))&& !"".equals(hbB01) && hbB01.equals("0")){
+						sql="";
+						sql="insert into QCM_JHY_INSP_PHYSICS "
+				            +" (SPECIMEN_NO,SEQ,TEST_QTY,PHY_CODE_L,PHY_NAME_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S,ITEM_CODE_D,ITEM_NAME_D,  "
+				            +"   ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,VAL1,AVG_VAL,CREATE_NAME,CREATE_TIME,DEFECT_FLAG,MAX_VAL, "
+				            +"   MIN_VAL,ITEM_CODE_L,ITEM_DESC_L,PHY_UNIT,MEMO) "
+							+"	select t.specimen_no,t.seq,t.test_qty,t.phy_code_l,t.phy_name_l,t.phy_code_m,t.phy_name_m,t.phy_code_s,t.phy_name_s,t.item_code_d,t.item_name_d, "
+							+"	       t.item_code_t,t.item_name_t,t.item_code_s,t.item_name_s,'合格','合格','"+parmas.get("CREATE_NAME")+"',sysdate,'0','合格','合格',t.item_code_l,t.item_desc_l, "
+							+"	       t.phy_unit,'默认合格' "
+							+"	 from qcm_jhy_sample_consign_d_item t "
+							+"	 where t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' "
+							+"	 and t.phy_code_s = 'B01' ";
+						mapper.insert(sql);
+						
+						//修改ITEM表
+						sql = "";
+						sql =" update QCM_JHY_SAMPLE_CONSIGN_D_ITEM t set t.QUOTE_MEMO = '默认合格' "
+								+ " where t.SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"' and t.phy_code_s = 'B01' ";
+						mapper.updateJudgeStatus(sql.toString());
+						quotenum++;
+					}
+					
+					//申报:郭明清 主题:非计划船板改普板,冷弯需要系统默认合格  申报时间:2023-04-27 16:49:59
+					//原牌号为船板  BV/IC003法国船级社,KR/IC004韩国船级社,DNV/IC001挪威船级社,CCS/IC010中国船级社 、ABS/IC005美国船级社、LR/IC009 英国船级社、NK/KA36/IC006 日本船级社、RINA/IC007 意大利船级社 、RS/IC002 俄罗斯  IC012 客户认证
+					//改成普锰板(Q235A/B、Q345A/B、Q355B)
+					//被引用是原牌号船板  引用是改判 普锰板
+					//弯曲 默认合格 
+				/*	if("B01".equals((String) qltyLists.get(i).get("PHY_CODE_S"))&& !"".equals(hbB01) && hbB01.equals("0")){
+						sql="";
+						sql="select d.* from qcm_jhy_sample_consign_d d,qcm_jhy_sample_r_ord r "
+							+"	where d.smp_no = r.smp_no and r.steel_code in ('Q235A','Q235B','Q345A','Q345B','Q355B') "
+							+"	and d.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' ";
+						List<HashMap> hashMap=mapper.query(sql.toString());
+						if(hashMap!=null && hashMap.size()>=1){
+							sql="";
+							sql="select r.* from qcm_jhy_sample_consign_d d,qcm_jhy_sample_r_ord r "
+								+"	where d.smp_no = r.smp_no and r.cert_inst_code in ('IC005','IC009','IC006','IC007','IC002','IC003','IC004','IC001','IC010') "
+								+"	and d.specimen_no = '"+result.get("SPECIMEN_NO")+"' ";
+							List<HashMap> hashMap2=mapper.query(sql.toString());
+							
+							//船板没有弯曲
+							sql="";
+							sql="select * from qcm_jhy_sample_consign_d_item  where specimen_no = '"+result.get("SPECIMEN_NO")+"' and phy_code_s='B01' ";
+							List<HashMap> hashMap3=mapper.query(sql.toString());
+							if(hashMap2!=null && hashMap2.size()>=1 && hashMap3.size()<=0 ){
+								sql="";
+								sql="insert into QCM_JHY_INSP_PHYSICS "
+						            +" (SPECIMEN_NO,SEQ,TEST_QTY,PHY_CODE_L,PHY_NAME_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S,ITEM_CODE_D,ITEM_NAME_D,  "
+						            +"   ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,VAL1,AVG_VAL,CREATE_NAME,CREATE_TIME,DEFECT_FLAG,MAX_VAL, "
+						            +"   MIN_VAL,ITEM_CODE_L,ITEM_DESC_L,PHY_UNIT,MEMO) "
+									+"	select t.specimen_no,t.seq,t.test_qty,t.phy_code_l,t.phy_name_l,t.phy_code_m,t.phy_name_m,t.phy_code_s,t.phy_name_s,t.item_code_d,t.item_name_d, "
+									+"	       t.item_code_t,t.item_name_t,t.item_code_s,t.item_name_s,'合格','合格','"+parmas.get("CREATE_NAME")+"',sysdate,'0','合格','合格',t.item_code_l,t.item_desc_l, "
+									+"	       t.phy_unit,'默认合格' "
+									+"	 from qcm_jhy_sample_consign_d_item t "
+									+"	 where t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' "
+									+"	 and t.phy_code_s = 'B01' ";
+								mapper.insert(sql);
+								
+								//修改ITEM表
+								sql = "";
+								sql =" update QCM_JHY_SAMPLE_CONSIGN_D_ITEM t set t.QUOTE_MEMO = '默认合格' "
+										+ " where t.SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"' and t.phy_code_s = 'B01' ";
+								mapper.updateJudgeStatus(sql.toString());
+								quotenum++;
+							}
+						}
+					}*/
+		    }
+					//19HJGP 不自动下发
+					sql="";
+					sql="select r.* from qcm_jhy_sample_consign_d t,qcm_jhy_sample_r_ord r "
+					 + " where t.smp_no = r.smp_no and t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"'  and r.design_key like '19HJGP%' and rownum=1 ";
+					HashMap resultHJGP = mapper.queryOne(sql.toString());
+					if(resultHJGP!=null && resultHJGP.size()>=1){
+						if(quotenum == qltyLists.size()){
+							//修改D表
+							sql = "";
+							sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.STATUS = '3',t.SEND_ID = '"+parmas.get("SEND_ID")+"',"
+									+ " t.SEND_NAME = '"+parmas.get("CREATE_NAME")+"',t.SEND_TIME = sysdate,t.SEND_MEMO = '有引用',t.QUOTE_MEMO = '引用实绩' "
+									+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+											+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+							mapper.updateJudgeStatus(sql.toString());
+							
+							//往log表中插入p
+							sql = "";
+							sql = " INSERT INTO QCM_JUDGE_LOG ( JUDGE_TYPE,MATERIAL_NO,CREATE_TIME,CREATE_NAME,PROD_LINE) "
+					    		+" VALUES ( 'P', '"+parmas.get("SMP_NO")+"', SYSDATE,'system','"+parmas.get("PLINE_CODE")+"')";
+							mapper.insert(sql);
+							retnum = "1";
+						}else if(quotenum==0){
+							sql = "";
+							sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.ONEMEMO = '未找到一项可以引用的项目,订单标准全部不一样' ,t.ARTIFICIAL_MEMO='0' "
+									+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+											+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+							mapper.updateJudgeStatus(sql.toString());
+						}else{
+							//修改D表
+							sql = "";
+							sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.SEND_MEMO = '有引用',t.QUOTE_MEMO = '引用实绩', t.ARTIFICIAL_MEMO='0', "
+									+ " t.ONEMEMO ='需下发委托' "
+									+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+											+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+							mapper.updateJudgeStatus(sql.toString());
+						}
+					}else{
+						//被引用的项目  全部  已引用
+						if(quotenum!=0){
+							//修改D表
+							sql = "";
+							sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.STATUS = '3',t.SEND_ID = '"+parmas.get("SEND_ID")+"',"
+									+ " t.SEND_NAME = '"+parmas.get("CREATE_NAME")+"',t.SEND_TIME = sysdate,t.SEND_MEMO = '有引用',t.QUOTE_MEMO = '引用实绩' "
+									+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+											+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+							mapper.updateJudgeStatus(sql.toString());
+							
+							//往log表中插入p
+							sql = "";
+							sql = " INSERT INTO QCM_JUDGE_LOG ( JUDGE_TYPE,MATERIAL_NO,CREATE_TIME,CREATE_NAME,PROD_LINE) "
+					    		+" VALUES ( 'P', '"+parmas.get("SMP_NO")+"', SYSDATE,'system','"+parmas.get("PLINE_CODE")+"')";
+							mapper.insert(sql);
+							retnum = "1";
+						}else if(quotenum==0){
+							sql = "";
+							sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.ONEMEMO = '未找到一项可以引用的项目,订单标准全部不一样' ,t.ARTIFICIAL_MEMO='0' "
+									+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+											+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+							mapper.updateJudgeStatus(sql.toString());
+						}
+					}
+			}else{
+				sql="";
+				 sql = "select * from (select * from ("
+					 		+ " select (select count(1) from qcm_jhy_sample_consign_d_item i where i.specimen_no = t.specimen_no) nums,t.* "
+					 		+ " from QCM_JHY_SAMPLE_CONSIGN_D t,qcm_jhy_sample_r_ord r "
+							  +" where t.smp_no = r.smp_no and t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'  "
+							   +" and t.smp_type_code = '0' and t.status in('0','2','7') "
+							   +" and t.freq_code <> 'D' and t.CHEM_ITEM is null and to_char(r.thick, 'fm990.099') = to_char('"+parmas.get("THICK")+"', 'fm990.099') "
+							   +" and r.DESIGN_KEY not like '19%' "
+							   +" and substr(t.PROCESS_NOS,0,1)='"+pno1+"' "
+				               +" and substr(t.PROCESS_NOS,4,1)='"+pno2+"' "
+				               +" and substr(t.PROCESS_NOS,5,1)='"+pno3+"' "
+							   +") t order by t.nums desc) t where rownum=1 ";
+				 result=null;
+				 result = mapper.queryOne(sql.toString());
+				
+				if(result==null || result.size()<=0){
+					 sql = "select t.* from QCM_JHY_SAMPLE_CONSIGN_D t,qcm_jhy_sample_r_ord r "
+							  +" where t.smp_no = r.smp_no and t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'  "
+							   +" and t.smp_type_code = '0' and t.status in('0','2','7')  "
+							   +" and t.freq_code <> 'D' and r.DESIGN_KEY not like '19%' and CHEM_ITEM is null "
+							   +" and substr(t.PROCESS_NOS,0,1)='"+pno1+"' "
+				               +" and substr(t.PROCESS_NOS,4,1)='"+pno2+"' "
+				               +" and substr(t.PROCESS_NOS,5,1)='"+pno3+"' "
+							   +" and rownum <= 1 order by t.send_time asc ";
+					 result=null;
+					 result = mapper.queryOne(sql.toString());
+				}
+		
+				if (result != null && result.size()>=1) {
+					sql = "";
+					sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.ONEMEMO = '力学性能实绩未返回或未下发委托,请等实绩返回人工引用' ,t.ARTIFICIAL_MEMO='1' "
+							+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+									+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+					mapper.updateJudgeStatus(sql.toString());
+				}else{
+				//修改D表
+				sql = "";
+				sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.ONEMEMO = '没有找到相应力学性能委托' ,t.ARTIFICIAL_MEMO='0' "
+						+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+								+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+				mapper.updateJudgeStatus(sql.toString());
+				}
+			}
+
+		} catch (Exception e) {
+			SqlSession.rollback();
+			SqlSession.close();
+		}
+		SqlSession.commit();
+		SqlSession.close();
+		return retnum;
+	}
+	
+	/**
+	 * 复样引用
+	 * @param materialInfo
+	 * @return
+	 * @throws Exception
+	 */
+	public String DoQuoteBatchNoFy(HashMap parmas) throws Exception {
+		String retnum = "0";
+		try {
+			String StrSpecimenNO="";
+			TreeSet<String> treeSet = new TreeSet<String>();//取样编号
+			String fysql=" select t.* from QCM_JHY_SAMPLE_CONSIGN_D t where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"' "
+					+ " and t.smp_type_code = '1' and t.status = '3' and nvl(t.QUOTE_MEMO, 'null') <> '引用实绩' and t.freq_code <> 'D' and t.CHEM_ITEM is null ";
+			List<HashMap> hmfy=mapper.query(fysql.toString());
+			if(hmfy!=null && hmfy.size()>=1){
+				for (HashMap hashMap : hmfy) {
+					fysql="";
+					fysql="select * from qcm_jhy_sample_consign_d_item t where t.quote_memo like '%"+hashMap.get("SPECIMEN_NO")+"'";
+					List<HashMap> hmfy2=mapper.query(fysql.toString());
+					if(hmfy2==null || hmfy2.size()<=0){
+						treeSet.add((String)hashMap.get("SPECIMEN_NO"));
+					}
+				}
+			}
+			
+			String sql="";
+			if(treeSet.size()>=1){
+				sql="select * from qcm_jhy_sample_consign_d t where t.specimen_no = '"+treeSet.first()+"' and rownum=1";
+			}else{
+			 sql = "select * from (select * from (select (select count(1) from qcm_jhy_sample_consign_d_item i where i.specimen_no = t.specimen_no) nums, t.* "
+			 		+ " from QCM_JHY_SAMPLE_CONSIGN_D t "
+					  +" where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'  "
+					   +" and t.smp_type_code = '1' and t.status = '3' and nvl(t.QUOTE_MEMO ,'null') <> '引用实绩' "
+					   + "  and t.freq_code <> 'D' and t.CHEM_ITEM is null ) t order by t.nums desc) t where rownum=1 ";
+			}
+			HashMap result = mapper.queryOne(sql.toString());
+			if (result != null && result.size()>=1) {
+				
+				//查询引用的所有明细
+				sql ="";
+				sql = "select t.* from QCM_JHY_SAMPLE_CONSIGN_D_ITEM t where t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' and seq<=49 ";
+				List<HashMap> qltyLists=mapper.query(sql.toString());
+				
+				//查询被引用的所有明细
+				sql ="";
+				sql = "select t.* from QCM_JHY_INSP_PHYSICS t where t.specimen_no = '"+result.get("SPECIMEN_NO")+"' and t.quote_specimen_no is null and seq<=49 ";
+				List<HashMap> qltyLists2=mapper.query(sql.toString());
+				
+				Integer bQuote = qltyLists.size();//引用
+				Integer yQuote = qltyLists2.size();//被引用
+				int quotenum = 0;//已引用数据
+				//被引用
+					for (int i = 0; i < qltyLists.size(); i++) {//被引用在外层循环 对比 引用中有没有相应的项目有 插入
+						
+						//代码
+						String phyCodeL = (String) qltyLists.get(i).get("PHY_CODE_L");//材质检验大项代码
+						String phyCodeM = (String) qltyLists.get(i).get("PHY_CODE_M");//试样组代码
+						String phyCodeS = (String) qltyLists.get(i).get("PHY_CODE_S");//材质检验项目代码
+						String itemCodeD = (String) qltyLists.get(i).get("ITEM_CODE_D");//试验方向代码
+						String itemCodeT = (String) qltyLists.get(i).get("ITEM_CODE_T");//试验温度代码 试验温度代码  冲击 被引用
+						String itemCodeS = (String) qltyLists.get(i).get("ITEM_CODE_S");//试样尺寸代码
+						//名称
+						String phyNameL = (String) qltyLists.get(i).get("PHY_NAME_L");//材质检验大项代码
+						String phyNameM = (String) qltyLists.get(i).get("PHY_NAME_M");//试样组代码
+						String phyNameS = (String) qltyLists.get(i).get("PHY_NAME_S");//材质检验项目代码
+						String itemNameD = (String) qltyLists.get(i).get("ITEM_NAME_D");//试验方向代码
+						String itemNameT = (String) qltyLists.get(i).get("ITEM_NAME_T");//试验温度代码 试验温度代码  冲击 被引用
+						String itemNameS = (String) qltyLists.get(i).get("ITEM_NAME_S");//试样尺寸代码
+						
+						String itemCodeL = (String) qltyLists.get(i).get("ITEM_CODE_L");//试验位置代码
+						String itemDescL = (String) qltyLists.get(i).get("ITEM_DESC_L");
+						BigDecimal seq = (BigDecimal) qltyLists.get(i).get("SEQ");
+						String bigdjs = seq.toString();
+						Integer bigd4 = Integer.parseInt(bigdjs);
+			
+						String newItem=phyCodeL+"-"+phyCodeM+"-"+phyCodeS;
+						newItem=newItem+"-"+(itemCodeD!=null?itemCodeD:"null");
+						newItem=newItem+"-"+(itemCodeT!=null?itemCodeT:"null");
+						newItem=newItem+"-"+(itemCodeS!=null?itemCodeS:"null");
+						//newItem=newItem+"-"+(itemCodeL!=null?itemCodeL:"null");
+						
+				    //引用
+					for (HashMap hashMap : qltyLists2) {
+						
+						//代码
+						String phyCodeL2 = (String) hashMap.get("PHY_CODE_L");//材质检验大项代码
+						String phyCodeM2 = (String) hashMap.get("PHY_CODE_M");//试样组代码
+						String phyCodeS2 = (String) hashMap.get("PHY_CODE_S");//材质检验项目代码
+						String itemCodeD2 = (String) hashMap.get("ITEM_CODE_D");//试验方向代码
+						String itemCodeT2 = (String) hashMap.get("ITEM_CODE_T");//试验温度代码 试验温度代码  冲击 被引用
+						String itemCodeS2 = (String) hashMap.get("ITEM_CODE_S");//试样尺寸代码
+						String itemCodeL2 = (String) hashMap.get("ITEM_CODE_L");//试验位置代码
+						
+						String newItem2=phyCodeL2+"-"+phyCodeM2+"-"+phyCodeS2;
+						newItem2=newItem2+"-"+(itemCodeD2!=null?itemCodeD2:"null");
+						newItem2=newItem2+"-"+(itemCodeT2!=null?itemCodeT2:"null");
+						newItem2=newItem2+"-"+(itemCodeS2!=null?itemCodeS2:"null");
+						//newItem2=newItem2+"-"+(itemCodeL2!=null?itemCodeL2:"null");
+						
+						//判断是否是冲击试验
+						if(phyCodeS.equals("C01") || phyCodeS.equals("C02")){
+							if(phyCodeS.equals(phyCodeS2)){
+								Integer co1t= Integer.parseInt(itemCodeT);//被引用
+								Integer co2t= Integer.parseInt(itemCodeT2);//引用
+								if(co1t >= co2t){
+									sql = "";
+									sql = " insert into QCM_JHY_INSP_PHYSICS "
+							+" (SPECIMEN_NO,SEQ,TEST_QTY,PHY_CODE_L,PHY_NAME_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S,ITEM_CODE_D,ITEM_NAME_D, "
+							+" ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+							+" VAL13,VAL14,VAL15,AVG_VAL,CREATE_NAME,CREATE_TIME,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,ITEM_CODE_L,ITEM_DESC_L, "
+							+" PHY_UNIT,MEMO) "
+							+" select '"+parmas.get("SPECIMEN_NO")+"','"+bigd4+"',TEST_QTY,'"+phyCodeL+"','"+phyNameL+"','"+phyCodeM+"','"+phyNameM+"','"+phyCodeS+"','"+phyNameS+"','"+itemCodeD+"','"+itemNameD+"', "
+							+"  '"+itemCodeT+"','"+itemNameT+"','"+itemCodeS+"','"+itemNameS+"',VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+							+"  VAL13,VAL14,VAL15,AVG_VAL,'"+parmas.get("CREATE_NAME")+"',sysdate,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,'"+itemCodeL+"','"+itemDescL+"', "
+							+" PHY_UNIT,MEMO from QCM_JHY_INSP_PHYSICS t "
+							+ " where t.specimen_no = '"+(String)hashMap.get("SPECIMEN_NO")+"' "
+							+ "and t.seq = '"+hashMap.get("SEQ")+"'  ";
+									mapper.insert(sql);
+									
+									//修改ITEM表
+									sql = "";
+									sql =" update QCM_JHY_SAMPLE_CONSIGN_D_ITEM t set t.QUOTE_MEMO = '已引用"+result.get("SPECIMEN_NO")+"' "
+											+ " where t.SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"' and t.seq = '"+seq+"' ";
+									mapper.updateJudgeStatus(sql.toString());
+									quotenum++;
+									break;
+								}
+							}
+							
+						}else{//其它试验
+						
+						//标准一样的引用
+						if(newItem.equals(newItem2)){
+							
+							sql = "";
+							sql = " insert into QCM_JHY_INSP_PHYSICS "
+					+" (SPECIMEN_NO,SEQ,TEST_QTY,PHY_CODE_L,PHY_NAME_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S,ITEM_CODE_D,ITEM_NAME_D, "
+					+" ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+					+" VAL13,VAL14,VAL15,AVG_VAL,CREATE_NAME,CREATE_TIME,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,ITEM_CODE_L,ITEM_DESC_L, "
+					+" PHY_UNIT,MEMO) "
+					+" select '"+parmas.get("SPECIMEN_NO")+"','"+bigd4+"',TEST_QTY,'"+phyCodeL+"','"+phyNameL+"','"+phyCodeM+"','"+phyNameM+"','"+phyCodeS+"','"+phyNameS+"','"+itemCodeD+"','"+itemNameD+"', "
+					+"  '"+itemCodeT+"','"+itemNameT+"','"+itemCodeS+"','"+itemNameS+"',VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+					+"  VAL13,VAL14,VAL15,AVG_VAL,'"+parmas.get("CREATE_NAME")+"',sysdate,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,'"+itemCodeL+"','"+itemDescL+"', "
+					+" PHY_UNIT,MEMO from QCM_JHY_INSP_PHYSICS t "
+					+ " where t.specimen_no = '"+(String)hashMap.get("SPECIMEN_NO")+"' "
+					+ "and t.seq = '"+hashMap.get("SEQ")+"'  ";
+						mapper.insert(sql);
+						
+						//修改ITEM表
+						sql = "";
+						sql =" update QCM_JHY_SAMPLE_CONSIGN_D_ITEM t set t.QUOTE_MEMO = '已引用"+result.get("SPECIMEN_NO")+"' "
+								+ " where t.SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"' and t.seq = '"+seq+"' ";
+						mapper.updateJudgeStatus(sql.toString());
+						quotenum++;
+						break;
+							}
+						
+			}
+						
+				
+					
+						
+					
+						
+				}
+		    }
+					//被引用的项目  全部  已引用
+					if(quotenum == qltyLists.size()){
+						//修改D表
+						sql = "";
+						sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.STATUS = '3',t.SEND_ID = '"+parmas.get("SEND_ID")+"',"
+								+ " t.SEND_NAME = '"+parmas.get("CREATE_NAME")+"',t.SEND_TIME = sysdate,t.SEND_MEMO = '有引用',t.QUOTE_MEMO = '引用实绩' "
+								+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+										+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+						mapper.updateJudgeStatus(sql.toString());
+						
+						//往log表中插入p
+						sql = "";
+						sql = " INSERT INTO QCM_JUDGE_LOG ( JUDGE_TYPE,MATERIAL_NO,CREATE_TIME,CREATE_NAME,PROD_LINE) "
+				    		+" VALUES ( 'Q', '"+parmas.get("SMP_NO")+"', SYSDATE,'system','"+parmas.get("PLINE_CODE")+"')";
+						mapper.insert(sql);
+						retnum="1";
+					}else{
+						//修改D表
+						sql = "";
+						sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.SEND_MEMO = '有引用',t.QUOTE_MEMO = '引用实绩' "
+								+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+										+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+						mapper.updateJudgeStatus(sql.toString());
+					}
+			
+				
+				
+			}else{
+				SqlSession.close();
+				return "该轧批未返回实绩或没有引用的对象!请在委托记录中核实相应委托数据";
+			}
+
+		} catch (Exception e) {
+			SqlSession.rollback();
+			SqlSession.close();
+			return "引用失败!";
+		}
+		SqlSession.commit();
+		
+		doPhyItem(parmas.get("SPECIMEN_NO").toString());
+		
+		SqlSession.close();
+		return retnum;
+	}
+	
+	/**
+	 * 39 49 59订单自动引用  不同订单 同轧批号  项目一样引用
+	 * @param materialInfo
+	 * @return
+	 * @throws Exception
+	 */
+	public void DoQuoteRZLT(HashMap parmas) throws Exception {
+		 SqlSession = QCM.COMMUNAL.SqlSessionBuilder.openSqlSession();
+		 mapper = SqlSession.getMapper(QCM.COMMUNAL.OrderSqMapper.class);
+		try {
+			if(parmas.get("CREATE_NAME").equals("调试人员")){
+				parmas.put("SEND_ID", "系统自动");
+				parmas.put("CREATE_NAME", "系统自动");
+			}
+			//and t.freq_code <> 'D'
+			String sql ="";
+			 sql = "select * from (select * from ("
+				 		+ " select (select count(1) from qcm_jhy_sample_consign_d_item i where i.specimen_no = t.specimen_no) nums,t.* "
+				 		+ " from QCM_JHY_SAMPLE_CONSIGN_D t,qcm_jhy_sample_r_ord r "
+						  +" where t.smp_no = r.smp_no and t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'  "
+						   +" and t.smp_type_code = '0' and t.status = '3' and nvl(t.QUOTE_MEMO ,'null') <> '引用实绩' "
+						   + " and t.CHEM_ITEM is null and to_char(r.thick, 'fm990.099') = to_char('"+parmas.get("THICK")+"', 'fm990.099') "
+						   + " and r.DESIGN_KEY not like '39%' and r.DESIGN_KEY not like '49%' and r.DESIGN_KEY not like '59%' "
+						   + " ) t order by t.nums desc) t where rownum=1 ";
+			HashMap result = mapper.queryOne(sql.toString());
+			//and t.freq_code <> 'D'
+			if(result==null || result.size()<=0){
+				 sql = "select t.* from QCM_JHY_SAMPLE_CONSIGN_D t "
+						  +" where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'  "
+						   +" and t.smp_type_code = '0' and t.status = '3' and nvl(t.QUOTE_MEMO ,'null') <> '引用实绩' "
+						   + "   and CHEM_ITEM is null and rownum <= 1 order by t.send_time asc ";
+				 result=null;
+				 result = mapper.queryOne(sql.toString());
+			}
+	
+			if (result != null && result.size()>=1) {
+
+				//查询引用的所有明细是不是只有拉伸   横向可以替代纵向
+				//当卷板存在横向试验时,且只有一组拉伸试样时,改判后需要纵向实验数据,可以直接用横向替代纵向。
+				//热轧:改判,只有一组拉伸试样时并且方向是(纵向)时,横向可以替代纵向,直接把横向的值引用到纵向上
+				//连退:改判,只有一组拉伸试样时并且方向是(纵向)时,横向可以替代纵向,直接把横向的值引用到纵向上,但是断后伸长率(横向A50 套纵向A50 )、(横向A80 套纵向A80 )
+				//连退改判:断后伸长率:A50转成A80需要将A50的值乘以0.829; A80转成A50需要乘以1.207
+				//主题:卷板改判规则维护01 申报人员:夏鹏   申报时间:2023-05-04 15:19:01
+				String HAStr="";
+				sql ="";
+				sql = "select t.* from QCM_JHY_SAMPLE_CONSIGN_D_ITEM t where t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' and t.PHY_CODE_L <>'HA' ";
+				List<HashMap> qltyListsHA=mapper.query(sql.toString());
+				if(qltyListsHA==null || qltyListsHA.size()<=0){
+					HAStr="HA";//只有拉伸
+				}
+				//查询引用的所有明细
+				sql ="";
+				sql = "select t.* from QCM_JHY_SAMPLE_CONSIGN_D_ITEM t where t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' ";
+				List<HashMap> qltyLists=mapper.query(sql.toString());
+				
+				//查询被引用的所有明细
+				sql ="";
+				sql = "select t.* from QCM_JHY_INSP_PHYSICS t where t.specimen_no = '"+result.get("SPECIMEN_NO")+"' and t.quote_specimen_no is null and t.VAL1 is not null ";
+				List<HashMap> qltyLists2=mapper.query(sql.toString());
+				
+				Integer bQuote = qltyLists.size();//引用
+				Integer yQuote = qltyLists2.size();//被引用
+	
+				int quotenum = 0;//已引用数据
+				//引用
+					for (int i = 0; i < qltyLists.size(); i++) {//被引用在外层循环 对比 引用中有没有相应的项目有 插入
+						
+						//代码
+						String phyCodeL = (String) qltyLists.get(i).get("PHY_CODE_L");//材质检验大项代码
+						String phyCodeM = (String) qltyLists.get(i).get("PHY_CODE_M");//试样组代码
+						String phyCodeS = (String) qltyLists.get(i).get("PHY_CODE_S");//材质检验项目代码
+						String itemCodeD = (String) qltyLists.get(i).get("ITEM_CODE_D");//试验方向代码
+						String itemCodeT = (String) qltyLists.get(i).get("ITEM_CODE_T");//试验温度代码 试验温度代码  冲击 被引用
+						String itemCodeS = (String) qltyLists.get(i).get("ITEM_CODE_S");//试样尺寸代码
+						//名称
+						String phyNameL = (String) qltyLists.get(i).get("PHY_NAME_L");//材质检验大项代码
+						String phyNameM = (String) qltyLists.get(i).get("PHY_NAME_M");//试样组代码
+						String phyNameS = (String) qltyLists.get(i).get("PHY_NAME_S");//材质检验项目代码
+						String itemNameD = (String) qltyLists.get(i).get("ITEM_NAME_D");//试验方向代码
+						String itemNameT = (String) qltyLists.get(i).get("ITEM_NAME_T");//试验温度代码 试验温度代码  冲击 被引用
+						String itemNameS = (String) qltyLists.get(i).get("ITEM_NAME_S");//试样尺寸代码
+						
+						String itemCodeL = (String) qltyLists.get(i).get("ITEM_CODE_L");//试验位置代码
+						String itemDescL = (String) qltyLists.get(i).get("ITEM_DESC_L");
+						BigDecimal seq = (BigDecimal) qltyLists.get(i).get("SEQ");
+						String bigdjs = seq.toString();
+						Integer bigd4 = Integer.parseInt(bigdjs);
+			
+						//横向替代纵向  只有拉伸并且引用是纵向B 横向A  被引用不管是横向还是纵向都能把值给到引用上面
+						//连退改判:(断后伸长率)A50转成A80需要将A50的值乘以0.829; A80转成A50需要乘以1.207  
+						String EAFStr="";
+						String PhyUnit="";//值单位
+						if(!"".equals(HAStr) && HAStr.equals("HA") && itemCodeD.equals("B")){
+							itemCodeD="B";
+							//断后伸长率 && qltyLists.get(i).get("SPECIMEN_NO").toString().contains("LT1")
+							if(phyCodeS.equals("A06")){
+								 PhyUnit=(String) qltyLists.get(i).get("PHY_UNIT");
+							}
+						}else if(!"".equals(HAStr) && HAStr.equals("HA") && itemCodeD.equals("A") && phyCodeS.equals("A06")){
+								 PhyUnit=(String) qltyLists.get(i).get("PHY_UNIT");
+						}
+						
+						String newItem=phyCodeL+"-"+phyCodeM+"-"+phyCodeS;
+						if(phyCodeL.equals("HV") && qltyLists.get(i).get("SPECIMEN_NO").toString().contains("LT1")){
+							//连退 粗糙度 试验方向 不参于判断
+							newItem=newItem+"-"+"null";
+						}else{
+							newItem=newItem+"-"+(itemCodeD!=null?itemCodeD:"null");
+						}
+						newItem=newItem+"-"+(itemCodeT!=null?itemCodeT:"null");
+						newItem=newItem+"-"+(itemCodeS!=null?itemCodeS:"null");
+						
+						if(!"".equals(HAStr) && HAStr.equals("HA") && itemCodeD.equals("B")){
+							//断后伸长率 要加上值单位去判 && qltyLists.get(i).get("SPECIMEN_NO").toString().contains("LT1")
+							if(phyCodeS.equals("A06")){
+								newItem=newItem+"-"+(PhyUnit!=null?PhyUnit:"null");
+							}
+						}else if(!"".equals(HAStr) && HAStr.equals("HA") && itemCodeD.equals("A") && phyCodeS.equals("A06")){
+							   newItem=newItem+"-"+(PhyUnit!=null?PhyUnit:"null");
+					        }
+						
+				    //被引用
+					for (HashMap hashMap : qltyLists2) {
+						
+						//代码
+						String phyCodeL2 = (String) hashMap.get("PHY_CODE_L");//材质检验大项代码
+						String phyCodeM2 = (String) hashMap.get("PHY_CODE_M");//试样组代码
+						String phyCodeS2 = (String) hashMap.get("PHY_CODE_S");//材质检验项目代码
+						String itemCodeD2 = (String) hashMap.get("ITEM_CODE_D");//试验方向代码
+						String itemCodeT2 = (String) hashMap.get("ITEM_CODE_T");//试验温度代码 试验温度代码  冲击 被引用
+						String itemCodeS2 = (String) hashMap.get("ITEM_CODE_S");//试样尺寸代码
+						
+						String PhyUnit2="";
+						//横向替代纵向  只有拉伸并且引用是纵向B  被引用不管是横向还是纵向都能把值给到引用上面
+						if(!"".equals(HAStr) && HAStr.equals("HA") && itemCodeD.equals("B")){
+							itemCodeD2="B";//被引用 不管是横向还是纵向都能把值给到引用上
+							//断后伸长率 && hashMap.get("SPECIMEN_NO").toString().contains("LT1")
+							if(phyCodeS2.equals("A06")){
+								sql ="";
+								sql = "select t.* from QCM_JHY_SAMPLE_CONSIGN_D_ITEM t "
+										+ " where t.specimen_no = '"+hashMap.get("SPECIMEN_NO")+"' and t.PHY_CODE_S='A06' AND t.seq<=49 ";
+								List<HashMap> qltyListsA=mapper.query(sql.toString());
+								PhyUnit2=(String) qltyListsA.get(0).get("PHY_UNIT");
+							}
+						}else if(!"".equals(HAStr) && HAStr.equals("HA") && itemCodeD.equals("A") && phyCodeS.equals("A06") && itemCodeD2.equals("A") && phyCodeS2.equals("A06")){
+							sql ="";
+							sql = "select t.* from QCM_JHY_SAMPLE_CONSIGN_D_ITEM t "
+									+ " where t.specimen_no = '"+hashMap.get("SPECIMEN_NO")+"' and t.PHY_CODE_S='A06' AND t.seq<=49 ";
+							List<HashMap> qltyListsA=mapper.query(sql.toString());
+							PhyUnit2=(String) qltyListsA.get(0).get("PHY_UNIT");
+					     }
+						
+						String newItem2=phyCodeL2+"-"+phyCodeM2+"-"+phyCodeS2;
+						if(phyCodeL2.equals("HV") && hashMap.get("SPECIMEN_NO").toString().contains("LT1")){
+							//连退 粗糙度 试验方向 不参于判断
+						    newItem2=newItem2+"-"+"null";
+						}else{
+						newItem2=newItem2+"-"+(itemCodeD2!=null?itemCodeD2:"null");
+						}
+						newItem2=newItem2+"-"+(itemCodeT2!=null?itemCodeT2:"null");
+						newItem2=newItem2+"-"+(itemCodeS2!=null?itemCodeS2:"null");
+						
+						if(!"".equals(HAStr) && HAStr.equals("HA") && itemCodeD.equals("B")){
+							//断后伸长率 && hashMap.get("SPECIMEN_NO").toString().contains("LT1")
+							if(phyCodeS2.equals("A06")){
+								newItem2=newItem2+"-"+(PhyUnit2!=null?PhyUnit2:"null");
+							}
+						}else if(!"".equals(HAStr) && HAStr.equals("HA") && itemCodeD.equals("A") && phyCodeS.equals("A06") && itemCodeD2.equals("A") && phyCodeS2.equals("A06")){
+							   newItem2=newItem2+"-"+(PhyUnit2!=null?PhyUnit2:"null");
+						}
+						
+						//判断是否是冲击试验
+						if(phyCodeS.equals("C01") || phyCodeS.equals("C02")){
+							if(phyCodeS.equals(phyCodeS2)){
+								Integer co1t= Integer.parseInt(itemCodeT);//被引用
+								Integer co2t= Integer.parseInt(itemCodeT2);//引用
+								if(co1t >= co2t){
+									sql = "";
+									sql = " insert into QCM_JHY_INSP_PHYSICS "
+							+" (SPECIMEN_NO,SEQ,TEST_QTY,PHY_CODE_L,PHY_NAME_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S,ITEM_CODE_D,ITEM_NAME_D, "
+							+" ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+							+" VAL13,VAL14,VAL15,AVG_VAL,CREATE_NAME,CREATE_TIME,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,ITEM_CODE_L,ITEM_DESC_L, "
+							+" PHY_UNIT,MEMO) "
+							+" select '"+parmas.get("SPECIMEN_NO")+"','"+bigd4+"',TEST_QTY,'"+phyCodeL+"','"+phyNameL+"','"+phyCodeM+"','"+phyNameM+"','"+phyCodeS+"','"+phyNameS+"','"+itemCodeD+"','"+itemNameD+"', "
+							+"  '"+itemCodeT+"','"+itemNameT+"','"+itemCodeS+"','"+itemNameS+"',VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+							+"  VAL13,VAL14,VAL15,AVG_VAL,'"+parmas.get("CREATE_NAME")+"',sysdate,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,'"+itemCodeL+"','"+itemDescL+"', "
+							+" PHY_UNIT,MEMO from QCM_JHY_INSP_PHYSICS t "
+							+ " where t.specimen_no = '"+(String)hashMap.get("SPECIMEN_NO")+"' "
+							+ "and t.seq = '"+hashMap.get("SEQ")+"'  ";
+									mapper.insert(sql);
+									
+									//修改ITEM表
+									sql = "";
+									sql =" update QCM_JHY_SAMPLE_CONSIGN_D_ITEM t set t.QUOTE_MEMO = '已引用"+result.get("SPECIMEN_NO")+"' "
+											+ " where t.SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"' and t.seq = '"+seq+"' ";
+									mapper.updateJudgeStatus(sql.toString());
+									quotenum++;
+									break;
+								}
+							}
+							
+						}else{//其它试验
+						
+						//标准一样的引用
+						if(newItem.equals(newItem2)){
+							
+							sql = "";
+							sql = " insert into QCM_JHY_INSP_PHYSICS "
+					+" (SPECIMEN_NO,SEQ,TEST_QTY,PHY_CODE_L,PHY_NAME_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S,ITEM_CODE_D,ITEM_NAME_D, "
+					+" ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+					+" VAL13,VAL14,VAL15,AVG_VAL,CREATE_NAME,CREATE_TIME,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,ITEM_CODE_L,ITEM_DESC_L, "
+					+" PHY_UNIT,MEMO) "
+					+" select '"+parmas.get("SPECIMEN_NO")+"','"+bigd4+"',TEST_QTY,'"+phyCodeL+"','"+phyNameL+"','"+phyCodeM+"','"+phyNameM+"','"+phyCodeS+"','"+phyNameS+"','"+itemCodeD+"','"+itemNameD+"', "
+					+"  '"+itemCodeT+"','"+itemNameT+"','"+itemCodeS+"','"+itemNameS+"',VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+					+"  VAL13,VAL14,VAL15,AVG_VAL,'"+parmas.get("CREATE_NAME")+"',sysdate,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,'"+itemCodeL+"','"+itemDescL+"', "
+					+" PHY_UNIT,MEMO from QCM_JHY_INSP_PHYSICS t "
+					+ " where t.specimen_no = '"+(String)hashMap.get("SPECIMEN_NO")+"' "
+					+ "and t.seq = '"+hashMap.get("SEQ")+"'  ";
+						mapper.insert(sql);
+						
+						//修改ITEM表
+						sql = "";
+						sql =" update QCM_JHY_SAMPLE_CONSIGN_D_ITEM t set t.QUOTE_MEMO = '已引用"+result.get("SPECIMEN_NO")+"' "
+								+ " where t.SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"' and t.seq = '"+seq+"' ";
+						mapper.updateJudgeStatus(sql.toString());
+						quotenum++;
+						break;
+						
+						}else if(phyCodeS.equals("A06") && phyCodeS2.equals("A06") && HAStr.equals("HA")
+								&& (itemCodeD.equals("B") || (itemCodeD.equals("A") && itemCodeD2.equals("A")) )){
+								//判断当前值单位是50mm 80mm
+								if("50mm".equals(PhyUnit)){
+									if("80mm".equals(PhyUnit2)){
+										//A50=A80*1.207
+										sql = "";
+										sql = " insert into QCM_JHY_INSP_PHYSICS "
+								+" (SPECIMEN_NO,SEQ,TEST_QTY,PHY_CODE_L,PHY_NAME_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S,ITEM_CODE_D,ITEM_NAME_D, "
+								+" ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+								+" VAL13,VAL14,VAL15,AVG_VAL,CREATE_NAME,CREATE_TIME,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,ITEM_CODE_L,ITEM_DESC_L, "
+								+" PHY_UNIT,MEMO) "
+								+" select '"+parmas.get("SPECIMEN_NO")+"','"+bigd4+"',TEST_QTY,'"+phyCodeL+"','"+phyNameL+"','"+phyCodeM+"','"+phyNameM+"','"+phyCodeS+"','"+phyNameS+"','"+itemCodeD+"','"+itemNameD+"', "
+								+"  '"+itemCodeT+"','"+itemNameT+"','"+itemCodeS+"','"+itemNameS+"',JHY02.ROUDN_MATH_JGXY((val1*1.207), 0.5),JHY02.ROUDN_MATH_JGXY((val2*1.207), 0.5),JHY02.ROUDN_MATH_JGXY((val3*1.207), 0.5),"
+								+" VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, VAL13,VAL14,VAL15,JHY02.ROUDN_MATH_JGXY((avg_val*1.207), 0.5),'"+parmas.get("CREATE_NAME")+"',sysdate,GROUP_SEQ,DEFECT_FLAG,"
+								+" JHY02.ROUDN_MATH_JGXY((max_val*1.207), 0.5),JHY02.ROUDN_MATH_JGXY((min_val*1.207), 0.5),'"+itemCodeL+"','"+itemDescL+"', "
+								+" PHY_UNIT,MEMO from QCM_JHY_INSP_PHYSICS t "
+								+ " where t.specimen_no = '"+(String)hashMap.get("SPECIMEN_NO")+"' "
+								+ "and t.seq = '"+hashMap.get("SEQ")+"'  ";
+									mapper.insert(sql);
+									}
+								}
+								else if("80mm".equals(PhyUnit)){
+										if("50mm".equals(PhyUnit2)){
+											//A80=A50*0.829
+											sql = "";
+											sql = " insert into QCM_JHY_INSP_PHYSICS "
+									+" (SPECIMEN_NO,SEQ,TEST_QTY,PHY_CODE_L,PHY_NAME_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S,ITEM_CODE_D,ITEM_NAME_D, "
+									+" ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+									+" VAL13,VAL14,VAL15,AVG_VAL,CREATE_NAME,CREATE_TIME,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,ITEM_CODE_L,ITEM_DESC_L, "
+									+" PHY_UNIT,MEMO) "
+									+" select '"+parmas.get("SPECIMEN_NO")+"','"+bigd4+"',TEST_QTY,'"+phyCodeL+"','"+phyNameL+"','"+phyCodeM+"','"+phyNameM+"','"+phyCodeS+"','"+phyNameS+"','"+itemCodeD+"','"+itemNameD+"', "
+									+"  '"+itemCodeT+"','"+itemNameT+"','"+itemCodeS+"','"+itemNameS+"',JHY02.ROUDN_MATH_JGXY((val1*0.829), 0.5),JHY02.ROUDN_MATH_JGXY((val2*0.829), 0.5),JHY02.ROUDN_MATH_JGXY((val3*0.829), 0.5),"
+									+"  VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12,VAL13,VAL14,VAL15,JHY02.ROUDN_MATH_JGXY((avg_val*0.829), 0.5),'"+parmas.get("CREATE_NAME")+"',sysdate,GROUP_SEQ,DEFECT_FLAG,"
+									+" JHY02.ROUDN_MATH_JGXY((max_val*0.829), 0.5),JHY02.ROUDN_MATH_JGXY((min_val*0.829), 0.5),'"+itemCodeL+"','"+itemDescL+"', "
+									+" PHY_UNIT,MEMO from QCM_JHY_INSP_PHYSICS t "
+									+ " where t.specimen_no = '"+(String)hashMap.get("SPECIMEN_NO")+"' "
+									+ "and t.seq = '"+hashMap.get("SEQ")+"'  ";
+										mapper.insert(sql);
+										}
+								}
+								//修改ITEM表
+								sql = "";
+								sql =" update QCM_JHY_SAMPLE_CONSIGN_D_ITEM t set t.QUOTE_MEMO = '已引用"+result.get("SPECIMEN_NO")+"' "
+										+ " where t.SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"' and t.seq = '"+seq+"' ";
+								mapper.updateJudgeStatus(sql.toString());
+								quotenum++;
+								break;
+							}
+			          }
+						
+				}
+		    }
+					String ABATCHLOG = "";
+					String sqlrz="select t.COIL_NO,t.ABATCHLOG from qcm_judge_coil_result t where t.COIL_NO in ( "
+							   +" select d.material_no from qcm_jhy_sample_consign_d d where d.specimen_no = '"+parmas.get("SPECIMEN_NO")+"') "
+							   +" and t.abatchlog is not null and rownum=1 ";
+					HashMap resultrz = mapper.queryOne(sqlrz.toString());
+					if(resultrz!=null && resultrz.size()>=1){
+						ABATCHLOG = resultrz.get("ABATCHLOG").toString();
+					}
+					//被引用的项目  全部  已引用
+					if(quotenum==bQuote){
+						//修改D表
+						sql = "";
+						sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.STATUS = '3',t.SEND_ID = '"+parmas.get("SEND_ID")+"',t.IMPROVE_MEMO= '"+ABATCHLOG+"' , "
+								+ " t.SEND_NAME = '"+parmas.get("CREATE_NAME")+"',t.SEND_TIME = sysdate,t.SEND_MEMO = '有引用',t.QUOTE_MEMO = '引用实绩' "
+								+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+										+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+						mapper.updateJudgeStatus(sql.toString());
+						
+						//往log表中插入p
+						sql = "";
+						sql = " INSERT INTO QCM_JUDGE_LOG ( JUDGE_TYPE,MATERIAL_NO,CREATE_TIME,CREATE_NAME,PROD_LINE) "
+				    		+" VALUES ( 'P', '"+parmas.get("SMP_NO")+"', SYSDATE,'system','"+parmas.get("PLINE_CODE")+"')";
+						mapper.insert(sql);
+					}else{
+						//修改D表
+						sql = "";
+						sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.SEND_MEMO = '有引用',t.QUOTE_MEMO = '引用实绩',t.IMPROVE_MEMO= '"+ABATCHLOG+"' "
+								+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+										+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+						mapper.updateJudgeStatus(sql.toString());
+					}
+			
+			}else{
+				sql="";
+				 sql = "select * from (select * from ("
+					 		+ " select (select count(1) from qcm_jhy_sample_consign_d_item i where i.specimen_no = t.specimen_no) nums,t.* "
+					 		+ " from QCM_JHY_SAMPLE_CONSIGN_D t,qcm_jhy_sample_r_ord r "
+							  +" where t.smp_no = r.smp_no and t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'  "
+							   +" and t.smp_type_code = '0' and t.status in('0','2','7') and nvl(t.QUOTE_MEMO ,'null') <> '引用实绩' "
+							   + "  and t.freq_code <> 'D' and t.CHEM_ITEM is null and to_char(r.thick, 'fm990.099') = to_char('"+parmas.get("THICK")+"', 'fm990.099') "
+							   + " and r.DESIGN_KEY not like '39%' and r.DESIGN_KEY not like '49%' and r.DESIGN_KEY not like '59%'  "
+							   + " ) t order by t.nums desc) t where rownum=1 ";
+				 result=null;
+				 result = mapper.queryOne(sql.toString());
+				
+				if(result==null || result.size()<=0){
+					 sql = "select t.* from QCM_JHY_SAMPLE_CONSIGN_D t,qcm_jhy_sample_r_ord r "
+							  +" where t.smp_no = r.smp_no and t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'  "
+							   +" and t.smp_type_code = '0' and t.status in('0','2','7') and nvl(t.QUOTE_MEMO ,'null') <> '引用实绩' "
+							   + "  and t.freq_code <> 'D' "
+							   + " and r.DESIGN_KEY not like '39%' and r.DESIGN_KEY not like '49%' and r.DESIGN_KEY not like '59%' "
+							   + " and CHEM_ITEM is null and rownum <= 1 order by t.send_time asc ";
+					 result=null;
+					 result = mapper.queryOne(sql.toString());
+				}
+		
+				if (result != null && result.size()>=1) {
+					sql = "";
+					sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.ONEMEMO = '力学性能实绩未返回或未下发委托,请等实绩返回人工引用',t.ARTIFICIAL_MEMO='1'  "
+							+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+									+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+					mapper.updateJudgeStatus(sql.toString());
+				}else{
+				//修改D表
+				sql = "";
+				sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.ONEMEMO = '没有找到相应力学性能委托' ,t.ARTIFICIAL_MEMO='0' "
+						+ " where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.pline_code = '"+parmas.get("PLINE_CODE")+"'"
+								+ " and SPECIMEN_NO ='"+parmas.get("SPECIMEN_NO")+"'  ";
+				mapper.updateJudgeStatus(sql.toString());
+				}
+			}
+
+		} catch (Exception e) {
+			SqlSession.rollback();
+			SqlSession.close();
+		}
+		SqlSession.commit();
+		SqlSession.close();
+	}
+	
+	/**
+	 * 线棒LS订单自动引用  不同订单 同轧批号  项目一样引用
+	 * @param materialInfo
+	 * @return
+	 * @throws Exception
+	 */
+	public void DoQuoteXB(HashMap parmas) throws Exception {
+		 SqlSession = QCM.COMMUNAL.SqlSessionBuilder.openSqlSession();
+		 mapper = SqlSession.getMapper(QCM.COMMUNAL.OrderSqMapper.class);
+		try {
+			String strsql="";
+            if(parmas.get("MEMOLOG").equals("0")){//按子板件件取样
+            	strsql = " AND T.MATERIAL_NO='"+parmas.get("MATERIAL_NO")+"' ";
+            }
+            //查询当前生成的委托
+			String sql ="SELECT T.SPECIMEN_NO,T.BATCH_NO,T.SMP_NO,T.PLINE_CODE,"
+			+" (SELECT COUNT(1) FROM QCM_JHY_SAMPLE_CONSIGN_D_ITEM I WHERE I.SPECIMEN_NO = T.SPECIMEN_NO) COUNTN "
+			+" FROM QCM_JHY_SAMPLE_CONSIGN_D T,QCM_JHY_SAMPLE_R_ORD R WHERE T.SMP_NO = R.SMP_NO AND T.PLINE_CODE IN ('GX1','GX2','BC2') AND T.SMP_TYPE_CODE ='0' "
+			+" AND R.DESIGN_KEY = '"+parmas.get("DESIGN_KEY")+"' AND R.BATCH_NO ='"+parmas.get("BATCH_NO")+"' and t.status = '0' " 
+			+strsql
+			+ " ORDER BY COUNTN DESC ";
+			List<HashMap> result1 = mapper.query(sql.toString());
+			if(result1==null || result1.size()<=0){
+				return;
+			}
+			
+			//查询最初的委托 AND R.DESIGN_KEY not like 'LS%'  SOURCE:是否正常批
+			String sql2 = "SELECT T.SPECIMEN_NO,T.BATCH_NO,(SELECT COUNT(1) FROM QCM_JHY_SAMPLE_CONSIGN_D_ITEM I WHERE I.SPECIMEN_NO = T.SPECIMEN_NO) COUNTN "
+						+" FROM QCM_JHY_SAMPLE_CONSIGN_D T,QCM_JHY_SAMPLE_R_ORD R "
+						+" WHERE T.SMP_NO = R.SMP_NO AND T.PLINE_CODE IN ('GX1','GX2','BC2') AND T.SMP_TYPE_CODE ='0' AND T.SOURCE= '0' "
+						+" AND T.QUOTE_MEMO IS NULL AND T.STATUS = '3'  AND R.BATCH_NO ='"+parmas.get("BATCH_NO")+"' "
+						+" ORDER BY COUNTN DESC ";
+			List<HashMap> result = mapper.query(sql2.toString());
+			if (result != null && result.size()>=1) {
+
+				for (int a = 0; a < result1.size(); a++) {
+				//查询引用的所有明细
+				sql ="";
+				sql = "select t.* from QCM_JHY_SAMPLE_CONSIGN_D_ITEM t where t.specimen_no = '"+result1.get(a).get("SPECIMEN_NO")+"' ";
+				List<HashMap> qltyLists=mapper.query(sql.toString());
+				
+				//查询被引用的所有明细
+				sql ="";
+				sql = "select t.* from QCM_JHY_INSP_PHYSICS t where t.specimen_no = '"+result.get(a).get("SPECIMEN_NO")+"'  ";
+				List<HashMap> qltyLists2=mapper.query(sql.toString());
+				if(qltyLists2==null || qltyLists2.size()<=0){
+					continue;
+				}
+				
+				Integer bQuote = qltyLists.size();//引用
+				int quotenum = 0;//已引用数据
+				//引用
+				for (int i = 0; i < qltyLists.size(); i++) {//被引用在外层循环 对比 引用中有没有相应的项目有 插入
+						
+					    String specimenNo=(String) qltyLists.get(i).get("SPECIMEN_NO");
+						//代码
+						String phyCodeL = (String) qltyLists.get(i).get("PHY_CODE_L");//材质检验大项代码
+						String phyCodeM = (String) qltyLists.get(i).get("PHY_CODE_M");//试样组代码
+						String phyCodeS = (String) qltyLists.get(i).get("PHY_CODE_S");//材质检验项目代码
+						String itemCodeD = (String) qltyLists.get(i).get("ITEM_CODE_D");//试验方向代码
+						String itemCodeT = (String) qltyLists.get(i).get("ITEM_CODE_T");//试验温度代码 试验温度代码  冲击 被引用
+						String itemCodeS = (String) qltyLists.get(i).get("ITEM_CODE_S");//试样尺寸代码
+						//名称
+						String phyNameL = (String) qltyLists.get(i).get("PHY_NAME_L");//材质检验大项代码
+						String phyNameM = (String) qltyLists.get(i).get("PHY_NAME_M");//试样组代码
+						String phyNameS = (String) qltyLists.get(i).get("PHY_NAME_S");//材质检验项目代码
+						String itemNameD = (String) qltyLists.get(i).get("ITEM_NAME_D");//试验方向代码
+						String itemNameT = (String) qltyLists.get(i).get("ITEM_NAME_T");//试验温度代码 试验温度代码  冲击 被引用
+						String itemNameS = (String) qltyLists.get(i).get("ITEM_NAME_S");//试样尺寸代码
+						
+						String itemCodeL = (String) qltyLists.get(i).get("ITEM_CODE_L");//试验位置代码
+						String itemDescL = (String) qltyLists.get(i).get("ITEM_DESC_L");
+						BigDecimal seq = (BigDecimal) qltyLists.get(i).get("SEQ");
+						String bigdjs = seq.toString();
+						Integer bigd4 = Integer.parseInt(bigdjs);
+			
+					
+						String newItem=phyCodeL+"-"+phyCodeM+"-"+phyCodeS;
+						newItem=newItem+"-"+(itemCodeD!=null?itemCodeD:"null");
+						newItem=newItem+"-"+(itemCodeT!=null?itemCodeT:"null");
+						newItem=newItem+"-"+(itemCodeS!=null?itemCodeS:"null");
+						newItem=newItem+"-"+(itemCodeL!=null?itemCodeL:"null");
+						
+				    //被引用
+					for (HashMap hashMap : qltyLists2) {
+						
+						//代码
+						String phyCodeL2 = (String) hashMap.get("PHY_CODE_L");//材质检验大项代码
+						String phyCodeM2 = (String) hashMap.get("PHY_CODE_M");//试样组代码
+						String phyCodeS2 = (String) hashMap.get("PHY_CODE_S");//材质检验项目代码
+						String itemCodeD2 = (String) hashMap.get("ITEM_CODE_D");//试验方向代码
+						String itemCodeT2 = (String) hashMap.get("ITEM_CODE_T");//试验温度代码 试验温度代码  冲击 被引用
+						String itemCodeS2 = (String) hashMap.get("ITEM_CODE_S");//试样尺寸代码
+						String itemCodeL2 = (String) hashMap.get("ITEM_CODE_L");//试验位置代码
+						
+						String newItem2=phyCodeL2+"-"+phyCodeM2+"-"+phyCodeS2;
+						newItem2=newItem2+"-"+(itemCodeD2!=null?itemCodeD2:"null");
+						newItem2=newItem2+"-"+(itemCodeT2!=null?itemCodeT2:"null");
+						newItem2=newItem2+"-"+(itemCodeS2!=null?itemCodeS2:"null");
+						newItem2=newItem2+"-"+(itemCodeL2!=null?itemCodeL2:"null");
+						
+						//标准一样的引用
+						if(newItem.equals(newItem2)){
+							
+							sql = "";
+							sql = " insert into QCM_JHY_INSP_PHYSICS "
+					+" (SPECIMEN_NO,SEQ,TEST_QTY,PHY_CODE_L,PHY_NAME_L,PHY_CODE_M,PHY_NAME_M,PHY_CODE_S,PHY_NAME_S,ITEM_CODE_D,ITEM_NAME_D, "
+					+" ITEM_CODE_T,ITEM_NAME_T,ITEM_CODE_S,ITEM_NAME_S,VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+					+" VAL13,VAL14,VAL15,AVG_VAL,CREATE_NAME,CREATE_TIME,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,ITEM_CODE_L,ITEM_DESC_L, "
+					+" PHY_UNIT,MEMO) "
+					+" select '"+specimenNo+"','"+bigd4+"',TEST_QTY,'"+phyCodeL+"','"+phyNameL+"','"+phyCodeM+"','"+phyNameM+"','"+phyCodeS+"','"+phyNameS+"','"+itemCodeD+"','"+itemNameD+"', "
+					+"  '"+itemCodeT+"','"+itemNameT+"','"+itemCodeS+"','"+itemNameS+"',VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7,VAL8,VAL9,VAL10,VAL11,VAL12, "
+					+"  VAL13,VAL14,VAL15,AVG_VAL,'"+parmas.get("CREATE_NAME")+"',sysdate,GROUP_SEQ,DEFECT_FLAG,MAX_VAL,MIN_VAL,'"+itemCodeL+"','"+itemDescL+"', "
+					+" PHY_UNIT,MEMO from QCM_JHY_INSP_PHYSICS t "
+					+ " where t.specimen_no = '"+(String)hashMap.get("SPECIMEN_NO")+"' "
+					+ "and t.seq = '"+hashMap.get("SEQ")+"'  ";
+						mapper.insert(sql);
+						
+						//修改ITEM表
+						sql = "";
+						sql =" update QCM_JHY_SAMPLE_CONSIGN_D_ITEM t set t.QUOTE_MEMO = '已引用"+hashMap.get("SPECIMEN_NO")+"' "
+								+ " where t.SPECIMEN_NO ='"+specimenNo+"' and t.seq = '"+seq+"' ";
+						mapper.updateJudgeStatus(sql.toString());
+						quotenum++;
+						break;
+						}
+				}
+		    }
+					//被引用的项目  全部  已引用
+					if(quotenum==bQuote){
+						//修改D表
+						sql = "";
+						sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.STATUS = '3',t.SEND_ID = '"+parmas.get("CREATE_ID")+"', "
+						   + " t.SEND_NAME = '"+parmas.get("CREATE_NAME")+"',t.SEND_TIME = sysdate,t.SEND_MEMO = '有引用',t.QUOTE_MEMO = '引用实绩' "
+						   + " where  t.batch_no = '"+result1.get(a).get("BATCH_NO")+"' and t.pline_code = '"+result1.get(a).get("PLINE_CODE")+"' "
+						   + " and t.SPECIMEN_NO ='"+result1.get(a).get("SPECIMEN_NO")+"'  ";
+						mapper.updateJudgeStatus(sql.toString());
+						
+						//往log表中插入p
+						sql = "";
+						sql = " INSERT INTO QCM_JUDGE_LOG ( JUDGE_TYPE,MATERIAL_NO,CREATE_TIME,CREATE_NAME,PROD_LINE) "
+				    		+" VALUES ( 'P', '"+result1.get(a).get("SMP_NO")+"', SYSDATE,'system','"+result1.get(a).get("PLINE_CODE")+"')";
+						mapper.insert(sql);
+					}else{
+						//修改D表
+						sql = "";
+						sql =" update QCM_JHY_SAMPLE_CONSIGN_D t set t.SEND_MEMO = '有引用',t.QUOTE_MEMO = '引用实绩' "
+						   + " where  t.batch_no = '"+result1.get(a).get("BATCH_NO")+"' and t.pline_code = '"+result1.get(a).get("PLINE_CODE")+"' "
+						   + " and t.SPECIMEN_NO ='"+result1.get(a).get("SPECIMEN_NO")+"'  ";
+						mapper.updateJudgeStatus(sql.toString());
+					}
+				}
+			}
+
+		} catch (Exception e) {
+			SqlSession.rollback();
+			SqlSession.close();
+		}
+		SqlSession.commit();
+		SqlSession.close();
+	}
+	
+	/**
+	 * 修改热轧清空组批区间
+	 * @param materialInfo
+	 * @return
+	 * @throws Exception
+	 */
+	public CoreReturnObject DoCleanUpMixRoll(HashMap parmas) throws Exception {
+		try {
+			
+			  String logmemo ="轧批号:"+parmas.get("BATCH_NO").toString()+','+"子板号:"+ parmas.get("MATERIAL_NO").toString()+','+ 
+					          "组批区间"+parmas.get("MIXROLL").toString()+','+"产线:"+parmas.get("PLINE_CODE").toString()+','+ 
+					          "操作人:"+parmas.get("USER_NAME").toString();
+			  String sql= "INSERT INTO QCM_JUDGE_OPERATE_LOG (OPERATE_TYPE,PARAMS,OPERATE_NAME,PROD_LINE,BATCHNO,MEMO) "
+			    		+ " VALUES('热轧清除组批区间','"+parmas.get("MATERIAL_NO")+"','DoCleanUpMixRoll','"+parmas.get("PLINE_CODE")+"',"
+			    				+ " '"+parmas.get("BATCH_NO")+"','"+logmemo+"') ";
+			    mapper.insert(sql);
+			    
+			  String sqlStr="update tbf02_spec_mill t "
+			  		    + " set MIXROLL='' "
+						+ " where t.COIL_NO in ( "
+			     		+ " select COIL_NO from tbh02_coil_comm c where c.OLD_SAMPL_NO like '"+parmas.get("BATCH_NO").toString()+"%' "
+			     		+ " ) ";
+				  mapper.updateJudgeStatus(sqlStr.toString());
+				  
+			} catch (Exception e) {
+				SqlSession.rollback();
+				SqlSession.close();
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("清空组批区间失败!"+e.getMessage());
+				return cro;
+			}
+		SqlSession.commit();
+		SqlSession.close();
+		cro.setV_errCode(1);
+		return cro;
+	}
+	
+	/**
+	 * 项目集  取样位置
+	 * @param materialInfo
+	 * @return
+	 * @throws Exception
+	 */
+	public void doPhyItem(String SPECIMEN_NO) throws Exception {
+		 SqlSession = QCM.COMMUNAL.SqlSessionBuilder.openSqlSession();
+		 mapper = SqlSession.getMapper(QCM.COMMUNAL.OrderSqMapper.class);
+		try {
+			String sqlitem = "select * from qcm_jhy_sample_consign_d t "
+					 +" where t.phy_item is null "
+					 +" and t.specimen_no = '"+SPECIMEN_NO+"' ";
+	          List<HashMap> PhyItem=mapper.query(sqlitem.toString());
+	          if(PhyItem!=null && PhyItem.size()>=1){
+	        	  String sqlItem = "select GET_ITEM_SPECIMEN_NO('"+SPECIMEN_NO+"') PHY_ITEM from dual";
+					List<HashMap> vhchm=mapper.query(sqlItem.toString());
+					if(vhchm!=null && vhchm.size()>=1 && !vhchm.get(0).get("PHY_ITEM").equals("NULL")){
+						String sql = " update QCM_JHY_SAMPLE_CONSIGN_D t "
+								+" set PHY_ITEM= '"+vhchm.get(0).get("PHY_ITEM").toString()+"' "
+						        +" where t.SPECIMEN_NO='"+SPECIMEN_NO+"'  ";
+						 mapper.UpdateQcmWt(sql);
+					}
+	          }
+	          
+	         String getcin = "select r.* from qcm_jhy_sample_consign_d t, qcm_jhy_sample_r_ord r "
+							+" where t.smp_no = r.smp_no and t.specimen_no ='"+SPECIMEN_NO+"' "
+							+" and r.Three_Memo is null and r.pline_code in ('ZB1','HB1') ";
+	         List<HashMap> getcinHM=mapper.query(getcin.toString());
+	      	if(getcinHM!=null && getcinHM.size()>=1){
+				String sqlItem2 = "select GET_CERT_INST_NAME('"+SPECIMEN_NO+"') PHY_ITEM from dual";
+				List<HashMap> vhchm2=mapper.query(sqlItem2.toString());
+				if(vhchm2!=null && vhchm2.size()>=1 && !vhchm2.get(0).get("PHY_ITEM").equals("NULL")){
+					String sql = " update qcm_jhy_sample_r_ord t "
+							+" set THREE_MEMO= '"+vhchm2.get(0).get("PHY_ITEM").toString()+"' "
+					        +" where t.SMP_NO in ( select d.smp_no from qcm_jhy_sample_consign_d d where d.specimen_no = '"+SPECIMEN_NO+"')  ";
+						mapper.updateJudgeStatus(sql.toString());
+				}
+				}
+				  
+	          TreeSet<String> treeSet = new TreeSet<String>();
+	          String SQLsmpLocation = "select * from QCM_JHY_SAMPLE_CONSIGN_D_ITEM t "
+						 +" where t.SMP_LOCATION is null "
+						 +" and t.specimen_no = '"+SPECIMEN_NO+"' ";
+		          List<HashMap> PhySp=mapper.query(SQLsmpLocation.toString());
+		          if(PhySp!=null && PhySp.size()>=1){
+		        	  treeSet.add(SPECIMEN_NO);
+		        	  for (HashMap<String,String> hashMap : PhySp) {
+		        		  String fyQuoteSpecimenNo=String.valueOf(hashMap.get("FY_QUOTE_SPECIMEN_NO"));
+		        		  if(fyQuoteSpecimenNo!=null && !"".equals(fyQuoteSpecimenNo) && !"null".equals(fyQuoteSpecimenNo)){
+		        		  treeSet.add(fyQuoteSpecimenNo);
+		        		  }
+					  }
+		        	  
+		        	  if(treeSet.size()>=1){
+		        		  for (String str : treeSet) {
+		        			  //查出取样位置
+		        			  String sqlsl="select * from qcm_jhy_sample_consign_d t where t.specimen_no = '"+str+"' and rownum = 1 ";
+		        			  List<HashMap> sqlslhm=mapper.query(sqlsl.toString());
+		    		          if(sqlslhm!=null && sqlslhm.size()>=1){
+		    		        	  String SMP_LOCATION=sqlslhm.get(0).get("SMP_LOCATION").toString();//取样位置
+		    		        	  String sql="select * from QCM_JHY_SAMPLE_CONSIGN_D_ITEM t where t.specimen_no = '"+str+"' "
+		    		        	  		   + " and t.SMP_LOCATION is null and t.FY_QUOTE_SPECIMEN_NO is null ";
+		    		        	  List<HashMap> hashMap=mapper.query(sql.toString());
+		    		        	  if(hashMap!=null && hashMap.size()>=1){
+		    		        		   sql="";
+		    		        		   sql = " update QCM_JHY_SAMPLE_CONSIGN_D_ITEM t "
+		    									+" set SMP_LOCATION= '"+SMP_LOCATION+"' "
+		    							        +" where t.SPECIMEN_NO='"+str+"' and t.SMP_LOCATION is null and t.FY_QUOTE_SPECIMEN_NO is null ";
+		    							 mapper.UpdateQcmWt(sql);
+		    		        	  }
+		    		        	  
+		    		        	  sql="";
+		    		        	  sql="select * from QCM_JHY_SAMPLE_CONSIGN_D_ITEM t where t.FY_QUOTE_SPECIMEN_NO = '"+str+"' "
+		    		        	  	+ " and t.SMP_LOCATION is null and t.SEQ>=50 ";
+		    		        	  List<HashMap> hashMap2=mapper.query(sql.toString());
+		    		        	  if(hashMap2!=null && hashMap2.size()>=1){
+		    		        		   sql="";
+		    		        		   sql = " update QCM_JHY_SAMPLE_CONSIGN_D_ITEM t "
+		    									+" set SMP_LOCATION= '"+SMP_LOCATION+"' "
+		    							        +" where t.FY_QUOTE_SPECIMEN_NO='"+str+"' and t.SMP_LOCATION is null and t.SEQ>=50 ";
+		    							 mapper.UpdateQcmWt(sql);
+		    		        	  }
+		    		        	  
+		    		          }
+						}
+		        	  }
+		          }
+	          
+			} catch (Exception e) {
+				SqlSession.rollback();
+				SqlSession.close();
+			}
+		SqlSession.commit();
+		SqlSession.close();
+	}
+	
+	//19订单刷新  or t.onememo is null)
+	public void AutoTimeZHB(String usreName) throws Exception {
+		 SqlSession = QCM.COMMUNAL.SqlSessionBuilder.openSqlSession();
+		 mapper = SqlSession.getMapper(QCM.COMMUNAL.OrderSqMapper.class);
+		try {
+			String sql="select * from ( "
+			+"	select t.create_time,r.design_key,r.batch_no,r.heat_no,r.smp_no,t.specimen_no,t.freq_code,t.pline_code,t.smp_type_code,r.thick, "
+			+"	  (select COUNT(1) from qcm_jhy_sample_consign_d d,qcm_jhy_sample_r_ord r where d.smp_no= r.smp_no and d.batch_no=t.batch_no "
+			+ "    and d.status='3' and d.freq_code<>'D' and r.design_key not like '19%' and substr(d.process_nos, 0, 1) =substr(t.process_nos, 0, 1) "
+			+ "    and substr(d.process_nos, 4, 1) =substr(t.process_nos, 4, 1) and substr(d.process_nos, 5, 1) =substr(t.process_nos, 5, 1)  ) NUMM,"
+			+ "   (select count(1) from zj_result_all@xgcx z where z.billetid= t.material_no and z.JUDGERESULT='0' )  JUDGERESULT "
+			+"	 from qcm_jhy_sample_consign_d t,qcm_jhy_sample_r_ord r "
+			+"	where t.smp_no = r.smp_no "
+			+"	and r.design_key like '19%' "
+			+"	and (t.ONEMEMO='力学性能实绩未返回或未下发委托,请等实绩返回人工引用' or t.onememo is null) "
+			+"	and nvl(t.ARTIFICIAL_MEMO,'1') ='1' "
+			+"	and t.status = '0' "
+			+"	and r.judge_status = '0' and t.freq_code <>'D'  and t.pline_code in ('ZB1','HB1') "
+			+" order by t.create_time"
+			+"	) f "
+			+"	where f.numm<>'0'  and f.JUDGERESULT>=1 and f.CREATE_TIME>=to_date('2023-01-18 00:00:00','yyyy-MM-dd HH24:mi:ss')"
+			+"	and rownum<=20 ";
+			List<HashMap> qltyLists=mapper.query(sql.toString());
+			if(qltyLists!=null && qltyLists.size()>=1){
+				for (int i = 0; i < qltyLists.size(); i++) {
+					HashMap<String, String> Quotehm =new HashMap<String, String>();
+					Quotehm.put("HEAT_NO", qltyLists.get(i).get("HEAT_NO").toString());
+					Quotehm.put("BATCH_NO", qltyLists.get(i).get("BATCH_NO").toString());
+					Quotehm.put("SMP_NO", qltyLists.get(i).get("SMP_NO").toString());
+					Quotehm.put("SPECIMEN_NO", qltyLists.get(i).get("SPECIMEN_NO").toString());
+					Quotehm.put("FREQ_CODE", qltyLists.get(i).get("FREQ_CODE").toString());
+					Quotehm.put("PLINE_CODE", qltyLists.get(i).get("PLINE_CODE").toString());
+					Quotehm.put("SMP_TYPE_CODE", qltyLists.get(i).get("SMP_TYPE_CODE").toString());
+					Quotehm.put("SEND_ID", "系统自动");
+					Quotehm.put("CREATE_NAME", "系统自动");
+					Quotehm.put("THICK", qltyLists.get(i).get("THICK").toString());
+					Quotehm.put("DESIGN_KEY", qltyLists.get(i).get("DESIGN_KEY").toString());
+					String str=DoQuoteBatchNo191(Quotehm);
+					if("1".equals(str)){
+						System.out.println(i+": 19刷新接口:"+qltyLists.get(i).get("BATCH_NO")+"、"+qltyLists.get(i).get("SPECIMEN_NO")+"成功");
+					}else{
+						System.out.println(i+": 19刷新接口:"+qltyLists.get(i).get("BATCH_NO")+"、"+qltyLists.get(i).get("SPECIMEN_NO")+"失败!"+str);
+					}
+				}
+				
+			}
+			
+		} catch (Exception e) {
+			SqlSession.rollback();
+			SqlSession.close();
+			System.out.println("2:调用19失败!"+e.getMessage());
+		}finally {
+			SqlSession.close();
+		}
+	}
+	
+	//SQLS订单号多次换单导致材质判定时检验号被清空判不了
+	public void AutoTimeSQLS(String usreName) throws Exception {
+		 SqlSession = QCM.COMMUNAL.SqlSessionBuilder.openSqlSession();
+		 mapper = SqlSession.getMapper(QCM.COMMUNAL.OrderSqMapper.class);
+		try {
+			String sql="select t.*,r.DESIGN_KEY,r.STEEL_CODE,r.THICK from qcm_jhy_sample_consign_d t,qcm_jhy_sample_r_ord r "
+			+" where t.smp_no = r.smp_no "
+			+" and r.design_key not like '19%' "
+			+" and t.pline_code in ('ZB1','HB1') "
+			+" and r.Judge_Status='1' "
+			+" and r.Judge_Result_Code='3' "
+			+" and r.Judge_Result_Desc = '没在库' "
+			+" and t.freq_code <> 'D' and t.smp_type_code = '0' "
+			+" and r.memo is null ";
+			List<HashMap> qltyLists=mapper.query(sql.toString());
+			if(qltyLists!=null && qltyLists.size()>=1){
+				for (int i = 0; i < qltyLists.size(); i++) {
+					String SMP_NO=qltyLists.get(i).get("SMP_NO").toString();
+					String BATCH_NO=qltyLists.get(i).get("BATCH_NO").toString();
+					String MATERIAL_NO=qltyLists.get(i).get("MATERIAL_NO").toString();
+					String BOARD_NO=qltyLists.get(i).get("BOARD_NO").toString();
+					String INSPECTION_LOT=qltyLists.get(i).get("INSPECTION_LOT").toString();
+					String PLINE_CODE=qltyLists.get(i).get("PLINE_CODE").toString();
+					String FREQ_CODE=qltyLists.get(i).get("FREQ_CODE").toString();
+					String DESIGN_KEY=qltyLists.get(i).get("DESIGN_KEY").toString();
+					String STEEL_CODE=qltyLists.get(i).get("STEEL_CODE").toString();
+					String THICK=qltyLists.get(i).get("THICK").toString();
+					
+					String sql2="select * from zj_result_all@xgcx t "
+						+ " where t.billetid = '"+MATERIAL_NO+"' and t.BILLETID_JY is null ";
+					List<HashMap> qltyLists2=mapper.query(sql2.toString());
+					if(qltyLists2!=null && qltyLists2.size()>=1){
+							String sqlzj = " update zj_result_all@xgcx t set t.billetid_jy = '"+INSPECTION_LOT+"' "
+							             + " where t.billetid='"+MATERIAL_NO+"' ";
+							mapper.updateJudgeStatus(sqlzj.toString());
+							//r.design_key like 'SQLS%'
+							String sqlord = " update qcm_jhy_sample_r_ord r "
+										   +" set r.Judge_Status='0',r.Judge_Result_Code='', "
+										   +" r.Judge_Result_Desc = '',r.memo='订单:'||'"+DESIGN_KEY+"' "
+										   +" where 1=1 "
+										   +" and r.Smp_No='"+SMP_NO+"' ";
+						   mapper.updateJudgeStatus(sqlord.toString());
+						 
+						    String sqlP = " INSERT INTO QCM_JUDGE_LOG ( JUDGE_TYPE,MATERIAL_NO,CREATE_TIME,CREATE_NAME,PROD_LINE) "
+					    		         +" VALUES ( 'P', '"+SMP_NO+"', SYSDATE,'system','"+PLINE_CODE+"')";
+							mapper.insert(sqlP);
+							System.out.println("调用"+DESIGN_KEY+"订单接口成功:轧批号:"+BATCH_NO+"、试样号:"+SMP_NO);
+					}else{
+						String lot="0";
+						HashMap<String, String> hashMapStr =new HashMap<String, String>();
+						hashMapStr.put("BATCH_NO", BATCH_NO);
+			        	hashMapStr.put("PLINE_CODE", PLINE_CODE);
+			        	hashMapStr.put("DESIGN_KEY", DESIGN_KEY);
+			        	hashMapStr.put("STEEL_CODE", STEEL_CODE);
+			        	hashMapStr.put("THICK", THICK);
+			        	hashMapStr.put("BOARD_NO", BOARD_NO);
+			        	hashMapStr.put("FREQ_CODE", FREQ_CODE);
+			        	hashMapStr.put("MATERIAL_NO", MATERIAL_NO);
+			        	
+			        	String deystr = DESIGN_KEY.substring(0, 2);
+			        	if(!"19".equals(deystr)){
+						String sqlstr = ZHBJudgeStatus(hashMapStr);
+						List<HashMap> kczh=mapper.query(sqlstr.toString());
+						if (kczh!=null && kczh.size()>=1) {
+							for (HashMap hashMap : kczh) {
+								String bcon = "select nvl(t.BILLETID_JY,'0') BILLETID_JY,t.* from zj_result_all@xgcx t  "
+							    		+ "  where  t.billetid = '"+(String)hashMap.get("MATERIAL_NO")+"' "
+							    				+ " and rownum <= 1 ";
+								List<HashMap> billetidJy = mapper.query(bcon.toString());
+								if(billetidJy != null && billetidJy.size() >=1 && !billetidJy.get(0).get("BILLETID_JY").equals(INSPECTION_LOT)){
+									mapper.zjResultAllZHB(MATERIAL_NO,INSPECTION_LOT);
+									lot="1";
+								}
+							}
+			              }
+			        	}
+						if(lot.equals("1")){
+							String sqlord = " update qcm_jhy_sample_r_ord r "
+									   +" set r.memo='订单:'||'"+DESIGN_KEY+"',JUDGE_STATUS='0',JUDGE_RESULT_CODE='',JUDGE_RESULT_DESC='' "
+									   +" where 1=1 "
+									   +" and r.Smp_No='"+SMP_NO+"' ";
+					       mapper.updateJudgeStatus(sqlord.toString());
+					       String sqlP = " INSERT INTO QCM_JUDGE_LOG ( JUDGE_TYPE,MATERIAL_NO,CREATE_TIME,CREATE_NAME,PROD_LINE) "
+				    		         +" VALUES ( 'P', '"+SMP_NO+"', SYSDATE,'system','"+PLINE_CODE+"')";
+						mapper.insert(sqlP);
+						}else{
+						String sqlord = " update qcm_jhy_sample_r_ord r "
+								   +" set r.memo='订单:'||'"+DESIGN_KEY+"' "
+								   +" where 1=1 "
+								   +" and r.Smp_No='"+SMP_NO+"' ";
+				       mapper.updateJudgeStatus(sqlord.toString());
+						}
+				       System.out.println("调用"+DESIGN_KEY+"订单接口检验号不为空:轧批号:"+BATCH_NO+"、试样号:"+SMP_NO);
+					}
+				}
+			}
+			
+		} catch (Exception e) {
+			SqlSession.rollback();
+			SqlSession.close();
+			System.out.println("2:调用SQLS订单接口失败!"+e.getMessage());
+		}
+		SqlSession.commit();
+		SqlSession.close();
+	}
+	
+	 public String ZHBJudgeStatus(HashMap<String, String> hashMapStr){
+		 String freqCode="";
+		 //按母板取样
+		 if(hashMapStr.get("FREQ_CODE").equals("B") || hashMapStr.get("FREQ_CODE").equals("F") || hashMapStr.get("FREQ_CODE").equals("G")){
+			 freqCode =" and t.BOARD_NO = '"+hashMapStr.get("BOARD_NO")+"' ";
+		 }else if(hashMapStr.get("FREQ_CODE").equals("C") || hashMapStr.get("FREQ_CODE").equals("H") || hashMapStr.get("FREQ_CODE").equals("I")){
+			 freqCode =" and t.MATERIAL_NO = '"+hashMapStr.get("MATERIAL_NO")+"' ";
+		 }
+		 
+		 
+		 String materialNosql="";
+			if(hashMapStr.get("PLINE_CODE").equals("ZB1")){
+				materialNosql = "SELECT t.* "
+							 +" FROM (SELECT A.SAMPLINGREQUESTTIME,T.ORDERNO DESIGN_KEY,T.BATCHNO BATCH_NO,to_char(T.STEELCODE) GRADE_CODE,T.HEIGHT THICK,T.PRODUCTNO MATERIAL_NO "
+							 +"      ,T.MOTHERPLATEID BOARD_NO   FROM MB_PLANDETAILOFPLATE@xgcx T, SEL_PACTDETAIL_NEW@xgcx A "
+							 +"        WHERE T.ORDERNO = A.ORDERNO "
+							 +"          and T.PRODUCTNO not in "
+							 +"              (select T.BILLETID from KCZ_TURNOFFLIST@xgcx T where t.ROLLNUMBER = '"+hashMapStr.get("BATCH_NO")+"') "
+							 +"          and T.ORDERNO is not null AND A.SAMPLINGREQUESTTIME IN ('A', 'AB') "
+							 +"       union all "
+							 +"       SELECT A.SAMPLINGREQUESTTIME,T.ORDERNO DESIGN_KEY,T.ROLLNUMBER BATCH_NO,T.DETERMINANTCARDNUMBER GRADE_CODE,T.PLY THICK,T.BILLETID MATERIAL_NO "
+							 +"       ,T.MOTHERBOARDNUMBER BOARD_NO  FROM KCZ_TURNOFFLIST@xgcx T, SEL_PACTDETAIL_NEW@xgcx A "
+							  +"       WHERE T.ORDERNO = A.ORDERNO and T.ORDERNO is not null AND T.ISVALID <> '0') t "
+							+"   WHERE t.BATCH_NO = '"+hashMapStr.get("BATCH_NO")+"' and t.BATCH_NO like 'Z%' "
+							+"   and t.GRADE_CODE = '"+hashMapStr.get("STEEL_CODE")+"' and to_char(t.THICK, 'fm990.099') = to_char('"+hashMapStr.get("THICK")+"', 'fm990.099') "
+							+"   and T.DESIGN_KEY = '"+hashMapStr.get("DESIGN_KEY")+"' "
+							+ freqCode
+							+ " group by t.SAMPLINGREQUESTTIME,T.DESIGN_KEY,T.BATCH_NO,T.GRADE_CODE,T.THICK,t.MATERIAL_NO,t.BOARD_NO order by t.MATERIAL_NO ";
+				
+			}else if(hashMapStr.get("PLINE_CODE").equals("HB1")){
+				
+				materialNosql ="SELECT t.* "
+						+"  FROM (SELECT A.SAMPLINGREQUESTTIME,T.ORDERID DESIGN_KEY,T.BATCHNO BATCH_NO,to_char(T.STEELTYPE) GRADE_CODE,T.THICK THICK,T.SLABNO MATERIAL_NO, "
+						+"        T.MOTHERSLAB BOARD_NO  FROM ZYHB_PLANDETAILOFPLATE@xgcx T, SEL_PACTDETAIL_NEW@xgcx A "
+						+"         WHERE T.ORDERID = A.ORDERNO "
+						+"          and T.SLABNO not in "
+						+"               (select T.BILLETID from KCH_TURNOFFLIST@xgcx T where t.ROLLNUMBER = '"+hashMapStr.get("BATCH_NO")+"') "
+						+"           and T.ORDERID is not null "
+						+"        union all "
+						+"        SELECT A.SAMPLINGREQUESTTIME,T.ALLOTORDERFORM DESIGN_KEY,T.ROLLNUMBER BATCH_NO,T.DETERMINANTCARDNUMBER GRADE_CODE,T.PLY THICK,T.BILLETID MATERIAL_NO "
+						+"        ,T.MOTHERBOARDNUMBER BOARD_NO  FROM KCH_TURNOFFLIST@xgcx T, SEL_PACTDETAIL_NEW@xgcx A "
+						+"         WHERE T.ALLOTORDERFORM = A.ORDERNO and T.ALLOTORDERFORM is not null AND T.PSTATFLAG <> '0') t "
+						+"  WHERE  t.BATCH_NO = '"+hashMapStr.get("BATCH_NO")+"' and t.BATCH_NO like 'H%' "
+						+"   and t.GRADE_CODE = '"+hashMapStr.get("STEEL_CODE")+"' and to_char(t.THICK, 'fm990.099') = to_char('"+hashMapStr.get("THICK")+"', 'fm990.099') "
+						+"   and T.DESIGN_KEY = '"+hashMapStr.get("DESIGN_KEY")+"' "
+						+ freqCode
+						+" group by t.SAMPLINGREQUESTTIME,T.DESIGN_KEY,T.BATCH_NO,T.GRADE_CODE,T.THICK,t.MATERIAL_NO,t.BOARD_NO order by t.MATERIAL_NO asc";
+			}
+		 return materialNosql;
+	 }
+	 
+	 //自动刷激光
+		public void AutoTimeJG() throws Exception {
+			try {
+				 SqlSession = QCM.COMMUNAL.SqlSessionBuilder.openSqlSession();
+				 mapper = SqlSession.getMapper(QCM.COMMUNAL.OrderSqMapper.class);
+				String sql="select t.* from QCM_JHY_SAMPLE_CONSIGN_JG t where t.yn = 'Y' and rownum <=100 ORDER BY T.CREATE_TIME ";
+				List<HashMap> qltyLists=mapper.query(sql.toString());
+				if(qltyLists!=null && qltyLists.size()>=1){
+
+					for (int i = 0; i < qltyLists.size(); i++) {
+						HashMap<String, String> Quotehm =new HashMap<String, String>();
+						String SPECIMEN_NO = qltyLists.get(i).get("SPECIMEN_NO").toString();
+						Quotehm.put("SPECIMEN_NO", SPECIMEN_NO);
+						Quotehm.put("BATCH_NO", qltyLists.get(i).get("BATCH_NO").toString());
+						Quotehm.put("PLINE_CODE", qltyLists.get(i).get("PLINE_CODE").toString());
+						Send2 jg=new Send2();
+						CoreReturnObject oj=jg.SendJG(SPECIMEN_NO,"JG","JG",Quotehm);
+						String rinfo=oj.getV_errMsg().toString();
+						if(rinfo.equals("待发送的检验委托数据已经不存在,请核实数据!")){
+						String sqlord = " update QCM_JHY_SAMPLE_CONSIGN_JG r  set r.SUCCESS_MEMO='"+rinfo+"',r.YN='N' "
+								       +" where r.SPECIMEN_NO='"+SPECIMEN_NO+"' ";
+				         mapper.updateJudgeStatus(sqlord.toString());
+				         SqlSession.commit();
+						}
+				       
+					}
+				}
+				
+			} catch (Exception e) {
+				SqlSession.rollback();
+				SqlSession.close();
+				System.out.println("发送激光接口失败:"+e.getMessage());
+			}finally {
+				SqlSession.close();
+			}
+		
+		}
+	 
+		 //电弧炉熔炼成分自动判定
+			public void AutoTimeHDL() throws Exception {
+				try {
+					 SqlSession = QCM.COMMUNAL.SqlSessionBuilder.openSqlSession();
+					 mapper = SqlSession.getMapper(QCM.COMMUNAL.OrderSqMapper.class);
+					String sql="select f.HEAT_NO,f.MATERIAL_NO,f.DESIGN_KEY,f.SNAME,f.STEEL_CODE,f.ASSAY_NO from ( "
+							+" select k.STOVENO HEAT_NO,k.BILLETID MATERIAL_NO,k.ORDERNO DESIGN_KEY,'system' SNAME,k.DETERMINANTCARDNUMBER STEEL_CODE,t.ASSAY_NO  "
+							+" from kcx_turnofflist@xgcx k,zj_result_all@xgcx z,qcm_jhy_insp_elements t "
+							+" where k.BILLETID = z.BILLETID "
+							+" and k.STOVENO = t.HEAT_NO "
+							+" and t.heat_no like 'E%' "
+							+" and z.JUDGERESULT = '0' "
+							+" and z.R_CHEMRESULT = '0'  "
+							+" and z.CREATE_TIME > TO_DATE('2024-09-01 00:00:01','YYYY-MM-DD HH24:MI:SS')  "
+							+" and k.STOVENO is not null "
+							+" and k.BILLETID is not null "
+							+" and k.ORDERNO is not null "
+							+" and k.DETERMINANTCARDNUMBER is not null "
+							+" and t.ASSAY_NO is not null  "
+							+" group by k.STOVENO,k.BILLETID,k.ORDERNO,k.DETERMINANTCARDNUMBER,t.ASSAY_NO "
+							+" order by k.BILLETID) f "
+							+" where rownum <=100 ";
+					List<HashMap> qltyLists=mapper.query(sql.toString());
+					if(qltyLists!=null && qltyLists.size()>=1){
+
+						for (int i = 0; i < qltyLists.size(); i++) {
+							String heat_no = qltyLists.get(i).get("HEAT_NO").toString();//炉号
+							String material_no = qltyLists.get(i).get("MATERIAL_NO").toString();//子板号
+							String design_key = qltyLists.get(i).get("DESIGN_KEY").toString();//订单号
+							String username = qltyLists.get(i).get("SNAME").toString();//操作人
+							String grade_name = qltyLists.get(i).get("STEEL_CODE").toString();//牌号
+							String assay_no = qltyLists.get(i).get("ASSAY_NO").toString();//成分化验号
+							ArrayList<String> list = new ArrayList<String>();
+							list.add(assay_no);
+							System.out.println("\n子板号:"+material_no);
+							QcmJhyElementsServiceImpl impl = new QcmJhyElementsServiceImpl();
+							impl.RlChemJudgeByHuman(heat_no, material_no, design_key, username, grade_name, list);
+							System.out.println("\n子板号:"+material_no+"结束");
+						}
+					}
+					
+				} catch (Exception e) {
+					SqlSession.rollback();
+					SqlSession.close();
+					System.out.println("电弧炉熔炼成分自动判定失败:"+e.getMessage());
+				}finally {
+					SqlSession.close();
+				}
+			
+			}
+			
+	/**
+	 * 调整热处理号  
+	 * @param materialInfo
+	 * @return
+	 * @throws Exception
+	 */
+	public CoreReturnObject doProcessNos(HashMap parmas) throws Exception {
+		try {
+			String rclState =parmas.get("PROCESS_NOS").toString();//修改的热处理号
+			String sqlStr ="";
+			//判断是否是模拟焊后
+			String sqlmn="select * from QCM_JHY_SAMPLE_CONSIGN_D t where t.SMP_NO = '"+parmas.get("SMP_NO")+"' and t.SMP_LOCATION like '%模拟焊后%'  ";
+			List<HashMap> map2=mapper.query(sqlmn.toString());
+			if(map2!=null && map2.size()>=1){
+				sqlStr="select * from QCM_JHY_SAMPLE_CONSIGN_D t where t.smp_no = '"+parmas.get("SMP_NO")+"'  ";
+			}else{
+				sqlStr = "select * from QCM_JHY_SAMPLE_CONSIGN_D t"
+			     		+ " where t.BATCH_NO = '"+parmas.get("BATCH_NO")+"' "
+			     		+ " and t.SMP_NO = '"+parmas.get("SMP_NO")+"' ";
+//		      sqlStr = "select * from QCM_JHY_SAMPLE_CONSIGN_D t"
+//		     		+ " where t.BATCH_NO = '"+parmas.get("BATCH_NO")+"' "
+//		     		+ " and t.SPECIMEN_NO = '"+parmas.get("SPECIMEN_NO")+"' "
+//		     		+ " and t.SMP_NO = '"+parmas.get("SMP_NO")+"' ";
+			}
+		 	List<HashMap> map=mapper.query(sqlStr.toString());
+			if(map !=null && map.size()>=1){
+				String str = parmas.get("USER_NAME")+"修改热处理号为"+rclState;
+				for (HashMap<String,String> hashMap : map) {
+					sqlStr="";
+					sqlStr="select * from QCM_JHY_SAMPLE_CONSIGN_D t where t.specimen_no = '"+hashMap.get("SPECIMEN_NO")+"' and t.process_nos <>'"+rclState+"'";
+					List<HashMap> mappr=mapper.query(sqlStr.toString());
+					if(mappr!=null && mappr.size()>=1){
+					sqlStr="";
+					sqlStr="update QCM_JHY_SAMPLE_CONSIGN_D t set PROCESS_NOS='"+rclState+"',"
+							+ " ARTIFICIAL_MEMO=t.ARTIFICIAL_MEMO||',"+str+"'||'原委托热处理号为:'||t.PROCESS_NOS  "
+							+ " where t.BATCH_NO = '"+hashMap.get("BATCH_NO")+"' "
+				     		+ " and t.SPECIMEN_NO = '"+hashMap.get("SPECIMEN_NO")+"' "
+				     		+ " and t.SMP_NO = '"+hashMap.get("SMP_NO")+"' ";
+					  mapper.updateJudgeStatus(sqlStr.toString());
+					  
+					  String strMemo = "取样编号:"+hashMap.get("SPECIMEN_NO")+str+",原委托热处理号为:"+hashMap.get("PROCESS_NOS");
+						QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
+						qjog.setOperate_name(parmas.get("USER_NAME").toString());
+						qjog.setBatchno(parmas.get("BATCH_NO") == null ?"":parmas.get("BATCH_NO").toString());			
+						qjog.setOperate_type("调整热处理号");
+						qjog.setParams(parmas.get("MATERIAL_NO") == null ?"":parmas.get("MATERIAL_NO").toString());
+						qjog.setProd_line(parmas.get("PLINE_CODE") == null ?"":parmas.get("PLINE_CODE").toString());
+						qjog.setMemo(strMemo);
+						mapper.insertQcmJudgeOperateLog(qjog);
+					}
+				}
+			/*	if(map.get(0).get("STATUS").toString().equals("3")){
+				String INSPECTION_LOT = map.get(0).get("INSPECTION_LOT").toString();
+				String PLINE_CODE = map.get(0).get("PLINE_CODE").toString();
+				QcmJudgeLog qjlt = new  QcmJudgeLog();
+				qjlt.setJudge_type("R");
+				qjlt.setMaterial_no(INSPECTION_LOT);
+				qjlt.setCreate_name("sysZH");
+				qjlt.setProd_line(PLINE_CODE);
+				mapper.insertQcmJudgeLog(qjlt);
+				}*/
+			}
+			} catch (Exception e) {
+				SqlSession.rollback();
+				SqlSession.close();
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("调整失败!");
+				return cro;
+			}
+		SqlSession.commit();
+		SqlSession.close();
+		cro.setV_errCode(1);
+		return cro;
+	}
+	
+	//打印标识
+	public CoreReturnObject doPrintLog(String specimenNo) throws Exception {
+		try {
+		String sql= " update QCM_JHY_SAMPLE_CONSIGN_D t set t.print_log = '已打印' where t.specimen_no = '"+specimenNo+"' ";
+		mapper.updateJudgeStatus(sql.toString());
+		} catch (Exception e) {
+			SqlSession.rollback();
+			SqlSession.close();
+			cro.setV_errCode(-1);
+			cro.setV_errMsg("打印失败!");
+			return cro;
+		}
+		SqlSession.commit();
+		SqlSession.close();
+		return cro;
+	}
+	
+	//一键删除委托
+	public CoreReturnObject doDelAllWT(HashMap parmas) throws Exception {
+		try {
+		String upsql="";
+		String sql="select * from qcm_jhy_sample_consign_d t,qcm_jhy_sample_consign_m m, qcm_jhy_sample_r_ord r "
+				  +" where t.smp_no = r.smp_no "
+			      +" and t.smp_no = m.smp_no "
+				  +" and m.smp_no = r.smp_no  "
+				  +" and t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' ";
+		List<HashMap> hmap=mapper.query(sql.toString());
+		if(hmap!=null && hmap.size()>=1){
+			
+			//材质判定
+			if(!hmap.get(0).get("STATUS").equals("0") && (hmap.get(0).get("JUDGE_RESULT_CODE").equals("1") || hmap.get(0).get("JUDGE_RESULT_CODE").equals("2"))){
+			    upsql= " update QCM_JHY_SAMPLE_CONSIGN_D t set t.ONEMEMO = '已材质判定请取消判定' where t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' ";
+				mapper.updateJudgeStatus(upsql.toString());
+				SqlSession.commit();
+				SqlSession.close();
+				return cro;
+			}
+			
+			//不是按炉  下发委托  未撤回
+			if(!hmap.get(0).get("STATUS").equals("0") && !hmap.get(0).get("FREQ_CODE").equals("D")){
+			    upsql= " update QCM_JHY_SAMPLE_CONSIGN_D t set t.ONEMEMO = '已下发委托未撤回' where t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' ";
+				mapper.updateJudgeStatus(upsql.toString());
+				SqlSession.commit();
+				SqlSession.close();
+				return cro;
+			}
+			
+			//按炉  送样委托  未撤回
+			if(!hmap.get(0).get("STATUS").equals("0") && hmap.get(0).get("FREQ_CODE").equals("D") && hmap.get(0).get("QUOTE_CONSIGN_NO")==null){
+			    upsql= " update QCM_JHY_SAMPLE_CONSIGN_D t set t.ONEMEMO = '送样夹杂已下发委托未撤回' where t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' ";
+				mapper.updateJudgeStatus(upsql.toString());
+				SqlSession.commit();
+				SqlSession.close();
+				return cro;
+			}
+		}
+		//String uuid=this.getUUID();
+		upsql= " update QCM_JHY_SAMPLE_CONSIGN_D t set VALIDFLAG='0',t.STATUS = '6',t.HEAT_NO='del' || t.HEAT_NO "
+			 + " where t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' and t.smp_no = '"+parmas.get("SMP_NO")+"' ";
+		mapper.updateJudgeStatus(upsql.toString());
+		
+		//夹杂复样按炉
+		/*if(hmap.get(0).get("SMP_TYPE_CODE").equals("1") && hmap.get(0).get("FREQ_CODE").equals("D") && !hmap.get(0).get("JUDGE_RESULT_CODE").equals("1")){
+		    upsql= " update QCM_JHY_SAMPLE_CONSIGN_D t set t.HEAT_NO='del' || t.HEAT_NO "
+				 + " where t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' and t.smp_no = '"+parmas.get("SMP_NO")+"' ";
+			mapper.updateJudgeStatus(upsql.toString());
+		}*/
+		    String strMemo = parmas.get("DESIGN_KEY").toString()+','+hmap.get(0).get("STEEL_CODE")+','+hmap.get(0).get("THICK")
+		    		+",取样编号:"+parmas.get("SPECIMEN_NO")+"频次:"+hmap.get(0).get("FREQ_CODE")+"原因:"+parmas.get("MEMO").toString();
+			QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
+			qjog.setOperate_name(parmas.get("USER_NAME").toString());
+			qjog.setBatchno(parmas.get("BATCH_NO") == null ?"":parmas.get("BATCH_NO").toString());			
+			qjog.setOperate_type("一键删除委托");
+			qjog.setParams(parmas.get("MATERIAL_NO") == null ?"":parmas.get("MATERIAL_NO").toString());
+			qjog.setProd_line(parmas.get("PLINE_CODE") == null ?"":parmas.get("PLINE_CODE").toString());
+			qjog.setJudge_result(parmas.get("DESIGN_KEY") == null ?"":parmas.get("DESIGN_KEY").toString());
+			qjog.setMemo(strMemo);
+			mapper.insertQcmJudgeOperateLog(qjog);
+			
+		sql=" select * from qcm_jhy_sample_consign_d t "
+		   +" where t.smp_no = '"+parmas.get("SMP_NO")+"' and t.status <> '6' ";
+		List<HashMap> hmapwt=mapper.query(sql.toString());
+		if(hmapwt==null || hmapwt.size()<=0){
+			upsql= " update Qcm_Jhy_Sample_r_Ord t set t.DESIGN_KEY = 'del' || t.DESIGN_KEY,t.THICK='del' || t.THICK,t.INSPECTION_LOT='',t.HEAT_NO='del' || t.HEAT_NO "
+					 + " where t.smp_no = '"+parmas.get("SMP_NO")+"' ";
+				mapper.updateJudgeStatus(upsql.toString());
+		}
+		} catch (Exception e) {
+			SqlSession.rollback();
+			SqlSession.close();
+			cro.setV_errCode(-1);
+			cro.setV_errMsg("一键删除失败!");
+			return cro;
+		}
+		SqlSession.commit();
+		SqlSession.close();
+		return cro;
+	}
+	
+	//修改LRA
+	public CoreReturnObject UPZHBLRA(HashMap parmas) throws Exception {
+		try {
+		    //查询出系统默认指定的样数据
+			String sql="select * from qcm_jhy_sample_consign_d t where t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' ";
+			List<HashMap> hmap=mapper.query(sql.toString());
+			if(hmap==null || hmap.size()<=0){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("未找到相应修改数据!");
+				return cro;
+			}
+			String special_quote_memo = hmap.get(0).get("SPECIAL_QUOTE_MEMO").toString();
+			String BATCH_NO = hmap.get(0).get("BATCH_NO").toString();
+			
+			//查询出修改的数据
+			sql="";
+			sql="select * from qcm_jhy_sample_consign_d t where t.specimen_no = '"+parmas.get("SPECIMEN_NO_CK")+"' ";
+			List<HashMap> hmLAR=mapper.query(sql.toString());
+			if(hmLAR==null || hmLAR.size()<=0){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("未找到相应修改数据!");
+				return cro;
+			}
+			String BATCH_NO_CK=hmLAR.get(0).get("BATCH_NO").toString();//人工指定的轧批号
+			String SPECIMEN_NO_CK=parmas.get("SPECIMEN_NO_CK").toString();//人工指定的取样编号
+			String MATERIAL_NO_CK=hmLAR.get(0).get("MATERIAL_NO").toString();
+			String PLINE_CODE_CK=hmLAR.get(0).get("PLINE_CODE").toString();
+			String DESIGN_KEY_CK=hmLAR.get(0).get("DESIGN_KEY").toString();
+			
+			//开始修改人工指定的轧批
+			String updateD= " update QCM_JHY_SAMPLE_CONSIGN_D t set t.SPECIAL_QUOTE_MEMO = '"+special_quote_memo+"' where t.specimen_no = '"+parmas.get("SPECIMEN_NO_CK")+"' ";
+			mapper.updateJudgeStatus(updateD.toString());
+			
+			String updateI = " update qcm_jhy_sample_consign_d_item t "
+					+" set QUOTE_SPECIMEN_NO= '',QUOTE_SEQ = '',QUOTE_MEMO='', MEMOLAR='' "
+			        +" where  t.SPECIMEN_NO='"+parmas.get("SPECIMEN_NO_CK")+"' and t.PHY_CODE_L = 'HC' ";
+			mapper.updateJudgeStatus(updateI.toString());
+			
+			//清空默认指定的轧批D表
+			updateD="";
+		    updateD= " update QCM_JHY_SAMPLE_CONSIGN_D t set t.SPECIAL_QUOTE_MEMO = '' where t.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' ";
+			mapper.updateJudgeStatus(updateD.toString());
+			
+			//只要是还没有判定的就换成指定的引用轧批
+			sql="";
+		    sql="select i.* from qcm_jhy_sample_consign_d t,qcm_jhy_sample_consign_d_item i "
+				+" where t.specimen_no = i.specimen_no  and t.status != '3' "
+				+" and (i.specimen_no = '"+parmas.get("SPECIMEN_NO")+"' or i.quote_specimen_no = '"+parmas.get("SPECIMEN_NO")+"') "
+				+" and i.Phy_Code_l = 'HC' ";
+			List<HashMap> hmitem=mapper.query(sql.toString());
+			if(hmitem!=null && hmitem.size()>=1){
+				TreeSet<String> specimenNo=new TreeSet<String>();//取样编号
+				for (int i = 0; i < hmitem.size(); i++) {
+					HashMap obj=hmitem.get(i);
+					specimenNo.add((String)obj.get("SPECIMEN_NO"));
+				}
+				//循环改值
+				for(String str : specimenNo){
+					String updateItem= " update qcm_jhy_sample_consign_d_item t "
+							+" set QUOTE_SPECIMEN_NO= '"+SPECIMEN_NO_CK+"',QUOTE_MEMO='已引用'||'"+SPECIMEN_NO_CK+"', "
+							+ " MEMOLAR='加项项目已引用'||'"+BATCH_NO_CK+"' "
+					        +" where  t.SPECIMEN_NO='"+str+"' and t.PHY_CODE_L = 'HC' ";
+					mapper.updateJudgeStatus(updateItem.toString());
+				}
+			}
+			
+		    String strMemo = BATCH_NO+"修改成"+BATCH_NO_CK+"送样,取样编号:"+SPECIMEN_NO_CK;
+			QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
+			qjog.setOperate_name(parmas.get("USER_NAME").toString());
+			qjog.setBatchno(BATCH_NO_CK);			
+			qjog.setOperate_type("修改LRA");
+			qjog.setParams(MATERIAL_NO_CK);
+			qjog.setProd_line(PLINE_CODE_CK);
+			qjog.setJudge_result(DESIGN_KEY_CK);
+			qjog.setMemo(strMemo);
+			mapper.insertQcmJudgeOperateLog(qjog);
+
+		} catch (Exception e) {
+			SqlSession.rollback();
+			SqlSession.close();
+			cro.setV_errCode(-1);
+			cro.setV_errMsg("修改失败!");
+			return cro;
+		}
+		SqlSession.commit();
+		SqlSession.close();
+		return cro;
+	}
+	
+	
+	//预测换样
+	public CoreReturnObject doForecastRZ(HashMap parmas) throws Exception {
+		try {
+		    String sql="select * from qcm_jhy_sample_consign_d t where t.batch_no = '"+parmas.get("BATCH_NO")+"' and t.specimen_no ='"+parmas.get("SPECIMEN_NO")+"' "
+                     +" and t.rz_roll_mana_no is not null and t.status = '3' and rownum = 1";
+			List<HashMap> hmap=mapper.query(sql.toString());
+			if(hmap==null || hmap.size()<=0){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("未找到相应数据!");
+				return cro;
+			}
+			String RZ_ROLL_MANA_NO = hmap.get(0).get("RZ_ROLL_MANA_NO").toString();//轧辊单元
+			String RZ_MIXROLL = hmap.get(0).get("RZ_MIXROLL").toString();//组批区间
+			String RZ_OLD_SAMPL_NO = hmap.get(0).get("RZ_OLD_SAMPL_NO").toString();//预测抽样卷
+			String BATCH_NO = parmas.get("BATCH_NO").toString();//轧批号
+			String INSPECTION_LOT = hmap.get(0).get("INSPECTION_LOT").toString();//检验号
+			
+			String sql2 = "select * from qcm_jhy_sample_consign_d t where t.RZ_ROLL_MANA_NO = '"+RZ_ROLL_MANA_NO+"' and t.rz_mixroll = '"+RZ_MIXROLL+"' "
+                         +" and t.Rz_Old_Sampl_No = '"+RZ_OLD_SAMPL_NO+"' and t.batch_no <>'"+BATCH_NO+"' and t.pline_code = 'RZ1' ";
+			List<HashMap> hmap2=mapper.query(sql2.toString());
+			if(hmap2==null || hmap2.size()<=0){
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("未找到相应预测数据!");
+				return cro;
+			}
+
+			for (int i = 0; i < hmap2.size(); i++) {
+				HashMap obj=hmap2.get(i);
+				String SMP_NO = obj.get("SMP_NO").toString();
+				String SPECIMEN_NO = obj.get("SPECIMEN_NO").toString();
+				
+				//修改ORD表
+				String ordUpSql="update QCM_JHY_SAMPLE_R_ORD ord set ord.judge_status = '0' where ord.pline_code = 'RZ1' and ord.smp_no = '"+SMP_NO+"' ";
+				mapper.updateJudgeStatus(ordUpSql.toString());
+				
+				//修改D表
+				String dUpSql = " update qcm_jhy_sample_consign_d t set t.status = '0' ,t.send_id = '',t.send_name = '',t.send_time = '', "
+						      + " t.RZ_ROLL_MANA_NO = '',t.rz_mixroll = '',t.Rz_Old_Sampl_No = '',t.RZ_ROLL_SLAB_SEQ = '',t.CONSIGN_NO = '', "
+						      + " t.CONSIGN_NO_SEQ = '' where t.SPECIMEN_NO = '"+SPECIMEN_NO+"' ";
+				mapper.updateJudgeStatus(dUpSql.toString());
+			}
+			
+			//修改D表
+			String dUpSql = " update qcm_jhy_sample_consign_d t set t.SEND_MEMO = '预测换样'  where t.SPECIMEN_NO = '"+parmas.get("SPECIMEN_NO")+"' ";
+			mapper.updateJudgeStatus(dUpSql.toString());
+			
+			//预测抽样第一次不合格清除
+			String millUpSql = "update tbf02_spec_mill t set MIXROLL='' where t.COIL_NO in ( "
+                 +" select COIL_NO from tbh02_coil_comm c where c.OLD_SAMPL_NO like '"+BATCH_NO+"%' )";
+			mapper.updateJudgeStatus(millUpSql.toString());
+			
+			//查询预测下的所有子板
+			String coilSelSql="select t.pic_is_lock,t.inspection_lot,t.COIL_NO from qcm_judge_coil_result t "
+                            +" where t.INSPECTION_LOT = '"+INSPECTION_LOT+"' and t.COIL_NO not like '"+BATCH_NO+"%' ";
+			List<HashMap> hmap3=mapper.query(coilSelSql.toString());
+			if(hmap3 != null && hmap3.size()>=1){
+				for (int i = 0; i < hmap3.size(); i++) {
+					HashMap obj=hmap3.get(i);
+					String COIL_NO = obj.get("COIL_NO").toString();//子板号
+					
+					//异常处理界面解锁
+					String lockUpSql="update qcm_judge_locking a set a.unlock_type_code = '9', a.unlock_type_desc = '解除' "
+							        +" where MATERIAL_NO ='"+COIL_NO+"' and unlock_type_code is null and lock_type_code = 'P' ";
+					mapper.updateJudgeStatus(lockUpSql.toString());
+					
+					//热轧库存表解锁
+					String coilUpSql="UPDATE qcm_judge_coil_result T SET T.PIC_IS_LOCK = '0' where t.COIL_NO = '"+COIL_NO+"' ";
+			        mapper.updateJudgeStatus(coilUpSql.toString());
+				}
+			}
+			
+			
+				QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
+				qjog.setOperate_name(parmas.get("USER_NAME").toString());
+				qjog.setBatchno(BATCH_NO);			
+				qjog.setOperate_type("热轧预测换样");
+				qjog.setParams(RZ_OLD_SAMPL_NO);
+				qjog.setProd_line("RZ1");
+				qjog.setMemo(RZ_ROLL_MANA_NO+":"+RZ_MIXROLL+":"+BATCH_NO +":"+parmas.get("SPECIMEN_NO").toString());
+				mapper.insertQcmJudgeOperateLog(qjog);
+				
+		} catch (Exception e) {
+			SqlSession.rollback();
+			SqlSession.close();
+			cro.setV_errCode(-1);
+			cro.setV_errMsg("预测换样失败!");
+			return cro;
+		}
+		SqlSession.commit();
+		SqlSession.close();
+		return cro;
+	}
+	
+	//重置船检编号
+	public CoreReturnObject upShipInspec(HashMap parmas) throws Exception {
+		try {
+		   String cic= parmas.get("CERT_INST_CODE").toString();
+		   String uid= parmas.get("USERID").toString();
+		   String una= parmas.get("USERNAME").toString();
+		  // String YYMM= parmas.get("YYMM").toString();
+		   String upsql="update QCM_JHY_SHIP_INSPEC t set t.yn_log = '0' where t.Cert_Inst_Code = '"+cic+"' ";
+		   mapper.updateJudgeStatus(upsql.toString());
+		   
+		    String insql = "insert into qcm_jhy_ship_inspec "
+			 +" (cert_inst_code, cert_inst_name, pline_code, yymm,create_id, create_name, fh_log) "
+			+" select t.cert_inst_code,t.cert_inst_name,t.pline_code,to_char(sysdate,'yymm'), "
+			+" '"+uid+"','"+una+"',t.fh_log from qcm_jhy_ship_inspec t where t.Cert_Inst_Code = '"+cic+"' and rownum = 1 ";
+		   mapper.insert(insql);
+		  
+			/*SimpleDateFormat sdf = new SimpleDateFormat("yyMM");
+			String syh = sdf.format(new Date());
+			String syh1=syh;*/
+			String FH_LOG= parmas.get("FH_LOG").toString();//缩写
+		   // syh+=FH_LOG;
+		    
+		   /* if(!YYMM.equals(syh1)){
+		    	YYMM+=FH_LOG;
+		    	String uplog = "update QCM_JHY_SAMPLE_CONSIGN_D t set t.PRINT_SEQJLOT = '0' where t.PRINT_SEQJ like '"+YYMM+"%' and t.pline_code in ('ZB1','HB1') ";
+				mapper.updateJudgeStatus(uplog.toString());
+		    }*/
+		    String uplog = "update QCM_JHY_SAMPLE_CONSIGN_D t set t.PRINT_SEQJLOT = '0' where t.PRINT_SEQJ like '"+FH_LOG+"%' and t.pline_code in ('ZB1','HB1') ";
+			mapper.updateJudgeStatus(uplog.toString());
+		   
+		   SqlSession.commit();
+		} catch (Exception e) {
+			SqlSession.rollback();
+			SqlSession.close();
+			cro.setV_errCode(-1);
+			cro.setV_errMsg("重置失败!");
+			return cro;
+		}
+		cro.setV_errCode(1);
+		cro.setV_errMsg("重置成功!");
+		SqlSession.close();
+		return cro;
+	}
+	
+	//新增螺纹钢牌号
+		public CoreReturnObject AddLWGSTEEL(HashMap parmas) throws Exception {
+			try {
+				String steel=parmas.get("STEEL").toString();
+				String userid=parmas.get("USERID").toString();
+				String username=parmas.get("USERNAME").toString();
+				String sql="SELECT (max(T.SEQ) + 1) SEQ FROM QCM_JHY_STEEL T ";
+					HashMap result=mapper.queryOne(sql.toString());
+					BigDecimal seq=BigDecimal.ZERO;
+					if (result!=null && result.get("SEQ")!=null ) {
+						seq=(BigDecimal)result.get("SEQ");
+					}
+					
+			    String insql = "insert into QCM_JHY_STEEL "
+				 +" (SEQ, STEEL_NAME, REGULATION, CONTAIN,CREATE_ID, CREATE_NAME) "
+				+" VALUES ('"+seq+"','"+steel+"','1','0','"+userid+"','"+username+"')";
+			   mapper.insert(insql);
+			  
+			   SqlSession.commit();
+			} catch (Exception e) {
+				SqlSession.rollback();
+				SqlSession.close();
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("增加失败!"+e.getMessage());
+				return cro;
+			}
+			cro.setV_errCode(1);
+			cro.setV_errMsg("增加成功");
+			SqlSession.close();
+			return cro;
+		}
+		
+		//删除螺纹钢牌号
+		public CoreReturnObject delLWGSTEEL(HashMap parmas) throws Exception {
+			try {
+				String steel=parmas.get("STEEL").toString();
+				String userid=parmas.get("USERID").toString();
+				String username=parmas.get("USERNAME").toString();
+				
+			    String sql = "update QCM_JHY_STEEL t "
+							+" set t.yn_log = '0',t.delete_id='"+userid+"',t.delete_name='"+username+"',t.delete_time=sysdate "
+							+" where t.steel_name = '"+steel+"' ";
+			    mapper.updateJudgeStatus(sql.toString());
+			   SqlSession.commit();
+			} catch (Exception e) {
+				SqlSession.rollback();
+				SqlSession.close();
+				cro.setV_errCode(-1);
+				cro.setV_errMsg("增加失败!"+e.getMessage());
+				return cro;
+			}
+			cro.setV_errCode(1);
+			cro.setV_errMsg("增加成功");
+			SqlSession.close();
+			return cro;
+		}
+	
+}

BIN
.svn/pristine/12/127948c04822fd5192828a9f4669472f410c3270.svn-base


+ 46 - 0
.svn/pristine/12/12a7611a42e691de25f2382cab09d0506a378071.svn-base

@@ -0,0 +1,46 @@
+package QCM.JHY01.VO;
+
+public class JhyQuoteModel {
+	
+	private String specimen_no;
+	
+	
+	private String type_code;
+	
+	
+	private String type_name;
+
+
+	public String getSpecimen_no() {
+		return specimen_no;
+	}
+
+
+	public void setSpecimen_no(String specimen_no) {
+		this.specimen_no = specimen_no;
+	}
+
+
+	public String getType_code() {
+		return type_code;
+	}
+
+
+	public void setType_code(String type_code) {
+		this.type_code = type_code;
+	}
+
+
+	public String getType_name() {
+		return type_name;
+	}
+
+
+	public void setType_name(String type_name) {
+		this.type_name = type_name;
+	}
+	
+	
+	
+
+}

+ 111 - 0
.svn/pristine/12/12af71dc06c5479ddba8d7f3094de4001ced9758.svn-base

@@ -0,0 +1,111 @@
+package UIM;
+
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.util.List;
+import java.util.Map;
+
+import UIB.COM.XmlSqlParsersFactory;
+import CoreFS.SA01.CoreIComponent;
+import CoreFS.SA06.CoreReturnObject;
+
+public class UIM010340 extends CoreIComponent{
+	
+	public CoreReturnObject query(String productTime,String coilNo,String flag) throws SQLException
+	{
+		String sql = XmlSqlParsersFactory.getSql("UIM010340_01.SELECT");
+		if(flag.equals("1")){
+			sql += " AND LINE_TP = 'L'";
+		}
+		else if(flag.equals("2")){
+			sql += " AND LINE_TP = 'C'";
+		}
+		return this.getDao("KgDao").ExcuteQuery(sql, new Object[]{productTime,coilNo});
+	}
+	
+	public CoreReturnObject saveCoilYard(String coilNo,String yardAddr,String entryShift,
+			String entryGroup,String entryDtime,String reg_id) throws SQLException
+	{
+		CoreReturnObject cro = new CoreReturnObject();
+		Connection con=null;
+		//判断垛位是否存在
+		String sqlYard = "select 1 from c_tbk08_coil_yard t where t.clf_no = C_PKG_UIM.GET_FINALYARDNO_BYYARDFLAG(?)";
+		List yardList = this.getDao("KgDao").ExcuteQueryReturnList(sqlYard, new Object[]{yardAddr});
+		if(yardList.size() > 0){
+			//查询钢卷入库信息
+			String sqlEntry = "select COIL_NO from c_tbc02_coil_comm where OLD_SAMPL_NO = ? AND COIL_STAT = '2'";
+			List listEntry = this.getDao("KgDao").ExcuteQueryReturnList(sqlEntry,new Object[]{coilNo});
+			if(listEntry.size() == 0){
+				cro.setV_errCode(new Integer(1));
+				cro.setV_errMsg("此钢卷没有轧制完成,或者已经出库!");
+			}
+			else{
+				//查询钢卷出库信息
+				String sqlOut = "select CUR_LOAD_LOC from c_tbc02_coil_comm where OLD_SAMPL_NO = ?";
+				List listOut = this.getDao("KgDao").ExcuteQueryReturnList(sqlOut, new Object[]{coilNo});
+				//查询垛位是否存在钢卷
+				String sqlOut1 = "select OLD_SAMPL_NO  from c_tbc02_coil_comm where CUR_LOAD_LOC = ?";
+				List listOut1 = this.getDao("KgDao").ExcuteQueryReturnList(sqlOut1, new Object[]{yardAddr});
+				if(listOut.size() > 0 && !Tools.isEmpty(((Map)(listOut.get(0))).get("CUR_LOAD_LOC")))
+				{
+					cro.setV_errCode(new Integer(2));
+					cro.setV_errMsg("此钢卷已在垛位中存在!");
+				}
+				if(listOut1.size() > 0 && !Tools.isEmpty(((Map)(listOut1.get(0))).get("OLD_SAMPL_NO")))
+				{
+					cro.setV_errCode(new Integer(1));
+					cro.setV_errMsg("此垛位已有钢卷存在!");
+				}
+			    else{
+					//将入库操作信息和垛位信息加入冷轧成品公共表
+					String sqlucomm = "update c_tbc02_coil_comm set CUR_LOAD_LOC = ?," +
+							" CUR_LOAD_LOC_DTIME = TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS')," +
+							" YARD_ENTRY_SHIFT = ?, YARD_ENTRY_GROUP = ?, YARD_ENTRY_REG  = ?," +
+							" YARD_ENTRY_DTIME = ?, " +
+							" YARD_ENTRY_USE_TIME = TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS')" +
+							" where OLD_SAMPL_NO = ?";
+					this.getDao("KgDao").ExcuteNonQuery(sqlucomm, 
+					new Object[]{yardAddr,entryShift,entryGroup,reg_id,entryDtime,coilNo});
+					//将钢卷信息加入垛位表
+					long seq = 0;//移垛记录表主键
+					String sqlqmaxseq  ="select max(ROLL_SEQ) ROLL_SEQ from c_tbk08_coil_move";
+					PreparedStatement pSta =  this.getDao("KgDao").getPreparedStatement(sqlqmaxseq);
+					ResultSet rs = pSta.executeQuery();
+					con =pSta.getConnection();
+					if(rs.next()){
+						seq = rs.getLong("ROLL_SEQ")+1;
+					}
+					rs.close();
+					pSta.close();
+					con.close();
+					// 入库类型
+					String inType = "";
+					String sqlType = "select T.IN_YARD_KIND from C_TBC02_COIL_COMM T where T.OLD_SAMPL_NO = ?";
+					pSta = this.getDao("KgDao").getPreparedStatement(
+							sqlType);
+					pSta.setString(1, coilNo);
+					rs = pSta.executeQuery();
+					con=pSta.getConnection();
+					if (rs.next()) {
+						inType = rs.getString("IN_YARD_KIND");
+					}
+					rs.close();
+					pSta.close();
+					con.close();
+					String sqlimove = "insert into c_tbk08_coil_move T(T.ROLL_SEQ,T.CUR_LOAD_LOC_F,T.CUR_LOAD_LOC_T,T.COIL_NO,T.REG_ID,T.REG_SHIFT,T.REG_GROUP,T.REG_DTIME,T.REG_USE_ID,T.REG_USE_DTIME,MOVE_TYPE)" +
+							"VALUES(?,?,?,?,?,?,?,?,?,TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS'),decode(?,'1','02','2','02','3','05','4','05','5','04','6','04','7','04'))";
+					this.getDao("KgDao").ExcuteNonQuery(sqlimove, new Object[]{seq,"",yardAddr,coilNo,reg_id,entryShift,entryGroup,entryDtime,reg_id,inType});
+				}
+			}
+		}
+		else{
+			cro.setV_errCode(new Integer(3));
+			cro.setV_errMsg("垛位不存在!");
+		}
+		
+		return cro;
+	}
+
+}

BIN
.svn/pristine/12/12fd5f2deeacc28583534a0dd4abe0bf8c2f2119.svn-base


+ 136 - 0
.svn/pristine/13/1339932cde82a4360ac9ffb02a840cba442cccb7.svn-base

@@ -0,0 +1,136 @@
+package UIB.COM;
+
+import java.io.File;
+import java.net.URLDecoder;
+import java.util.ArrayList;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Queue;
+
+/**
+ * @desc 实现一个支持通配符的基于广度优先算法的文件查找器
+ * @author 梅贵平{meiguiping}
+ * @date 2010-8-26
+ */
+public class FileFinder
+{
+
+	/**
+	 * 查找文件。
+	 * 
+	 * @param baseDirName
+	 *            待查找的目录
+	 * @param targetFileName
+	 *            目标文件名,支持通配符形式
+	 * @param count
+	 *            期望结果数目,如果畏0,则表示查找全部。
+	 * @return 满足查询条件的文件名列表
+	 */
+	public static List findFiles(String baseDirName, String targetFileName,
+			int count) throws Exception
+	{
+		/**
+		 * 算法简述: 从某个给定的需查找的文件夹出发,搜索该文件夹的所有子文件夹及文件,
+		 * 若为文件,则进行匹配,匹配成功则加入结果集,若为子文件夹,则进队列。 队列不空,重复上述操作,队列为空,程序结束,返回结果。
+		 */
+		List fileList = new ArrayList();
+		// 判断目录是否存在
+		// File baseDir = new File(baseDirName);
+		File baseDir = new File(URLDecoder.decode(baseDirName, "utf-8"));
+		if (!baseDir.exists() || !baseDir.isDirectory())
+		{
+			System.out.println("文件查找失败:" + baseDirName + "不是一个目录!");
+			return fileList;
+		}
+		String tempName = null;
+		// 创建一个队列,Queue在第四章有定义
+		Queue queue = new LinkedList();
+		queue.offer(baseDir);// 入队
+		File tempFile = null;
+		while (!queue.isEmpty())
+		{
+			// 从队列中取目录
+			tempFile = (File) queue.poll();
+			if (tempFile.exists() && tempFile.isDirectory())
+			{
+				File[] files = tempFile.listFiles();
+				for (int i = 0; i < files.length; i++)
+				{
+					// 如果是目录则放进队列
+					if (files[i].isDirectory())
+					{
+						queue.add(files[i]);
+					} else
+					{
+						// 如果是文件则根据文件名与目标文件名进行匹配
+						tempName = files[i].getName();
+						if (FileFinder.wildcardMatch(targetFileName, tempName))
+						{
+							// 匹配成功,将文件名添加到结果集
+							fileList.add(files[i].getAbsoluteFile());
+							// 如果已经达到指定的数目,则退出循环
+							if ((count != 0) && (fileList.size() >= count))
+							{
+								return fileList;
+							}
+						}
+					}
+				}
+			}
+		}
+
+		return fileList;
+	}
+
+	/**
+	 * 通配符匹配
+	 * 
+	 * @param pattern
+	 *            通配符模式
+	 * @param str
+	 *            待匹配的字符串
+	 * @return 匹配成功则返回true,否则返回false
+	 */
+	private static boolean wildcardMatch(String pattern, String str)
+	{
+		int patternLength = pattern.length();
+		int strLength = str.length();
+		int strIndex = 0;
+		char ch;
+		for (int patternIndex = 0; patternIndex < patternLength; patternIndex++)
+		{
+			ch = pattern.charAt(patternIndex);
+			if (ch == '*')
+			{
+				// 通配符星号*表示可以匹配任意多个字符
+				while (strIndex < strLength)
+				{
+					if (wildcardMatch(pattern.substring(patternIndex + 1), str
+							.substring(strIndex)))
+					{
+						return true;
+					}
+					strIndex++;
+				}
+			} else if (ch == '?')
+			{
+				// 通配符问号?表示匹配任意一个字符
+				strIndex++;
+				if (strIndex > strLength)
+				{
+					// 表示str中已经没有字符匹配?了。
+					return false;
+				}
+			} else
+			{
+				if ((strIndex >= strLength) || (ch != str.charAt(strIndex)))
+				{
+					return false;
+				}
+				strIndex++;
+			}
+		}
+		return (strIndex == strLength);
+	}
+
+}

+ 67 - 0
.svn/pristine/13/1340bc69eea5af4e82cb320c6c49cc4f3d24856e.svn-base

@@ -0,0 +1,67 @@
+package UIK.UIK02;
+
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.util.ArrayList;
+import java.util.Hashtable;
+
+import UIB.COM.XmlSqlParsersFactory;
+
+import CoreFS.SA01.CoreIComponent;
+import CoreFS.SA06.CoreReturnObject;
+
+/**
+ * 酸轧实绩查询
+ * 
+ * @author siy
+ * @date 2010-9-19
+ */
+public class UIK020050 extends CoreIComponent {
+	/**
+	 * 查询酸轧作业实绩冷轧卷基础信息
+	 * 
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryColdCoilResult(String rollManaNo,
+			String beginTime, String endTime, String coilNo)
+			throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		String sql = XmlSqlParsersFactory.getSql("UIK020050_01.SELECT");
+		cro = this.getDao("KgDao").ExcuteQuery(sql,
+				new Object[] { rollManaNo, beginTime, endTime, coilNo });
+		return cro;
+	}
+
+	/**
+	 * 查询酸轧作业实绩
+	 * 
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryAcidRollingResult(String rollManaNo,
+			String beginTime, String endTime, String coilNo)
+			throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		String sql = XmlSqlParsersFactory.getSql("UIK020030_02.SELECT");
+		cro = this.getDao("KgDao").ExcuteQuery(sql,
+				new Object[] { rollManaNo, beginTime, endTime, coilNo });
+		return cro;
+	}
+
+	/**
+	 * 查询酸轧作业实绩缺陷信息
+	 * 
+	 * @return
+	 * @throws SQLException
+	 */
+	public CoreReturnObject queryRollingDefectResult(String rollManaNo,
+			String beginTime, String endTime, String coilNo)
+			throws SQLException {
+		CoreReturnObject cro = new CoreReturnObject();
+		String sql = XmlSqlParsersFactory.getSql("UIK020030_03.SELECT");
+		cro = this.getDao("KgDao").ExcuteQuery(sql,
+				new Object[] { rollManaNo, beginTime, endTime, coilNo });
+		return cro;
+	}
+}

+ 59 - 0
.svn/pristine/13/136d5354079c10ac5923368875e203e6faf74ec2.svn-base

@@ -0,0 +1,59 @@
+package UIF.UIF04;
+
+import java.sql.SQLException;
+import java.util.ArrayList;
+import java.lang.Object;
+import CoreFS.SA01.CoreIComponent;
+import CoreFS.SA06.CoreReturnObject;
+import UIB.COM.XmlSqlParsersFactory;
+
+public class UIF041040 extends CoreIComponent
+{
+	public CoreReturnObject Query_Roll_Len()
+	{
+		try
+		{
+			CoreReturnObject rtnobj=new CoreReturnObject();
+			String Sql = XmlSqlParsersFactory.getSql("UIF041040.Query_RollLen");
+			rtnobj=this.getDao("KgDao").ExcuteQuery(Sql);
+			return rtnobj;
+		}
+		catch(Exception ex)
+		{
+			CoreReturnObject err = new CoreReturnObject();
+			err.SetErrInfo(ex.toString());
+			return err;
+		}
+	}
+	public CoreReturnObject Query_InitData()
+	{
+		try
+		{
+			CoreReturnObject rtnobj=new CoreReturnObject();
+			String Sql = XmlSqlParsersFactory.getSql("UIF041040.Query_PLT");
+			rtnobj=this.getDao("KgDao").ExcuteQuery(Sql);
+			return rtnobj;
+		}
+		catch(Exception ex)
+		{
+			CoreReturnObject err = new CoreReturnObject();
+			err.SetErrInfo(ex.toString());
+			return err;
+		}
+	}
+	public CoreReturnObject Commit_Roll_Len(String ExeSql)
+	{
+		try
+		{
+			CoreReturnObject rtnobj=new CoreReturnObject();
+			rtnobj=this.getDao("KgDao").ExcuteNonQuery(ExeSql);		
+			return rtnobj;
+		}
+		catch(Exception ex)
+		{
+			CoreReturnObject err = new CoreReturnObject();
+			err.SetErrInfo(ex.toString());
+			return err;
+		}
+	}
+}

+ 275 - 0
.svn/pristine/13/137260c9fbe5222066ad6b2bcac57b3cceee68cf.svn-base

@@ -0,0 +1,275 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<queryMap desc="成品库库存数据查询">
+	<query id="UIM010230_01.SELECT"  desc="成品库库存数据查询">
+		<![CDATA[
+		--SELECT * FROM (
+		SELECT /*(CASE
+         WHEN XB_PACKAGE.GF_COMNNAME_FIND('E01002', A.CUR_PROG_CD) =
+              '连退成品充当待机' AND a.DEFECTIVE = 'Y' then
+          '1'
+         ELSE
+          '0'
+       END)  erji,*/
+       A.OLD_SAMPL_NO
+       --XB_PACKAGE.GF_COMNNAME_FIND('A01004' , A.PRODNM_CD)  PRODNM_CD 
+      ,
+       A.SPEC_STL_GRD,
+       (SELECT T.SM_CFNM
+          FROM TBZ00_COMMCD T
+         WHERE T.LG_CD = 'E01010'
+           AND T.SM_CD = A.NONORD_CAUSE_CD) NONORD_CAUSE_CD
+       
+      ,
+       A.COIL_THK,
+       A.COIL_WTH,
+       A.COIL_INDIA,
+      -- A.PACKAGE_FL PACKAGE_FL,
+       A.INSTR_COIL_THK,
+       A.INSTR_COIL_WTH,
+       A.ACT_WGT,
+       A.DCS_THK,
+       A.DCS_WTH,
+       A.FB_YN,
+       A.FB_REASON,
+       A.DEFECTIVE,
+       DECODE(A.ORD_FL, '1', '订单材', '2', '余材', '', '未判') ORD_FL,
+       A.ORD_NO,
+       A.ORD_SEQ,
+       A.CUR_LOAD_LOC,
+       DECODE(A.TOT_DEC_GRD,
+              '1',
+              '合格',
+              '2',
+              '不合格',
+              '3',
+              '次品',
+              '4',
+              '废品') TOT_DEC_GRD,
+       DECODE(A.INGR_DEC_GRD,
+              '0',
+              '综合判定取消',
+              '1',
+              '合格',
+              '2',
+              '不合格') INGR_DEC_GRD,
+       DECODE(A.MATLQLTY_DEC_GRD,
+              '0',
+              '无性能要求',
+              '1',
+              '合格',
+              '2',
+              '不合格') MATRL_END_CAUSE_CD,
+       DECODE(A.SIZE_DEC_RST, '1', '合格', '2', '不合格') SIZE_DEC_RST,
+       DECODE(A.EXTSHAPE_DEC_GRD,
+              '1',
+              '合格',
+              '2',
+              '订单外合格',
+              '3',
+              '次品',
+              '4',
+              '废品',
+              '待判') EXTSHAPE_DEC_GRD,
+       DECODE(A.WGT_DEC_RST, '1', '合格', '2', '不合格') WGT_DEC_RST,
+       C_PKG_UIM.GET_STDDATESTR(A.YARD_ENTRY_DTIME) YARD_ENTRY_DTIME,
+       C_PKG_UIM.GET_STDTIMESTR(A.YARD_ENTRY_USE_TIME) YARD_ENTRY_USE_TIME,
+       (SELECT USERNAME
+          FROM CORE_APP_USER U
+         WHERE U.USERID = A.YARD_ENTRY_REG) YARD_ENTRY_REG,
+       DECODE(A.YARD_ENTRY_SHIFT,
+              '0',
+              '常白班',
+              '1',
+              '早班',
+              '2',
+              '中班',
+              '3',
+              '晚班') YARD_ENTRY_SHIFT,
+       DECODE(A.YARD_ENTRY_GROUP,
+              '0',
+              '常白班',
+              '1',
+              '甲班',
+              '2',
+              '乙班',
+              '3',
+              '丙班',
+              '4',
+              '丁班') YARD_ENTRY_GROUP,
+       SUBSTR(B.SLAB_NO, 0, 10) CHARGE_NO,
+       (SELECT T.SM_CFNM
+          FROM TBZ00_COMMCD T
+         WHERE T.LG_CD = 'A01012'
+           AND T.SM_CD = C.DLIV_TP) DLIV_TP,
+       (SELECT T.CUST_NM
+          FROM TBZ00_CUSTOMER T
+         WHERE T.CUST_CD = D.ORDCUST_CD) ORDCUST_CD
+       /*,DECODE(A.CUR_PROG_CD,'DRC','连退卷充当待机','DBA','重卷指示待机','DBB','重卷作业待机'
+                      ,'DCA','包装指示待机','DCB','包装作业待机','DED','综合判定待机','DFA','发货指示待机'
+                      ,'DFB','发货待机','CCA','连退作业指示待机','CCB','连退作业待机','CCC','连退卷取待机'
+                      ) CUR_PROG_CD*/,
+       (CASE
+         WHEN XB_PACKAGE.GF_COMNNAME_FIND('E01002', A.CUR_PROG_CD) =
+              '连退成品充当待机' AND a.DEFECTIVE = 'Y' then
+          '二级库存'
+         ELSE
+          XB_PACKAGE.GF_COMNNAME_FIND('E01002', a.CUR_PROG_CD)
+       END)
+       
+       CUR_PROG_CD,
+       C_PKG_UIM.GET_STDDATESTR(C.ORD_DEVLMT_DATE) ORD_DEVLMT_DATE,
+       E.SMP_SEND_DTIME,
+       E.SMP_WORK_DTIME,
+       TO_CHAR(TO_DATE(A.TOT_DEC_DTIME, 'YYYY-MM-DD HH24:MI:SS'),
+               'YYYY-MM-DD HH24:MI:SS') QLTY_DCS_DTIME,
+       E.SMP_INTO_DTIME,
+       TO_CHAR(ROUND(((TO_DATE(E.SMP_SEND_DTIME, 'YYYY-MM-DD HH24:MI:SS') -
+                     TO_DATE(A.MILL_DTIME, 'YYYY-MM-DD HH24:MI:SS')) *
+                     86400) / 3600,
+                     1)) GET_SEND_DTIME,
+       TO_CHAR(ROUND(((TO_DATE(A.TOT_DEC_DTIME, 'YYYY-MM-DD HH24:MI:SS') -
+                     TO_DATE(E.SMP_SEND_DTIME, 'YYYY-MM-DD HH24:MI:SS')) *
+                     86400) / 3600,
+                     1)) TO_YANG_DTIME,
+       C_PKG_UIM.GET_STDTIMESTR(A.MILL_DTIME) MILL_DTIME,
+       C.XSQY,
+       TO_CHAR(TO_DATE(J.DLIV_DIR_DATE, 'YYYY-MM-DD'), 'YYYY-MM-DD') || '/' || '' AFFIRMTIME,
+       C_PKG_UIM.GET_STDDATESTR(C.ORD_PLAN_DATA) ORD_PLAN_DATA,
+       pkg_quality_comm.FZ00_COMM('A01010',A.PACKAGE_LEVEL) PACKAGE_LEVEL,
+       DECODE(A.CAL_TYPE, '2', '返修', '3', '过渡', NULL) RCAL,
+       A.ORG_ORD_NO,
+       A.ORG_ORD_SEQ,
+       A.BEF_STL_GRD,
+       A.EXTSHAPE_QUALITY,
+       F.CAL_NO,
+       H.STL_GRD,
+       B.SLAB_DCS_DETAIL BPBZ,
+       k.C_EXTSHAPE_REQ,
+       K.C_PRODNM_CD,
+       K.MK_CONTENT,-----------订单注备
+      -- A.PRODNM_CD,
+/*  XB_PACKAGE.GF_COMNNAME_FIND('B02001', A.CRK_CD1) || CASE
+         WHEN A.CRK_CD2 IS NOT NULL THEN
+          '+'
+         ELSE
+          ' '
+       END || XB_PACKAGE.GF_COMNNAME_FIND('B02001', A.CRK_CD2) COIL_CRK,*/
+       XB_PACKAGE.GF_COMNNAME_FIND('B02001', A.CRK_CD1) CRK_CD1,
+       REGEXP_SUBSTR(A.CRK_CD1_TYPE, '[【][A-Za-z0-9,-]+[】]$') CRK_CD1_TYPE,
+       XB_PACKAGE.GF_COMNNAME_FIND('B02001', A.CRK_CD2) CRK_CD2,
+       REGEXP_SUBSTR(A.CRK_CD2_TYPE, '[【][A-Za-z0-9,-]+[】]$') CRK_CD2_TYPE,
+       XB_PACKAGE.GF_COMNNAME_FIND('B02001', A.CRK_CD3) CRK_CD3,
+       REGEXP_SUBSTR(A.CRK_CD3_TYPE, '[【][A-Za-z0-9,-]+[】]$') CRK_CD3_TYPE,
+       XB_PACKAGE.GF_COMNNAME_FIND('B02001', A.CRK_CD4) CRK_CD4,
+       REGEXP_SUBSTR(A.CRK_CD4_TYPE, '[【][A-Za-z0-9,-]+[】]$') CRK_CD4_TYPE,
+       XB_PACKAGE.GF_COMNNAME_FIND('B02001', A.CRK_CD5) CRK_CD5,
+       REGEXP_SUBSTR(A.CRK_CD5_TYPE, '[【][A-Za-z0-9,-]+[】]$') CRK_CD5_TYPE
+       ,TA.*
+       ,K.ROLL_SURFACE_YN  --辊面要求
+       ,K.ANNOITA_YN  --涂油要求
+       ,(CASE WHEN A.ORD_FL = '2' THEN '' ELSE
+         K.C_PRODNM_CD || '/' || C.C_EXTSHAPE_REQ || '/' ||
+         SUBSTR(PKG_QUALITY_COMM.FZ00_COMM('A01010', C.PAKMTH_TP), 0, 1) ||
+         '/大于' || C.PROD_WGT_MIN || '小于' || C.PROD_WGT_MAX || '/' ||
+         PKG_QUALITY_COMM.FZ00_COMM('A01010', C.PAKMTH_TP) || '/厚度(' ||
+         K.C_ORD_THK_MIN || '~' || K.C_ORD_THK_MAX || ')/宽度(' ||
+         K.C_ORD_WTH_MIN || '~' || K.C_ORD_WTH_MAX || ')/内径(' ||
+         C.C_ORD_INDIA || ')' END) JISHUYAOQIU
+  FROM C_TBC02_COIL_COMM A,
+       TBG02_SLAB_COMM B,
+       TBA01_ORD_LINE C,
+       TBA01_ORD_COMM D,
+       TBJ01_DLIV_DIR J,
+       TBB02_LOT_COM E,
+       TBE02_ORD_PRC K,
+       (SELECT CK.STL_GRD      STL_GRD,
+               CK.SPEC_STL_GRD SPEC_STL_GRD,
+               CT.C_COIL_NO    C_COIL_NO
+          FROM C_TBK02_COIL_COMM CK, C_TBF03_SPEC_MILL CT
+         WHERE CK.OLD_SAMPL_NO = CT.COIL_NO) H,
+       (SELECT MAX(CAL_NO) CAL_NO, EXIT_COIL_NO
+          FROM L_TBF03_SPEC_MILL
+         GROUP BY EXIT_COIL_NO) F
+         ,(SELECT T1.OLD_SAMPL_NO  OLDSAMPLNO,
+         	      MAX(DECODE(SUBSTR(T2.QLTY_CD, 1, 2) || T3.MS_QLTY_RP,
+                  'YS000',
+                  T2.QLTY_VAL_WK,
+                  NULL)) LC_YSREL --屈服强度REL   ReL
+      ,
+       MAX(DECODE(SUBSTR(T2.QLTY_CD, 1, 2) || T3.MS_QLTY_RP,
+                  'YS0.2',
+                  T2.QLTY_VAL_WK,
+                  NULL)) LC_YSRP --屈服强度Rp0.2   Rp0.2
+      ,
+       MAX(DECODE(SUBSTR(T2.QLTY_CD, 1, 2) || T3.MS_QLTY_RP,
+                  'EL050',
+                  T2.QLTY_VAL_WK,
+                  NULL)) LC_EL50 --伸长率A50  伸长率A50
+      ,
+       MAX(DECODE(SUBSTR(T2.QLTY_CD, 1, 2) || T3.MS_QLTY_RP,
+                  'EL080',
+                  T2.QLTY_VAL_WK,
+                  NULL)) LC_EL80 --伸长率A50  伸长率A80
+      ,
+       MAX(DECODE(SUBSTR(T2.QLTY_CD, 1, 2) || T3.MS_QLTY_RP,
+                  'EL000',
+                  T2.QLTY_VAL_WK,
+                  NULL)) LC_EL --伸长率A(非定标) 伸长率A
+      ,
+       MAX(DECODE(SUBSTR(T2.QLTY_CD, 1, 2), 'TE', T2.QLTY_VAL_WK, NULL)) LC_TE --抗拉强度                            抗拉强度
+      ,
+       MAX(DECODE(T2.QLTY_CD, 'TT09', T2.QLTY_VAL_WK, NULL)) LC_R --r值
+      ,
+       MAX(DECODE(T2.QLTY_CD, 'TT20', T2.QLTY_VAL_WK, NULL)) LC_N --n值
+      ,
+       MAX(DECODE(T2.QLTY_CD, 'TT19', T2.QLTY_VAL_WK, NULL)) LC_BH --烘烤硬化
+       ,
+       MAX(DECODE(T2.QLTY_CD, 'DC01', T2.QLTY_VAL_WK, NULL)) LC_TS --铁损  
+      ,
+       MAX(DECODE(T2.QLTY_CD, 'DC02', T2.QLTY_VAL_WK, NULL)) LC_CG -- 磁感
+      ,
+       ROUND(AVG(CASE WHEN SUBSTR(T4.QLTY_CD,1,2) = 'HD' THEN T4.QLTY_VAL_WK ELSE NULL END),1)  LC_YD  ---硬度
+
+  FROM C_TBC02_COIL_COMM T1, TBB02_WORK_QLTY T2 , TBB01_SEQ_QLTY  T3  , TBB02_REWORK_QLTY T4
+ WHERE T1.SMP_NO = T2.SMP_NO
+   AND T1.SMP_CUT_LOC = T2.SMP_CUT_LOC
+   AND T1.SMP_NO = T4.SMP_NO(+)
+   AND T1.SMP_CUT_LOC = T4.SMP_CUT_LOC(+)
+   AND T2.QLTY_CD     = T3.QLTY_CD
+   AND T1.COIL_STAT='2'
+   GROUP BY T1.OLD_SAMPL_NO) TA
+ WHERE '1' = '1'
+   AND A.SLAB_NO = B.SLAB_NO(+)
+   AND A.ORD_NO = C.ORD_NO(+)
+   AND A.ORD_SEQ = C.ORD_SEQ(+)
+   AND A.ORD_NO = D.ORD_NO(+)
+   AND A.SMP_NO = E.SMP_NO(+)
+   AND A.ORD_NO = K.ORD_NO(+)
+   AND A.ORD_SEQ = K.ORD_SEQ(+)
+   AND A.DLIV_DIRNO = J.DLIV_DIRNO(+)
+   AND A.OLD_SAMPL_NO = F.EXIT_COIL_NO(+)
+   AND A.COIL_STAT = '2'
+   AND A.PACKAGE_FL='0'   --中间库只存放未包装的
+   AND A.OLD_SAMPL_NO = TA.OLDSAMPLNO(+)
+   AND NVL(A.EXTSHAPE_QUALITY,'NULLP') NOT IN('FP','CP')---屏蔽废次卷
+   AND SUBSTR(A.OLD_SAMPL_NO, 1, 12) = H.C_COIL_NO(+)
+   --AND A.CUR_PROG_CD  NOT IN ('DFA'  ,'DFB')
+   AND A.OLD_SAMPL_NO || '&' LIKE '%' || ? || '%'
+   AND A.SPEC_STL_GRD || '&' LIKE ? || '%'
+   AND A.CUR_LOAD_LOC LIKE ? || '%'
+   AND A.COIL_THK >= NVL(?, '000')
+   AND A.COIL_THK <= NVL(?, '999')
+   AND A.COIL_WTH >= NVL(?, '00000')
+   AND A.COIL_WTH <= NVL(?, '99999')
+   AND SUBSTR(NVL(A.YARD_ENTRY_DTIME, 99999999999999), 1, 8) >= NVL(?, 0)
+   AND SUBSTR(NVL(A.YARD_ENTRY_DTIME, 0), 1, 8) <= NVL(?, 99999999999999)
+   AND A.ORD_NO || '&' LIKE ? || '%'
+   AND A.CUR_PROG_CD || '&' LIKE ? || '%'
+   AND C.ORD_DEVLMT_DATE || '&' LIKE ? || '%'
+   AND E.SMP_SEND_DTIME || '&' LIKE ? || '%'
+   AND A.PRODNM_CD || '&' LIKE ? || '%'
+   AND A.ORD_FL || '&' LIKE ? || '%'  --)T WHERE T.PACKAGE_FL='0' OR T.ERJI='1'
+
+		 ]]>
+	</query>
+</queryMap>

+ 209 - 0
.svn/pristine/14/14051067536623931c8afddddbafa3371bd6b4b7.svn-base

@@ -0,0 +1,209 @@
+package UIB.JHY;
+
+import CoreFS.SA01.CoreIComponent;
+import CoreFS.SA06.CoreReturnObject;
+import UIB.COM.XmlSqlParsersFactory;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONException;
+import com.alibaba.fastjson.JSONObject;
+import org.apache.axis.client.Call;
+import org.apache.axis.client.Service;
+import org.apache.commons.collections.CollectionUtils;
+import org.springframework.jdbc.support.rowset.SqlRowSet;
+
+import javax.xml.namespace.QName;
+import javax.xml.rpc.ParameterMode;
+import javax.xml.rpc.encoding.XMLType;
+import java.net.URL;
+import java.sql.ResultSet;
+import java.sql.ResultSetMetaData;
+import java.sql.SQLException;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @author meiguiping
+ * @desc 按检验项目对原始数据查询
+ * @date 2014/3/27
+ */
+public class JHY02 extends CoreIComponent {
+    /**
+     * qltyCD2 二级编码 即:拉力,冲击等区分
+     * qltyCD3 三级编码 即:伸长率,屈服强度,抗拉强度等
+     * smp_no  委托编号
+     */
+    public CoreReturnObject doQltyCdQuery(String smp_no, String specimen_no, String seq, String qltyCD2, String qltyCD3) throws Exception {
+        //获取所有的检化验编码,如a,b,Lo,S等
+
+        CoreReturnObject cro = new CoreReturnObject();
+        String sqlOne = XmlSqlParsersFactory.getSql("JHY02.QLTY_QCM_SELECT");
+        cro = this.getDao("testDao").ExecutequeryForRowSet(sqlOne, new Object[]{smp_no, qltyCD3});
+        SqlRowSet srs = (SqlRowSet) cro.getResult();
+
+        //获取目的SQL
+        String repSql = ",MAX(DECODE('{2}', T3.QLTY_OPE_CD , T3.QLTY_VAL , NULL)) \"{3}\"";
+        String temp = "";
+        StringBuffer sBuffer = new StringBuffer(350);
+        String qltyNm = "";
+        while (srs.next()) {
+            if (srs.getString(1) == null) {
+                continue;
+            }
+            temp = repSql.replaceFirst("[{]+[2]+[}]+", srs.getString(1)).replaceFirst("[{]+[3]+[}]+", srs.getString("QLTY_OPE_CFNM"));//检验项目
+            sBuffer.append(temp);
+        }
+        String sqlAim = XmlSqlParsersFactory
+                .getSql("JHY02.QLTY_QCMVAL_SELECT")
+                .replaceFirst("[{]+[1]+[}]+", sBuffer.toString());
+
+        cro = this.getDao("testDao").ExcuteQuery(sqlAim, new Object[]{smp_no, qltyCD2, qltyCD3, smp_no});
+
+        return cro;
+    }
+
+    /**
+     * @param list 取样编号集合
+     * @return CoreFS.SA06.CoreReturnObject
+     * @desc 发送试样检测值
+     * @date 2022/7/16 17:56
+     * @author Ljy
+     */
+    public CoreReturnObject doSendQltyValue(ArrayList list) throws Exception {
+        //String urlStr = "http://172.16.0.127:8089/Quality/WebService?wsdl";
+    	//22.09.09 从新改了服务
+    	String urlStr = "http://10.90.0.127:8089/Quality/WebService?wsdl";
+
+        CoreReturnObject cro = new CoreReturnObject();
+        if(CollectionUtils.isEmpty(list)) {
+            cro.setResult("请选择要发送的取样信息!");
+            return cro;
+        }
+
+        if(list.size() != 2) {
+            cro.setResult("请选择要发送的取样信息!");
+            return cro;
+        }
+        List<String> specimen_noList = (List<String>) list.get(0);
+        String create_name = (String) list.get(1);
+
+        if(CollectionUtils.isEmpty(specimen_noList)) {
+            cro.setResult("请选择要发送的取样信息!");
+            return cro;
+        }
+
+        String ret = "";
+        String tar = "";
+        JSONArray array = new JSONArray();
+        for (String specimen_no : specimen_noList) {
+            String sqlOne = XmlSqlParsersFactory.getSql("JHY02.QLTY_SEND_ITEM_VALUE_SELECT").replace("?", "'" + specimen_no + "'");
+            ResultSet rs = this.getDao("testDao").ExceuteQueryForResultSet(sqlOne, new Object[]{specimen_no});
+            JSONObject arrayjo = resultSetToJsonArry(rs, specimen_no, create_name);
+            array.add(arrayjo);
+        }
+        if (array.size() <= 0) {
+            cro.setResult("未查询到试样检测值!");
+            return cro;
+        }
+        Object[] values = new Object[1];
+        tar = array.toJSONString();
+        values[0] = tar;
+        try {
+            ret = webServiceAxisCase(urlStr,
+                    "http://dao.hnshituo.com/", "SetPHYResult", values);
+            System.out.println("发送试样检测值返回数据---" + ret);
+
+            JSONObject rtjo = JSONObject.parseObject(ret);
+            if (rtjo.get("code") == null || Integer.parseInt(rtjo.get("code").toString()) != 200) {
+                System.out.println("发送试样检测值失败!json:" + tar);
+                cro.setResult(rtjo.get("message"));
+            } else {
+                //修改发送状态
+                for (String specimen_no : specimen_noList) {
+                    ComCallProc comCallProc = new ComCallProc();
+                    ArrayList send_flag_list = new ArrayList();
+                    send_flag_list.add("JHY02.UPDATE_SEND_FLAG");
+                    send_flag_list.add(specimen_no);
+                    ComSave comSave = new ComSave();
+                    comSave.doSimpleSave("testDao",send_flag_list);
+                }
+                cro.setResult("200");
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return cro;
+    }
+
+    /**
+     * 将resultset 转为json数组
+     *
+     * @param rs
+     * @return
+     * @throws SQLException
+     * @throws JSONException
+     */
+    public static JSONObject resultSetToJsonArry(ResultSet rs, String specimen_no, String create_name) throws SQLException, JSONException {
+        ResultSetMetaData metaData = rs.getMetaData();
+        int columnCount = metaData.getColumnCount();
+        JSONObject jo = new JSONObject();
+        JSONObject arrayjo = new JSONObject();
+        JSONArray ja = new JSONArray();
+        while (rs.next()) {
+            JSONObject jsonObj = new JSONObject();
+            for (int i = 1; i <= columnCount; i++) {
+                String columnName = metaData.getColumnLabel(i);
+                String value = rs.getString(columnName);
+                jsonObj.put(columnName, value);
+            }
+            jsonObj.put("CREATE_NAME", create_name);
+            ja.add(jsonObj);
+        }
+        arrayjo.put("PHY", ja);
+        arrayjo.put("SPECIMEN_NO", specimen_no);
+        return arrayjo;
+        // return array1;
+    }
+
+    /**
+     * 调用webservice接口
+     * url:调用路径
+     * TargetSpaceName:命名空间名,可在浏览器输入接口地址查看
+     * serviceName:调用方法名
+     * keys Object[] 对象数组类型:方法参数名
+     * values Object[] 对象数组类型:参数值
+     */
+    public static String webServiceAxisCase(String url, String TargetSpaceName, String serviceName,
+                                            Object[] values) throws Exception {
+        if (values.length != 1)
+            throw new IllegalArgumentException("接口方法参数与参数值不匹配!");
+        String result = "";
+        try {
+            String endpoint = url;
+            //直接引用远程的wsdl文件
+            Service service = new Service();
+            Call call = (Call) service.createCall();
+            call.setTargetEndpointAddress(new URL(endpoint));
+            //call.setOperationName(serviceName);//调用的方法名 当这种调用不到的时候,可以使用下面的,加入命名空间名
+            call.setOperationName(new QName(TargetSpaceName, serviceName));// 调用的方法名 加入命名空间名
+            for (int i = 0; i < values.length; i++) {
+                //String key = (String) keys[i]; //方法参数
+                Object value = values[i]; //参数值
+                if (value == null) {
+                    call.addParameter("arg" + i, XMLType.XSD_STRING, ParameterMode.IN);
+                } else if (value instanceof String) {
+                    call.addParameter("arg" + i, XMLType.XSD_STRING, ParameterMode.IN);
+                } else if (value instanceof Integer) {
+                    call.addParameter("arg" + i, XMLType.XSD_INTEGER, ParameterMode.IN);
+                } else if (value instanceof Boolean) {
+                    call.addParameter("arg" + i, XMLType.XSD_BOOLEAN, ParameterMode.IN);
+                }
+            }
+            call.setReturnType(XMLType.XSD_STRING);// 设置返回类型
+            result = (String) call.invoke(values);
+            // 给方法传递参数,并且调用方法
+        } catch (Exception e) {
+            System.err.println(e.toString());
+        }
+        return result;
+    }
+}

+ 45 - 0
.svn/pristine/14/1422b277e3078a5417b1c11202a21e5f67c3bac4.svn-base

@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<queryMap desc="成品库入库管理">
+	<query id="UIM010200_01.SELECT"  desc="查询成品库待入库钢卷信息">
+		<![CDATA[
+		SELECT 'FALSE' CHK,
+		       T.OLD_SAMPL_NO COIL_NO,
+		       T.COIL_THK THICK,
+		       T.COIL_WTH WIDTH,
+		       T.COIL_LEN LENGTH,
+		       T.ACT_WGT WEIGHT,
+		       T.SPEC_STL_GRD,
+		       DECODE(T.CUR_PROG_CD,
+		              'DDB',
+		              '成品库入库待机',
+		              'DRC',
+		              '连退卷充当待机',
+		              'DBA',
+		              '重卷指示待机',
+		              'DBB',
+		              '重卷作业待机',
+		              'DCA',
+		              '包装指示待机',
+		              'DCB',
+		              '包装作业待机',
+		              'DED',
+		              '综合判定待机',
+		              'DFA',
+		              '发货指示待机',
+		              'DFB',
+		              '发货待机') CUR_PROG_CD,
+		       T.ORD_NO,
+		       T.ORD_SEQ,
+		       C_PKG_UIM.GET_STDDATESTR(T.MILL_DTIME) PRODUCTED_TIME,
+		       decode(T.CAL_TYPE,'2','√','3','√') RCAL
+		  FROM C_TBC02_COIL_COMM T
+		 WHERE T.COIL_STAT = '2'
+		   AND T.CUR_LOAD_LOC IS NULL
+		   AND nvl(T.SHIP_PROG_CD,'00') <>'06'--排除排车状态清除垛位的卷
+		   --AND SUBSTR(T.MILL_DTIME,1,8)||'&' LIKE :1||'%'
+		   AND SUBSTR(T.MILL_DTIME,1,8)>=NVL(:1,'00000000' )
+		   AND SUBSTR(T.MILL_DTIME,1,8)<=NVL(:2,'99999999' )
+		   AND T.OLD_SAMPL_NO||'&' LIKE :3||'%'
+		 ]]>
+	</query>
+</queryMap>

BIN
.svn/pristine/14/14dfa28510c62eee00812e8d231f72ec69ac45b9.svn-base


+ 3 - 0
.svn/pristine/14/14f6e5aedc400d47fda71c2fdc8ac3c1ac37ec0b.svn-base

@@ -0,0 +1,3 @@
+Manifest-Version: 1.0
+Class-Path: 
+

+ 59 - 0
.svn/pristine/15/151217c7372f19c1da9c58dadb961171a9f952a7.svn-base

@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding='UTF-8'?>
+
+<queryMap desc="编码对照表">
+
+
+<query id="UIB100102_01.SELECT"   desc="查询编码">
+    SELECT      T.*   ,T.QLTY_CD QLTY_CD_XP FROM        TBB10_QLTY_CD  T WHERE T.QLTY_CD LIKE ?||'%'
+</query>
+
+
+<query id="UIB100102_01.UPDATE" desc="更新">
+	UPDATE       TBB10_QLTY_CD   T
+	SET          QLTY_CD_1       =              ?
+	            ,QLTY_CD_2       =              ?
+	            ,QLTY_CD_2_NM    =              ?
+	            ,QLTY_CD_3       =              ?
+	            ,QLTY_CD_3_NM    =              ?
+	            ,QLTY_CD         =              ?
+	            ,QLTY_CD_CFNM    =              ?
+	            ,QLTY_UNIT       =              ?
+	            ,QLTY_TYPE       =              ?
+	            ,DISPLAY_SEQ     =              ?
+	            ,QLTY_OPE_CD     =              ?
+	            ,QLTY_DIR        =              ?
+	            ,QLTY_SIZ        =              ?
+	            ,QLTY_TEM        =              ? 
+	            ,QLTY_RP         =              ?
+	WHERE        QLTY_CD         =              ?       
+</query>
+
+<query id="UIB100102_01.INSERT" desc="插入">
+	INSERT       
+	INTO         TBB10_QLTY_CD
+	            (
+	             QLTY_CD_1
+	            ,QLTY_CD_2
+	            ,QLTY_CD_2_NM
+	            ,QLTY_CD_3
+	            ,QLTY_CD_3_NM
+	            ,QLTY_CD
+	            ,QLTY_CD_CFNM
+	            ,QLTY_UNIT
+	            ,QLTY_TYPE
+	            ,DISPLAY_SEQ
+	            ,QLTY_OPE_CD
+	            ,QLTY_DIR
+	            ,QLTY_SIZ
+	            ,QLTY_TEM
+	            ,QLTY_RP
+	            )             
+	VALUES      (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?) 
+</query>
+
+
+<query id="UIB100102_01.DELETE" desc="删除">
+	DELETE FROM TBB10_QLTY_CD WHERE QLTY_CD = ?
+</query>
+
+</queryMap>

+ 222 - 0
.svn/pristine/15/1518fc00d884a8254c3d96cd20156d57d7970e01.svn-base

@@ -0,0 +1,222 @@
+<?xml version="1.0" encoding='UTF-8'?>
+
+<queryMap desc="">
+
+<query id="UIF042040.Query_RollPlan_Mill" desc='得到轧辊单元计划的明细信息'>
+	SELECT F.ROLL_MANA_NO,
+	F.ROLL_COIL_SEQ,
+	XB_PACKAGE.GF_COMNNAME_FIND('A01004', C.PRD_TY) CPLX,
+	F.COIL_NO,
+	F.C_COIL_NO,
+	A.COIL_THK,
+	A.COIL_WTH,
+	A.COIL_LEN,
+	A.LZREMARK,
+	A.COIL_INDIA,
+	A.COIL_OUTDIA,
+	A.ACT_WGT,
+	R.SPM_RMK, --质检备注
+    R.CJ_REMARK, --热轧车间备注
+    R.CPCJ_REMARK, --成品车间备注
+    R.DEAL_REMARK, --处置意见
+    F.MILL_MEMO,
+	C.C_ORD_THK,
+	--C.C_ORD_THK_MIN,
+	--C.C_ORD_THK_MAX,
+	C.C_ORD_WTH,
+	--C.C_ORD_WTH_MIN,
+	--C.C_ORD_WTH_MAX,
+   (DECODE(C.SUAN_THK_MIN,NULL, C.C_ORD_THK_MIN, C.SUAN_THK_MIN)+
+   DECODE(C.SUAN_THK_MAX,NULL, C.C_ORD_THK_MAX,C.SUAN_THK_MAX))/2 M_THK   ,
+   DECODE(C.SUAN_THK_MIN,NULL, C.C_ORD_THK_MIN, C.SUAN_THK_MIN) C_ORD_THK_MIN,
+   DECODE(C.SUAN_THK_MAX,NULL, C.C_ORD_THK_MAX,C.SUAN_THK_MAX) C_ORD_THK_MAX,
+   DECODE(C.SUAN_WTH_MIN, NULL,C.C_ORD_WTH_MIN,C.SUAN_WTH_MIN) C_ORD_WTH_MIN,
+   DECODE(C.SUAN_WTH_MAX,NULL, C.C_ORD_WTH_MAX,C.SUAN_WTH_MAX) C_ORD_WTH_MAX,
+	C.C_ORD_LEN,
+	C.C_ORD_INDIA,
+	C.C_ORD_OUTDIA,
+	C.C_EXTSHAPE_REQ,
+	B.SM_CSNM CUR_PROG_CD,
+	F.STATUS_CD,
+	A.CUR_LOAD_LOC,
+	C.ACID_PROD_PATH,
+	C.ORD_NO,
+	C.ORD_SEQ,
+	C.C_SPEC_STL_GRD,
+	C.C_SPEC_ABBSYM,
+	H.SM_CFNM ORD_USEAGE_CD,
+	C.DEL_TO_DATE,
+	D.CUST_NM ORDCUST_CD,
+	E.SM_CFNM DEST_CD,
+	ROUND(SYSDATE-TO_DATE(A.RECEIVE_TIME,'YYYY-MM-DD HH24:MI:SS'),1) COLDTIM,
+	C.ORD_UNIT_WGT,
+	C.ORD_UNIT_WGT_MIN,
+	C.ORD_UNIT_WGT_MAX,
+	C.C_PRODNM_CD,
+	F.C_COIL_ID,
+	I.SM_CFNM PACK_METHOD,
+	DECODE(C.EDGE_PROC_YN,'Y','√',NULL) EDGE_PROC_YN,
+	--(C.C_ORD_THK_MIN+C.C_ORD_THK_MAX)/2 M_THK   ,
+	XB_PACKAGE.GF_COMNNAME_FIND('H02001' , A.CRK_CD1)||CASE WHEN A.CRK_CD2 IS NOT NULL THEN '+' ELSE ' ' END ||XB_PACKAGE.GF_COMNNAME_FIND('H02001' , A.CRK_CD2)    COIL_CRK  
+	--,C.MK_CONTENT    --20121205 
+	,L.C_ORD_INDIA JQU --卷曲内经
+    ,L.HARSHNESS       --粗燥度
+    ,L.APPLICATION   --用途       
+    ,LWC.VALUE_C
+   ,LWC.VALUE_Mn
+   ,LWC.VALUE_Si
+   ,LWC.VALUE_Ti    
+   ,LWC.VALUE_S
+   ,LWC.VALUE_P      
+	FROM 
+	C_TBK02_COIL_COMM A,
+	TBE02_ORD_PRC C,
+	TBZ00_COMMCD B,
+	TBZ00_CUSTOMER D,
+	TBZ00_COMMCD E,
+	C_TBF03_SPEC_MILL F,
+	C_TBF03_SPEC_ROLL G,
+	TBZ00_COMMCD H,
+	TBZ00_COMMCD I,
+	TBA01_ORD_LINE  L  ,
+	TBH02_COIL_COMM   R,
+	  (select FF.COIL_NO COIL_NO_LWC,
+               max(DECODE(WI.CHEM_CD, 'C', WI.CHEM_VAL)) VALUE_C,
+               max(DECODE(WI.CHEM_CD, 'Mn', WI.CHEM_VAL)) VALUE_Mn,
+               max(DECODE(WI.CHEM_CD, 'Si', WI.CHEM_VAL)) VALUE_Si,
+               max(DECODE(WI.CHEM_CD, 'Ti', WI.CHEM_VAL)) VALUE_Ti,
+               max(DECODE(WI.CHEM_CD, 'S', WI.CHEM_VAL)) VALUE_S,
+               max(DECODE(WI.CHEM_CD, 'P', WI.CHEM_VAL)) VALUE_P
+          from C_TBK02_COIL_COMM   AC,
+               TBB02_WORK_INGR     WI,
+               TBG02_CHARGE_COMM_D CD,
+               TBE02_ORD_PRC       CC,
+               C_TBF03_SPEC_MILL   FF,
+               C_TBF03_SPEC_ROLL    GG
+         where FF.ORD_NO = CC.ORD_NO
+           AND FF.ORD_SEQ = CC.ORD_SEQ
+           AND FF.ROLL_MANA_NO = GG.ROLL_MANA_NO
+           AND AC.COIL_NO = FF.COIL_NO
+           AND GG.STATUS_CD != 'D'
+           AND FF.STATUS_CD IN ('A', 'B', 'C', 'D', 'F')
+           AND WI.CHARGE_NO = CD.CHARGE_NO
+           AND WI.PROC_CD || WI.CHEM_SEQ = CD.LST_INGR_CD
+           AND SUBSTR(AC.SLAB_NO, 1, 10) = WI.CHARGE_NO
+           AND WI.CHEM_CD IN ('C', 'Mn', 'Si', 'Ti','S','P')
+         GROUP BY FF.COIL_NO) LWC
+	  
+	WHERE F.ORD_NO=C.ORD_NO 
+	AND F.ORD_SEQ=C.ORD_SEQ 
+	AND F.ORD_NO=L.ORD_NO 
+	AND F.ORD_SEQ=L.ORD_SEQ 
+	AND A.CUR_PROG_CD=B.SM_CD 
+	AND A.COIL_NO=LWC.COIL_NO_LWC(+)
+	AND C.ORDCUST_CD=D.CUST_CD 
+	AND F.ROLL_MANA_NO=G.ROLL_MANA_NO 
+	AND I.LG_CD='A01010' 
+	AND C.PACK_METHOD=I.SM_CD(+)  
+    AND C.C_ORD_USEAGE_CD=H.SM_CD(+) 
+    AND C.DEST_CD=E.SM_CD(+) 
+    AND A.COIL_NO=F.COIL_NO 
+    AND G.STATUS_CD&lt;>'D' 
+    AND F.STATUS_CD IN('A','B','C','D','F') 
+    AND A.OLD_SAMPL_NO=R.OLD_SAMPL_NO(+)
+    ORDER BY F.COIL_EDT_SEQ
+</query>
+
+<query id="UIF042040.Query_RollPlan_Roll" desc='得到轧辊单元计划的信息'>
+	SELECT ROLL_MANA_NO,SUM(1) COIL_NUM FROM C_TBF03_SPEC_MILL WHERE STATUS_CD IN('A','B','C') GROUP BY ROLL_MANA_NO ORDER BY ROLL_MANA_NO
+</query>
+<query id="UIF042040.RollPlan_Edit" desc="调整轧辊单元计划" >
+		<![CDATA[
+			{call C_PKG_UIF.C_PRD_ROLLUNIT_EDIT(?,?,?,?,?,?)}
+		]]>
+</query>
+
+<query id="UIF042040.Query_RollPlan_Mill01" desc='得到轧辊单元计划的明细信息'>
+	SELECT F.ROLL_MANA_NO,
+	F.ROLL_COIL_SEQ,
+	F.COIL_NO,
+	F.C_COIL_NO,
+	A.COIL_THK,
+	A.COIL_WTH,
+	A.COIL_LEN,
+	A.COIL_INDIA,
+	A.COIL_OUTDIA,
+	A.ACT_WGT,
+	C.C_ORD_THK,
+	--C.C_ORD_THK_MIN,
+	--C.C_ORD_THK_MAX,
+	C.C_ORD_WTH,
+	--C.C_ORD_WTH_MIN,
+	--C.C_ORD_WTH_MAX,
+   (DECODE(C.SUAN_THK_MIN,NULL, C.C_ORD_THK_MIN, C.SUAN_THK_MIN)+
+   DECODE(C.SUAN_THK_MAX,NULL, C.C_ORD_THK_MAX,C.SUAN_THK_MAX))/2 M_THK   ,
+   DECODE(C.SUAN_THK_MIN,NULL, C.C_ORD_THK_MIN, C.SUAN_THK_MIN) C_ORD_THK_MIN,
+   DECODE(C.SUAN_THK_MAX,NULL, C.C_ORD_THK_MAX,C.SUAN_THK_MAX) C_ORD_THK_MAX,
+   DECODE(C.SUAN_WTH_MIN, NULL,C.C_ORD_WTH_MIN,C.SUAN_WTH_MIN) C_ORD_WTH_MIN,
+   DECODE(C.SUAN_WTH_MAX,NULL, C.C_ORD_WTH_MAX,C.SUAN_WTH_MAX) C_ORD_WTH_MAX,
+	C.C_ORD_LEN,
+	C.C_ORD_INDIA,
+	C.C_ORD_OUTDIA,
+	C.C_EXTSHAPE_REQ,
+	B.SM_CSNM CUR_PROG_CD,
+	F.STATUS_CD,
+	A.CUR_LOAD_LOC,
+	C.ACID_PROD_PATH,
+	C.ORD_NO,
+	C.ORD_SEQ,
+	C.C_SPEC_STL_GRD,
+	C.C_SPEC_ABBSYM,
+	H.SM_CFNM ORD_USEAGE_CD,
+	C.DEL_TO_DATE,
+	D.CUST_NM ORDCUST_CD,
+	E.SM_CFNM DEST_CD,
+	ROUND(SYSDATE-TO_DATE(A.RECEIVE_TIME,'YYYY-MM-DD HH24:MI:SS'),1) COLDTIM,
+	C.ORD_UNIT_WGT,
+	C.ORD_UNIT_WGT_MIN,
+	C.ORD_UNIT_WGT_MAX,
+	C.C_PRODNM_CD,
+	F.C_COIL_ID,
+	I.SM_CFNM PACK_METHOD,
+	DECODE(C.EDGE_PROC_YN,'Y','√',NULL) EDGE_PROC_YN,
+	--(C.C_ORD_THK_MIN+C.C_ORD_THK_MAX)/2 M_THK   ,
+	XB_PACKAGE.GF_COMNNAME_FIND('H02001' , A.CRK_CD1)||CASE WHEN A.CRK_CD2 IS NOT NULL THEN '+' ELSE ' ' END ||XB_PACKAGE.GF_COMNNAME_FIND('H02001' , A.CRK_CD2)    COIL_CRK  
+	,C.MK_CONTENT    --20121205
+	,L.C_ORD_INDIA JQU --卷曲内经
+    ,L.HARSHNESS       --粗燥度
+    ,L.APPLICATION   --用途
+    ,L.L_BMD   GM    --光面、麻面
+    ,L.OIL_DEF       --涂油代码
+    ,PKG_QUALITY_COMM.FZ00_COMM('A01010' ,L.PAKMTH_TP ) BAO  --包装方式              
+	FROM 
+	C_TBK02_COIL_COMM A,
+	TBE02_ORD_PRC C,
+	TBZ00_COMMCD B,
+	TBZ00_CUSTOMER D,
+	TBZ00_COMMCD E,
+	C_TBF03_SPEC_MILL F,
+	C_TBF03_SPEC_ROLL G,
+	TBZ00_COMMCD H,
+	TBZ00_COMMCD I,
+	TBA01_ORD_LINE  L    
+	WHERE F.ORD_NO=C.ORD_NO 
+	AND F.ORD_SEQ=C.ORD_SEQ 
+	and F.ORD_NO=L.ORD_NO 
+	AND F.ORD_SEQ=L.ORD_SEQ 
+	AND A.CUR_PROG_CD=B.SM_CD 
+	AND C.ORDCUST_CD=D.CUST_CD 
+	AND F.ROLL_MANA_NO=G.ROLL_MANA_NO 
+	AND I.LG_CD='A01010' 
+	AND C.PACK_METHOD=I.SM_CD(+)  
+    AND C.C_ORD_USEAGE_CD=H.SM_CD(+) 
+    AND C.DEST_CD=E.SM_CD(+) 
+    AND A.COIL_NO=F.COIL_NO 
+    AND G.STATUS_CD&lt;>'D' 
+    AND F.STATUS_CD IN('A','B','C','D','F') 
+    ORDER BY F.COIL_EDT_SEQ
+</query>
+
+</queryMap>
+
+

+ 158 - 0
.svn/pristine/15/153df8eef3c77dd6b4483f9cbdddc187cfd32a10.svn-base

@@ -0,0 +1,158 @@
+package QCM.QCM03.QCM0304;
+
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+
+import org.apache.ibatis.session.SqlSession;
+
+import com.alibaba.fastjson.JSONObject;
+
+import QCM.COMMUNAL.QCM02.SqlJoint;
+import QCM.COMMUNAL.VO.QCMJudgeLocking;
+import QCM.COMMUNAL.VO.QcmJudgeDetectionD;
+import QCM.COMMUNAL.VO.QcmJudgeDetectionM;
+import UIB.COM.XmlSqlParsersFactory;
+import CoreFS.SA01.CoreIComponent;
+import CoreFS.SA06.CoreReturnObject;
+
+public class QcmJudgeDefectionServiceImpl extends CoreIComponent{
+	CoreReturnObject cro = new CoreReturnObject();
+	ResultSet rs = null;
+	SqlSession SqlSession = 
+			QCM.COMMUNAL.SqlSessionBuilder.openSqlSession();
+	QCM.COMMUNAL.OrderSqMapper mapper = SqlSession.getMapper(QCM.COMMUNAL.OrderSqMapper.class);
+	/**
+	 * 根据条件获得待判记录
+	 */
+	/**
+	 * 根据产品序号获得探伤明细
+	 */
+	/**
+	 * 获得探伤项目
+	 */
+	public CoreReturnObject QueryQcmDetection(){
+		String sql = "select detection_code,detection_name from qcm_base_detection where validflag= '1'";
+		List<HashMap> list = mapper.query(sql);
+		cro.setResult(list);
+		SqlSession.close();
+		return cro;
+	}
+	/**
+	 * 根据条件获得检验判定记录
+	 */
+	public CoreReturnObject QueryDefection(String begintime,String endtime,String Sbatchno,String Ebatchno,String orderno,String psc) {
+		StringBuffer sqlucomm = new StringBuffer();
+		sqlucomm.append("select \n"+
+			"DIC_ID,BATCH_NO,MATERIAL_NO,DESIGN_KEY,PSC_DESC,DIC_RESULT_DESC,DELIVERY_STATE_DESC, \n"+
+			"THICK || CASE WHEN WIDTH IS NULL THEN '' ELSE '*' END || WIDTH || CASE WHEN LENGTH IS NULL \n "+
+			" THEN '' ELSE '*' END || LENGTH SPET,DIC_REMARK_DESC,DIC_MEMO,JUDGE_NAME,JUDGE_TIME \n"+
+			" FROM QCM_JUDGE_DETECTION_M \n"+
+			" WHERE  1=1 ");
+		if(!"".equals(orderno)){
+			sqlucomm.append(" and DESIGN_KEY='"+orderno+"' ");
+		}
+		if(!"".equals(psc)){
+			sqlucomm.append(" and PSC_DESC='"+psc+"' ");
+		}
+		if(!"".equals(begintime)){
+			sqlucomm.append(" and to_date(to_char(JUDGE_TIME,'yyyy-mm-dd'),'yyyy-mm-dd') >= to_date('"+begintime+"','yyyy-mm-dd') ");
+		}
+		if(!"".equals(endtime)){
+			sqlucomm.append("and to_date(to_char(JUDGE_TIME,'yyyy-mm-dd'),'yyyy-mm-dd') <=  to_date('"+endtime+"','yyyy-mm-dd') ");
+		}
+		if(!"".equals(Sbatchno)){
+			sqlucomm.append(" and BATCH_NO >='"+Sbatchno+"' ");
+		}
+		if(!"".equals(Ebatchno)){
+			sqlucomm.append(" and BATCH_NO <='"+Ebatchno+"' ");
+		}
+		List<HashMap> list = mapper.query(sqlucomm.toString());
+		cro.setResult(list);
+		SqlSession.close();
+		return cro;
+	}
+	/**
+	 * params0 产品序号  params1 design_key
+	 * 人为质量判定--探伤
+	 */
+	public CoreReturnObject JudgeDefectionByhuman(String material_no,String ispass,String username)
+			throws SQLException {
+		try{
+		//判断是否已判
+		String sql = "select count(*) count from QCM_JUDGE_DETECTION_M where material_no = '"+material_no+"'";
+		String count = mapper.query(sql).get(0).get("COUNT").toString();
+		if(!count.equals("0")){
+			throw new Exception("该产品序号已经判定,不能重复判定!");
+		}
+		//查询是否锁定,锁定不能判定
+		sql = "select COUNT(1) COUNT from qcm_judge_locking where material_no = '"+material_no+"' and  = 'D'";
+		count = mapper.query(sql).get(0).get("COUNT").toString();
+		if(!count.equals("0")){
+			throw new Exception("该产品序号已经探伤锁定,不能判定!");
+		}
+		QcmJudgeDetectionM qjdm = new QcmJudgeDetectionM();
+		QcmJudgeDetectionD qjdd = new QcmJudgeDetectionD();
+		//插入探伤检验结果表
+		mapper.insertQcmJudgeDetectionD(qjdd);
+		mapper.insertQcmJudgeDetectionM(qjdm);
+		//系统如果判不合格,插入质量锁定表,走异常材流程
+		if(ispass.equals("0")){
+			MaterialAbnormalTreatment(material_no);
+		}
+		SqlSession.commit();
+		}catch(Exception ex){
+			cro.setV_errCode(-1);
+			cro.setV_errMsg(ex.getMessage());
+			SqlSession.rollback();
+		}
+		SqlSession.close();
+		return cro;
+	}
+	/**
+	 * 异常材料处理--封锁物料
+	 */
+	public void MaterialAbnormalTreatment(String material_no){
+		try {
+			 //生成质量封锁记录号
+			 int count=0;
+			 QCMJudgeLocking qjlk = new QCMJudgeLocking();
+				SimpleDateFormat sdf=new SimpleDateFormat("yyMMdd");
+				String date=sdf.format(new Date());
+				String condition = " and  MATERIAL_NO = '"+material_no+"' order by a.LOCK_SEQ desc ";
+				List<QCMJudgeLocking> qjl = mapper.queryQCMJudgeLocking(condition);
+				if(qjl.size() > 0){
+					count=qjl.get(0).getLock_seq();
+				}
+				count++;
+				//锁定记录号
+				int lock_seq=count;
+				//获取探伤不合格原因
+				//String lock_memo = jo.getString("DIC_REMARK_DESC");
+				//插入封锁表
+				qjlk.setLock_type_code("D");
+		        qjlk.setLock_type_desc("探伤检验");
+		        qjlk.setLock_seq(lock_seq);
+		        qjlk.setHeat_no("");
+		        qjlk.setBatch_no("");
+		        qjlk.setBoard_no("");
+		        qjlk.setPlan_no("");
+		        qjlk.setHt_no("");
+		        qjlk.setDesign_key("");
+		        qjlk.setPsc("");
+		        qjlk.setPline_code("");
+		        qjlk.setPline_name("");
+		        qjlk.setFic_locking("1");
+		        //qjlk.setLock_name(username);
+		        //qjlk.setLock_memo(lock_memo);
+		        mapper.insertQCMJudgeLocking(qjlk);
+				//更改库存表封锁状态
+		} catch (Exception e) {
+			cro.setV_errMsg(e.getMessage());
+		}
+	}
+}

+ 25 - 0
.svn/pristine/16/16cff78cad7930948db8734b3508c7a58980f96f.svn-base

@@ -0,0 +1,25 @@
+package QCM.QCM01.QCM0103;
+import CoreFS.SA01.CoreIComponent;
+import CoreFS.SA06.CoreReturnObject;
+
+public class QueryTol extends CoreIComponent   {
+
+	CoreReturnObject cro = new CoreReturnObject();	
+	
+	//������Ŀ����
+	public CoreReturnObject Query(String tolName){
+		StringBuffer sqlucomm = new StringBuffer();
+		sqlucomm.append("select \n"+ 
+				"tol_code,tol_name,auto_cacl,defect_type_code,defect_type_desc, \n"+
+				"defect_seq,os1_tol_code,os1_tol_name,os2_tol_code,os2_tol_name,validflag, \n"+
+				"memo,create_id,create_name,TO_CHAR(create_time,'YYYY-MM-DD HH24:MI:SS')  create_time,update_id,update_name, \n"+
+				"TO_CHAR(update_time,'YYYY-MM-DD HH24:MI:SS') update_time,delete_id,delete_name, TO_CHAR(delete_time,'YYYY-MM-DD HH24:MI:SS') delete_time \n"+
+				" from QCM_BASE_TOLERANCE"+
+				" where VALIDFLAG='1'");
+		if(!"".equals(tolName)){
+			sqlucomm.append(" and TOL_NAME like '%"+tolName+"%' ");
+		}
+		cro=this.getDao("KgDao").ExcuteQuery(sqlucomm.toString());
+		return cro;
+	}
+}

+ 297 - 0
.svn/pristine/17/17dd7a81ac9134763ef8e8e15236eb76f46f7b2d.svn-base

@@ -0,0 +1,297 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<queryMap desc="发运计划查询">
+	<query id="UIJ030020_01.SELECT"  desc="查询运输单位">
+		<![CDATA[
+		SELECT SHIP_COMP_NM AS LABEL, SHIP_COMP_CD AS VALUE
+		FROM TBJ00_SHIP_COMP
+		ORDER BY 1
+		 ]]>
+	</query>
+	<query id="UIJ030020_02.SELECT"  desc="查询排车计划">
+		<![CDATA[
+		SELECT '' CHK,
+		B.SHIP_DIRNO,
+		--B.GET_ON_PCD,
+		--B.DEST_PCD,
+		(SELECT sm_cfnm   FROM TBZ00_COMMCD      WHERE LG_CD = 'A01009'     AND b.DEST_PCD = SM_CD) DEST_PCD_DESC,
+		--B.EXLV_LINE_CD,
+		--(SELECT x.SM_CFNM   FROM TBZ00_COMMCD   x   WHERE LG_CD = 'A01015'     AND b.EXLV_LINE_CD = SM_CD) EXLV_LINE_CD_DESC,
+		(select CUST_NM FROM TBZ00_CUSTOMER WHERE CUST_CD = b.CUST_CD and REC_TP='01') CUST_NM, 
+		(select CUST_NM ORD_NM FROM TBZ00_CUSTOMER WHERE CUST_CD = b.ORD_CUST_CD and REC_TP='02') ORD_NM,
+		-- B.GET_OFF_PCD,
+		--B.DLIV_TP,
+		--D.SM_CFNM AS DLIV_TP_NM,
+		--B.SHIP_COMP_CD,
+		--C.SHIP_COMP_NM SM_CFNM,
+		B.TRAIN_DLIVNO,
+		B.DLIV_DIRNO,
+		NVL(B.CNT,0) AS CNT,
+		NVL(B.ACT_WGT,0) AS ACT_WGT,
+		B.ALLOC_SEQ,
+		 B.TRANS_CAR_NO,
+		B.LANE_TP,
+		B.ENTERANCE_SEQ,
+		B.ORD_NO,
+		B.ORD_SEQ,
+		B.SPEC_STL_GRD,
+		to_char(B.INSTR_COIL_THK,'FM990.099')||'*'||B.INSTR_COIL_WTH T_W   
+		FROM(SELECT *
+		FROM TBJ01_SHIP_DIR
+		WHERE 1 = 1
+		AND SHIP_PROG_CD = ?           -- SHIP_PROG_CD = '03' 发货指示状态
+		AND SHIP_DIRNO BETWEEN NVL(?,'00000101')||'0000' AND NVL(?,'99991231')||'9999'
+		AND SHIP_DIRNO LIKE ?||'%') A       
+		,(SELECT X.*, Y.CNT CNT, Y.ACT_WGT ACT_WGT,Y.ORD_NO,Y.ORD_SEQ,Y.SPEC_STL_GRD,Y.INSTR_COIL_THK,Y.INSTR_COIL_WTH 
+		FROM TBJ01_DLIV_DIR X
+		,(SELECT DLIV_DIRNO
+		, COUNT(*)            AS CNT
+		, NVL(SUM(ACT_WGT),0) AS ACT_WGT
+		, MAX(ORD_NO)         AS ORD_NO
+		, MAX(ORD_SEQ)        AS ORD_SEQ
+		, MAX(SPEC_STL_GRD)   AS SPEC_STL_GRD
+		, MAX(INSTR_COIL_THK) AS INSTR_COIL_THK
+		, MAX(INSTR_COIL_WTH) AS INSTR_COIL_WTH
+		FROM C_TBL02_COIL_COMM
+		WHERE 1 = 1
+		AND CUR_PROG_CD like ?||'%'            -- CUR_PROG_CD = 'SFB'(物料进度)
+		AND SHIP_DIRNO BETWEEN NVL(?,'00000101')||'0000' AND NVL(?,'99991231')||'9999'
+		GROUP BY DLIV_DIRNO) Y
+		WHERE X.DLIV_DIRNO = Y.DLIV_DIRNO
+		AND X.DLIV_TP LIKE ?||'%'
+		AND NVL(X.LANE_TP,'*') LIKE ?||'%'
+		AND NVL(X.ENTERANCE_SEQ,0) = NVL(?,0)) B
+		,(SELECT *
+		FROM TBJ00_SHIP_COMP
+		WHERE SHIP_COMP_CD LIKE ?||'%') C
+		,(SELECT SM_CD, SM_CFNM FROM TBZ00_COMMCD WHERE LG_CD = 'A01012' AND SM_CD LIKE ?||'%') D
+		WHERE A.SHIP_DIRNO = B.SHIP_DIRNO(+)
+		AND B.SHIP_COMP_CD = C.SHIP_COMP_CD(+)
+		AND D.SM_CD = B.DLIV_TP 
+		AND B.ISDELETED = 0
+		AND B.ISCANCEL = 0
+		ORDER BY B.ALLOC_SEQ,B.DLIV_DIRNO
+		 ]]>
+	</query>
+	<query id="UIJ030020_03.SELECT"  desc="查询待装车钢卷">
+		<![CDATA[
+		SELECT '' CHK,
+		A.OLD_SAMPL_NO,
+		A.COIL_NO,
+		DECODE(A.TOT_DEC_GRD,'1','合格','2','次品',' ') TOT_DEC_GRD,
+		--DECODE(A.MATRL_END_CAUSE_CD,'1','合格','2','次品',' ') MATRL_END_CAUSE_CD,
+		a.instr_coil_wth COIL_WTH,
+		a.instr_coil_thk COIL_THK,
+		a.ORD_NO,
+		a.ORD_SEQ,
+		a.spec_stl_grd,
+		A.COIL_OUTDIA,
+		NVL(A.ACT_WGT,0) ACT_WGT,
+		NVL(A.CAL_WGT,0) CAL_WGT,
+		A.CUR_LOAD_LOC,
+		B.DEST_PCD,
+		B.ALLOC_SEQ,
+		B.TRANS_CAR_NO,
+		B.DLIV_DIRNO,
+		B.SHIP_DIRNO,
+		(SELECT sm_cfnm   FROM TBZ00_COMMCD      WHERE LG_CD = 'A01009'     AND b.DEST_PCD = SM_CD) DEST_PCD_DESC,
+		--(SELECT x.SM_CFNM   FROM TBZ00_COMMCD   x   WHERE LG_CD = 'A01015'     AND b.EXLV_LINE_CD = SM_CD) EXLV_LINE_CD_DESC,
+		(select CUST_NM FROM TBZ00_CUSTOMER WHERE CUST_CD = B.CUST_CD and REC_TP='01') CUST_NM, 
+		(select CUST_NM ORD_NM FROM TBZ00_CUSTOMER WHERE CUST_CD = B.ORD_CUST_CD and REC_TP='02') ORD_NM,
+		A.HCOLOUR_REM    
+		FROM C_TBL02_COIL_COMM A,TBJ01_DLIV_DIR B,TBJ01_SHIP_DIR C
+		WHERE A.DLIV_DIRNO = B.DLIV_DIRNO
+		AND B.SHIP_DIRNO = C.SHIP_DIRNO
+		AND A.SHIP_PROG_CD = '04'
+		AND B.DLIV_TP  = ? 
+		ORDER BY B.ALLOC_SEQ
+		 ]]>
+	</query>
+	<query id="UIJ030020_04.SELECT"  desc="查询下达排车计划时排车计划对应的钢卷信息">
+		<![CDATA[
+		SELECT substr(A.DLIV_NO,5,8) DLIV_NO,A.COIL_NO,A.COIL_STEEL,A.COIL_HEIGHT||'*'||A.COIL_WIDTH T_W FROM TBJ01_DLIVNO_COIL A 
+		WHERE A.DLIV_NO = ?  
+		order by a.COIL_NO
+		 ]]>
+	</query>
+	<query id="UIJ030020_05.SELECT"  desc="查询发运计划下钢卷详细信息">
+		<![CDATA[
+		SELECT T.COIL_NO,
+		       T.SPEC_STL_GRD,
+		       TO_CHAR(O.ORD_THK, 'FM990.099') || '*' || O.ORD_WTH ORD_SIZE,
+		       T.ACT_WGT,
+		       T.CUR_LOAD_LOC
+		  FROM C_TBL02_COIL_COMM T, TBA01_ORD_LINE O
+		 WHERE T.ORD_NO = O.ORD_NO
+		   AND T.ORD_SEQ = O.ORD_SEQ
+		   AND T.DLIV_DIRNO = ?
+		 ]]>
+	</query>
+	<query id="UIJ030020_06.SELECT"  desc="查询同合同号下可发钢卷">
+		<![CDATA[
+		SELECT 'FALSE' CHK,
+		       T.COIL_NO,
+		       T.SPEC_STL_GRD,
+		       T.COIL_THK,
+		       T.COIL_WTH,
+		       T.INSTR_COIL_THK,
+		       T.INSTR_COIL_WTH,
+		       T.ACT_WGT,
+		       T.COIL_LEN,
+		       T.COIL_INDIA,
+		       T.COIL_OUTDIA,
+		       T.CUR_LOAD_LOC,
+		       T.CUR_PROG_CD,
+		       T.ORD_NO,
+		       T.ORD_SEQ,
+		       DECODE(T.ORD_FL, '1', '订单材', '2', '余材') ORD_FL,
+		       O.ORDCUST_CD,
+		       O.CUST_CD,
+		       O.DEST_CD
+		  FROM C_TBL02_COIL_COMM T, TBE02_ORD_PRC O
+		 WHERE T.ORD_NO = O.ORD_NO
+		   AND T.ORD_SEQ = O.ORD_SEQ
+		   AND T.CUR_PROG_CD = 'DFA'
+		   AND T.ORD_NO = ?
+		   AND T.ORD_SEQ = ?
+		   AND T.COIL_NO || '&' LIKE ? || '%'
+		   AND T.COIL_THK BETWEEN NVL(?, '0') AND NVL(?, '999')
+		   AND T.COIL_WTH BETWEEN NVL(?, '0') AND NVL(?, '9999')
+		 ]]>
+	</query>
+	<!-- 待装车取消 -->
+	<query id="UIJ030020_01.UPDATE"  desc="取消运输表中排车顺序及车辆号">
+		<![CDATA[
+		update tbj01_dliv_dir
+		set 
+		ALLOC_SEQ = '',
+		TRANS_CAR_NO = '',
+		LANE_TP = '',
+		ENTERANCE_SEQ = ''   
+		where DLIV_DIRNO = ? 
+		 ]]>
+	</query>
+	<query id="UIJ030020_02.UPDATE"  desc="取消公共表中车辆号">
+		<![CDATA[
+		update C_TBL02_COIL_COMM
+			set 
+			TRAIN_STEP_NO = '',
+			TRANS_CAR_NO = '',
+			SHIP_PROG_CD = '03' 
+			where DLIV_DIRNO =?
+			AND SHIP_PROG_CD = '04' 
+		 ]]>
+	</query>
+	<query id="UIJ030020_03.UPDATE"  desc="更新发货表发运状态">
+		<![CDATA[
+		update tbj01_ship_dir
+			set 
+			ship_prog_cd = '03' 
+			where ship_dirno =?
+		 ]]>
+	</query>
+	<!-- 确认排车操作 -->
+	<query id="UIJ030020_04.UPDATE"  desc="生成发货清单号">
+		<![CDATA[
+		UPDATE   TBJ01_DLIV_DIR
+		SET      INV_NO = (select 'LJ'||to_char(sysdate,'y')||'-'||
+	    nvl((select to_char(to_number(nvl(substr(max(inv_no),5,6),0))+1,'FM000000') from tbj01_dliv_dir
+	    where inv_no like 'LJ'||to_char(sysdate,'y')||'%'),'000001')
+	    from dual) 
+		, INV_DTIME  = TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS')
+		WHERE   DLIV_DIRNO = ?
+		 ]]>
+	</query>
+	<query id="UIJ030020_05.UPDATE"  desc="发货清单号更新到钢卷公共表">
+		<![CDATA[
+		update C_TBL02_COIL_COMM X SET 
+				X.SHIP_INVNO = ?
+				WHERE X.DLIV_DIRNO = ?
+		 ]]>
+	</query>
+	<query id="UIJ030020_06.UPDATE"  desc="更新钢卷公共表排车顺序和车辆号">
+		<![CDATA[
+		update C_TBL02_COIL_COMM
+			set 
+			TRANS_CAR_NO = ?,
+			TRAIN_STEP_NO = ?,
+			DLIV_DIRNO = ?,
+			SHIP_DIRNO = ?,
+			ACT_WGT    = ?,
+			SHIP_PROG_CD = '06',
+			BEF_LOAD_LOC = CUR_LOAD_LOC,
+			BEF_LOAD_LOC_DTIME = CUR_LOAD_LOC_DTIME,
+			CUR_LOAD_LOC = '',CUR_LOAD_LOC_DTIME = TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS')
+			where OLD_SAMPL_NO =? 
+		 ]]>
+	</query>
+	<query id="UIJ030020_07.UPDATE"  desc="清除垛位表钢卷信息">
+		<![CDATA[
+		update C_TBK08_COIL_YARD A SET
+			A.COIL_NO = '',
+			A.MOD_ID = '',
+			A.MOD_TIME = ''
+			WHERE A.COIL_NO = ?
+		 ]]>
+	</query>
+	<query id="UIJ030020_08.UPDATE"  desc="更新发运表发运状态">
+		<![CDATA[
+		update tbj01_ship_dir
+				set 
+				ship_prog_cd = '05'
+				where ship_dirno =?
+		 ]]>
+	</query>
+	<query id="UIJ030020_09.UPDATE"  desc="将钢卷加入发运计划">
+		<![CDATA[
+		UPDATE C_TBL02_COIL_COMM T
+		   SET T.BEF_PROG_CD       = T.CUR_PROG_CD,
+		       T.BEF_PROG_CD_DTIME = T.CUR_PROG_CD_DTIME,
+		       T.BEF_PROG_CD_PGM   = T.CUR_PROG_CD_PGM,
+		       T.CUR_PROG_CD       = 'DFB',
+		       T.CUR_PROG_CD_DTIME = TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS'),
+		       T.CUR_PROG_CD_PGM   = 'UIJ030021',
+		       T.DLIV_DIRNO        = (SELECT max(A.DLIV_DIRNO) FROM C_TBL02_COIL_COMM A WHERE A.COIL_NO IN(?)),
+		       T.SHIP_DIRNO        = (SELECT max(A.SHIP_DIRNO) FROM C_TBL02_COIL_COMM A WHERE A.COIL_NO IN(?)),
+		       T.SHIP_PROG_CD      = (SELECT max(A.SHIP_PROG_CD) FROM C_TBL02_COIL_COMM A WHERE A.COIL_NO IN(?)),
+		       T.SHIP_DIR_DTIME    = (SELECT max(A.SHIP_DIR_DTIME) FROM C_TBL02_COIL_COMM A WHERE A.COIL_NO IN(?)),
+		       T.DLIV_TP           = (SELECT max(A.DLIV_TP) FROM C_TBL02_COIL_COMM A WHERE A.COIL_NO IN(?)),
+		       T.TRANS_CAR_NO      = (SELECT max(A.TRANS_CAR_NO) FROM C_TBL02_COIL_COMM A WHERE A.COIL_NO IN(?)),
+			   T.TRAIN_STEP_NO     = (SELECT max(A.TRAIN_STEP_NO) FROM C_TBL02_COIL_COMM A WHERE A.COIL_NO IN(?))
+		 WHERE T.COIL_NO IN (?)
+		 ]]>
+	</query>
+	<query id="UIJ030020_10.UPDATE"  desc="将钢卷从发运计划中删除">
+		<![CDATA[
+		UPDATE C_TBL02_COIL_COMM T
+		   SET T.BEF_PROG_CD       = T.CUR_PROG_CD,
+		       T.BEF_PROG_CD_DTIME = T.CUR_PROG_CD_DTIME,
+		       T.BEF_PROG_CD_PGM   = T.CUR_PROG_CD_PGM,
+		       T.CUR_PROG_CD       = 'DFA',
+		       T.CUR_PROG_CD_DTIME = TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS'),
+		       T.CUR_PROG_CD_PGM   = 'UIJ030021',
+		       T.DLIV_DIRNO        = '',
+		       T.SHIP_DIRNO        = '',
+		       T.SHIP_PROG_CD      = '',
+		       T.SHIP_DIR_DTIME    = '',
+		       T.DLIV_TP           = '',
+		       T.TRANS_CAR_NO      = '',
+			   T.TRAIN_STEP_NO     = ''
+		 WHERE T.COIL_NO IN (?)
+		 ]]>
+	</query>
+	<query id="UIJ030020_01.CALL"  desc="">
+		<![CDATA[
+		{call ZL_SUAN_DCS01.CRET_BOOK_GENT(?,?,?)}
+		 ]]>
+	</query>
+	<query id="UIJ030020_02.CALL"  desc="">
+		<![CDATA[
+		{call C_PKG_OS_COMM.ORD_STS_MAIN(?,?,?)}
+		 ]]>
+	</query>
+	<query id="UIJ030020_03.CALL"  desc="">
+		<![CDATA[
+		{call C_PKG_OS_COMM.SAVE_ORD_STS(?,?,?,?,?,?,?,?,?,?,?)}
+		 ]]>
+	</query>
+</queryMap>

+ 1 - 0
.svn/pristine/17/17e4334d5a9ea8dbdc2bcdcf76c7a28c12fa60bb.svn-base

@@ -0,0 +1 @@
+<Purview><Popup Key="SquareBilletTransferTab" Caption="钢坯管理" Image=""><Popup Key="SquareBilletTransferGroup" Caption="钢坯管理" Image=""><Popup Key="SquareBilletTransferPop1" Caption="钢坯管理" Image="07"><Window AssemblyName="Core.KgMcms.SquareBilletTransfer" Key="Core.KgMcms.SquareBilletTransfer.BilletInfo_GD" Caption="方坯轨道计量" Image="08" CustomInfo="" ShowRibbon="False"><Button Key="Query" Caption="查询" Image="Query" /><Button Key="Add" Caption="新增" Image="Add" /><Button Key="Delete" Caption="删除" Image="Delete" /><Button Key="Update" Caption="修改" Image="Update" /></Window></Popup></Popup></Popup></Purview>

+ 42 - 0
.svn/pristine/18/181305759bc4e39c2f2b72b554cc14dfd0a6cf72.svn-base

@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<queryMap desc="成品不合格品报表">
+	<query id="UIM010211_01.SELECT"  desc="成品不合格品报表">
+		<![CDATA[
+		SELECT C_PKG_UIM.GET_STDDATESTR(A.YARD_ENTRY_DTIME) YARD_ENTRY_DTIME,
+       A.OLD_SAMPL_NO,
+       A.SPEC_STL_GRD,
+       A.INSTR_COIL_THK,
+       A.INSTR_COIL_WTH,
+       A.ACT_WGT,
+       A.ORD_NO,
+       a.ORD_SEQ,
+       (SELECT SM_CFNM
+          FROM TBZ00_COMMCD WQ
+         WHERE LG_CD = 'B02001'
+           AND WQ.SM_CD = A.CRK_CD1) CRK_CD1,
+       (SELECT SM_CFNM
+          FROM TBZ00_COMMCD WQ
+         WHERE LG_CD = 'B02001'
+           AND WQ.SM_CD = A.CRK_CD2) CRK_CD2,
+       (SELECT SM_CFNM
+          FROM TBZ00_COMMCD WQ
+         WHERE LG_CD = 'B02001'
+           AND WQ.SM_CD = A.CRK_CD3) CRK_CD3,
+       (SELECT SM_CFNM
+          FROM TBZ00_COMMCD WQ
+         WHERE LG_CD = 'B02001'
+           AND WQ.SM_CD = A.CRK_CD4) CRK_CD4,
+       (SELECT SM_CFNM
+          FROM TBZ00_COMMCD WQ
+         WHERE LG_CD = 'B02001'
+           AND WQ.SM_CD = A.CRK_CD5) CRK_CD5
+  FROM C_TBC02_COIL_COMM A
+ WHERE (SUBSTR(A.YARD_ENTRY_DTIME, 1, 8) >= ?)
+   AND (SUBSTR(A.YARD_ENTRY_DTIME, 1, 8) <= ?)
+   AND A.SPEC_STL_GRD LIKE ? || '%'
+   AND A.OLD_SAMPL_NO LIKE '%' || ? || '%'
+   AND (A.ORD_NO LIKE '57%' OR A.ORD_NO LIKE '51%')
+ order by a.YARD_ENTRY_DTIME, a.spec_stl_grd
+		 ]]>
+	</query>
+</queryMap>

+ 110 - 0
.svn/pristine/18/1843769ee18cbaf34fddebc397f9414195e85d5b.svn-base

@@ -0,0 +1,110 @@
+<?xml version="1.0" encoding='UTF-8'?>
+
+<queryMap desc="">
+<!-- 根据厚度分析得到冷轧原料的数据结构 -->
+<query id="UIF041010.PLTCM_Query_Slab_Height" >
+	SELECT T1.TYPE_,T2.QUANTITY,T2.WEIGHT,T2.LENGTH,T2.CONDITION_  
+	FROM
+	(
+	 SELECT TYPE_ FROM TBF02_ROLL_THK_GRP WHERE PLT='C' GROUP BY TYPE_
+	) T1 
+	LEFT JOIN 
+	(
+	 SELECT B.TYPE_,SUM(1) QUANTITY,SUM(A.ACT_WGT) WEIGHT,SUM(A.COIL_LEN) LENGTH,B.CONDITION_  
+	 FROM C_TBK02_COIL_COMM A,TBE02_ORD_PRC C,
+	 (
+	  SELECT TYPE_,MIN(MINI) MINI,MAX(MAXI) MAXI,
+	  MIN(MINI)||'&lt;=C.C_ORD_THK AND '||MAX(MAXI)||'>C.C_ORD_THK' CONDITION_  
+	  FROM TBF02_ROLL_THK_GRP WHERE PLT='C' 
+	  GROUP BY TYPE_
+	 ) B WHERE B.MINI&lt;=C.C_ORD_THK AND B.MAXI>C.C_ORD_THK AND A.COIL_STAT='2' AND A.ORD_FL='1' AND A.FL='0'
+	 AND A.ORD_NO=C.ORD_NO AND A.ORD_SEQ=C.ORD_SEQ  AND C.PROD_LINE IN('C','P')
+	 GROUP BY B.TYPE_,B.CONDITION_  
+	) T2 ON T1.TYPE_=T2.TYPE_ 
+</query>
+<!-- 根据宽度分析得到冷轧原料的数据结构 -->
+<query id="UIF041010.PLTCM_Query_Slab_Width" >
+	SELECT T1.TYPE_,T2.QUANTITY,T2.WEIGHT,T2.LENGTH,T1.INDEX_,T2.CONDITION_ 
+	FROM
+	(
+	 SELECT ROWNUM INDEX_,TO_CHAR(MINI)||'≤宽度&lt;'||TO_CHAR(MAXI) TYPE_ FROM TBF02_ROLL_WTH_GRP WHERE PLT='C' 
+	) T1 
+	LEFT JOIN 
+	(
+	 SELECT B.TYPE_,SUM(1) QUANTITY,SUM(A.ACT_WGT) WEIGHT,SUM(A.COIL_LEN) LENGTH,B.CONDITION_  
+	 FROM C_TBK02_COIL_COMM A,TBE02_ORD_PRC C,
+	 (
+	  SELECT TO_CHAR(MINI)||'≤宽度&lt;'||TO_CHAR(MAXI) TYPE_,MINI,MAXI,
+	  MINI||'&lt;=C.C_ORD_WTH AND '||MAXI||'>C.C_ORD_WTH' CONDITION_  
+	  FROM TBF02_ROLL_WTH_GRP WHERE PLT='C' 
+	 ) B WHERE B.MINI&lt;=C.C_ORD_WTH AND B.MAXI>C.C_ORD_WTH AND A.COIL_STAT='2' AND A.ORD_FL='1' AND A.FL='0' 
+	 AND A.ORD_NO=C.ORD_NO AND A.ORD_SEQ=C.ORD_SEQ AND C.PROD_LINE IN('C','P') 
+	 GROUP BY B.TYPE_,B.CONDITION_  
+	) T2 ON T1.TYPE_=T2.TYPE_ 
+	ORDER BY INDEX_ 
+</query>
+<!-- 根据表面登记分析得到冷轧原料的数据结构 -->
+<query id="UIF041010.PLTCM_Query_Slab_Appearance" >
+	SELECT T1.TYPE_,T2.QUANTITY,T2.WEIGHT,T2.LENGTH,T2.CONDITION_  
+	FROM
+	(
+	 SELECT SM_CD TYPE_ FROM TBZ00_COMMCD WHERE LG_CD LIKE 'B01016%'  
+	) T1 
+	LEFT JOIN 
+	(
+	 SELECT B.TYPE_,SUM(1) QUANTITY,SUM(A.ACT_WGT) WEIGHT,SUM(A.COIL_LEN) LENGTH,B.CONDITION_  
+	 FROM C_TBK02_COIL_COMM A,TBE02_ORD_PRC C,
+	 (
+	  SELECT SM_CD TYPE_,'C.C_EXTSHAPE_REQ='||SM_CD CONDITION_   
+	  FROM TBZ00_COMMCD WHERE LG_CD LIKE 'B01016%' 
+	 ) B WHERE A.ORD_NO=C.ORD_NO AND A.ORD_SEQ=C.ORD_SEQ AND A.FL='0' 
+   AND C.C_EXTSHAPE_REQ=B.TYPE_ AND A.COIL_STAT='2' AND A.ORD_FL='1' AND C.PROD_LINE IN('C','P')   
+	 GROUP BY B.TYPE_,B.CONDITION_  
+	) T2 ON T1.TYPE_=T2.TYPE_ 
+	ORDER BY TYPE_
+</query>
+<!-- 根据冷却时长分析得到冷轧原料的数据结构 -->
+<query id="UIF041010.PLTCM_Query_Query_Slab_ColdTime" >
+	SELECT '01' INDEX_,'未到1日' TYPE_,SUM(1) QUANTITY,SUM(ACT_WGT) WEIGHT,SUM(COIL_LEN) LENGTH,
+	'SYSDATE-TO_DATE(A.RECEIVE_TIME,'||'''YYYY-MM-DD HH24:MI:SS'''||')&lt;1' CONDITION_ 
+	FROM C_TBK02_COIL_COMM A,TBE02_ORD_PRC C 
+	WHERE COIL_STAT='2' AND A.ORD_FL='1' AND SYSDATE-TO_DATE(RECEIVE_TIME,'YYYY-MM-DD HH24:MI:SS')&lt;1
+	AND A.ORD_NO=C.ORD_NO AND A.ORD_SEQ=C.ORD_SEQ AND C.PROD_LINE IN('C','P') AND A.FL='0' 
+	UNION 
+	SELECT '02' INDEX_,'未到2日~3日' TYPE_,SUM(1) QUANTITY,SUM(ACT_WGT) WEIGHT,SUM(COIL_LEN) LENGTH,
+	'SYSDATE-TO_DATE(A.RECEIVE_TIME,'||'''YYYY-MM-DD HH24:MI:SS'''||')>=1 AND SYSDATE-TO_DATE(A.RECEIVE_TIME,'||'''YYYY-MM-DD HH24:MI:SS'''||')&lt;2' CONDITION_ 
+	FROM C_TBK02_COIL_COMM A,TBE02_ORD_PRC C 
+	WHERE COIL_STAT='2' AND A.ORD_FL='1' AND SYSDATE-TO_DATE(RECEIVE_TIME,'YYYY-MM-DD HH24:MI:SS')>=1 AND SYSDATE-TO_DATE(RECEIVE_TIME,'YYYY-MM-DD HH24:MI:SS')&lt;2
+	AND A.ORD_NO=C.ORD_NO AND A.ORD_SEQ=C.ORD_SEQ AND C.PROD_LINE IN('C','P') AND A.FL='0' 
+	UNION 
+	SELECT '03' INDEX_,'未到3日~4日' TYPE_,SUM(1) QUANTITY,SUM(ACT_WGT) WEIGHT,SUM(COIL_LEN) LENGTH,
+	'SYSDATE-TO_DATE(A.RECEIVE_TIME,'||'''YYYY-MM-DD HH24:MI:SS'''||')>=2 AND SYSDATE-TO_DATE(A.RECEIVE_TIME,'||'''YYYY-MM-DD HH24:MI:SS'''||')&lt;3' CONDITION_ 
+	FROM C_TBK02_COIL_COMM A,TBE02_ORD_PRC C 
+	WHERE COIL_STAT='2' AND A.ORD_FL='1' AND SYSDATE-TO_DATE(RECEIVE_TIME,'YYYY-MM-DD HH24:MI:SS')>=2 AND SYSDATE-TO_DATE(RECEIVE_TIME,'YYYY-MM-DD HH24:MI:SS')&lt;3
+	AND A.ORD_NO=C.ORD_NO AND A.ORD_SEQ=C.ORD_SEQ AND C.PROD_LINE IN('C','P') AND A.FL='0' 
+	UNION 
+	SELECT '04' INDEX_,'未到5日以上' TYPE_,SUM(1) QUANTITY,SUM(ACT_WGT) WEIGHT,SUM(COIL_LEN) LENGTH,
+	'SYSDATE-TO_DATE(A.RECEIVE_TIME,'||'''YYYY-MM-DD HH24:MI:SS'''||')>5' CONDITION_ 
+	FROM C_TBK02_COIL_COMM A,TBE02_ORD_PRC C 
+	WHERE COIL_STAT='2' AND A.ORD_FL='1' AND SYSDATE-TO_DATE(RECEIVE_TIME,'YYYY-MM-DD HH24:MI:SS')>5
+	AND A.ORD_NO=C.ORD_NO AND A.ORD_SEQ=C.ORD_SEQ AND C.PROD_LINE IN('C','P') AND A.FL='0' 
+</query>
+<!-- 根据牌号分析得到冷轧原料的数据结构 -->
+<query id="UIF041010.PLTCM_Query_Slab_Steel" >
+	SELECT B.C_SPEC_STL_GRD TYPE_,SUM(1) QUANTITY,SUM(A.ACT_WGT) WEIGHT,SUM(A.COIL_LEN) LENGTH,
+	'C.C_SPEC_STL_GRD='''||NVL(B.C_SPEC_STL_GRD,'NULL')||'''' CONDITION_ 
+	FROM C_TBK02_COIL_COMM A,TBE02_ORD_PRC B
+	WHERE A.ORD_NO=B.ORD_NO AND A.ORD_SEQ=B.ORD_SEQ AND A.FL='0' 
+	AND A.COIL_STAT='2' AND A.ORD_FL='1' AND B.PROD_LINE IN('C','P')
+	GROUP BY B.C_SPEC_STL_GRD
+</query>
+<!-- 根据交货状态分析得到冷轧原料的数据结构 -->
+<query id="UIF041010.PLTCM_Query_Slab_Commodity" >
+	SELECT B.PRODNM_CD TYPE_,SUM(1) QUANTITY,SUM(A.ACT_WGT) WEIGHT,SUM(A.COIL_LEN) LENGTH,
+	'C.PRODNM_CD='''||NVL(B.PRODNM_CD,'NULL')||'''' CONDITION_  
+	FROM C_TBK02_COIL_COMM A,TBE02_ORD_PRC B
+	WHERE A.ORD_NO=B.ORD_NO AND A.ORD_SEQ=B.ORD_SEQ AND A.FL='0' 
+	AND A.COIL_STAT='2' AND A.ORD_FL='1' AND B.PROD_LINE IN('C','P')
+	GROUP BY B.PRODNM_CD
+</query>
+</queryMap>

BIN
.svn/pristine/18/187065817a3a7a7bb2b29004de7a2d325d321694.svn-base


+ 111 - 0
.svn/pristine/18/1895625688cec3334a10a84ecb243dca832bbff5.svn-base

@@ -0,0 +1,111 @@
+package QCM.COMMUNAL.VO;
+
+import java.io.Serializable;
+import java.util.Date;
+
+
+public class QcmJudgeGpInfo implements Serializable{
+
+	private String gp_id;
+	private String material_no;
+	private String steel_name;
+	private String thick;
+	private String width;
+	private String length;
+	private String orderno;
+	private String gp_name;
+	private Date gp_time;
+	private String old_orderno;
+	private String weight;
+	private String prod_line;
+	private String gp_steel_name;
+	private String gp_type;
+	
+	
+	public String getGp_type() {
+		return gp_type;
+	}
+	public void setGp_type(String gp_type) {
+		this.gp_type = gp_type;
+	}
+	public String getGp_id() {
+		return gp_id;
+	}
+	public void setGp_id(String gp_id) {
+		this.gp_id = gp_id;
+	}
+	public String getMaterial_no() {
+		return material_no;
+	}
+	public void setMaterial_no(String material_no) {
+		this.material_no = material_no;
+	}
+	public String getSteel_name() {
+		return steel_name;
+	}
+	public void setSteel_name(String steel_name) {
+		this.steel_name = steel_name;
+	}
+	public String getThick() {
+		return thick;
+	}
+	public void setThick(String thick) {
+		this.thick = thick;
+	}
+	public String getWidth() {
+		return width;
+	}
+	public void setWidth(String width) {
+		this.width = width;
+	}
+	public String getLength() {
+		return length;
+	}
+	public void setLength(String length) {
+		this.length = length;
+	}
+	public String getOrderno() {
+		return orderno;
+	}
+	public void setOrderno(String orderno) {
+		this.orderno = orderno;
+	}
+	public String getGp_name() {
+		return gp_name;
+	}
+	public void setGp_name(String gp_name) {
+		this.gp_name = gp_name;
+	}
+	public Date getGp_time() {
+		return gp_time;
+	}
+	public void setGp_time(Date gp_time) {
+		this.gp_time = gp_time;
+	}
+	public String getOld_orderno() {
+		return old_orderno;
+	}
+	public void setOld_orderno(String old_orderno) {
+		this.old_orderno = old_orderno;
+	}
+	public String getWeight() {
+		return weight;
+	}
+	public void setWeight(String weight) {
+		this.weight = weight;
+	}
+	public String getProd_line() {
+		return prod_line;
+	}
+	public void setProd_line(String prod_line) {
+		this.prod_line = prod_line;
+	}
+	public String getGp_steel_name() {
+		return gp_steel_name;
+	}
+	public void setGp_steel_name(String gp_steel_name) {
+		this.gp_steel_name = gp_steel_name;
+	}
+	
+	
+}

+ 86 - 0
.svn/pristine/18/18d4b4d4fdc4c6abb32b0abbfaeb10ee3e2efccd.svn-base

@@ -0,0 +1,86 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<queryMap desc="中间库移垛">
+	<query id="UIM010181_01.SELECT"  desc="中间库区域信息查询">
+		<![CDATA[
+		select a.row_id area_no,min(a.CLF_ROW)||'-'||max(a.CLF_ROW) area_name from (
+	     select ceil(y.CLF_ROW/10) row_id, y.CLF_ROW from c_tbk08_coil_yard_area a,c_tbk08_coil_yard y
+	     where a.AREA_NO = y.AREA_NO and a.area_type = 2 group by y.clf_row order by y.CLF_ROW
+	     ) a group by a.row_id order by a.row_id
+		 ]]>
+	</query>
+	<query id="UIM010181_02.SELECT"  desc="查询钢卷位置">
+		<![CDATA[
+		select l.cur_load_loc from c_tbl02_coil_comm l,
+		c_tbk08_coil_yard y,c_tbk08_coil_yard_area a 
+		where l.COIL_NO = y.COIL_NO 
+		and y.AREA_NO = a.AREA_NO 
+		and a.AREA_TYPE = 2 
+		and l.coil_no = ?
+		]]>
+	</query>
+	<query id="UIM010181_03.SELECT"  desc="查询区域中的垛位及钢卷">
+		<![CDATA[
+		select 'FALSE' chk
+		,y.CLF_NAME||'-'||trim(to_char(y.CLF_ROW,'00'))||decode(y.CLF_FL,1,'A',2,'B',3,'C')||'-'||trim(to_char(y.CLF_COL,'00')) cur_load_loc
+		 ,l.coil_no
+		 from c_tbk08_coil_yard y,c_tbl02_coil_comm l,c_tbk08_coil_yard_area a
+		where y.CLF_NAME||'-'||trim(to_char(y.CLF_ROW,'00'))||decode(y.CLF_FL,1,'A',2,'B',3,'C')||'-'||trim(to_char(y.CLF_COL,'00')) = l.CUR_LOAD_LOC(+)
+		 and y.AREA_NO  = a.AREA_NO and a.AREA_TYPE = 2 and y.CLF_ROW >= ? and y.CLF_ROW <= ? and y.CLF_NAME='7'
+		 order by y.CLF_ROW,y.CLF_COL,y.CLF_FL
+		]]>
+	</query>
+	<query id="UIM010181_04.SELECT"  desc="查询移垛记录表最大主键">
+		<![CDATA[
+		select max(ROLL_SEQ) ROLL_SEQ from c_tbk08_coil_move
+		]]>
+	</query>
+	<query id="UIM010181_05.SELECT"  desc="查询空垛位">
+		<![CDATA[
+		SELECT row_number() over(ORDER BY T.CLF_ROW, T.CLF_COL) SEQ,
+			   T.CLF_ROW VROW,
+		       c_pkg_uim.get_middleyardflag_byyardno(T.CLF_NO) YARD
+		  FROM C_TBK08_COIL_YARD T
+		 WHERE T.CLF_NAME = '2'
+		   AND T.CLF_FL = 1
+		   AND T.COIL_NO IS NULL
+		 ORDER BY T.CLF_ROW, T.CLF_COL
+		]]>
+	</query>
+	<query id="UIM010181_06.SELECT"  desc="查询空垛位">
+		<![CDATA[
+		SELECT row_number() over(ORDER BY T.CLF_ROW, T.CLF_COL) SEQ,
+		       T.CLF_ROW VROW,
+		       c_pkg_uim.get_middleyardflag_byyardno(T.CLF_NO) YARD
+		  FROM C_TBK08_COIL_YARD T
+		 WHERE T.CLF_NAME = '2'
+		   AND T.CLF_FL = 1
+		   AND T.COIL_NO IS NULL
+		   AND T.CLF_ROW >= ? AND T.CLF_ROW <= ?
+		 ORDER BY T.CLF_ROW, T.CLF_COL
+		]]>
+	</query>
+	<query id="UIM010181_01.UPDATE"  desc="更新钢卷公共表垛位">
+		<![CDATA[
+		UPDATE C_TBL02_COIL_COMM L SET L.CUR_LOAD_LOC = ?
+		,L.CUR_LOAD_LOC_DTIME = TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS') WHERE L.COIL_NO = ?
+		]]>
+	</query>
+	<query id="UIM010181_02.UPDATE"  desc="更新垛位表钢卷号">
+		<![CDATA[
+		UPDATE C_TBK08_COIL_YARD Y SET Y.COIL_NO = ?,Y.MOD_ID  = ?
+		, Y.MOD_TIME = TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS')
+		WHERE Y.CLF_NAME = SUBSTR(?,0,1) AND CLF_ROW = SUBSTR(?,3,2)
+		AND CLF_COL = SUBSTR(?,7,2) 
+		AND CLF_FL = DECODE(SUBSTR(?,5,1),'A','1','B','2','C','3','1')
+		]]>
+	</query>
+	<query id="UIM010181_01.INSERT"  desc="插入移垛记录">
+		<![CDATA[
+		INSERT INTO C_TBK08_COIL_MOVE (ROLL_SEQ
+		,CUR_LOAD_LOC_F,CUR_LOAD_LOC_T,COIL_NO,REG_ID
+		,REG_SHIFT,REG_GROUP,REG_DTIME,REG_USE_DTIME,MOVE_TYPE)
+		VALUES((SELECT MAX(ROLL_SEQ)+1 ROLL_SEQ FROM C_TBK08_COIL_MOVE)
+		,?,?,?,?,?,?,?,TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS'),'00')
+		]]>
+	</query>
+</queryMap>

+ 407 - 0
.svn/pristine/19/19064cdf5b708223e2a58f4be2001586adc5c3a7.svn-base

@@ -0,0 +1,407 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<queryMap desc="发行装车明细">
+	<query id="UIJ060020_01.SELECT"  desc="查询发货实绩信息">
+		<![CDATA[
+		SELECT 'N' AS CHK
+		 , A.SHIP_PROG_CD
+		 , Z.SM_CFNM AS SHIP_PROG_NM
+		 , A.SHIP_DIRNO
+		,(select CUST_NM FROM TBZ00_CUSTOMER WHERE CUST_CD = (SELECT CUST_CD FROM TBA01_ORD_COMM WHERE ORD_NO = A.ORD_NO) and REC_TP='01') CUST_NM 
+		,(select CUST_NM ORD_NM FROM TBZ00_CUSTOMER WHERE CUST_CD = C.ORD_CUST_CD and REC_TP='02') ORD_NM
+		,(select SM_CFNM FROM TBZ00_COMMCD WHERE SM_CD = A.ORD_USE_CD and LG_CD = 'A01007') SM_CFNM
+		 , A.ORD_USE_CD
+		 , A.SPEC_ABBSYM
+		 , A.SPEC_STL_GRD
+		 , A.DLIV_DIRNO
+		 , C.DLIV_TP
+		 , C.DLIV_TP_DESC
+		 , C.SHIP_COMP_CD
+		 , NVL(C.SHIP_COMP_NM,C.SHIP_COMP_CD) SHIP_COMP_NM
+		 , C.TRANS_CAR_NO
+		 , C.GET_ON_PCD
+		 , C.DEST_PCD
+		 , C.DEST_PCD_DESC
+		 , C.EXLV_LINE_CD
+		 , C.EXLV_LINE_CD_DESC
+		 , C.GET_OFF_PCD
+		 , C.BY_SEA_YN
+		 , C.ARRIVAL_CD 
+		 , C.ARRIVAL_CD_DESC
+		 , A.OLD_SAMPL_NO OLD_SAMPL_NO
+		 , A.COIL_NO  
+		 , A.TOT_DEC_GRD 
+		, DECODE(A.TOT_DEC_GRD,'1','合格','2','不合格',null) as  TOT_DEC_GRD_DESC
+		 , NVL(A.ACT_WGT,0) COIL_WGT
+		 , NVL(A.CAL_WGT,0) CAL_WGT
+		 , A.COIL_OUTDIA
+		 , A.SHIP_INVNO
+		 , A.CRET_NO
+		, NVL(TO_CHAR(TO_DATE(A.TRNF_DTIME,'YYYYMMDDHH24MISS'),'YYYY-MM-DD HH24:MI:SS'),'-') AS TRNF_DTIME
+		 ,'3'                   AS COIL_STAT
+		 ,'DFF'                 AS CUR_PROG_CD
+		 ,'UIJ060020'           AS CUR_PROG_CD_PGM
+		 , A.CUR_PROG_CD        AS BEF_PROG_CD
+		 , A.CUR_PROG_CD_DTIME  AS BEF_PROG_CD_DTIME
+		 , A.CUR_PROG_CD_PGM    AS BEF_PROG_CD_PGM
+		 , A.ORD_NO, A.ORD_SEQ
+		 ,A.MATLQLTY_DEC_GRD 
+		, DECODE(A.MATLQLTY_DEC_GRD,'1','合格','2','不合格',null) as MATLQLTY_DEC_GRD_DESC
+		 , to_char(A.INSTR_COIL_THK,'FM990.099')||'*'||A.INSTR_COIL_WTH T_W
+		 , TO_CHAR(SYSDATE,'YYYY-MM-DD') SYS_TIME
+		 , A.CZD_WGT
+		, DECODE(A.TRNF_SHIFT,'0','常白班','1','早班','2','中班','3','晚班') TRNF_SHIFT
+		 , DECODE(A.TRNF_GROUP,'0','常白班','1','甲班','2','乙班','3','丙班','4','丁班') TRNF_GROUP
+		 , to_char(to_date(A.TRNF_USE_TIME,'yyyy-mm-dd hh24:mi:ss'),'yyyy-mm-dd hh24:mi:ss') TRNF_USE_TIME
+		 ,A.HCOLOUR_REM
+		 ,A.SLAB_NO       --板加添加,以下相同
+		,to_char(to_date((SELECT T.DEL_TO_DATE FROM TBE02_ORD_PRC T WHERE T.ORD_NO = A.ORD_NO AND T.ORD_SEQ = A.ORD_SEQ),'yyyy-mm-dd hh24:mi:ss'),'yyyy-mm-dd') DEVLMT_DTIME
+		 ,A.INSTR_COIL_THK
+		 ,A.INSTR_COIL_WTH
+		 ,A.INSTR_COIL_LEN
+		 ,A.INSTR_COIL_OUTDIA
+		 ,A.INSTR_COIL_INDIA
+		 ,A.INSTR_COIL_WGT
+		 ,C.SM_CD
+		,(select CUST_CD ORD_CD FROM TBZ00_CUSTOMER WHERE CUST_CD = C.ORD_CUST_CD and REC_TP='02') ORD_CD 
+		 ,A.COIL_LEN
+		 ,A.COIL_INDIA
+		 ,A.COIL_THK
+		 ,A.COIL_WTH
+		 ,A.PRODNM_CD
+		 ,A.INGR_DEC_DTIME       --成份判定
+		 ,A.MATLQLTY_DEC_DTIME   --材质判定
+		 ,A.EXTSHAPE_DEC_DTIME   --外观判定
+		 ,A.TOT_DEC_DTIME        --综合判定时间
+		 ,A.INGR_DEC_GRD
+		 ,A.SIZE_DEC_RST
+		 ,A.EXTSHAPE_DEC_GRD
+		 ,A.WGT_DEC_RST
+		 ,A.MILL_DTIME
+		 ,A.CRK_CD1
+		 ,A.CRK_CD2
+		 ,A.CRK_CD3
+		 ,A.CRK_CD4
+		 ,A.CRK_CD5
+		  ,DECODE(NVL(A.PACKAGE_LEVEL, 1),
+              '2',
+              '20',
+              '3',
+              case when a.ACT_WGT<10000 then '20' 
+              else '40' END,
+              '4',
+              case when a.ACT_WGT<10000 then '40' 
+              else '70'
+              end,
+              '0') PKG_WGT
+		-- ,DECODE(NVL(A.PACKAGE_LEVEL,1),'2','22','3','110','4','100','0') PKG_WGT  --包装重量
+		 FROM C_TBL02_COIL_COMM A
+		 , TBJ01_SHIP_DIR  B
+		,(SELECT X.*, Y.SHIP_COMP_NM, Z.SM_CFNM AS DLIV_TP_DESC
+		 , Z1.SM_CFNM AS DEST_PCD_DESC
+		 , Z2.SM_CFNM AS EXLV_LINE_CD_DESC
+		 , Z3.SM_CFNM AS ARRIVAL_CD_DESC
+		 , Z1.SM_CD  --板加 目的地代码
+		 FROM TBJ01_DLIV_DIR X
+		 , TBJ00_SHIP_COMP Y
+		,(SELECT * FROM TBZ00_COMMCD WHERE LG_CD = 'A01012') Z
+		 ,(SELECT * FROM TBZ00_COMMCD WHERE LG_CD = 'A01009') Z1
+		 ,(SELECT * FROM TBZ00_COMMCD WHERE LG_CD = 'A01015') Z2 
+		 ,(SELECT * FROM TBZ00_COMMCD WHERE LG_CD = 'A01009') Z3
+		 WHERE 1 = 1
+		 AND X.SHIP_COMP_CD = Y.SHIP_COMP_CD(+)
+		 AND X.DLIV_TP = Z.SM_CD(+)
+		 AND X.DEST_PCD = Z1.SM_CD(+)
+		 AND X.EXLV_LINE_CD = Z2.SM_CD(+)
+		 AND X.ARRIVAL_CD = Z3.SM_CD(+)
+		 AND X.DLIV_TP LIKE ?||'%') C
+		,(SELECT * FROM TBZ00_COMMCD WHERE LG_CD = 'J01005' AND SM_CD IN ('05','06','07','08','09')) Z
+		 WHERE 1 = 1
+		 AND A.SHIP_DIRNO = B.SHIP_DIRNO
+		 AND A.DLIV_DIRNO = C.DLIV_DIRNO
+		 AND A.SHIP_PROG_CD = Z.SM_CD(+)
+		 AND A.SHIP_PROG_CD IN ('06','07','08')
+		 AND A.CUR_PROG_CD LIKE ?||'%'
+		 AND A.TRANS_CAR_NO||'&' LIKE ?||'%'
+		 AND A.DLIV_DIRNO LIKE ?||'%'
+		 AND A.SHIP_PROG_CD LIKE ?||'%'
+		 AND A.TRNF_DTIME||'&' LIKE ?||'%'
+		 ORDER BY A.SHIP_DIRNO, A.DLIV_DIRNO
+		 ]]>
+	</query>
+	<query id="UIJ060020_01.UPDATE"  desc="更改钢卷公共表发货状态">
+		<![CDATA[
+		UPDATE C_TBL02_COIL_COMM
+			 SET COIL_STAT         = ?
+			 , CUR_PROG_CD       = ?
+			 , CUR_PROG_CD_DTIME = TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS')
+			 , CUR_PROG_CD_PGM   = ?
+			 , BEF_PROG_CD       = ?
+			 , BEF_PROG_CD_DTIME = ?
+			 , BEF_PROG_CD_PGM   = ?
+			 , TRANS_CAR_NO      = ?
+			 , TRNF_SHIFT        = ?
+			 , TRNF_GROUP        = ?
+			 , TRNF_REG          = ?
+			 , TRNF_DTIME        = ?
+			 --记录修改前重量
+			 --, BEF_ACT_WGT = ACT_WGT
+			 --, ACT_WGT = ?
+			 , TRNF_USE_TIME     = TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS')
+			 ,OUT_YARD_KIND      = '2' --发运出库
+			 WHERE COIL_NO         = ?
+		 ]]>
+	</query>
+	<query id="UIJ060020_cargocn.select" desc="从货运中国中间表查询某钢卷是否存在" fetchSize="10">
+        <![CDATA[
+       SELECT COIL_NO,
+		       DLIV_DIRNO,
+		       SPEC_STL_GRD,
+		       TRANS_CAR_NO,
+		       COIL_WGT,
+		       TRNF_DTIME,
+		       ORD_NM,
+		       DEST_PCD_DESC,
+		       CUST_NM,
+		       SHIP_COMP_CD,
+		       SHIP_COMP_NM,
+		       SM_CFNM,
+		       SHIPPERCITY,
+		       SHIPPERADDR,
+		       ORDERTYPE,
+		       SHIPPERCONTACTNAME,
+		       SHIPPERCONTACTPHONE,
+		       RECEIVECONTACTNAME,
+		       RECEIVECONTACTPHONE,
+		       FREIGHTPAYSIDE,
+		       DRIVERNAME,
+		       DRIVERPHONE,
+		       SHIP_PROG_CD,
+		       REG_PGM_ID,
+		       REG_ID,
+		       REG_DTIME,
+		       MOD_PGM_ID,
+		       MOD_ID,
+		       MOD_DTIME,
+		       RECEIVECITY,
+		       TRANSMODE,
+		       EDITFLAG,
+		       PACTNO,
+		       KZZL,
+		       PKG_WGT
+		  FROM TBB01_CARGOCN_DATA
+		 WHERE COIL_NO = ?
+        ]]>
+    </query>
+    <query id="UIJ060020_cargocn.dlivselect" desc="从货运中国中间表查询某发运指示号是否存在" fetchSize="10">
+        <![CDATA[
+       SELECT COIL_NO,
+		       DLIV_DIRNO,
+		       SPEC_STL_GRD,
+		       TRANS_CAR_NO,
+		       COIL_WGT,
+		       TRNF_DTIME,
+		       ORD_NM,
+		       DEST_PCD_DESC,
+		       CUST_NM,
+		       SHIP_COMP_CD,
+		       SHIP_COMP_NM,
+		       SM_CFNM,
+		       SHIPPERCITY,
+		       SHIPPERADDR,
+		       ORDERTYPE,
+		       SHIPPERCONTACTNAME,
+		       SHIPPERCONTACTPHONE,
+		       RECEIVECONTACTNAME,
+		       RECEIVECONTACTPHONE,
+		       FREIGHTPAYSIDE,
+		       DRIVERNAME,
+		       DRIVERPHONE,
+		       SHIP_PROG_CD,
+		       REG_PGM_ID,
+		       REG_ID,
+		       REG_DTIME,
+		       MOD_PGM_ID,
+		       MOD_ID,
+		       MOD_DTIME,
+		       RECEIVECITY,
+		       TRANSMODE,
+		       EDITFLAG,
+		       PACTNO,
+		       KZZL,
+		       PKG_WGT
+		  FROM TBB01_CARGOCN_DATA
+		 WHERE DLIV_DIRNO = ?
+        ]]>
+    </query>
+    <query id="UIJ060020_cx.select" desc="从产销数据库查收货城市、收货人、电话" fetchSize="10">
+        <![CDATA[
+          SELECT CX.UNLOADDOCK,CX.SHR,CX.SHRDH FROM SEL_STATIONINFO@XGCX CX WHERE CX.STATIONNAME  LIKE ? || '%'
+        ]]>
+    </query>
+    <query id="UIJ060020_cargocn.update" desc="更新已发送到货运中国平台数据的状态" fetchSize="10">
+        <![CDATA[
+          UPDATE TBB01_CARGOCN_DATA T
+			 SET T.SHIP_PROG_CD  = '7',
+				 T.MOD_DTIME = TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS')
+			 WHERE T.DLIV_DIRNO = ?
+			   AND T.SHIP_PROG_CD != '7'
+        ]]>
+    </query> 
+    <query id="UIJ060020_cargocn_01.update" desc="更新已发送到货运中国平台数据的状态" fetchSize="10">
+        <![CDATA[
+          UPDATE TBB01_CARGOCN_DATA T
+			 SET T.SHIP_PROG_CD  = '6',
+			     T.EDITFLAG = 'C',
+				 T.MOD_DTIME = TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS')
+			 WHERE T.DLIV_DIRNO = ?
+        ]]>
+    </query>   
+    <query id="UIJ060020_cargocn_02.update" desc="根据钢卷号更新已发送到货运中国平台数据的状态" fetchSize="10">
+        <![CDATA[
+          UPDATE TBB01_CARGOCN_DATA T
+			 SET T.SHIP_PROG_CD  = '6',
+			     T.EDITFLAG = 'C',
+				 T.MOD_DTIME = TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS')
+			 WHERE T.COIL_NO = ?
+        ]]>
+    </query> 
+     <query id="UIJ060020_cargocn_03.update" desc="根据钢卷号更新已发送到货运中国平台数据的状态" fetchSize="10">
+        <![CDATA[
+          UPDATE TBB01_CARGOCN_DATA T
+			 SET T.SHIP_PROG_CD  = '6',
+			     T.EDITFLAG = 'D',
+				 T.MOD_DTIME = TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS')
+			 WHERE T.DLIV_DIRNO = ?
+        ]]>
+    </query>    
+    <query id="UIJ060020_cargocn.delete" desc="根据钢卷号删除货运中国中间表数据" fetchSize="10">
+        <![CDATA[
+          delete from TBB01_CARGOCN_DATA  where COIL_NO = ?  
+        ]]>
+    </query>
+    <query id="UIJ060020_cargocn_01.delete" desc="根据指示号删除货运中国中间表数据" fetchSize="10">
+        <![CDATA[
+          delete from TBB01_CARGOCN_DATA  where DLIV_DIRNO = ?  
+        ]]>
+    </query>
+    <query id="UIJ060020_cargocn.insert" desc="插入待发送的数据到货运中国中间表" fetchSize="10">
+        <![CDATA[
+          INSERT INTO TBB01_CARGOCN_DATA
+			  (COIL_NO,
+			   DLIV_DIRNO,
+			   SPEC_STL_GRD,
+			   TRANS_CAR_NO,
+			   COIL_WGT,
+			   TRNF_DTIME,
+			   ORD_NM,
+			   DEST_PCD_DESC,
+			   CUST_NM,
+			   SHIP_COMP_NM,
+			   SM_CFNM,
+			   SHIPPERCITY,
+			   SHIPPERADDR,
+			   ORDERTYPE,
+			   RECEIVECITY,
+			   RECEIVECONTACTNAME,
+			   RECEIVECONTACTPHONE,
+			   SHIP_PROG_CD,
+			   REG_PGM_ID,
+			   REG_ID,
+			   REG_DTIME,
+			   TRANSMODE,
+			   EDITFLAG,
+			   PACTNO,
+			   KZZL,
+			   PKG_WGT) 
+			 values 
+			  (?,?,?,?,?,TO_CHAR(TO_DATE(?,'YYYYMMDD'),'yyyy-MM-dd HH24:mi:ss'),?,?,?,?,?,?,?,?,?,?,?,?,?,?,TO_CHAR(SYSDATE , 'YYYYMMDDHH24MISS'),decode(?,'T','R','C','T','0'),?,?,?,?)
+        ]]>
+    </query>    
+	<query id="UIJ060020_02.UPDATE"  desc="更改发运表车辆号">
+		<![CDATA[
+		UPDATE tbj01_dliv_dir
+			 SET TRANS_CAR_NO      = ?
+			 WHERE DLIV_DIRNO      = ?
+		 ]]>
+	</query>
+	<query id="UIJ060020_03.UPDATE"  desc="更新钢卷公共表发运状态及发运相关信息">
+		<![CDATA[
+		UPDATE C_TBL02_COIL_COMM
+		 SET SHIP_PROG_CD = ?
+		 ,TRANS_CAR_NO = ?
+		 --,ACT_WGT     = ?
+		 ,CZD_WGT     = ?	
+		 WHERE COIL_NO    = ?
+		 ]]>
+	</query>
+	<query id="UIJ060020_04.UPDATE"  desc="改变发货表发货指示状态">
+		<![CDATA[
+		UPDATE TBJ01_SHIP_DIR
+		 SET SHIP_PROG_CD = ?
+		 WHERE SHIP_DIRNO = ?
+		 ]]>
+	</query>
+	<query id="UIJ060020_05.UPDATE"  desc="">
+		<![CDATA[
+		UPDATE TBJ01_DLIV_DIR
+		 SET TRANS_CAR_NO = ?
+		 , INV_PRNCNT = NVL(INV_PRNCNT,0) + 1
+		 WHERE DLIV_DIRNO = ?
+		 ]]>
+	</query>
+	<query id="UIJ060020_06.UPDATE"  desc="更新钢卷公共表发运状态及发运相关信息">
+		<![CDATA[
+		UPDATE C_TBL02_COIL_COMM
+		 SET SHIP_PROG_CD = ?
+		 ,TRANS_CAR_NO = ?
+		 --,ACT_WGT     = ?
+		 ,CZD_WGT     = ?	
+		 WHERE COIL_NO    = ?
+		 ]]>
+	</query>
+	<query id="UIJ060020_07.UPDATE"  desc="修改车辆号">
+		<![CDATA[
+		UPDATE C_TBL02_COIL_COMM
+		 SET TRANS_CAR_NO = ?,
+		 CHG_CARNO = (case when DLIV_TP = 'T' THEN '1' ELSE '0' END)
+		 WHERE DLIV_DIRNO = ?
+		 ]]>
+	</query>
+	<query id="UIJ060020_08.UPDATE"  desc="修改车辆号">
+		<![CDATA[
+		UPDATE TBJ01_DLIV_DIR
+		 SET TRANS_CAR_NO = ?
+		 WHERE DLIV_DIRNO = ?
+		 ]]>
+	</query>
+	<query id="UIJ060020_09.UPDATE"  desc="修改车辆号">
+		<![CDATA[
+		UPDATE tbj02_coil_comm
+		 SET TRANS_CAR_NO = ?
+		 WHERE DLIV_DIRNO = ?
+		 ]]>
+	</query>
+	<query id="UIJ050030_01.UPDATE"  desc="修改车辆号">
+		<![CDATA[
+		UPDATE C_TBC02_COIL_COMM
+		 SET TRANS_CAR_NO = ?,
+		 CHG_CARNO = (case when DLIV_TP = 'T' THEN '1' ELSE '0' END)
+		 WHERE DLIV_DIRNO = ?
+		 ]]>
+	</query>
+	<query id="UIJ060020_09.CALL"  desc="销售明细">
+		<![CDATA[
+		{call TEST.ADDSHIPDETAIL(?,?,?,?,?,?,?,?,?,?)}
+		 ]]>
+	</query>
+	<query id="UIJ060020_10.CALL"  desc="酸轧中冶新材明细">
+		<![CDATA[
+		{call TEST.ADDZYCOILSZ(?)}
+		 ]]>
+	</query>
+	<query id="UIJ060020_11.CALL"  desc="连退中冶新材明细">
+		<![CDATA[
+		{call TEST.ADDZYCOILLT(?)}
+		 ]]>
+	</query>
+</queryMap>

+ 690 - 0
.svn/pristine/19/19739313ea00e3395a131a01b9ee9f056165a235.svn-base

@@ -0,0 +1,690 @@
+package UIJ.UIJ03;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+/**
+ * 优特主数据
+ * @author zsx
+ *
+ */
+public class Youte implements Serializable{
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = -449769206299992881L;
+	private String old_sampl_no;
+	private String coil_source;
+	private String coil_sort;
+	private String ordcust_cd;
+	private String cust_nm;
+	
+	private String charge;
+	private String smp_no;
+	private String prd_code;
+	private String prd_name;
+	private String std_code;
+	
+	private String std_name;
+	private String steel_code;
+	private String steel_name;
+	//厚
+	private BigDecimal coil_thk;
+	//宽
+	private BigDecimal coil_wth;
+	
+	//长
+	private BigDecimal coil_len;
+	//卷内径
+	private BigDecimal coil_india;
+	//卷外径
+	private BigDecimal coil_outdia;
+	//卷理重
+	private BigDecimal coil_wgt;
+	//卷实重
+	private BigDecimal act_wgt;
+	
+	private String mill_dtime;
+	private String flaw_code1;
+	private String flaw_name1;
+	private String flaw_code2;
+	private String flaw_name2;
+	
+	private String flaw_code3;
+	private String flaw_name3;
+	private String flaw_code4;
+	private String flaw_name4;
+	private String flaw_code5;
+	
+	private String flaw_name5;
+	private String ingr_dec_grd;
+	private String ingr_dec_name;
+	private String extshape_dec_grd;
+	private String extshape_dec_name;
+	
+	private String size_dec_rst;
+	private String size_dec_name;
+	private String matlqlty_dec_grd;
+	private String matlqlty_dec_name;
+	private String wgt_dec_rst;
+	
+	private String wgt_dec_name;
+	private String tot_dec_grd;
+	private String tot_dec_name;
+	private String status;
+	private String remark;
+	
+	private String create_opr;
+	//合同号
+	private String orderNo;
+	//订单号
+	private String prodOrderNo;
+	
+	private String ord_nm;
+	private String instr_coil_thk;
+	private String instr_coil_wth;
+	private String dliv_tp;
+	private String trans_car_no;
+	private String packagel;
+	private String destpcd;
+	private String DDC_STL_GRD;
+	private String ORD_WGT;
+	
+	
+	public Youte() {
+		super();
+	}
+
+	public Youte(String oldSamplNo, String coilSource, String coilSort,
+			String ordcustCd, String custNm, String charge, String smpNo,
+			String prdCode, String prdName, String stdCode, String stdName,
+			String steelCode, String steelName, BigDecimal coilThk,
+			BigDecimal coilWth, BigDecimal coilLen, BigDecimal coilIndia,
+			BigDecimal coilOutdia, BigDecimal coilWgt, BigDecimal actWgt,
+			String millDtime, String flawCode1, String flawName1,
+			String flawCode2, String flawName2, String flawCode3,
+			String flawName3, String flawCode4, String flawName4,
+			String flawCode5, String flawName5, String ingrDecGrd,
+			String ingrDecName, String extshapeDecGrd, String extshapeDecName,
+			String sizeDecRst, String sizeDecName, String matlqltyDecGrd,
+			String matlqltyDecName, String wgtDecRst, String wgtDecName,
+			String totDecGrd, String totDecName, String status, String remark,
+			String createOpr, String orderNo, String prodOrderNo, String ordNm,
+			String instrCoilThk, String instrCoilWth, String dlivTp,
+			String transCarNo, String packagel, String destpcd) {
+		super();
+		old_sampl_no = oldSamplNo;
+		coil_source = coilSource;
+		coil_sort = coilSort;
+		ordcust_cd = ordcustCd;
+		cust_nm = custNm;
+		this.charge = charge;
+		smp_no = smpNo;
+		prd_code = prdCode;
+		prd_name = prdName;
+		std_code = stdCode;
+		std_name = stdName;
+		steel_code = steelCode;
+		steel_name = steelName;
+		coil_thk = coilThk;
+		coil_wth = coilWth;
+		coil_len = coilLen;
+		coil_india = coilIndia;
+		coil_outdia = coilOutdia;
+		coil_wgt = coilWgt;
+		act_wgt = actWgt;
+		mill_dtime = millDtime;
+		flaw_code1 = flawCode1;
+		flaw_name1 = flawName1;
+		flaw_code2 = flawCode2;
+		flaw_name2 = flawName2;
+		flaw_code3 = flawCode3;
+		flaw_name3 = flawName3;
+		flaw_code4 = flawCode4;
+		flaw_name4 = flawName4;
+		flaw_code5 = flawCode5;
+		flaw_name5 = flawName5;
+		ingr_dec_grd = ingrDecGrd;
+		ingr_dec_name = ingrDecName;
+		extshape_dec_grd = extshapeDecGrd;
+		extshape_dec_name = extshapeDecName;
+		size_dec_rst = sizeDecRst;
+		size_dec_name = sizeDecName;
+		matlqlty_dec_grd = matlqltyDecGrd;
+		matlqlty_dec_name = matlqltyDecName;
+		wgt_dec_rst = wgtDecRst;
+		wgt_dec_name = wgtDecName;
+		tot_dec_grd = totDecGrd;
+		tot_dec_name = totDecName;
+		this.status = status;
+		this.remark = remark;
+		create_opr = createOpr;
+		this.orderNo = orderNo;
+		this.prodOrderNo = prodOrderNo;
+		ord_nm = ordNm;
+		instr_coil_thk = instrCoilThk;
+		instr_coil_wth = instrCoilWth;
+		dliv_tp = dlivTp;
+		trans_car_no = transCarNo;
+		this.packagel = packagel;
+		this.destpcd = destpcd;
+	}
+
+	public String getOld_sampl_no() {
+		return old_sampl_no;
+	}
+
+	public void setOld_sampl_no(String oldSamplNo) {
+		old_sampl_no = oldSamplNo;
+	}
+
+	public String getCoil_source() {
+		return coil_source;
+	}
+
+	public void setCoil_source(String coilSource) {
+		coil_source = coilSource;
+	}
+
+	public String getCoil_sort() {
+		return coil_sort;
+	}
+
+	public void setCoil_sort(String coilSort) {
+		coil_sort = coilSort;
+	}
+
+	public String getOrdcust_cd() {
+		return ordcust_cd;
+	}
+
+	public void setOrdcust_cd(String ordcustCd) {
+		ordcust_cd = ordcustCd;
+	}
+
+	public String getCust_nm() {
+		return cust_nm;
+	}
+
+	public void setCust_nm(String custNm) {
+		cust_nm = custNm;
+	}
+
+	public String getCharge() {
+		return charge;
+	}
+
+	public void setCharge(String charge) {
+		this.charge = charge;
+	}
+
+	public String getSmp_no() {
+		return smp_no;
+	}
+
+	public void setSmp_no(String smpNo) {
+		smp_no = smpNo;
+	}
+
+	public String getPrd_code() {
+		return prd_code;
+	}
+
+	public void setPrd_code(String prdCode) {
+		prd_code = prdCode;
+	}
+
+	public String getPrd_name() {
+		return prd_name;
+	}
+
+	public void setPrd_name(String prdName) {
+		prd_name = prdName;
+	}
+
+	public String getStd_code() {
+		return std_code;
+	}
+
+	public void setStd_code(String stdCode) {
+		std_code = stdCode;
+	}
+
+	public String getStd_name() {
+		return std_name;
+	}
+
+	public void setStd_name(String stdName) {
+		std_name = stdName;
+	}
+
+	public String getSteel_code() {
+		return steel_code;
+	}
+
+	public void setSteel_code(String steelCode) {
+		steel_code = steelCode;
+	}
+
+	public String getSteel_name() {
+		return steel_name;
+	}
+
+	public void setSteel_name(String steelName) {
+		steel_name = steelName;
+	}
+
+	public BigDecimal getCoil_thk() {
+		return coil_thk;
+	}
+
+	public void setCoil_thk(BigDecimal coilThk) {
+		coil_thk = coilThk;
+	}
+
+	public BigDecimal getCoil_wth() {
+		return coil_wth;
+	}
+
+	public void setCoil_wth(BigDecimal coilWth) {
+		coil_wth = coilWth;
+	}
+
+	public BigDecimal getCoil_len() {
+		return coil_len;
+	}
+
+	public void setCoil_len(BigDecimal coilLen) {
+		coil_len = coilLen;
+	}
+
+	public BigDecimal getCoil_india() {
+		return coil_india;
+	}
+
+	public void setCoil_india(BigDecimal coilIndia) {
+		coil_india = coilIndia;
+	}
+
+	public BigDecimal getCoil_outdia() {
+		return coil_outdia;
+	}
+
+	public void setCoil_outdia(BigDecimal coilOutdia) {
+		coil_outdia = coilOutdia;
+	}
+
+	public BigDecimal getCoil_wgt() {
+		return coil_wgt;
+	}
+
+	public void setCoil_wgt(BigDecimal coilWgt) {
+		coil_wgt = coilWgt;
+	}
+
+	public BigDecimal getAct_wgt() {
+		return act_wgt;
+	}
+
+	public void setAct_wgt(BigDecimal actWgt) {
+		act_wgt = actWgt;
+	}
+
+	public String getMill_dtime() {
+		return mill_dtime;
+	}
+
+	public void setMill_dtime(String millDtime) {
+		mill_dtime = millDtime;
+	}
+
+	public String getFlaw_code1() {
+		return flaw_code1;
+	}
+
+	public void setFlaw_code1(String flawCode1) {
+		flaw_code1 = flawCode1;
+	}
+
+	public String getFlaw_name1() {
+		return flaw_name1;
+	}
+
+	public void setFlaw_name1(String flawName1) {
+		flaw_name1 = flawName1;
+	}
+
+	public String getFlaw_code2() {
+		return flaw_code2;
+	}
+
+	public void setFlaw_code2(String flawCode2) {
+		flaw_code2 = flawCode2;
+	}
+
+	public String getFlaw_name2() {
+		return flaw_name2;
+	}
+
+	public void setFlaw_name2(String flawName2) {
+		flaw_name2 = flawName2;
+	}
+
+	public String getFlaw_code3() {
+		return flaw_code3;
+	}
+
+	public void setFlaw_code3(String flawCode3) {
+		flaw_code3 = flawCode3;
+	}
+
+	public String getFlaw_name3() {
+		return flaw_name3;
+	}
+
+	public void setFlaw_name3(String flawName3) {
+		flaw_name3 = flawName3;
+	}
+
+	public String getFlaw_code4() {
+		return flaw_code4;
+	}
+
+	public void setFlaw_code4(String flawCode4) {
+		flaw_code4 = flawCode4;
+	}
+
+	public String getFlaw_name4() {
+		return flaw_name4;
+	}
+
+	public void setFlaw_name4(String flawName4) {
+		flaw_name4 = flawName4;
+	}
+
+	public String getFlaw_code5() {
+		return flaw_code5;
+	}
+
+	public void setFlaw_code5(String flawCode5) {
+		flaw_code5 = flawCode5;
+	}
+
+	public String getFlaw_name5() {
+		return flaw_name5;
+	}
+
+	public void setFlaw_name5(String flawName5) {
+		flaw_name5 = flawName5;
+	}
+
+	public String getIngr_dec_grd() {
+		return ingr_dec_grd;
+	}
+
+	public void setIngr_dec_grd(String ingrDecGrd) {
+		ingr_dec_grd = ingrDecGrd;
+	}
+
+	public String getIngr_dec_name() {
+		return ingr_dec_name;
+	}
+
+	public void setIngr_dec_name(String ingrDecName) {
+		ingr_dec_name = ingrDecName;
+	}
+
+	public String getExtshape_dec_grd() {
+		return extshape_dec_grd;
+	}
+
+	public void setExtshape_dec_grd(String extshapeDecGrd) {
+		extshape_dec_grd = extshapeDecGrd;
+	}
+
+	public String getExtshape_dec_name() {
+		return extshape_dec_name;
+	}
+
+	public void setExtshape_dec_name(String extshapeDecName) {
+		extshape_dec_name = extshapeDecName;
+	}
+
+	public String getSize_dec_rst() {
+		return size_dec_rst;
+	}
+
+	public void setSize_dec_rst(String sizeDecRst) {
+		size_dec_rst = sizeDecRst;
+	}
+
+	public String getSize_dec_name() {
+		return size_dec_name;
+	}
+
+	public void setSize_dec_name(String sizeDecName) {
+		size_dec_name = sizeDecName;
+	}
+
+	public String getMatlqlty_dec_grd() {
+		return matlqlty_dec_grd;
+	}
+
+	public void setMatlqlty_dec_grd(String matlqltyDecGrd) {
+		matlqlty_dec_grd = matlqltyDecGrd;
+	}
+
+	public String getMatlqlty_dec_name() {
+		return matlqlty_dec_name;
+	}
+
+	public void setMatlqlty_dec_name(String matlqltyDecName) {
+		matlqlty_dec_name = matlqltyDecName;
+	}
+
+	public String getWgt_dec_rst() {
+		return wgt_dec_rst;
+	}
+
+	public void setWgt_dec_rst(String wgtDecRst) {
+		wgt_dec_rst = wgtDecRst;
+	}
+
+	public String getWgt_dec_name() {
+		return wgt_dec_name;
+	}
+
+	public void setWgt_dec_name(String wgtDecName) {
+		wgt_dec_name = wgtDecName;
+	}
+
+	public String getTot_dec_grd() {
+		return tot_dec_grd;
+	}
+
+	public void setTot_dec_grd(String totDecGrd) {
+		tot_dec_grd = totDecGrd;
+	}
+
+	public String getTot_dec_name() {
+		return tot_dec_name;
+	}
+
+	public void setTot_dec_name(String totDecName) {
+		tot_dec_name = totDecName;
+	}
+
+	public String getStatus() {
+		return status;
+	}
+
+	public void setStatus(String status) {
+		this.status = status;
+	}
+
+	public String getRemark() {
+		return remark;
+	}
+
+	public void setRemark(String remark) {
+		this.remark = remark;
+	}
+
+	public String getCreate_opr() {
+		return create_opr;
+	}
+
+	public void setCreate_opr(String createOpr) {
+		create_opr = createOpr;
+	}
+	
+	public String getOrderNo() {
+		return orderNo;
+	}
+
+	public void setOrderNo(String orderNo) {
+		this.orderNo = orderNo;
+	}
+
+	public String getProdOrderNo() {
+		return prodOrderNo;
+	}
+
+	public void setProdOrderNo(String prodOrderNo) {
+		this.prodOrderNo = prodOrderNo;
+	}
+	
+	public String getOrd_nm() {
+		return ord_nm;
+	}
+
+	public void setOrd_nm(String ordNm) {
+		ord_nm = ordNm;
+	}
+
+	public String getInstr_coil_thk() {
+		return instr_coil_thk;
+	}
+
+	public void setInstr_coil_thk(String instrCoilThk) {
+		instr_coil_thk = instrCoilThk;
+	}
+
+	public String getInstr_coil_wth() {
+		return instr_coil_wth;
+	}
+
+	public void setInstr_coil_wth(String instrCoilWth) {
+		instr_coil_wth = instrCoilWth;
+	}
+
+	public String getDliv_tp() {
+		return dliv_tp;
+	}
+
+	public void setDliv_tp(String dlivTp) {
+		dliv_tp = dlivTp;
+	}
+
+	public String getTrans_car_no() {
+		return trans_car_no;
+	}
+
+	public void setTrans_car_no(String transCarNo) {
+		trans_car_no = transCarNo;
+	}
+
+	public String getPackagel() {
+		return packagel;
+	}
+
+	public void setPackagel(String packagel) {
+		this.packagel = packagel;
+	}
+
+	public String getDestpcd() {
+		return destpcd;
+	}
+
+	public void setDestpcd(String destpcd) {
+		this.destpcd = destpcd;
+	}
+
+	@Override
+	public int hashCode() {
+		final int prime = 31;
+		int result = 1;
+		result = prime * result
+				+ ((old_sampl_no == null) ? 0 : old_sampl_no.hashCode());
+		return result;
+	}
+
+	@Override
+	public boolean equals(Object obj) {
+		if (this == obj)
+			return true;
+		if (obj == null)
+			return false;
+		if (getClass() != obj.getClass())
+			return false;
+		Youte other = (Youte) obj;
+		if (old_sampl_no == null) {
+			if (other.old_sampl_no != null)
+				return false;
+		} else if (!old_sampl_no.equals(other.old_sampl_no))
+			return false;
+		return true;
+	}
+
+	@Override
+	public String toString() {
+		return "Youte [act_wgt=" + act_wgt + ", charge=" + charge
+				+ ", coil_india=" + coil_india + ", coil_len=" + coil_len
+				+ ", coil_outdia=" + coil_outdia + ", coil_sort=" + coil_sort
+				+ ", coil_source=" + coil_source + ", coil_thk=" + coil_thk
+				+ ", coil_wgt=" + coil_wgt + ", coil_wth=" + coil_wth
+				+ ", create_opr=" + create_opr + ", cust_nm=" + cust_nm
+				+ ", destpcd=" + destpcd + ", dliv_tp=" + dliv_tp
+				+ ", extshape_dec_grd=" + extshape_dec_grd
+				+ ", extshape_dec_name=" + extshape_dec_name + ", flaw_code1="
+				+ flaw_code1 + ", flaw_code2=" + flaw_code2 + ", flaw_code3="
+				+ flaw_code3 + ", flaw_code4=" + flaw_code4 + ", flaw_code5="
+				+ flaw_code5 + ", flaw_name1=" + flaw_name1 + ", flaw_name2="
+				+ flaw_name2 + ", flaw_name3=" + flaw_name3 + ", flaw_name4="
+				+ flaw_name4 + ", flaw_name5=" + flaw_name5 + ", ingr_dec_grd="
+				+ ingr_dec_grd + ", ingr_dec_name=" + ingr_dec_name
+				+ ", instr_coil_thk=" + instr_coil_thk + ", instr_coil_wth="
+				+ instr_coil_wth + ", matlqlty_dec_grd=" + matlqlty_dec_grd
+				+ ", matlqlty_dec_name=" + matlqlty_dec_name + ", mill_dtime="
+				+ mill_dtime + ", old_sampl_no=" + old_sampl_no + ", ord_nm="
+				+ ord_nm + ", ordcust_cd=" + ordcust_cd + ", orderNo="
+				+ orderNo + ", packagel=" + packagel + ", prd_code=" + prd_code
+				+ ", prd_name=" + prd_name + ", prodOrderNo=" + prodOrderNo
+				+ ", remark=" + remark + ", size_dec_name=" + size_dec_name
+				+ ", size_dec_rst=" + size_dec_rst + ", smp_no=" + smp_no
+				+ ", status=" + status + ", std_code=" + std_code
+				+ ", std_name=" + std_name + ", steel_code=" + steel_code
+				+ ", steel_name=" + steel_name + ", tot_dec_grd=" + tot_dec_grd
+				+ ", tot_dec_name=" + tot_dec_name + ", trans_car_no="
+				+ trans_car_no + ", wgt_dec_name=" + wgt_dec_name
+				+ ", wgt_dec_rst=" + wgt_dec_rst + "]";
+	}
+
+	public String getDDC_STL_GRD() {
+		return DDC_STL_GRD;
+	}
+
+	public void setDDC_STL_GRD(String dDCSTLGRD) {
+		DDC_STL_GRD = dDCSTLGRD;
+	}
+
+	public String getORD_WGT() {
+		return ORD_WGT;
+	}
+
+	public void setORD_WGT(String oRDWGT) {
+		ORD_WGT = oRDWGT;
+	}
+
+	
+}

+ 42 - 0
.svn/pristine/19/19b6305bc4a4ee4c54f42d2f3083d51a655403d4.svn-base

@@ -0,0 +1,42 @@
+package UIK.UIK05;
+
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.util.ArrayList;
+import java.util.Map;
+
+import org.springframework.jdbc.support.rowset.SqlRowSet;
+
+import UIB.COM.XmlSqlParsersFactory;
+
+import CoreFS.SA01.CoreIComponent;
+import CoreFS.SA06.CoreReturnObject;
+import CoreFS.SA06.CoreSqlType;
+
+public class UIK050100 extends CoreIComponent {
+	
+	public CoreReturnObject DoQuery(String in_start_time,String in_end_time,String C_SPEC_STL_GRD,String I_C_OUT_YARD,Integer queryType) throws SQLException
+	{
+			CoreReturnObject cro = new CoreReturnObject();
+			if(queryType == 0)
+			{
+				String sqlQuery = XmlSqlParsersFactory.getSql("UIK050100_01.SELECT");
+				cro = this.getDao("KgDao").ExcuteQuery(sqlQuery,new Object[]{in_start_time, in_end_time,I_C_OUT_YARD,in_start_time, in_end_time,I_C_OUT_YARD,in_start_time,in_end_time, C_SPEC_STL_GRD});			
+				return cro;
+			}
+			if(queryType == 1)
+			{
+				String sqlQuery = XmlSqlParsersFactory.getSql("UIK050100_02.SELECT");
+				cro = this.getDao("KgDao").ExcuteQuery(sqlQuery,new Object[]{in_start_time, in_end_time,I_C_OUT_YARD,in_start_time, in_end_time,I_C_OUT_YARD,in_start_time,in_end_time, C_SPEC_STL_GRD});			
+				return cro;
+			}
+			if(queryType == 2)
+			{
+				String sqlQuery = XmlSqlParsersFactory.getSql("UIK050100_03.SELECT");
+				cro = this.getDao("KgDao").ExcuteQuery(sqlQuery,new Object[]{in_start_time, in_end_time,I_C_OUT_YARD,in_start_time, in_end_time,I_C_OUT_YARD,in_start_time,in_end_time, C_SPEC_STL_GRD});			
+				return cro;
+			}
+			return cro;
+	}
+}

+ 330 - 0
.svn/pristine/1a/1aab1d0a7ce28d28d2d9329eabfe5c92227c7c3d.svn-base

@@ -0,0 +1,330 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<queryMap desc="入库待机钢卷查询">
+	<query id="UIK050010_01.SELECT"  desc="全查询"> 
+		<![CDATA[
+		select QQ.*,CC.VALUE_C,CC.VALUE_Mn,CC.VALUE_S,CC.VALUE_P,CC.VALUE_Si,CC.VALUE_Ti,CC.VALUE_N from (
+			select A.OLD_SAMPL_NO,A.STL_GRD,DECODE(A.CR_PLANT_TRS_CLF,'Z','常化','') CR_PLANT_TRS_CLF,
+			B.C_SPEC_ABBSYM SPEC_ABBSYM,B.ORD_THK INSTR_COIL_THK,B.ORD_WTH INSTR_COIL_WTH,B.ORD_LEN INSTR_COIL_LEN,B.ORD_INDIA INSTR_COIL_INDIA,
+			DECODE(H.EDGE_PROC_YN, NULL, 'N', H.EDGE_PROC_YN) EDGE_PROC_YN,
+            H.C_SPEC_STL_GRD,
+			B.ORD_OUTDIA INSTR_COIL_OUTDIA,B.ORD_UNIT_WGT INSTR_COIL_WGT,A.ACT_WGT,TS.SLAB_DCS_DETAIL,
+			(select SM_CFNM FROM  TBZ00_COMMCD T WHERE LG_CD='H02001' and T.SM_CD = A.CRK_CD1) CRK_CD1,
+			(select SM_CFNM FROM  TBZ00_COMMCD T WHERE LG_CD='H02001' and T.SM_CD = A.CRK_CD2) CRK_CD2,
+			(select SM_CFNM FROM  TBZ00_COMMCD T WHERE LG_CD='H02001' and T.SM_CD = A.CRK_CD3) CRK_CD3,
+			(select SM_CFNM FROM  TBZ00_COMMCD T WHERE LG_CD='H02001' and T.SM_CD = A.CRK_CD4) CRK_CD4,
+			(select SM_CFNM FROM  TBZ00_COMMCD T WHERE LG_CD='H02001' and T.SM_CD = A.CRK_CD5) CRK_CD5,A.FM_EXT_STRIP_TEMP_AVG,
+			A.DC_TEMP_AVG,F.FM_EXT_STRIP_CROWN_AVG HC_TU_DU,F.FM_STRIP_WDG_AVG HC_XIE_XIN,decode(A.TOT_DEC_GRD,'1','合格','2','不合格','3','外观异常','4','废品') TOT_DEC_GRD,
+			A.OLD_ORD_NO,A.OLD_ORD_SEQ,C_PKG_UIM.GET_STDDATESTR(B.DEL_TO_DATE) DEL_TO_DATE,substr(A.SLAB_NO,1,10) HEAT_NO,
+			decode(A.ORD_FL,'1','订单材','2','余材') ORD_FL,decode(A.CUR_PROG_CD,'PAB','基料卷入库待机') CUR_PROG_CD,A.COIL_LEN,
+			A.COIL_INDIA,A.COIL_OUTDIA,A.COIL_THK,A.COIL_WTH
+			,C_PKG_UIM.GET_STDDATESTR(A.CR_PLANT_TRS_DTIME) CR_PLANT_TRS_DTIME
+			,A.CR_PLANT_TRS_SEQ  from c_tbk02_coil_comm A,TBE02_ORD_PRC B,TBH02_MILL_RESULT F, TBH02_COIL_COMM  T1,TBG02_SLAB_COMM TS , tbb01_ord_head    h
+			where A.OLD_ORD_NO = B.ORD_NO AND A.OLD_ORD_SEQ = B.ORD_SEQ   AND A.OLD_ORD_NO = H.ORD_NO(+)
+           AND A.OLD_ORD_SEQ = H.ORD_SEQ(+) AND A.COIL_NO = T1.OLD_SAMPL_NO AND A.SLAB_NO = TS.SLAB_NO(+) AND T1.COIL_NO = F.COIL_NO and A.COIL_STAT = '1' and A.CUR_PROG_CD = 'PAB' order by CR_PLANT_TRS_DTIME,CR_PLANT_TRS_SEQ
+		 )  QQ
+ full join
+(select A.OLD_SAMPL_NO,
+       max(DECODE(WI.CHEM_CD, 'C', WI.CHEM_VAL)) VALUE_C,
+       max(DECODE(WI.CHEM_CD, 'Mn', WI.CHEM_VAL)) VALUE_Mn,
+       max(DECODE(WI.CHEM_CD, 'S', WI.CHEM_VAL)) VALUE_S,
+       max(DECODE(WI.CHEM_CD, 'P', WI.CHEM_VAL)) VALUE_P,
+       max(DECODE(WI.CHEM_CD, 'Si', WI.CHEM_VAL)) VALUE_Si,
+       max(DECODE(WI.CHEM_CD, 'Ti', WI.CHEM_VAL)) VALUE_Ti,
+       max(DECODE(WI.CHEM_CD, 'N', WI.CHEM_VAL)) VALUE_N
+    from c_tbk02_coil_comm A,TBE02_ORD_PRC B,TBB02_WORK_INGR WI,TBG02_CHARGE_COMM_D D
+    where A.OLD_ORD_NO = B.ORD_NO AND A.OLD_ORD_SEQ = B.ORD_SEQ and A.COIL_STAT = '1' and A.CUR_PROG_CD = 'PAB' 
+     AND WI.CHARGE_NO = D.CHARGE_NO AND WI.PROC_CD || WI.CHEM_SEQ = D.LST_INGR_CD
+     AND  SUBSTR(A.SLAB_NO, 1, 10) = WI.CHARGE_NO AND WI.CHEM_CD IN ('C','Mn','S','P','Si','Ti','N')
+     GROUP BY A.OLD_SAMPL_NO)  CC on  QQ.OLD_SAMPL_NO = CC.OLD_SAMPL_NO
+		 ]]>
+	</query>
+	
+	<query id="UIK050010_02.SELECT"  desc="时间相等查询">
+		<![CDATA[
+		select QQ.*,CC.VALUE_C,CC.VALUE_Mn,CC.VALUE_S,CC.VALUE_P,CC.VALUE_Si,CC.VALUE_Ti,CC.VALUE_N from (
+			select A.OLD_SAMPL_NO,A.STL_GRD,DECODE(A.CR_PLANT_TRS_CLF,'Z','常化','') CR_PLANT_TRS_CLF,
+			B.C_SPEC_ABBSYM SPEC_ABBSYM,B.ORD_THK INSTR_COIL_THK,B.ORD_WTH INSTR_COIL_WTH,B.ORD_LEN INSTR_COIL_LEN,B.ORD_INDIA INSTR_COIL_INDIA,
+			B.ORD_OUTDIA INSTR_COIL_OUTDIA,B.ORD_UNIT_WGT INSTR_COIL_WGT,A.ACT_WGT,TS.SLAB_DCS_DETAIL,
+			DECODE(H.EDGE_PROC_YN, NULL, 'N', H.EDGE_PROC_YN) EDGE_PROC_YN,
+            H.C_SPEC_STL_GRD,
+			(select SM_CFNM FROM  TBZ00_COMMCD T WHERE LG_CD='H02001' and T.SM_CD = A.CRK_CD1) CRK_CD1,
+			(select SM_CFNM FROM  TBZ00_COMMCD T WHERE LG_CD='H02001' and T.SM_CD = A.CRK_CD2) CRK_CD2,
+			(select SM_CFNM FROM  TBZ00_COMMCD T WHERE LG_CD='H02001' and T.SM_CD = A.CRK_CD3) CRK_CD3,
+			(select SM_CFNM FROM  TBZ00_COMMCD T WHERE LG_CD='H02001' and T.SM_CD = A.CRK_CD4) CRK_CD4,
+			(select SM_CFNM FROM  TBZ00_COMMCD T WHERE LG_CD='H02001' and T.SM_CD = A.CRK_CD5) CRK_CD5,
+			A.FM_EXT_STRIP_TEMP_AVG,F.FM_EXT_STRIP_CROWN_AVG HC_TU_DU,F.FM_STRIP_WDG_AVG HC_XIE_XIN,
+			A.DC_TEMP_AVG,decode(A.TOT_DEC_GRD,'1','合格','2','不合格','3','外观异常','4','废品') TOT_DEC_GRD,
+			A.OLD_ORD_NO,A.OLD_ORD_SEQ,C_PKG_UIM.GET_STDDATESTR(B.DEL_TO_DATE) DEL_TO_DATE,substr(A.SLAB_NO,1,10) HEAT_NO,
+			decode(A.ORD_FL,'1','订单材','2','余材') ORD_FL,decode(A.CUR_PROG_CD,'PAB','基料卷入库待机') CUR_PROG_CD,A.COIL_LEN,
+			A.COIL_INDIA,A.COIL_OUTDIA,A.COIL_THK,A.COIL_WTH
+			,C_PKG_UIM.GET_STDDATESTR(A.CR_PLANT_TRS_DTIME) CR_PLANT_TRS_DTIME
+			,A.CR_PLANT_TRS_SEQ from c_tbk02_coil_comm A,TBE02_ORD_PRC B,TBH02_MILL_RESULT F, TBH02_COIL_COMM  T1,TBG02_SLAB_COMM TS, tbb01_ord_head    h
+			where A.OLD_ORD_NO = B.ORD_NO AND A.OLD_ORD_SEQ = B.ORD_SEQ AND A.COIL_NO = T1.OLD_SAMPL_NO AND A.SLAB_NO = TS.SLAB_NO(+) AND T1.COIL_NO = F.COIL_NO AND A.COIL_STAT = '1' and A.CUR_PROG_CD = 'PAB' 
+			AND A.OLD_ORD_NO = H.ORD_NO(+)
+            AND A.OLD_ORD_SEQ = H.ORD_SEQ(+) 
+			AND TO_DATE(A.CUR_PROG_CD_DTIME,'YYYY-MM-DD HH24:MI:SS') >= to_date(?,'YYYY-MM-DD HH24:MI:SS')
+			and TO_DATE(A.CUR_PROG_CD_DTIME,'YYYY-MM-DD HH24:MI:SS') < to_date(?,'YYYY-MM-DD HH24:MI:SS')+1
+			order by CR_PLANT_TRS_DTIME,CR_PLANT_TRS_SEQ
+		 )  QQ
+	 full join
+	(select A.OLD_SAMPL_NO,
+       max(DECODE(WI.CHEM_CD, 'C', WI.CHEM_VAL)) VALUE_C,
+       max(DECODE(WI.CHEM_CD, 'Mn', WI.CHEM_VAL)) VALUE_Mn,
+       max(DECODE(WI.CHEM_CD, 'S', WI.CHEM_VAL)) VALUE_S,
+       max(DECODE(WI.CHEM_CD, 'P', WI.CHEM_VAL)) VALUE_P,
+       max(DECODE(WI.CHEM_CD, 'Si', WI.CHEM_VAL)) VALUE_Si,
+       max(DECODE(WI.CHEM_CD, 'Ti', WI.CHEM_VAL)) VALUE_Ti,
+       max(DECODE(WI.CHEM_CD, 'N', WI.CHEM_VAL)) VALUE_N
+    from c_tbk02_coil_comm A,TBE02_ORD_PRC B,TBB02_WORK_INGR WI,TBG02_CHARGE_COMM_D D
+    where A.OLD_ORD_NO = B.ORD_NO AND A.OLD_ORD_SEQ = B.ORD_SEQ and A.COIL_STAT = '1' and A.CUR_PROG_CD = 'PAB' 
+   	 AND TO_DATE(A.CUR_PROG_CD_DTIME,'YYYY-MM-DD HH24:MI:SS') >= to_date(?,'YYYY-MM-DD HH24:MI:SS')
+	 and TO_DATE(A.CUR_PROG_CD_DTIME,'YYYY-MM-DD HH24:MI:SS') < to_date(?,'YYYY-MM-DD HH24:MI:SS')+1
+     AND WI.CHARGE_NO = D.CHARGE_NO AND WI.PROC_CD || WI.CHEM_SEQ = D.LST_INGR_CD
+     AND  SUBSTR(A.SLAB_NO, 1, 10) = WI.CHARGE_NO AND WI.CHEM_CD IN ('C','Mn','S','P','Si','Ti','N')
+     GROUP BY A.OLD_SAMPL_NO)  CC on  QQ.OLD_SAMPL_NO = CC.OLD_SAMPL_NO
+		 ]]>
+	</query>
+	
+	<query id="UIK050010_03.SELECT"  desc="时间不等查询">
+		<![CDATA[
+		select QQ.*,CC.VALUE_C,CC.VALUE_Mn,CC.VALUE_S,CC.VALUE_P,CC.VALUE_Si,CC.VALUE_Ti,CC.VALUE_N from (
+			select A.OLD_SAMPL_NO,A.STL_GRD,DECODE(A.CR_PLANT_TRS_CLF,'Z','常化','') CR_PLANT_TRS_CLF,
+			B.C_SPEC_ABBSYM SPEC_ABBSYM,B.ORD_THK INSTR_COIL_THK,B.ORD_WTH INSTR_COIL_WTH,B.ORD_LEN INSTR_COIL_LEN,B.ORD_INDIA INSTR_COIL_INDIA,
+			DECODE(H.EDGE_PROC_YN, NULL, 'N', H.EDGE_PROC_YN) EDGE_PROC_YN,
+            H.C_SPEC_STL_GRD,
+			B.ORD_OUTDIA INSTR_COIL_OUTDIA,B.ORD_UNIT_WGT INSTR_COIL_WGT,A.ACT_WGT,TS.SLAB_DCS_DETAIL,
+			(select SM_CFNM FROM  TBZ00_COMMCD T WHERE LG_CD='H02001' and T.SM_CD = A.CRK_CD1) CRK_CD1,
+			(select SM_CFNM FROM  TBZ00_COMMCD T WHERE LG_CD='H02001' and T.SM_CD = A.CRK_CD2) CRK_CD2,
+			(select SM_CFNM FROM  TBZ00_COMMCD T WHERE LG_CD='H02001' and T.SM_CD = A.CRK_CD3) CRK_CD3,
+			(select SM_CFNM FROM  TBZ00_COMMCD T WHERE LG_CD='H02001' and T.SM_CD = A.CRK_CD4) CRK_CD4,
+			(select SM_CFNM FROM  TBZ00_COMMCD T WHERE LG_CD='H02001' and T.SM_CD = A.CRK_CD5) CRK_CD5,
+			A.FM_EXT_STRIP_TEMP_AVG,F.FM_EXT_STRIP_CROWN_AVG HC_TU_DU,F.FM_STRIP_WDG_AVG HC_XIE_XIN,
+			A.DC_TEMP_AVG,decode(A.TOT_DEC_GRD,'1','合格','2','不合格','3','外观异常','4','废品') TOT_DEC_GRD,
+			A.OLD_ORD_NO,A.OLD_ORD_SEQ,C_PKG_UIM.GET_STDDATESTR(B.DEL_TO_DATE) DEL_TO_DATE,substr(A.SLAB_NO,1,10) HEAT_NO,
+			decode(A.ORD_FL,'1','订单材','2','余材') ORD_FL,decode(A.CUR_PROG_CD,'PAB','基料卷入库待机') CUR_PROG_CD,A.COIL_LEN,
+			A.COIL_INDIA,A.COIL_OUTDIA,A.COIL_THK,A.COIL_WTH
+			,C_PKG_UIM.GET_STDDATESTR(A.CR_PLANT_TRS_DTIME) CR_PLANT_TRS_DTIME
+			,A.CR_PLANT_TRS_SEQ from c_tbk02_coil_comm A,TBE02_ORD_PRC B,TBH02_MILL_RESULT F, TBH02_COIL_COMM  T1,TBG02_SLAB_COMM TS, tbb01_ord_head    h
+			where A.OLD_ORD_NO = B.ORD_NO AND A.OLD_ORD_SEQ = B.ORD_SEQ AND A.COIL_NO = T1.OLD_SAMPL_NO  AND A.SLAB_NO = TS.SLAB_NO(+) AND T1.COIL_NO = F.COIL_NO  AND A.COIL_STAT = '1' and A.CUR_PROG_CD = 'PAB' 
+			AND A.OLD_ORD_NO = H.ORD_NO(+)
+            AND A.OLD_ORD_SEQ = H.ORD_SEQ(+) 
+			AND TO_DATE(A.CUR_PROG_CD_DTIME,'YYYY-MM-DD HH24:MI:SS') >= to_date(?,'YYYY-MM-DD HH24:MI:SS')
+			and TO_DATE(A.CUR_PROG_CD_DTIME,'YYYY-MM-DD HH24:MI:SS') < to_date(?,'YYYY-MM-DD HH24:MI:SS')+1
+			order by CR_PLANT_TRS_DTIME,CR_PLANT_TRS_SEQ
+			 )  QQ
+	 full join
+	(select A.OLD_SAMPL_NO,
+       max(DECODE(WI.CHEM_CD, 'C', WI.CHEM_VAL)) VALUE_C,
+       max(DECODE(WI.CHEM_CD, 'Mn', WI.CHEM_VAL)) VALUE_Mn,
+       max(DECODE(WI.CHEM_CD, 'S', WI.CHEM_VAL)) VALUE_S,
+       max(DECODE(WI.CHEM_CD, 'P', WI.CHEM_VAL)) VALUE_P,
+       max(DECODE(WI.CHEM_CD, 'Si', WI.CHEM_VAL)) VALUE_Si,
+       max(DECODE(WI.CHEM_CD, 'Ti', WI.CHEM_VAL)) VALUE_Ti,
+       max(DECODE(WI.CHEM_CD, 'N', WI.CHEM_VAL)) VALUE_N
+    from c_tbk02_coil_comm A,TBE02_ORD_PRC B,TBB02_WORK_INGR WI,TBG02_CHARGE_COMM_D D
+    where A.OLD_ORD_NO = B.ORD_NO AND A.OLD_ORD_SEQ = B.ORD_SEQ and A.COIL_STAT = '1' and A.CUR_PROG_CD = 'PAB' 
+   	 AND TO_DATE(A.CUR_PROG_CD_DTIME,'YYYY-MM-DD HH24:MI:SS') >= to_date(?,'YYYY-MM-DD HH24:MI:SS')
+	 and TO_DATE(A.CUR_PROG_CD_DTIME,'YYYY-MM-DD HH24:MI:SS') < to_date(?,'YYYY-MM-DD HH24:MI:SS')+1
+     AND WI.CHARGE_NO = D.CHARGE_NO AND WI.PROC_CD || WI.CHEM_SEQ = D.LST_INGR_CD
+     AND  SUBSTR(A.SLAB_NO, 1, 10) = WI.CHARGE_NO AND WI.CHEM_CD IN ('C','Mn','S','P','Si','Ti','N')
+     GROUP BY A.OLD_SAMPL_NO)  CC on  QQ.OLD_SAMPL_NO = CC.OLD_SAMPL_NO
+		 ]]>
+	</query>
+	<query id="UIK050010_04.SELECT"  desc="时间不等查询">
+		<![CDATA[
+		select A.OLD_SAMPL_NO,
+       A.STL_GRD,
+       '' SPEC_ABBSYM,
+       '' INSTR_COIL_THK,
+       '' INSTR_COIL_WTH,
+       '' INSTR_COIL_LEN,
+       '' INSTR_COIL_INDIA,
+       '' INSTR_COIL_OUTDIA,
+       '' INSTR_COIL_WGT,
+       A.ACT_WGT,
+       DECODE(H.EDGE_PROC_YN, NULL, 'N', H.EDGE_PROC_YN) EDGE_PROC_YN,
+       H.C_SPEC_STL_GRD,
+       (select SM_CFNM
+          FROM TBZ00_COMMCD T
+         WHERE LG_CD = 'H02001'
+           and T.SM_CD = A.CRK_CD1) CRK_CD1,
+       (select SM_CFNM
+          FROM TBZ00_COMMCD T
+         WHERE LG_CD = 'H02001'
+           and T.SM_CD = A.CRK_CD2) CRK_CD2,
+       (select SM_CFNM
+          FROM TBZ00_COMMCD T
+         WHERE LG_CD = 'H02001'
+           and T.SM_CD = A.CRK_CD3) CRK_CD3,
+       (select SM_CFNM
+          FROM TBZ00_COMMCD T
+         WHERE LG_CD = 'H02001'
+           and T.SM_CD = A.CRK_CD4) CRK_CD4,
+       (select SM_CFNM
+          FROM TBZ00_COMMCD T
+         WHERE LG_CD = 'H02001'
+           and T.SM_CD = A.CRK_CD5) CRK_CD5,
+       A.FM_EXT_STRIP_TEMP_AVG,
+       A.DC_TEMP_AVG,
+       
+       decode(A.TOT_DEC_GRD,
+              '1',
+              '合格',
+              '2',
+              '不合格',
+              '3',
+              '外观异常',
+              '4',
+              '废品') TOT_DEC_GRD,
+       A.ORD_NO OLD_ORD_NO,
+       A.ORD_SEQ OLD_ORD_SEQ,
+       '' DEL_TO_DATE,
+       substr(A.SLAB_NO, 1, 10) HEAT_NO,
+       decode(A.ORD_FL, '1', '订单材', '2', '余材') ORD_FL,
+       decode(A.CUR_PROG_CD, 'PAB', '基料卷入库待机') CUR_PROG_CD,
+       A.COIL_LEN,
+       A.COIL_INDIA,
+       A.COIL_OUTDIA,
+       A.COIL_THK,
+       A.COIL_WTH,
+       C_PKG_UIM.GET_STDDATESTR(A.CR_PLANT_TRS_DTIME) CR_PLANT_TRS_DTIME,
+       A.CR_PLANT_TRS_SEQ
+  from C_TBK02_COIL_COMM A, TBH02_COIL_COMM T1,tbb01_ord_head    h
+ WHERE A.OLD_SAMPL_NO = T1.OLD_SAMPL_NO
+  and A.ORD_NO = H.ORD_NO(+)
+    AND A.ORD_SEQ = H.ORD_SEQ(+)
+   AND A.COIL_STAT = '3'
+   AND A.OUT_YARD_KIND = '2'
+   AND T1.DLIV_DIRNO IS NULL
+   AND T1.COIL_STAT = '3'
+   AND SUBSTR(T1.MILL_DTIME,1,8) BETWEEN ? AND ?
+ order by CR_PLANT_TRS_DTIME, CR_PLANT_TRS_SEQ
+		 ]]>
+	</query>
+	
+	<query id="UIK050010_05.SELECT"  desc="时间不等查询">
+		<![CDATA[
+		
+select t.OLD_SAMPL_NO,
+       t.CR_PLANT_TRS_DTIME,
+       t.ORD_NO,
+       t.ORD_SEQ,
+       t.ORG_ORD_NO,
+       t.ORG_ORD_SEQ,
+       t1.DEL_TO_DATE,
+       t1.H_SPEC_STL_GRD,
+       t1.C_SPEC_STL_GRD,
+       substr(t.SLAB_NO, 1, 10) HEAT_NO,
+        '' JSSJ,
+       t.INSTR_COIL_THK,
+       t.INSTR_COIL_WTH,
+       t.COIL_THK,
+       t.COIL_WTH,
+       t.ACT_WGT,
+       decode(t.ORD_FL,'1','订单材','2','余材') ORD_FL,
+       decode(t.TOT_DEC_GRD,
+              '1',
+              '合格',
+              '2',
+              '不合格',
+              '3',
+              '外观异常',
+              '4',
+              '废品') TOT_DEC_GRD,
+       '' bz
+      
+  from tbh02_coil_comm t, tbe02_ord_prc t1, tba01_ord_line t2
+ where t.ORD_NO = t1.ORD_NO
+   and t.ORD_SEQ = t1.ORD_SEQ
+   and t.ORD_NO = t2.ORD_NO
+   and t.ORD_SEQ = t2.ORD_SEQ
+   and t2.RZHQX = 'Z'
+   AND T.CR_PLANT_TRS_CLF = 'Z'
+   AND T.CR_PLANT_TRS_DTIME BETWEEN nvl(?,'000000') AND nvl(?,'999999')
+   AND T.OLD_SAMPL_NO LIKE ? || '%'
+   AND T.ORD_NO LIKE ? || '%'
+   AND T.ORD_SEQ LIKE ? || '%'
+   AND T.ORG_ORD_NO LIKE ? || '%'
+   AND T.ORG_ORD_SEQ LIKE ? || '%'
+		 ]]>
+	</query>
+	
+	<query id="UIK050010_06.SELECT"  desc="外购卷时间不等查询">
+	<![CDATA[
+			select A.OLD_SAMPL_NO,
+		       A.STL_GRD,
+		       A.SPEC_ABBSYM,
+		       '' INSTR_COIL_THK,
+		       '' INSTR_COIL_WTH,
+		       '' INSTR_COIL_LEN,
+		       '' INSTR_COIL_INDIA,
+		       '' INSTR_COIL_OUTDIA,
+		       '' INSTR_COIL_WGT,
+		       A.ACT_WGT,
+		       '' EDGE_PROC_YN,
+		       '' C_SPEC_STL_GRD,
+		       (select SM_CFNM
+		          FROM TBZ00_COMMCD T
+		         WHERE LG_CD = 'H02001'
+		           and T.SM_CD = A.CRK_CD1) CRK_CD1,
+		       (select SM_CFNM
+		          FROM TBZ00_COMMCD T
+		         WHERE LG_CD = 'H02001'
+		           and T.SM_CD = A.CRK_CD2) CRK_CD2,
+		       (select SM_CFNM
+		          FROM TBZ00_COMMCD T
+		         WHERE LG_CD = 'H02001'
+		           and T.SM_CD = A.CRK_CD3) CRK_CD3,
+		       (select SM_CFNM
+		          FROM TBZ00_COMMCD T
+		         WHERE LG_CD = 'H02001'
+		           and T.SM_CD = A.CRK_CD4) CRK_CD4,
+		       (select SM_CFNM
+		          FROM TBZ00_COMMCD T
+		         WHERE LG_CD = 'H02001'
+		           and T.SM_CD = A.CRK_CD5) CRK_CD5,
+		       A.FM_EXT_STRIP_TEMP_AVG,
+		       A.DC_TEMP_AVG,
+		       
+		       decode(A.TOT_DEC_GRD,
+		              '1',
+		              '合格',
+		              '2',
+		              '不合格',
+		              '3',
+		              '外观异常',
+		              '4',
+		              '废品') TOT_DEC_GRD,
+		       A.ORD_NO OLD_ORD_NO,
+		       A.ORD_SEQ OLD_ORD_SEQ,
+		       '' DEL_TO_DATE,
+		       substr(A.SLAB_NO, 1, 10) HEAT_NO,
+		       decode(A.ORD_FL, '1', '订单材', '2', '余材') ORD_FL,
+		       decode(A.CUR_PROG_CD, 'PAB', '基料卷入库待机') CUR_PROG_CD,
+		       A.COIL_LEN,
+		       A.COIL_INDIA,
+		       A.COIL_OUTDIA,
+		       A.COIL_THK,
+		       A.COIL_WTH,
+		       C_PKG_UIM.GET_STDDATESTR(A.CR_PLANT_TRS_DTIME) CR_PLANT_TRS_DTIME,
+		       A.CR_PLANT_TRS_SEQ
+		  from C_TBK02_COIL_COMM A
+		 WHERE A.OLD_SAMPL_NO LIKE '%W%'
+		 AND A.CUR_LOAD_LOC IS NULL
+		 AND A.COIL_STAT = '2'
+		 AND SUBSTR(A.CR_PLANT_TRS_DTIME,1,8) BETWEEN ? AND ?
+		 ORDER BY CR_PLANT_TRS_DTIME
+	]]>
+	</query>
+	
+	<query id="UIK050010_01.CALL"  desc="">
+		<![CDATA[
+		{ call PKG_UIK020010.takeOverCoilBack(?)}
+		 ]]>
+	</query>
+	<query id="UIK050010_02.CALL"  desc="">
+		<![CDATA[
+		{ call PKG_UIK020010.takeOverCoilBackSx(?)}
+		 ]]>
+	</query>
+</queryMap>

BIN
.svn/pristine/1a/1acdedeb89f1d950d67b73d481eb7736df65eedb.svn-base


BIN
.svn/pristine/1b/1b11ffbee14f21d47125ecd8e44fc6ddcad3a053.svn-base


+ 156 - 0
.svn/pristine/1b/1b3515724d0bf918b04df04972330250650156b4.svn-base

@@ -0,0 +1,156 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<queryMap desc="表面检验管理">
+<update id="QCM030510_UpdateSurfaceFlaw" desc ="修改、取消修复缺陷">
+ update QCM_JUDGE_SURFACE_FLAW t
+ set t.IS_REPAIR = :3
+ where t.SURFACE_ID = :1
+ and t.FLAW_SEQ = :2
+</update>
+
+<select id="QCM030510_findNameByMN" desc="质量判定-根据产品序号获得缺陷信息">
+		select
+		case when IS_REPAIR = '0' then '待修复' else '已修复' end IS_REPAIR,
+		case when PRIMARY_FLAG = '0' then '否' else '是' end PRIMARY_FLAG,
+		t.SURFACE_ID,
+		t.FLAW_SEQ,
+		t.FLAW_DESC,
+		FLAW_TYPE_DESC,
+		case when FLAW_AREA = 'U' THEN '上表面' FLAW_AREA = 'D' THEN '下表面' else '边部' end FLAW_AREA,
+		t.FLAW_POS_DESC,
+		t.FLAW_DIR_DESC,
+		t.FLAW_SIZE_DESC,
+		FLAW_LV_DESC
+		FLAW_QUANTITY,
+		memo,
+		CREATE_NAME
+		from QCM_JUDGE_SURFACE_FLAW t
+		where t.PRIMARY_FLAG='1'
+		and
+		t.SURFACE_ID in (
+		select max(t2.SURFACE_ID) from QCM_JUDGE_SURFACE t2
+		where t2.MATERIAL_NO=#{param1}
+		)
+	</select>
+<insert id="InsertSurface" desc="插入表面检验实绩表">
+insert into QCM_JUDGE_SURFACE
+(surface_id,
+       heat_no,
+       batch_no,
+       board_no,
+       inspection_lot,
+       material_no,
+       sf_result_code,
+       sf_result_desc,
+       level_code,
+       level_desc,
+       sf_memo,
+       sf_type,
+       roughness_val1,
+       roughness_val2,
+       roughness_val3,
+       cop_section_code,
+       cop_section_desc,
+       respon_section_code,
+       respon_section_name,
+       reason_code,
+       reason_desc,
+       sfu_is_lock,
+       sfd_is_lock,
+       sfe_is_lock,
+       design_key,
+       order_no,
+       psc,
+       psc_desc,
+       pline_code,
+       pline_name,
+       wrk_ord,
+       wrk_grp,
+       judge_name,
+       judge_time)
+values
+(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,sysdate)
+</insert>
+<insert id= "InsertSurfaceFLaw"  desc="插入表面缺陷实绩表">
+  insert into QCM_JUDGE_SURFACE_FLAW
+  (SURFACE_ID,
+  PRIMARY_FLAG,
+  IS_REPAIR,
+  FLAW_SEQ,
+  FLAW_CODE,
+  FLAW_DESC,
+  FLAW_AREA,
+  FLAW_TYPE_CODE,
+  FLAW_TYPE_DESC,
+  FLAW_POS_CODE,
+  FLAW_POS_DESC,
+  FLAW_DIR_CODE,
+  FLAW_DIR_DESC,
+  FLAW_SIZE_CODE,
+  FLAW_SIZE_DESC,
+  FLAW_LV_CODE,
+  FLAW_LV_DESC,
+  FLAW_QUANTITY,
+  MEMO,
+  CREATE_NAME,
+  CREATE_TIME)
+  values
+  (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,sysdate)
+</insert>
+<insert id="QCM030510_insertlock" desc="插入封锁表">
+  insert into QCM_JUDGE_LOCKING
+  (material_no,
+        lock_seq,
+        lock_type_code,
+        lock_type_desc,
+        lock_memo,
+        unlock_type_code,
+        unlock_type_desc,
+        unlock_memo,
+        target_design_key,
+        target_psc,
+        heat_no,
+        batch_no,
+        board_no,
+        plan_no,
+        ht_no,
+        design_key,
+        psc,
+        pline_code,
+        pline_name,
+        cic_locking,
+        fic_locking,
+        sic_locking,
+        pic_locking,
+        dic_locking)
+  values
+  (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
+</insert>
+
+<select id= "QuerySurfaceFlaw" desc="查询缺陷信息">
+select a.surface_id,
+       a.primary_flag,
+       a.is_repair,
+       a.flaw_seq,
+       a.flaw_code,
+       a.flaw_desc,
+       a.flaw_area,
+       a.flaw_type_code,
+       a.flaw_type_desc,
+       a.flaw_pos_code,
+       a.flaw_pos_desc,
+       a.flaw_dir_code,
+       a.flaw_dir_desc,
+       a.flaw_size_code,
+       a.flaw_size_desc,
+       a.flaw_lv_code,
+       a.flaw_lv_desc,
+       a.flaw_weight,
+       a.flaw_quantity,
+       a.memo,
+       a.create_name,
+       a.create_time,
+       a.update_name,
+       a.update_time from QCM_JUDGE_SURFACE_FLAW a 
+       where surface_id = #{param1}
+</select>
+</queryMap>

BIN
.svn/pristine/1c/1c171093a8b43aa550c6050ac441abe713ebb4f2.svn-base


BIN
.svn/pristine/1c/1cea24dcb9b5c7adf440b47155843a5bd29d8d57.svn-base


+ 62 - 0
.svn/pristine/1d/1de631bae2aa53f18f5fbee653fe38c0293cf9ea.svn-base

@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding='UTF-8'?>
+
+<queryMap desc="连退作业对象申报">
+
+<query id="UIF051020_01.SELECT" desc="申报对象查询">
+	SELECT A.OLD_SAMPL_NO COIL_NO,A.SLAB_NO,A.CUR_PROG_CD,A.SPEC_STL_GRD,
+           A.COIL_THK,A.COIL_WTH,A.COIL_LEN,
+           A.COIL_INDIA,A.COIL_OUTDIA,A.ACT_WGT,
+           DECODE(A.TOT_DEC_GRD,'1','合格','2','不合格','未判') TOT_DEC_GRD,
+           C_PKG_UIF_CAL.F_FUN_GET_FACEBUG(A.CRK_CD1,A.CRK_CD2,A.CRK_CD3,A.CRK_CD4,A.CRK_CD5) BUG,
+           A.CUR_LOAD_LOC,
+           B.C_SPEC_STL_GRD,B.C_ORD_THK,B.C_ORD_THK_MIN,B.C_ORD_THK_MAX,
+           B.C_ORD_WTH,B.C_ORD_WTH_MIN,B.C_ORD_WTH_MAX,
+           B.C_ORD_LEN,B.C_ORD_LEN_MIN,B.C_ORD_LEN_MAX,
+           B.ORD_UNIT_WGT ORD_WGT,B.ORD_UNIT_WGT_MIN,B.ORD_UNIT_WGT_MAX,
+           B.L_ORD_INDIA,B.C_EXTSHAPE_REQ,C.SM_CFNM L_ORD_USEAGE_CD,D.CUST_NM ORDCUST_CD,
+           B.PACK_METHOD,B.C_SPEC_ABBSYM,B.ANNOITA_YN,B.PLY_REQUEST,'FALSE' FLAG,
+           B.ORD_NO,B.ORD_SEQ,B.DEL_TO_DATE 
+      FROM C_TBC02_COIL_COMM A,TBE02_ORD_PRC B,TBZ00_COMMCD C,TBZ00_CUSTOMER D  
+     WHERE A.COIL_STAT='2' AND A.ORD_NO=B.ORD_NO(+) AND A.ORD_SEQ=B.ORD_SEQ(+) AND A.CUR_LOAD_LOC IS NOT NULL
+       AND A.FAN_XIU = 'Y'
+       AND B.L_ORD_USEAGE_CD=C.SM_CD(+) AND B.ORDCUST_CD=D.CUST_CD(+)
+</query>
+<query id="UIF051020_02.SELECT" desc="已申报信息查询">
+	SELECT A.OLD_SAMPL_NO COIL_NO,A.SLAB_NO,F.CUR_PROG_CD,F.SPEC_STL_GRD,
+		     F.COIL_THK,F.COIL_WTH,F.COIL_LEN,
+		     F.COIL_INDIA,F.COIL_OUTDIA,F.COIL_WGT,
+		     DECODE(F.TOT_DEC_GRD,'1','合格','2','不合格','未判') TOT_DEC_GRD,
+		     C_PKG_UIF_CAL.F_FUN_GET_FACEBUG(F.CRK_CD1,F.CRK_CD2,F.CRK_CD3,F.CRK_CD4,F.CRK_CD5) BUG,
+		     A.CUR_LOAD_LOC,
+		     B.C_SPEC_STL_GRD,B.C_ORD_THK,B.C_ORD_THK_MIN,B.C_ORD_THK_MAX,
+		     B.C_ORD_WTH,B.C_ORD_WTH_MIN,B.C_ORD_WTH_MAX,
+		     B.C_ORD_LEN,B.C_ORD_LEN_MIN,B.C_ORD_LEN_MAX,
+		     B.ORD_UNIT_WGT,B.ORD_UNIT_WGT_MIN,B.ORD_UNIT_WGT_MAX,
+		     B.L_ORD_INDIA,B.C_EXTSHAPE_REQ,C.SM_CFNM L_ORD_USEAGE_CD,D.CUST_NM ORDCUST_CD,
+		     B.PACK_METHOD,B.C_SPEC_ABBSYM,B.ANNOITA_YN,B.PLY_REQUEST,'FALSE' FLAG,
+		     B.ORD_NO,B.ORD_SEQ,B.DEL_TO_DATE,
+		     F.DCL_REASON,F.DCL_MEMO,F.STATUS_CD  
+		FROM C_TBC02_COIL_COMM A,TBE02_ORD_PRC B,TBZ00_COMMCD C,TBZ00_CUSTOMER D,L_TBF03_CAL_DECLARE F  
+	 WHERE F.ORD_NO=B.ORD_NO AND F.ORD_SEQ=B.ORD_SEQ  AND  A.OLD_SAMPL_NO=F.C_COIL_NO
+	  AND  B.L_ORD_USEAGE_CD=C.SM_CD(+) AND B.ORDCUST_CD=D.CUST_CD(+)
+</query>
+<query id="UIF051020_03.SELECT" desc="获取连退申报原因信息">
+	SELECT SM_CD,SM_CFNM FROM TBZ00_COMMCD WHERE LG_CD='F02001'
+</query>
+<query id="UIF051020_04.SELECT" desc="交货状态查询">
+	SELECT SM_CD, SM_CFNM
+	  FROM TBZ00_COMMCD
+	 WHERE LG_CD = 'B01118'
+	   AND CD_DESC = 'C'
+</query>
+<query id="UIF051020.Add" desc="新增连退申报信息" >
+		<![CDATA[
+			{call C_PKG_UIF_CAL.P_PRD_DCL_CALPLAN_ADD(?,?,?,?,?,?,?,?,?)}
+		]]>
+</query>
+<query id="UIF051020.Del" desc="删除连退申报信息" >
+		<![CDATA[
+			{call C_PKG_UIF_CAL.P_PRD_DCL_CALPLAN_DEL(?,?,?,?)}
+		]]>
+</query>
+</queryMap>

Kaikkia tiedostoja ei voida näyttää, sillä liian monta tiedostoa muuttui tässä diffissä