e5802775d379b8ca786c8ed908e1ebe5c4259826.svn-base 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <?xml-stylesheet type="text/css" href="../../css/body.css" ?>
  3. <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
  4. <xhtml:head>
  5. <xhtml:title>
  6. <![CDATA[品质设计>>生产规范录入>>缓冷钢种录入]]>
  7. </xhtml:title>
  8. <model id="model1">
  9. <instance id="instance1">
  10. <root xmlns="">
  11. <formData>
  12. <delSpec/>
  13. <NeedGrd/>
  14. </formData>
  15. <datagrid1/>
  16. <datagrid2/>
  17. <reqData/>
  18. <resData/>
  19. <tempData1/>
  20. <tempData2/>
  21. <initData>
  22. <InitSpecResult_VO>
  23. <InitSpecResult_Row>
  24. <LABEL>---全部---</LABEL>
  25. <VALUE/>
  26. </InitSpecResult_Row>
  27. </InitSpecResult_VO>
  28. </initData>
  29. <tolerance>
  30. <Tolerance_Row>
  31. <LABEL/>
  32. <VALUE/>
  33. </Tolerance_Row>
  34. </tolerance>
  35. <initDengData>
  36. <DengJi_Row>
  37. <LABEL/>
  38. <VALUE/>
  39. </DengJi_Row>
  40. </initDengData>
  41. <SpecResult>
  42. <InitSpecResult_Row>
  43. <LABEL/>
  44. <VALUE/>
  45. </InitSpecResult_Row>
  46. </SpecResult>
  47. </root>
  48. </instance>
  49. <script type="javascript" ev:event="xforms-ready">
  50. <![CDATA[
  51. if(window.parent==null) Init();
  52. ]]>
  53. </script>
  54. </model>
  55. <script type="javascript" src="../../js/boaCommon.js"/>
  56. <script type="javascript" src="../../js/b01.js"/>
  57. <script type="javascript">
  58. <![CDATA[
  59. function Init(node)
  60. {
  61. InitParams(node);
  62. model.duplicate("/root/formData", "/root/initData/rcvInfo/REG_ID");
  63. datagrid2.colStatus(datagrid2.colRef("CHK")) = false;
  64. commSubmit("UIB010271-service", "success", "glueAction.do");
  65. model.duplicate("/root/initData" , "/root/resData/InitSpecResult_VO");//交付条件标准号初始化
  66. model.copyNode("/root/tolerance" , "/root/resData/Tolerance_VO");//公差(名)初始化
  67. model.copyNode("/root/initDengData" , "/root/resData/DengJi_VO");//等级代码
  68. model.copyNode("/root/SpecResult" , "/root/resData/InitSpecResult_VO");
  69. model.copyNode("/root/InitCopyDel" , "/root/resData/CopyDel_VO");
  70. model.refresh();
  71. }
  72. function find()
  73. {
  74. model.removenode("/root/reqData");
  75. model.makeNode("/root/reqData");
  76. commSendReq("/root/formData");
  77. commSubmit("UIB010276-service", "findcooltime", "glueAction.do");
  78. model.copyNode("/root/datagrid1" , "/root/resData/DelSpecResult_VO");
  79. currentRow = 0;
  80. // model.resetInstanceNode("/root/datagrid2"); 数据行实际上仍然保留,所以不能用该方法
  81. model.removenode("/root/datagrid2");
  82. model.makeNode("/root/datagrid2");
  83. datagrid1.clearStatus();
  84. datagrid2.clearStatus();
  85. model.refresh();
  86. datagrid1.cellAttribute("disabled",datagrid1.fixedRows , datagrid1.fixedCols , datagrid1.rows - 1 , datagrid1.cols - 1) = "true";
  87. }
  88. function save()
  89. {
  90. if(currentRow==0){window.alert("非法操作" , "提示"); return;}
  91. if(commComfirmBox("确认保存?","提示")=="0") return;
  92. model.removenode("/root/reqData");
  93. model.makeNode("/root/reqData");
  94. model.removenode("/root/tempData1");
  95. model.makeNode("/root/tempData1");
  96. b01MultiUpdate(datagrid2 , "/root/tempData1" , "A" , true , "rowStuts1");
  97. commSendReq("/root/formData","/root/datagrid1/DelSpecResult_Row["+currentRow+"]" , "/root/tempData1");
  98. getLoggingInInfo();
  99. commSubmit("UIB010276-service", "savecooltime", "glueAction.do");
  100. datagrid1.clearStatus();
  101. datagrid2.clearStatus();
  102. currentRow = 0;//防止保存误操作
  103. datagrid1.cellAttribute("disabled",datagrid1.fixedRows , datagrid1.fixedCols , datagrid1.rows - 1 , datagrid1.cols - 1) = "true";
  104. }
  105. var currentRow = 0;
  106. ]]>
  107. </script>
  108. </xhtml:head>
  109. <xhtml:body pagewidth="980" pageheight="620">
  110. <datagrid id="datagrid2" nodeset="/root/datagrid2/ToleranceResult_Row" caption="选择^月份^月份^厚度^厚度^缓冷时间^备注^标识|选择^开始月份^结束月份^厚度最小值^厚度最大值^缓冷时间^备注^标识" colsep="^" colwidth="40, 65, 66, 79, 80, 74, 123, 55" defaultrows="36" mergecellsfixedrows="bycolrec" rowsep="|" selectionmode="free" tooltip="label" style="left:335px; top:35px; width:530px; height:585px; border-style:solid; ">
  111. <col checkvalue="Y,N" ref="CHK" type="checkbox"/>
  112. <col disabled="true" ref="BTIME" type="input" style="text-align:right; background-color:#ffffff; "/>
  113. <col disabled="true" ref="ETIME" type="input" style="text-align:right; background-color:#ffffff; "/>
  114. <col disabled="true" ref="THK_MIN" type="input" style="text-align:right; background-color:#ffffff; "/>
  115. <col disabled="true" ref="THK_MAX" type="input" style="text-align:right; background-color:#ffffff; "/>
  116. <col disabled="true" ref="COOLTIME" type="input" style="text-align:right; background-color:#ffffff; "/>
  117. <col disabled="true" ref="DESCMAK" type="input" style="text-align:right; background-color:#ffffff; "/>
  118. <col disabled="true" ref="MARK" type="input" visibility="hidden" style="text-align:right; background-color:#ffffff; "/>
  119. <script type="javascript" ev:event="onclick">
  120. <![CDATA[
  121. if(datagrid2.row < datagrid2.fixedRows) return;
  122. if(datagrid2.col != datagrid2.colRef("CHK")) return;
  123. var cRow = datagrid2.row;
  124. var chkCol = datagrid2.colRef("CHK");
  125. var startCol = datagrid2.colRef("DEL_TOL_CD");
  126. if(datagrid2.valueMatrix(cRow , chkCol) == "Y")//可编辑状态
  127. {
  128. datagrid2.cellAttribute("disabled",cRow , chkCol+1 , cRow , datagrid2.cols-1) = "false";
  129. for(var i = startCol ; i < datagrid2.cols ; i++)
  130. {
  131. datagrid2.cellStyle("background-color",cRow, i) = "#ffff99";
  132. }
  133. }
  134. else
  135. {
  136. datagrid2.cellAttribute("disabled",cRow , chkCol+1 , cRow , datagrid2.cols-1) = "true";
  137. for(var i = startCol ; i < datagrid2.cols ; i++)
  138. {
  139. datagrid2.cellStyle("background-color",cRow, i) = "#ffffff";
  140. }
  141. }
  142. ]]>
  143. </script>
  144. <script type="javascript" ev:event="onentercell">
  145. <![CDATA[
  146. datagrid2.editCell();
  147. ]]>
  148. </script>
  149. <script type="javascript" ev:event="onkeydown">
  150. <![CDATA[
  151. onkeydownmove(datagrid2);
  152. ]]>
  153. </script>
  154. <script type="javascript" ev:event="xforms-value-changed">
  155. <![CDATA[
  156. compareMINMAX(datagrid2,"THK_MIN","THK_MAX") //验证最大值不能小于最小值
  157. compareMINMAX(datagrid2,"WTH_MIN","WTH_MAX") //验证最大值不能小于最小值
  158. ]]>
  159. </script>
  160. </datagrid>
  161. <caption id="caption1" class="cell" style="left:0px; top:5px; width:100px; height:20px; vertical-align:middle; border-style:solid; ">标准牌号</caption>
  162. <button id="button6" style="left:685px; top:5px; width:70px; height:20px; background-image:../../images/btn_add.gif; ">
  163. <caption>增加</caption>
  164. <script type="javascript" ev:event="onclick">
  165. <![CDATA[
  166. datagrid2.addRow();
  167. datagrid2.vscroll.attribute("pos") = datagrid2.rows*20;
  168. datagrid2.valueMatrix(datagrid2.row , datagrid2.colRef("CHK")) = "Y";
  169. datagrid2.cellStyle("background-color",datagrid2.row, datagrid2.colRef("DEL_TOL_CD") , datagrid2.row , datagrid2.cols-1) = "#ffff99";
  170. model.refresh();
  171. ]]>
  172. </script>
  173. </button>
  174. <button id="button7" style="left:755px; top:5px; width:73px; height:20px; background-image:../../images/btn_move.gif; ">
  175. <caption>删除</caption>
  176. <script type="javascript" ev:event="onclick">
  177. <![CDATA[
  178. if(beGridChanged(datagrid2) == "1")
  179. {
  180. if(commComfirmBox("数据已被更改,可能出现误删,确定删除?","提示")=="0") return;
  181. }
  182. var rows = datagrid2.rows;
  183. for(var i=rows; i > 0; i--)
  184. {
  185. if(datagrid2.valueMatrix(i , 0)=="Y")
  186. {
  187. datagrid2.deleteRow(i , false);
  188. }
  189. }
  190. save();
  191. ]]>
  192. </script>
  193. </button>
  194. <button id="button8" style="left:200px; top:35px; width:70px; height:20px; background-image:../../images/btn_add.gif; ">
  195. <caption>增加</caption>
  196. <script type="javascript" ev:event="onclick">
  197. <![CDATA[
  198. if(beGridChanged(datagrid1,datagrid2) == "1")
  199. {
  200. window.alert("数据已更新,请保存!" , "警告");
  201. return;
  202. }
  203. //只有最后一行允许编辑
  204. datagrid1.cellAttribute("disabled",datagrid1.fixedRows , datagrid1.fixedCols , datagrid1.rows - 1 , datagrid1.cols - 1) = "true";
  205. datagrid1.addRow();
  206. currentRow = datagrid1.row;
  207. model.removenode("/root/datagrid2");
  208. model.makeNode("/root/datagrid2");
  209. datagrid1.vscroll.attribute("pos") = datagrid1.rows*20;//滚动条到最后
  210. model.refresh();
  211. ]]>
  212. </script>
  213. </button>
  214. <button id="button9" style="left:270px; top:35px; width:70px; height:20px; background-image:../../images/btn_move.gif; ">
  215. <caption>删除</caption>
  216. <script type="javascript" ev:event="onclick">
  217. <![CDATA[
  218. if(beGridChanged(datagrid1) == "1")
  219. {
  220. window.alert("数据已修改,请保存或初始化!" , "警告");
  221. return;
  222. }
  223. if(commComfirmBox("确定删除?","提示")=="0") return;
  224. model.removenode("/root/reqData");
  225. model.makeNode("/root/reqData");
  226. datagrid1.deleteRow(datagrid1.row );
  227. b01MultiUpdate(datagrid1,"/root/reqData" ,"A", true, "rowStatusD");
  228. getLoggingInInfo();
  229. commSubmit("UIB010276-service", "save", "glueAction.do");
  230. datagrid1.clearStatus();
  231. model.removenode("/root/datagrid2");
  232. model.makeNode("/root/datagrid2");
  233. model.refresh();
  234. ]]>
  235. </script>
  236. </button>
  237. <select1 id="combo1" ref="/root/formData/delSpec" appearance="minimal" style="left:97px; top:5px; width:236px; height:20px; border-style:solid; ">
  238. <choices>
  239. <itemset nodeset="/root/initData/InitSpecResult_VO/InitSpecResult_Row">
  240. <label ref="LABEL"/>
  241. <value ref="VALUE"/>
  242. </itemset>
  243. </choices>
  244. </select1>
  245. <line id="line2" style="x1:0px; y1:0px; x2:810px; y2:0px; "/>
  246. <line id="line1" style="x1:0px; y1:30px; x2:810px; y2:30px; "/>
  247. <datagrid id="datagrid1" nodeset="/root/datagrid1/DelSpecResult_Row" caption="标准牌号^查询" colsep="^" colwidth="166, 69" defaultrows="46" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="30" rowsep="|" tooltip="label" style="left:0px; top:57px; width:330px; height:563px; ">
  248. <col editmode="search" ref="DEV_SPEC_CD" type="combo" style="text-align:left; background-color:#ffff99; ">
  249. <choices>
  250. <itemset nodeset="/root/SpecResult/InitSpecResult_Row">
  251. <label ref="LABEL"/>
  252. <value ref="VALUE"/>
  253. </itemset>
  254. </choices>
  255. </col>
  256. <col ref="QUERY" style="cursor:hand; "/>
  257. <script type="javascript" ev:event="onclick">
  258. <![CDATA[
  259. if(datagrid1.col == datagrid1.colRef("QUERY") && datagrid1.row >= datagrid1.fixedRows)
  260. {
  261. if(datagrid1.rowStatus(datagrid1.rows-1) == 1)
  262. {
  263. window.alert("增加状态下不允许该操作!" , "警告");
  264. datagrid1.row = datagrid1.rows-1;
  265. return;
  266. }
  267. if(beGridChanged(datagrid1 , datagrid2) == "1" && currentRow != 0)
  268. {
  269. if(commComfirmBox("数据已修改,是否保存被修改的数据?","提示")=="0")
  270. {
  271. datagrid1.clearStatus();
  272. datagrid2.clearStatus();
  273. }
  274. else
  275. {
  276. save();
  277. }
  278. }
  279. model.removenode("/root/reqData");
  280. model.makeNode("/root/reqData");
  281. commSendReq("/root/datagrid1/DelSpecResult_Row["+datagrid1.row+"]");
  282. commSubmit("UIB010276-service", "onclickspm", "glueAction.do");
  283. model.copyNode("/root/datagrid2" , "/root/resData/ToleranceResult_VO");
  284. model.refresh();
  285. currentRow = datagrid1.row;
  286. datagrid1.col = 1;//焦点变化,以免拖动滚动条时做了查询操作
  287. datagrid1.clearStatus();
  288. datagrid2.clearStatus();
  289. datagrid2.rebuildStyle();
  290. datagrid2.cellAttribute("disabled",datagrid2.fixedRows , datagrid2.fixedCols+1 , datagrid2.rows - 1 , datagrid2.cols - 1) = "true";
  291. }
  292. ]]>
  293. </script>
  294. <script type="javascript" ev:event="onentercell">
  295. <![CDATA[
  296. datagrid1.editCell();
  297. ]]>
  298. </script>
  299. <script type="javascript" ev:event="onkeydown">
  300. <![CDATA[
  301. onkeydownmove(datagrid1);
  302. ]]>
  303. </script>
  304. </datagrid>
  305. <button id="button2" visibility="hidden" style="left:430px; top:0px; width:100px; height:20px; ">
  306. <caption>FIND</caption>
  307. <script type="javascript" ev:event="DOMActivate">
  308. <![CDATA[
  309. find();
  310. ]]>
  311. </script>
  312. </button>
  313. <button id="button4" visibility="hidden" style="left:500px; top:0px; width:100px; height:20px; ">
  314. <caption>SAVE</caption>
  315. <script type="javascript" ev:event="DOMActivate">
  316. <![CDATA[
  317. save();
  318. ]]>
  319. </script>
  320. </button>
  321. <button id="button1" style="left:120px; top:35px; width:60px; height:20px; background-image:../../images/btn_add.gif; ">
  322. <caption>复制</caption>
  323. <script type="javascript" ev:event="DOMActivate">
  324. <![CDATA[
  325. if(commComfirmBox("确定复制?","提示")=="0") return;
  326. var checkCol = datagrid1.colRef("DEV_SPEC_CD");
  327. var i = datagrid1.fixedRows;
  328. datagrid1.addRow();
  329. datagrid1.cellStyle("background-color",datagrid1.row, datagrid1.colRef("DEV_SPEC_CD") , datagrid1.row , datagrid1.cols-1) = "#99cc00";
  330. //alert(checkCol+i);
  331. //datagrid2.valueMatrix(datagrid1.row , checkCol) = "Y";
  332. datagrid1.valueMatrix(datagrid1.row , checkCol) = datagrid1.valueMatrix(i , checkCol);
  333. model.refresh();
  334. //datagrid2.vscroll.attribute("pos") = datagrid2.rows*20;
  335. ]]>
  336. </script>
  337. </button>
  338. <button id="button3" style="left:620px; top:5px; width:60px; height:20px; background-image:../../images/btn_add.gif; ">
  339. <caption>复制</caption>
  340. <script type="javascript" ev:event="DOMActivate">
  341. <![CDATA[
  342. var checkFlag = "N";
  343. for(var i = datagrid2.fixedRows; i < datagrid2.rows; i++)
  344. {
  345. if(datagrid2.valueMatrix(i , datagrid2.colRef("CHK")) == "Y")
  346. {
  347. checkFlag = "Y";
  348. break;
  349. }
  350. }
  351. if(checkFlag == "N")
  352. {
  353. window.alert("请选择需要复制的行!","提示");
  354. return;
  355. }
  356. if(commComfirmBox("确定复制?","提示")=="0") return;
  357. var checkCol = datagrid2.colRef("CHK");
  358. var tolCol = datagrid2.colRef("EMEC_TP");//公差名
  359. var thkMinCol = datagrid2.colRef("THK_MIN");//厚度最小
  360. var thkMaxCol = datagrid2.colRef("THK_MAX");//厚度最大
  361. var wthMinCol = datagrid2.colRef("WTH_MIN");
  362. var wthMaxCol = datagrid2.colRef("WTH_MAX");
  363. var addwth = datagrid2.colRef("ADD_WTH");
  364. var theMaxRows = datagrid2.rows;
  365. for(var i = datagrid2.fixedRows; i < theMaxRows; i++)
  366. {
  367. if(datagrid2.valueMatrix(i , datagrid2.colRef("CHK")) == "Y")
  368. {
  369. datagrid2.addRow();
  370. datagrid2.cellStyle("background-color",datagrid2.row, datagrid2.colRef("EMEC_TP") , datagrid2.row , datagrid2.cols-1) = "#99cc00";
  371. datagrid2.valueMatrix(datagrid2.row , checkCol) = "Y";
  372. datagrid2.valueMatrix(datagrid2.row , tolCol) = datagrid2.valueMatrix(i , tolCol);
  373. datagrid2.valueMatrix(datagrid2.row , thkMinCol) = datagrid2.valueMatrix(i , thkMinCol);
  374. datagrid2.valueMatrix(datagrid2.row , thkMaxCol) = datagrid2.valueMatrix(i , thkMaxCol);
  375. datagrid2.valueMatrix(datagrid2.row , wthMinCol) = datagrid2.valueMatrix(i , wthMinCol);
  376. datagrid2.valueMatrix(datagrid2.row , wthMaxCol) = datagrid2.valueMatrix(i , wthMaxCol);
  377. datagrid2.valueMatrix(datagrid2.row , addwth) = datagrid2.valueMatrix(i , addwth);
  378. }
  379. }
  380. model.refresh();
  381. //datagrid2.vscroll.attribute("pos") = datagrid2.rows*20;
  382. ]]>
  383. </script>
  384. </button>
  385. </xhtml:body>
  386. </xhtml:html>