dinge.html 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
  6. <meta http-equiv="x-ua-compatible" content="ie=edge">
  7. <title>定额库编辑器</title>
  8. <link rel="stylesheet" href="/lib/bootstrap/css/bootstrap.min.css">
  9. <!-- <link rel="stylesheet" href="/lib/css/bootstrap/themes.css">-->
  10. <link rel="stylesheet" href="/web/maintain/ration_repository/css/main.css">
  11. <link rel="stylesheet" href="/lib/font-awesome/font-awesome.min.css">
  12. <link rel="stylesheet" href="/lib/jquery-contextmenu/jquery.contextMenu.css">
  13. <!--zTree-->
  14. <link rel="stylesheet" href="/lib/ztree/css/zTreeStyle.css" type="text/css">
  15. <link rel="stylesheet" href="/lib/spreadjs/sheets/css/gc.spread.sheets.excel2013lightGray.10.0.1.css" type="text/css">
  16. <style type="text/css">
  17. .ztree li span.button.add{margin-right:2px;background-position:-144px 0;vertical-align:top;*vertical-align:middle}
  18. </style>
  19. </head>
  20. <body>
  21. <div class="header">
  22. <nav class="navbar navbar-toggleable-lg navbar-light bg-faded p-0 ">
  23. <span class="header-logo px-2">Smartcost</span>
  24. <div id="rationname" class="navbar-text"><a href="main">定额库</a><i class="fa fa-angle-right fa-fw"></i>XXX定额库</div>
  25. </nav>
  26. <nav class="navbar navbar-toggleable-lg justify-content-between navbar-light p-0">
  27. <ul class="nav nav-tabs" role="tablist">
  28. <li class="nav-item">
  29. <a class="nav-link active px-3" id ="dinge" >定额</a>
  30. </li>
  31. <li class="nav-item">
  32. <a class="nav-link px-3" id="gongliao" href="#">工料机</a>
  33. </li>
  34. <li class="nav-item">
  35. <a class="nav-link px-3" id="fuzhu" href="#">附注条件</a>
  36. </li>
  37. <li class="nav-item">
  38. <a class="nav-link px-3" href="#">安装增加费</a>
  39. </li>
  40. </ul>
  41. </nav>
  42. </div>
  43. <div class="main" style="overflow: hidden">
  44. <div class="content">
  45. <div class="container-fluid">
  46. <div class="row">
  47. <div class="main-side col-lg-3 p-0" style="width: 100%; height: 100%; overflow: auto">
  48. <div class="tab-bar">
  49. <a id="addRootA" onclick="zTreeOprObj.addRootNode()" class="btn btn-secondary btn-sm">增加根节点</a>
  50. </div>
  51. <div class="tab-content">
  52. <ul id="rationChapterTree" class="ztree"></ul>
  53. </div>
  54. </div>
  55. <div class="main-content col-lg-9 p-0">
  56. <!-- 右标签 -->
  57. <ul class="nav nav-tabs tools-bar" role="tablist">
  58. <li class="nav-item">
  59. <a class="nav-link active" data-toggle="tab" href="#tde" role="tab">定额</a>
  60. </li>
  61. <li class="nav-item">
  62. <a class="nav-link" data-toggle="tab" href="#tsm" role="tab" id="explanationLink">说明</a>
  63. </li>
  64. <li class="nav-item">
  65. <a class="nav-link" data-toggle="tab" href="#tjs" role="tab">计算规则</a>
  66. </li>
  67. <li class="nav-item">
  68. <a class="nav-link" data-toggle="tab" href="#tgz" role="tab">工作内容</a>
  69. </li>
  70. </ul>
  71. <div class="tab-content">
  72. <!--定额-->
  73. <div class="tab-pane active" id="tde" role="tabpanel">
  74. <!--定额top-->
  75. <div id="rationItemsSheet" class="main-data-top"></div>
  76. <!--定额bottom-->
  77. <div class="bottom-content">
  78. <!-- 标签 -->
  79. <ul class="nav nav-tabs" role="tablist">
  80. <li class="nav-item">
  81. <a class="nav-link active" id="linkGLJ" data-toggle="tab" href="#rDetail" role="tab">工料机</a>
  82. </li>
  83. <li class="nav-item">
  84. <a class="nav-link" id="linkFZDE" data-toggle="tab" href="#rDetail" role="tab">辅助定额调整</a>
  85. </li>
  86. <li class="nav-item">
  87. <a class="nav-link" id="linkFZTJ" data-toggle="tab" href="#rDetail" role="tab">附注条件调整</a>
  88. </li>
  89. <li class="nav-item">
  90. <!--<a class="nav-link" id="linkAZZJ" data-toggle="tab" href="#" role="tab">安装增加费</a>-->
  91. <a class="nav-link" href="#">安装增加费</a>
  92. </li>
  93. </ul>
  94. <!-- 内容 -->
  95. <div class="tab-content">
  96. <div class="tab-pane active" id="rDetail" role="tabpanel">
  97. <div id="rdSpread" class="main-data-bottom" style="overflow: hidden"></div>
  98. </div>
  99. </div>
  100. </div>
  101. </div>
  102. <!--说明-->
  103. <div class="tab-pane" id="tsm" role="tabpanel">
  104. <div class="main-data">
  105. <!-- <div class="m-2"><a href="javacript:void(0);" data-toggle="modal" data-target="#editTsm" title="编辑">编辑说明</a></div>-->
  106. <div class="main-content m-2">
  107. <h5>说明</h5>
  108. <textarea id="explanationShow" class="form-control" rows="35" style="background: white;"></textarea>
  109. </div>
  110. </div>
  111. </div>
  112. <!--计算规则-->
  113. <div class="tab-pane" id="tjs" role="tabpanel">
  114. <div class="main-data">
  115. <!-- <div class="m-2"><a href="javacript:void(0);" data-toggle="modal" data-target="#editTjs" title="编辑">编辑计算规则</a></div>-->
  116. <div class="main-content m-2">
  117. <h5>计算规则</h5>
  118. <textarea id="ruleTextShow" class="form-control" rows="35" style="background: white;"></textarea>
  119. </div>
  120. </div>
  121. </div>
  122. <!--工作内容-->
  123. <div class="tab-pane" id="tgz" role="tabpanel">
  124. <div class="main-data">
  125. <div class="form-check m-2"><label class="form-check-label"><input type="radio" class="form-check-input" name="optionsRadios" value="ALL" disabled=""> 适合本项所有定额</label>&nbsp;&nbsp;<label class="form-check-label"><input type="radio" class="form-check-input" name="optionsRadios" value="PARTIAL" disabled> 适合本项部分定额</label></div>
  126. <!-- <p class="m-2">适合本项所有定额</p> -->
  127. <table class="table table-sm table-bordered m-0" id="tableAll">
  128. <tr>
  129. <td><textarea class="form-control" rows="30" id="txtareaAll"></textarea></td>
  130. </tr>
  131. </table>
  132. <table class="table table-sm table-bordered m-0" id="tablePartial">
  133. </table>
  134. </div>
  135. </div>
  136. </div>
  137. </div>
  138. </div>
  139. </div>
  140. </div>
  141. <!--弹出添加-->
  142. <button id="gznrBtn" class="btn btn-primary btn-lg" data-toggle="modal" data-target="#addNewgznr" style="display: none"></button>
  143. <div class="modal fade" id="addNewgznr" data-backdrop="static" style="display: none;" aria-hidden="true">
  144. <div class="modal-dialog" role="document">
  145. <div class="modal-content">
  146. <div class="modal-header">
  147. <h5 class="modal-title">添加工作内容</h5>
  148. <button type="button" class="close" data-dismiss="modal" aria-label="Close">
  149. <span aria-hidden="true">×</span>
  150. </button>
  151. </div>
  152. <div class="modal-body">
  153. <form>
  154. <div class="form-group">
  155. <label>内容</label>
  156. <textarea class="form-control" rows="5"></textarea>
  157. </div>
  158. </form>
  159. <form>
  160. <div class="form-group">
  161. <label>编码</label>
  162. <div class="form-control">
  163. <div class="row code">
  164. <div class="col">
  165. <label class="form-check-label">
  166. <input class="form-check-input" type="checkbox" value="option1" checked> AA0017
  167. </label>
  168. </div>
  169. <div class="col">
  170. <label class="form-check-label">
  171. <input class="form-check-input" type="checkbox" value="option1" checked> AA0018
  172. </label>
  173. </div>
  174. <div class="col">
  175. <label class="form-check-label">
  176. <input class="form-check-input" type="checkbox" value="option1" checked> AA0019
  177. </label>
  178. </div>
  179. <div class="w-100"></div>
  180. <div class="col">
  181. <label class="form-check-label">
  182. <input class="form-check-input" type="checkbox" value="option1"> AA0020
  183. </label>
  184. </div>
  185. <div class="col">
  186. <label class="form-check-label">
  187. <input class="form-check-input" type="checkbox" value="option1"> AA0021
  188. </label>
  189. </div>
  190. <div class="col">
  191. <label class="form-check-label">
  192. <input class="form-check-input" type="checkbox" value="option1"> AA0022
  193. </label>
  194. </div>
  195. </div>
  196. </div>
  197. </div>
  198. <div class="form-group">
  199. <label>内容</label>
  200. <textarea class="form-control" rows="5"></textarea>
  201. </div>
  202. </form>
  203. </div>
  204. <div class="modal-footer">
  205. <button type="button" class="btn btn-secondary" data-dismiss="modal">取消</button>
  206. <a href="" class="btn btn-primary">确定</a>
  207. </div>
  208. </div>
  209. </div>
  210. </div>
  211. <!--弹出编辑-->
  212. <div class="modal fade" id="editTsm" data-backdrop="static" style="display: none;" aria-hidden="true">
  213. <div class="modal-dialog" role="document">
  214. <div class="modal-content">
  215. <div class="modal-header">
  216. <h5 class="modal-title">编辑说明</h5>
  217. <button type="button" class="close" data-dismiss="modal" aria-label="Close">
  218. <span aria-hidden="true">×</span>
  219. </button>
  220. </div>
  221. <div class="modal-body">
  222. <form>
  223. <div class="form-group">
  224. <label>内容</label>
  225. <textarea class="form-control" rows="5" id="explanationAdd"></textarea>
  226. </div>
  227. </form>
  228. </div>
  229. <div class="modal-footer">
  230. <button type="button" class="btn btn-secondary" data-dismiss="modal">取消</button>
  231. <a href="javascript:void(0);" class="btn btn-primary" id="explanationBtn" data-dismiss="modal">确定</a>
  232. </div>
  233. </div>
  234. </div>
  235. </div>
  236. <div class="modal fade" id="editTjs" data-backdrop="static" style="display: none;" aria-hidden="true">
  237. <div class="modal-dialog" role="document">
  238. <div class="modal-content">
  239. <div class="modal-header">
  240. <h5 class="modal-title">编辑计算规则</h5>
  241. <button type="button" class="close" data-dismiss="modal" aria-label="Close">
  242. <span aria-hidden="true">×</span>
  243. </button>
  244. </div>
  245. <div class="modal-body">
  246. <form>
  247. <div class="form-group">
  248. <label>内容</label>
  249. <textarea class="form-control" rows="5"></textarea>
  250. </div>
  251. </form>
  252. </div>
  253. <div class="modal-footer">
  254. <button type="button" class="btn btn-secondary" data-dismiss="modal">取消</button>
  255. <a href="javascript:void(0);" class="btn btn-primary" data-dismiss="modal" id="ruleTextAdd">确定</a>
  256. </div>
  257. </div>
  258. </div>
  259. </div>
  260. <div class="modal fade" id="editBianmaQ" data-backdrop="static" style="display: none;" aria-hidden="true">
  261. <div class="modal-dialog" role="document">
  262. <div class="modal-content">
  263. <div class="modal-header">
  264. <h5 class="modal-title">修改编码</h5>
  265. <button type="button" class="close" data-dismiss="modal" aria-label="Close">
  266. <span aria-hidden="true">×</span>
  267. </button>
  268. </div>
  269. <div class="modal-body">
  270. <form>
  271. <div class="form-group">
  272. <label>编码</label>
  273. <div class="form-control">
  274. <div class="row code" id="updateCon">
  275. </div>
  276. </div>
  277. </div>
  278. </form>
  279. </div>
  280. <div class="modal-footer">
  281. <button type="button" class="btn btn-secondary" data-dismiss="modal">取消</button>
  282. <a href="javascript: void(0);" class="btn btn-primary" data-dismiss="modal" id="updateConBtn">确定</a>
  283. </div>
  284. </div>
  285. </div>
  286. </div>
  287. <div class="modal fade" id="editBianma" data-backdrop="static" style="display: none;" aria-hidden="true">
  288. <div class="modal-dialog" role="document">
  289. <div class="modal-content">
  290. <div class="modal-header">
  291. <h5 class="modal-title">勾选编码</h5>
  292. <button type="button" class="close" data-dismiss="modal" aria-label="Close">
  293. <span aria-hidden="true">×</span>
  294. </button>
  295. </div>
  296. <div class="modal-body">
  297. <form>
  298. <div class="form-group">
  299. <label>编码</label>
  300. <div class="form-control">
  301. <div class="row code" id="addCon">
  302. </div>
  303. </div>
  304. </div>
  305. </form>
  306. </div>
  307. <div class="modal-footer">
  308. <button type="button" class="btn btn-secondary" data-dismiss="modal">取消</button>
  309. <a href="javascript: void(0);" class="btn btn-primary" data-dismiss="modal" id="addConBtn">确定</a>
  310. </div>
  311. </div>
  312. </div>
  313. </div>
  314. <!--弹出警告窗-->
  315. <button id="rationAlertBtn" class="btn btn-primary btn-lg" data-toggle="modal" data-target="#rationAlert" style="display: none"></button>
  316. <div class="modal fade" id="rationAlert" data-backdrop="static" style="display: none;" aria-hidden="true">
  317. <input type="hidden" id="gdid" value="123">
  318. <div class="modal-dialog" role="document">
  319. <div class="modal-content">
  320. <div class="modal-header">
  321. <h5 class="modal-title">取消确认</h5>
  322. <button type="button" id="rationAlertCls" class="close" data-dismiss="modal" aria-label="Close">
  323. <span aria-hidden="true">×</span>
  324. </button>
  325. </div>
  326. <div class="modal-body">
  327. <h5 class="text-danger" id="alertRationTxt">编号不可为空!是否取消操作?</h5>
  328. </div>
  329. <div class="modal-footer">
  330. <button type="button" class="btn btn-secondary" id="rationAlertCac" data-dismiss="modal">取消</button>
  331. <a href="javascript: void(0);" id="rationAlertCof" class="btn btn-danger" data-dismiss="modal">确认</a>
  332. </div>
  333. </div>
  334. </div>
  335. </div>
  336. <button id="alertModalBtn" class="btn btn-primary btn-lg" data-toggle="modal" data-target="#alertModal" style="display: none"></button>
  337. <div class="modal fade" id="alertModal" data-backdrop="static" style="display: none;" aria-hidden="true">
  338. <input type="hidden" id="codedid" value="123">
  339. <div class="modal-dialog" role="document">
  340. <div class="modal-content">
  341. <div class="modal-header">
  342. <h5 class="modal-title">警告</h5>
  343. <button type="button" id="alertModalCls" class="close" data-dismiss="modal" aria-label="Close">
  344. <span aria-hidden="true">×</span>
  345. </button>
  346. </div>
  347. <div class="modal-body">
  348. <h5 class="text-danger" id="alertText">输入的编号已存在,请重新输入!</h5>
  349. </div>
  350. <div class="modal-footer">
  351. <button type="button" class="btn btn-danger" id="alertModalCof" data-dismiss="modal">确认</button>
  352. </div>
  353. </div>
  354. </div>
  355. </div>
  356. <!-- JS. -->
  357. <script src = "/lib/spreadjs/sheets/gc.spread.sheets.all.10.0.1.min.js"></script>
  358. <script>GC.Spread.Sheets.LicenseKey = "559432293813965#A0y3iTOzEDOzkjMyMDN9UTNiojIklkI1pjIEJCLi4TPB9mM5AFNTd4cvZ7SaJUVy3CWKtWYXx4VVhjMpp7dYNGdx2ia9sEVlZGOTh7NRlTUwkWR9wEV4gmbjBDZ4ElR8N7cGdHVvEWVBtCOwIGW0ZmeYVWVr3mI0IyUiwCMzETN8kzNzYTM0IicfJye&Qf35VfiEzRwEkI0IyQiwiIwEjL6ByUKBCZhVmcwNlI0IiTis7W0ICZyBlIsIyNyMzM5ADI5ADNwcTMwIjI0ICdyNkIsIibj9SbvNmL4N7bjRnch56ciojIz5GRiwiI8+Y9sWY9QmZ0Jyp96uL9v6L0wap9biY9qiq95q197Wr9g+89iojIh94Wiqi";</script>
  359. <script src="/lib/jquery/jquery.min.js"></script>
  360. <script src="/lib/jquery-contextmenu/jquery.contextMenu.min.js"></script>
  361. <script src="/lib/jquery-contextmenu/jquery.ui.position.js"></script>
  362. <script src="/lib/tether/tether.min.js"></script>
  363. <script src="/lib/bootstrap/bootstrap.min.js"></script>
  364. <script type="text/javascript" src="/web/maintain/ration_repository/js/global.js"></script>
  365. <!-- zTree -->
  366. <script type="text/javascript" src="/lib/ztree/jquery.ztree.core.js"></script>
  367. <script type="text/javascript" src="/lib/ztree/jquery.ztree.excheck.js"></script>
  368. <script type="text/javascript" src="/lib/ztree/jquery.ztree.exedit.js"></script>
  369. <script type="text/javascript" src="/web/maintain/ration_repository/js/section_tree.js"></script>
  370. <script type="text/javascript" src="/public/web/ztree_common.js"></script>
  371. <script type="text/javascript" src="/public/web/sheet/sheet_common.js"></script>
  372. <script type="text/javascript" src="/web/maintain/ration_repository/js/sheetsOpr.js"></script>
  373. <script type="text/javascript" src="/web/maintain/ration_repository/js/rationUnits.js"></script>
  374. <script type="text/javascript" src="/web/maintain/ration_repository/js/ration.js"></script>
  375. <script type="text/javascript" src="/web/maintain/ration_repository/js/ration_glj.js"></script>
  376. <script type="text/javascript" src="/public/web/sheet/sheet_creater.js"></script>
  377. <script type="text/javascript" src="/web/maintain/ration_repository/js/ration_coe.js"></script>
  378. <script type="text/javascript" src="/web/maintain/ration_repository/js/ration_assist.js"></script>
  379. <script type="text/javascript" src="/public/web/treeDataHelper.js"></script>
  380. <script type="text/javascript" src="/public/web/QueryParam.js"></script>
  381. <script type="text/javascript" src="/public/web/storageUtil.js"></script>
  382. <script type="text/javascript">
  383. let userAccount = '<%=userAccount %>';
  384. var setting = {
  385. view: {
  386. addHoverDom: zTreeOprObj.addHoverDom,
  387. removeHoverDom: zTreeOprObj.removeHoverDom,
  388. expandSpeed: "",
  389. selectedMulti: false
  390. },
  391. edit: {
  392. enable: true,
  393. drag: {
  394. isCopy: false,
  395. isMove: true,
  396. inner: true,
  397. prev: true,
  398. next: true
  399. },
  400. editNameSelectAll: true,
  401. showRemoveBtn: true,
  402. showRenameBtn: true,
  403. removeTitle: "删除节点",
  404. renameTitle: "更改名称"
  405. },
  406. data: {
  407. keep: {
  408. parent:true,
  409. leaf:false
  410. },
  411. key: {
  412. children: "items"
  413. },
  414. simpleData: {
  415. enable: true,
  416. idKey: "ID",
  417. pIdKey: "ParentID",
  418. rootPId: -1
  419. }
  420. },
  421. callback:{
  422. onClick: zTreeOprObj.onClick,
  423. beforeRename: zTreeOprObj.beforeRename,
  424. beforeRemove: zTreeOprObj.onBeforeRemove,
  425. onRemove: zTreeOprObj.onRemove,
  426. onRename: zTreeOprObj.onRename,
  427. beforeDrop: zTreeOprObj.beforeDrop,
  428. onDrop: zTreeOprObj.onDrop,
  429. }
  430. };
  431. $(document).ready(function(){
  432. pageOprObj.initPage();
  433. rationOprObj.buildSheet($("#rationItemsSheet")[0]);
  434. sheetCommonObj.shieldAllCells(rationOprObj.workBook.getSheet(0), rationOprObj.setting);
  435. // tabPanel 下有多个Spread时,相互之间不能正确显示。改成一个Spread下多个Sheet。
  436. var rdSpread = sheetCommonObj.createSpread($("#rdSpread")[0], 3);
  437. rationGLJOprObj.buildSheet(rdSpread.getSheet(0));
  438. sheetCommonObj.shieldAllCells(rdSpread.getSheet(0), rationGLJOprObj.setting);
  439. rationAssistOprObj.buildSheet(rdSpread.getSheet(1));
  440. sheetCommonObj.shieldAllCells(rdSpread.getSheet(1), rationAssistOprObj.setting);
  441. rationCoeOprObj.buildSheet(rdSpread.getSheet(2));
  442. sheetCommonObj.shieldAllCells(rdSpread.getSheet(2), rationCoeOprObj.setting);
  443. $("#linkGLJ").click(function(){
  444. rationGLJOprObj.bindRationGljDelOpr();
  445. rdSpread.setActiveSheetIndex(0);
  446. });
  447. $("#linkFZDE").click(function(){
  448. rationGLJOprObj.unBindDel();
  449. rdSpread.setActiveSheetIndex(1);
  450. });
  451. $("#linkFZTJ").click(function(){
  452. rationCoeOprObj.bindRationCoeDel();
  453. rdSpread.setActiveSheetIndex(2);
  454. });
  455. });
  456. </script>
  457. </div>
  458. </body>
  459. <script type="text/javascript">
  460. autoFlashHeight();
  461. </script>
  462. </html>