4fa420fbaa7f3d3cefafdac02bb8c62ac11dda5e.svn-base 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353
  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[新余钢铁股份有限公司产销MES系统-II]]>
  7. </xhtml:title>
  8. <model id="model1">
  9. <instance id="instance1">
  10. <root xmlns="">
  11. <initData/>
  12. <codeData/>
  13. <cookieData/>
  14. <popup>
  15. <item>
  16. <label>复制(&amp;C)</label>
  17. <func>copyText</func>
  18. </item>
  19. </popup>
  20. <fwdData>
  21. <UIH090140>
  22. <URL>../../H/H09/UIH090140.xrw</URL>
  23. </UIH090140>
  24. </fwdData>
  25. </root>
  26. </instance>
  27. <script type="javascript" ev:event="xforms-ready">
  28. <![CDATA[
  29. Init();
  30. ]]>
  31. </script>
  32. </model>
  33. <script type="javascript" src="../../js/boaCommon.js"/>
  34. <script type="javascript" src="../../js/boaMsg.js"/>
  35. <script type="javascript" src="../../js/mesCommon.js"/>
  36. <script type="javascript">
  37. <![CDATA[
  38. submitID = "main-service";
  39. var isAdmin = false;
  40. function Init() {
  41. isAdmin = model.getValue("/root/initData/rcvInfo/ROOT_AMN_YN") == "Y";
  42. showProgressBar();
  43. exec("/root/initData", "", "", "/root/codeData/ListResult_0_VO", "/root/codeData/ListResult_1_VO");
  44. if (model.getValue("/root/resData/userRegInfoData") != "") return;
  45. // 新闻发布
  46. if (model.getXPathValue("count(/root/codeData/ListResult_1_VO/ListResult_1_Row)") > 0)
  47. {
  48. capState.value = "有重要信息发布";
  49. }
  50. JsObject.makeButton("/root/codeData/ListResult_0_VO/ListResult_0_Row");
  51. var isNeedInit = false;
  52. if (model.getXPathValue("count(/root/initData/fwdData)") > 0) {
  53. isNeedInit = true;
  54. var url = model.getValue("/root/initData/fwdData/URL");
  55. model.removenode("/root/initData/fwdData/URL");
  56. if (url.substring(0, 1) == "/")
  57. model.setValue("/root/initData/scrInfo/MNSCR_URL", url);
  58. else
  59. model.setValue("/root/initData/scrInfo/MNSCR_URL", model.getValue("/root/initData/scrInfo/SCR_PATH") + url);
  60. model.setValue("/root/initData/scrInfo/MNSCR_ID", url.substring(url.lastIndexOf("/")+1, url.lastIndexOf(".")));
  61. }
  62. model.removenode("/root/resData");
  63. load();
  64. if (isNeedInit) model.removenode("/root/initData/fwdData");
  65. removeProgressBar();
  66. window.showPopupMenu(false);
  67. //iviewer1.window.showPopupMenu(false);
  68. iviewer1.window.setPopupMenu(true, "/root/popup/item", "label", "func", false);
  69. capID.value = "登录人:" + model.getValue("/root/initData/rcvInfo/REG_NM");
  70. }
  71. function pageInit() {
  72. model.removenode("/root/reqData");
  73. model.removenode("/root/resData");
  74. model.refresh();
  75. }
  76. function load() {
  77. //showProgressBar();
  78. JsObject.setCookie();
  79. var mnscrid = model.getValue("/root/initData/scrInfo/MNSCR_ID");
  80. var url = model.getValue("/root/initData/scrInfo/MNSCR_URL");
  81. if (url == "") {
  82. url = model.getValue("/root/initData/scrInfo/SCR_PATH") +
  83. model.getValue("/root/initData/scrInfo/MNSCR_ID") + ".xrw";
  84. } else {
  85. model.setValue("/root/initData/scrInfo/MNSCR_ID", url.substring(url.lastIndexOf("/") + 1, url.lastIndexOf(".")));
  86. }
  87. iviewer1.src = url;
  88. exec("/root/initData", "", "find");
  89. model.setValue("/root/initData/scrInfo/MNSCR_ID", mnscrid);
  90. if (model.getValue("/root/resData/userRegInfoData") != "") return;
  91. JsObject.setButton("/root/resData/ListResult_0_VO/ListResult_0_Row");
  92. pageInit();
  93. JsObject.setGrid();
  94. var java = iviewer1.window.javaScript;
  95. try {
  96. // java.Init(model.instances(0).selectSingleNode("/root/initData/rcvInfo"));
  97. var submodel = iviewer1.window.model;
  98. // if (submodel.getXPathValue("count(/root/initData/rcvInfo)") == 0) {
  99. submodel.makeNode("/root/initData/rcvInfo");
  100. var nodeList = model.instances(0).selectSingleNode("/root/initData/rcvInfo").childNodes;
  101. node = submodel.instances(0).selectSingleNode("/root/initData/rcvInfo");
  102. for (var i = 0; i < nodeList.length; i++)
  103. node.appendChild(nodeList.item(i));
  104. // }
  105. // if (submodel.getXPathValue("count(/root/popup)") == 0) {
  106. submodel.makeNode("/root/popup");
  107. var nodeList = model.instances(0).selectSingleNode("/root/popup").childNodes;
  108. node = submodel.instances(0).selectSingleNode("/root/popup");
  109. for (var i = 0; i < nodeList.length; i++)
  110. node.appendChild(nodeList.item(i));
  111. // }
  112. java.Init();
  113. } catch(e) {}
  114. var title = "";
  115. try {
  116. title = " " + java.setTitle();
  117. } catch(e) {
  118. title = " " + iviewer1.window.document.title;
  119. }
  120. title = " " + title.substring(0, title.lastIndexOf(">>") + 2) + "\n " + title.substring(title.lastIndexOf(">>") + 2);
  121. capTitle.text = title;
  122. removeProgressBar();
  123. capUI.value = "登录界面:" + url.substring(url.lastIndexOf("/") + 1, url.lastIndexOf("."))
  124. }
  125. function open(node) {
  126. model.makeNode("/root/initData/fwdData");
  127. var destnode = model.instances(0).selectSingleNode("/root/initData/fwdData");
  128. if (typeof node == "object") duplicate(node, destnode);
  129. var vleft = window.screenLeft + 20;
  130. var vtop = window.screenTop + 20;
  131. window.load("./main.xrw", "new", "",
  132. "left:"+vleft+"; top:"+vtop+"; width:990; height:730;", "/root/initData", "root/initData");
  133. model.removenode("/root/initData/fwdData");
  134. }
  135. function getInitDataNode() {
  136. try {
  137. return model.instances(0).selectSingleNode("/root/initData/fwdData");
  138. } catch (e) {
  139. return null;
  140. }
  141. }
  142. function JsClass() {
  143. var btns;
  144. this.makeButton = function(nodeset) { // 动态生成按钮
  145. var cnt = model.getXPathValue("count(" + nodeset + ")");
  146. btns = new Array(cnt);
  147. for (var i=cnt; i>0; i--) {
  148. btns[i-1] = group1.createChild("xforms:button", "id:" + model.getValue(nodeset + "["+i+"]/FC_ID") +
  149. ";left:893px; top:27px; width:70px; height:18px;");
  150. }
  151. }
  152. this.setButton = function(nodeset) {
  153. var length = btns.length;
  154. for (var i=0; i<length; i++) {
  155. btns[i].visible = false;
  156. }
  157. //var btnPosition = new Array(920, 845, 770, 695, 620, 545, 470, 395);
  158. var btnLimm = 980-75; // 最后一个按键的位置
  159. var btnSize = 75;
  160. var cnt = model.getXPathValue("count(" + nodeset + ")");
  161. for (var i=cnt; i>0; i--) {
  162. var id = model.getValue(nodeset + "[" + i + "]/FC_ID");
  163. // if (id == "NULL") continue;
  164. var control = document.controls(id);
  165. control.visible = true;
  166. control.disabled = false;
  167. control.attribute("left") = btnLimm;
  168. if (model.getValue(nodeset + "[" + i + "]/FC_NM").length > 2)
  169. control.attribute("text-align") = "right";
  170. control.text = model.getValue(nodeset + "[" + i + "]/FC_NM");
  171. control.attribute("background-image") = model.getValue(nodeset + "[" + i + "]/FN_IMG_URL");
  172. control.attribute("js_func") = model.getValue(nodeset + "[" + i + "]/JS_FUNC_NM");
  173. btnLimm -= btnSize;
  174. }
  175. if (getDocument()) {
  176. var srcNode = "/root/cookieData/" + docName + "/buttons";
  177. if (nodeset != srcNode) {
  178. model.removenode(srcNode);
  179. model.makeNode(srcNode);
  180. var cnt = model.getXPathValue("count(" + nodeset + ")");
  181. for (var i=1; i<=cnt; i++) {
  182. model.makeValue(srcNode + "[" + i + "]/FC_ID", model.getValue(nodeset + "[" + i + "]/FC_ID"));
  183. model.makeValue(srcNode + "[" + i + "]/FC_NM", model.getValue(nodeset + "[" + i + "]/FC_NM"));
  184. model.makeValue(srcNode + "[" + i + "]/FN_IMG_URL", model.getValue(nodeset + "[" + i + "]/FN_IMG_URL"));
  185. model.makeValue(srcNode + "[" + i + "]/JS_FUNC_NM", model.getValue(nodeset + "[" + i + "]/JS_FUNC_NM"));
  186. }
  187. } else {
  188. model.setValue("/root/initData/scrInfo/MNSCR_ID", docName);
  189. model.refresh();
  190. }
  191. }
  192. }
  193. var docName = "";
  194. this.setCookie = function() {
  195. if (!getDocument()) return;
  196. var arrGrid = getGrid();
  197. var length = arrGrid.length;
  198. for (var i = 0; i < length; i++) {
  199. var oGrid = arrGrid[i];
  200. var cols = oGrid.cols;
  201. var colwidth = "";
  202. for (var j = 0; j < cols; j++)
  203. colwidth += "," + oGrid.colWidth(j);
  204. var name = docName + "." + oGrid.attribute("id");
  205. model.registry("HKEY_LOCAL_MACHINE", "SOFTWARE\\Comsquare\\TFViewer\\DataGrid", name, "STRING") = colwidth.substring(1);
  206. }
  207. }
  208. this.setGrid = function() {
  209. if (!getDocument()) return;
  210. var arrGrid = getGrid();
  211. var length = arrGrid.length;
  212. for (var i = 0; i < length; i++) {
  213. var oGrid = arrGrid[i];
  214. var name = docName + "." + oGrid.attribute("id");
  215. var colwidth = model.registry("HKEY_LOCAL_MACHINE", "SOFTWARE\\Comsquare\\TFViewer\\Config", name, "STRING");
  216. if (typeof colwidth == "undefined" || colwidth == "") continue;
  217. colwidth = colwidth.split(",");
  218. var cols = (colwidth.length < oGrid.cols)? colwidth.length : oGrid.cols;
  219. for (var j = 0; j < cols; j++) {
  220. if (colwidth[j] == 0 && isAdmin) continue;
  221. oGrid.colWidth(j) = colwidth[j];
  222. }
  223. }
  224. }
  225. function getDocument() {
  226. var src = iviewer1.src;
  227. if (src == "") return false;
  228. src = iviewer1.window.document.url;
  229. docName = src.substring(src.lastIndexOf("/") + 1, src.lastIndexOf("."));
  230. return true;
  231. }
  232. function getGrid() {
  233. var arrGrid = new Array();
  234. var controls = iviewer1.window.document.controls;
  235. var length = controls.length;
  236. var idx = 0;
  237. for (var i = 0; i < length; i++ ) {
  238. var control = controls.item(i);
  239. if (control.elementName == "xforms:datagrid")
  240. arrGrid[idx++] = control;
  241. }
  242. return arrGrid;
  243. }
  244. }
  245. var JsObject = new JsClass();
  246. var clockTimer;
  247. function setPage() {
  248. clockTimer = window.setInterval("intervalRun()", 100);
  249. }
  250. function intervalRun() {
  251. window.clearInterval(clockTimer);
  252. var src = iviewer1.window.document.url;
  253. JsObject.setButton("/root/cookieData/" + src.substring(src.lastIndexOf("/") + 1, src.lastIndexOf(".")) + "/buttons");
  254. }
  255. ]]>
  256. </script>
  257. </xhtml:head>
  258. <xhtml:body overflow="hidden" scroll="vertical" pagewidth="980" pageheight="695" style="font-family:宋体; ">
  259. <group id="group1" style="left:0px; top:0px; width:980px; height:67px; ">
  260. <img id="img1" src="../../images/topframe.jpg" style="left:0px; top:0px; width:461px; height:40px; background-stretch:stretch; "/>
  261. <caption id="capTitle" style="left:470px; top:1px; width:235px; height:26px; color:#3366ff; vertical-align:top; background-image:../../images/tit.gif; "/>
  262. <caption id="caption1" style="left:770px; top:0px; width:55px; height:20px; vertical-align:middle; background-color:#ccffcc; border-color:#000000; border-style:solid; cursor:hand; ">
  263. <![CDATA[界面选取]]>
  264. <script type="javascript" ev:event="onclick">
  265. <![CDATA[
  266. var vleft = window.screenLeft + window.width/2 - 355;
  267. var vtop = window.screenTop + window.height/2 - 250;
  268. window.load("./menu2.xrw",
  269. "modal",
  270. "",
  271. "left:"+vleft+"; top:"+vtop+"; width:715; height:500; sysmenu:visible; min:visible; max:true; resize:true; caption:hidden;",
  272. "/root/initData", "/root/initData");
  273. Init();
  274. ]]>
  275. </script>
  276. </caption>
  277. <select1 id="combo1" ref="/root/initData/scrInfo/MNSCR_ID" appearance="minimal" style="left:830px; top:0px; width:150px; height:20px; ">
  278. <choices>
  279. <itemset nodeset="/root/initData/scrList/ListResult_0_VO/ListResult_0_Row[LEVEL = 2]">
  280. <label ref="MNSCR_NM"/>
  281. <value ref="MNSCR_ID"/>
  282. </itemset>
  283. </choices>
  284. <script type="javascript" ev:event="xforms-value-changed">
  285. <![CDATA[
  286. model.setValue("/root/initData/scrInfo/MNSCR_URL",
  287. model.getValue("/root/initData/scrList/ListResult_0_VO/ListResult_0_Row[MNSCR_ID=/root/initData/scrInfo/MNSCR_ID]/MNSCR_URL"));
  288. load();
  289. ]]>
  290. </script>
  291. </select1>
  292. <script type="javascript" ev:event="onclick">
  293. <![CDATA[
  294. var target = event.target;
  295. var control = document.controls(target);
  296. if (control.elementName != "xforms:button") return;
  297. // showProgressBar();
  298. var java = iviewer1.window.javaScript;
  299. try {
  300. if (control.attribute("js_func") != "") {
  301. eval(control.attribute("js_func"));
  302. }
  303. } catch(e) {
  304. alert("脚本执行错误:" + control.attribute("js_func"));
  305. }
  306. try {
  307. if (iviewer1.model.getValue("/root/resData/userRegInfoData") != "") {
  308. alert("遗失用户登录信息,请重新登录!");
  309. window.load("./login.xrw", "replace");
  310. }
  311. } catch(e) {}
  312. // removeProgressBar();
  313. ]]>
  314. </script>
  315. <button id="button1" style="left:705px; top:0px; width:60px; height:20px; background-color:#ccffcc; border-style:solid; ">
  316. <caption>操作手册</caption>
  317. <script type="javascript" ev:event="DOMActivate">
  318. <![CDATA[
  319. var url = "http://10.10.0.10:8040/";
  320. window.load(url+"xg3mes/help/help.html" , "html");
  321. ]]>
  322. </script>
  323. </button>
  324. </group>
  325. <iviewer id="iviewer1" style="left:0px; top:50px; width:980px; height:620px; "/>
  326. <caption id="capState" style="left:0px; top:675px; width:980px; height:20px; color:#ff0000; text-align:center; background-color:#ccccff; border-color:#ccccff; border-style:solid; ">
  327. <script type="javascript" ev:event="onclick">
  328. <![CDATA[
  329. if (capState.value != "")
  330. {
  331. open(model.instances(0).selectSingleNode("/root/fwdData/UIH090140"));
  332. }
  333. ]]>
  334. </script>
  335. </caption>
  336. <caption id="capUI" style="left:0px; top:675px; width:200px; height:20px; text-align:center; background-color:#ccccff; border-color:#ccccff; border-style:solid; "/>
  337. <caption id="capID" style="left:780px; top:675px; width:200px; height:20px; text-align:center; background-color:#ccccff; border-color:#ccccff; border-style:solid; "/>
  338. </xhtml:body>
  339. </xhtml:html>