wbslist.jsp 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377
  1. <%--
  2. Created by IntelliJ IDEA.
  3. User: user
  4. Date: 2019/8/7
  5. Time: 18:39
  6. To change this template use File | Settings | File Templates.
  7. --%>
  8. <%@ page contentType="text/html;charset=UTF-8" language="java" %>
  9. <%@ include file="/webpage/include/taglib.jsp"%>
  10. <html>
  11. <head>
  12. <title>wbs</title>
  13. <link rel="stylesheet" href="${ctxp}/static/plugin/assets/layui/css/layui.css">
  14. <link rel="stylesheet" href="${ctxp}/static/plugin/assets/common.css"/>
  15. <script type="text/javascript" src="${ctxp}/static/plugin/assets/jquery-3.2.1.min.js"></script>
  16. </head>
  17. <style>
  18. .btn_out{
  19. width: 100px;
  20. margin: 0;
  21. float: right;
  22. margin-right:2%;
  23. }
  24. .div_main_form{
  25. width: 50%;
  26. margin-left: 10px;
  27. }
  28. </style>
  29. <body style="background-color: white">
  30. <sys:message content="${message}"/>
  31. <!-----------本体部分--------->
  32. <fieldset class="layui-elem-field layui-field-title" style="margin-top: 30px;">
  33. <legend>本体部分</legend>
  34. </fieldset>
  35. <div class="" style="margin-left: 10px;margin-right: 10px;margin-top: 10px;">
  36. <%--<button type="button" class="layui-btn layui-btn-fluid btn_out" onclick="export()">导出</button>--%>
  37. <c:forEach items="${map.list1}" var="data1" varStatus="index">
  38. <a class="layui-btn" href="${ctx}/jkxl/export?id=${data1.id}">导出</a>
  39. </c:forEach>
  40. <%--<table:importExcel url="${ctx}/propertycostreminder/propertyCostReminder/import"></table:importExcel>--%>
  41. <table id="table1" class="layui-table" lay-filter="table1"></table>
  42. </div>
  43. <!-----------其他部分--------->
  44. <fieldset class="layui-elem-field layui-field-title" style="margin-top: 30px;">
  45. <legend>其他部分</legend>
  46. </fieldset>
  47. <div class="" style="margin-left: 10px;margin-right: 10px;">
  48. <table id="table2" class="layui-table" lay-filter="table2"></table>
  49. </div>
  50. <!-----------未识别部分--------->
  51. <fieldset class="layui-elem-field layui-field-title" style="margin-top: 30px;">
  52. <legend>未识别部分</legend>
  53. </fieldset>
  54. <div class="layui-form div_main_form" >
  55. <table class="layui-table">
  56. <colgroup>
  57. <col width="200">
  58. <col width="150">
  59. <col width="200">
  60. </colgroup>
  61. <thead>
  62. <tr>
  63. <th>项目名称</th>
  64. <th>费用金额</th>
  65. <th>操作</th>
  66. </tr>
  67. </thead>
  68. <tbody>
  69. <c:if test="${ not empty map.list2}">
  70. <c:forEach items="${map.list2}" var="data2" varStatus="index">
  71. <tr>
  72. <td id=""><c:if test="${data2.type eq '1'}">补增值税税率调整差额</c:if><c:if test="${data2.type eq '2'}">扣减甲供材超供材料费</c:if></td>
  73. <td>${data2.fee}</td>
  74. <td>
  75. <%--<input id="type1" hidden value="${data2.type}">--%>
  76. <input id ="id1" hidden value="${data2.id}">
  77. <input type="button" class="layui-btn layui-btn-primary layui-btn-xs" value="调整" onclick="wbsup(${data2.type});"/>
  78. </td>
  79. </tr>
  80. </c:forEach>
  81. </c:if>
  82. <%--<tr>--%>
  83. <%--<td>扣减甲供材超供材料费</td>--%>
  84. <%--<td>500</td>--%>
  85. <%--<td>--%>
  86. <%--<input type="button" class="layui-btn layui-btn-primary layui-btn-xs" value="调整" onclick="wbsup();"/>--%>
  87. <%--</td>--%>
  88. <%--</tr>--%>
  89. </tbody>
  90. </table>
  91. </div>
  92. <%----------------jsjdjs-----------%>
  93. <div id="motaikuang" style="display: none;">
  94. <div class="layui-form" style="margin-left: 1px;">
  95. <table class="layui-table" id="mytble">
  96. <colgroup>
  97. <col width="100">
  98. <col width="100">
  99. <col width="50">
  100. <col width="100">
  101. <col>
  102. </colgroup>
  103. <thead>
  104. <tr>
  105. <th>WBS要素</th>
  106. <th>WBS识别码</th>
  107. <th>比例</th>
  108. <th>分摊金额</th>
  109. </tr>
  110. </thead>
  111. <tbody id="mytbody">
  112. <tr>
  113. <td>基础工程</td>
  114. <td>xxx</td>
  115. <td>20%</td>
  116. <td>20</td>
  117. </tr>
  118. </tbody>
  119. </table>
  120. </div>
  121. <div style="margin-top: 30px;margin-left: 70px;">
  122. <table>
  123. <thead>
  124. <tr>
  125. <th>
  126. <button style="width: 110px" class="layui-btn layui-btn-primary layui-btn-xs">按占比分摊</button>
  127. </th>
  128. <th>
  129. <button style="margin-left: 60px;width: 110px" type="button" class="layui-btn layui-btn-primary layui-btn-xs">平均分摊</button>
  130. </th>
  131. <th>
  132. <button style="margin-left: 60px;width: 110px"type="button" class="layui-btn layui-btn-primary layui-btn-xs" onclick="sure();">确认</button>
  133. </th>
  134. </tr>
  135. </thead>
  136. </table>
  137. </div>
  138. </div>
  139. <div style="height: 100px;width: 100%;">
  140. </div>
  141. </body>
  142. <script src="${ctxp}/static/plugin/assets/layui/layui.js"></script>
  143. <script>
  144. layui.config({
  145. base: '${ctxp}/static/plugin/assets/'
  146. }).extend({
  147. treetable: 'treetable-lay/treetable'
  148. }).use(['layer', 'table', 'treetable'], function () {
  149. var $ = layui.jquery;
  150. var table = layui.table;
  151. var layer = layui.layer;
  152. var treetable = layui.treetable;
  153. var renderTable1 = function () {
  154. layer.load(2);
  155. treetable.render({
  156. treeColIndex: 1,
  157. treeSpid: -1,
  158. treeIdName: 'id',
  159. treePidName: 'pid',
  160. treeDefaultClose: false,
  161. treeLinkage: false,
  162. elem: '#table1',
  163. <%--url: '${ctxp}/webpage/modules/sys/free/selfwbs.json',--%>
  164. page: false,
  165. cols: [[
  166. {type:'numbers',title: '序号', rowspan: 2, totalRowText: "合计",},
  167. {field: 'wbsys', title: 'WBS要素',width:200, rowspan:'2'},
  168. {field:'wbssbm',width:100, align:'center',rowspan:'2',title:"wbs识别码",rowspan:'2'},
  169. {field:'fbfxysj', align:'center', title: '分布分项(原数据)',colspan:'6'},
  170. {field:'fbfxtch',align:'center',title:'分布分项(调差后)',colspan:'4'},
  171. {field:'fbfxtch',align:'center',title:'共性分摊费用',colspan:'10'},
  172. {field:'hj',align:'center',width:80,title:'合计',rowspan:'2',totalRow: true}
  173. // {templet: '#oper-col', title: 'oper'}
  174. ],[
  175. {field:'hjje', width:90,align:'center',title:'合计金额',totalRow: true},
  176. {field:'zjgcf', width:100,align:'center',title:'直接工程费',totalRow: true},
  177. {field:'rgf1', width:80,align:'center',title:'人工费',totalRow: true},
  178. {field:'cbrcg1', width:100,align:'center',title:'承包人采购',totalRow: true},
  179. {field:'fbrcg1', width:100,align:'center',title:'发包人采购',totalRow: true},
  180. {field:'jxf1', width:80,align:'center',title:'机械费',totalRow: true},
  181. {field:'rgf2', width:80,align:'center',title:'人工费',totalRow: true},
  182. {field:'cbrcg2', width:100,align:'center',title:'承包人采购',totalRow: true},
  183. {field:'fbrcg2', width:100,align:'center',title:'发包人采购',totalRow: true},
  184. {field:'jxf2', width:80,align:'center',title:'机械费',totalRow: true},
  185. {field:'rgf3', width:80,align:'center',title:'人工费',totalRow: true},
  186. {field:'cbrcg3', width:100,align:'center',title:'承包人采购',totalRow: true},
  187. {field:'fbrcg3', width:100,align:'center',title:'发包人采购',totalRow: true},
  188. {field:'jxf3', width:80,align:'center',title:'机械费',totalRow: true},
  189. {field:'csf_1',width:100,title:'措施费-1',align:'center',totalRow: true},
  190. {field:'csf_2',width:100,title:'措施费-2',align:'center',totalRow: true},
  191. {field:'csf2',align:'center',width:90,title:'措施费二',totalRow: true},
  192. {field:'qtf',align:'center',width:80,title:'其他费',totalRow: true},
  193. {field:'gf',align:'center',width:60,title:'规费',totalRow: true},
  194. {field:'sf',align:'center',width:60,title:'税金',totalRow: true},
  195. ]]
  196. ,data: [
  197. <c:if test="${ not empty map.list}">
  198. <c:forEach items="${map.list}" var="data" varStatus="index">
  199. <c:if test="${data.state eq '1'}">
  200. {
  201. "id": "${data.wbsCode}",
  202. "wbsys":"${data.describe}",
  203. "wbssbm": "${data.wbsCode}",
  204. "hjje": "${data.originalTotalCost}",
  205. "zjgcf":"0",
  206. "rgf1": "${data.originalRgCost}",
  207. "cbrcg1": "${data.originalCbrCost}",
  208. "fbrcg1": "${data.originalFbrCost}",
  209. "jxf1": "${data.originalJxCost}",
  210. "rgf2": "${data.jxCost}",
  211. "cbrcg2": "${data.cbrCost}",
  212. "fbrcg2":"${data.fbrCost}",
  213. "jxf2": "${data.jxCost}",
  214. "rgf3": "0",
  215. "cbrcg3": "0",
  216. "fbrcg3": "0",
  217. "jxf3": "0",
  218. "csf_1": "${data.measuresFee1}",
  219. "csf_2": "${data.measuresFee2}",
  220. "csf2": "${data.measuresFee3}",
  221. "qtf":"${data.otherCost}",
  222. "gf":"${data.fees}",
  223. "sf":"${data.tex}",
  224. "hj": "${data.totalFee}",
  225. "pid": "${data.parentNode}"
  226. },
  227. </c:if>
  228. </c:forEach>
  229. </c:if>
  230. ],
  231. done: function () {
  232. layer.closeAll('loading');
  233. }
  234. });
  235. };
  236. renderTable1();
  237. });
  238. </script>
  239. <script>
  240. layui.use(['table', 'form', 'element', 'treetable'], function () {
  241. var $ = layui.jquery;
  242. var table = layui.table;
  243. var form = layui.form;
  244. var element = layui.element;
  245. var treetable = layui.treetable;
  246. // 渲染表格
  247. var renderTable2 = function () {
  248. layer.load(2);
  249. treetable.render({
  250. treeColIndex: 1,
  251. treeSpid: -1,
  252. treeIdName: 'd_id',
  253. treePidName: 'd_pid',
  254. elem: '#table2',
  255. <%--url: '${ctxp}/webpage/modules/sys/free/other.json',--%>
  256. page: false,
  257. cols: [[
  258. {type: 'numbers'},
  259. // {field: 'id', title: 'WBS要素'},
  260. {field: 'wbsys', title: 'WBS要素'},
  261. {field: 'wbssbm', title: 'WBS识别码'},
  262. {field: 'money', title: '金额'},
  263. // {field: 'pid', title: 'pid'},
  264. ]]
  265. ,data: [
  266. <c:if test="${ not empty map.list}">
  267. <c:forEach items="${map.list}" var="data" varStatus="index">
  268. <c:if test="${data.state eq '0'}">
  269. {
  270. "d_id": "${data.wbsCode}",
  271. "wbsys": "${data.describe}",
  272. "wbssbm": "${data.wbsCode}",
  273. "money": "${data.totalFee}",
  274. "d_pid": "${data.parentNode}"
  275. },
  276. </c:if>
  277. </c:forEach>
  278. </c:if>
  279. ],
  280. done: function () {
  281. layer.closeAll('loading');
  282. }
  283. });
  284. };
  285. renderTable2();
  286. });
  287. </script>
  288. <script>
  289. layui.use('table', function(){
  290. var table = layui.table;
  291. });
  292. </script>
  293. <script>
  294. function wbsup(type){
  295. var id = $("#id1").val();
  296. // var type = $("#type1").val();
  297. $.post(
  298. // type : "post",
  299. "${ctx}/jkxl/gettz",
  300. {"id":id},
  301. function(result) {
  302. var trlue="";
  303. if(type == '1') {
  304. for (var i = 0; i < result.length; i++) {
  305. trlue = trlue + "<tr><td>" + result[i].describe + "</td><td>" + result[i].wbsCode + "</td><td>" + result[i].originalRate + "</td><td>" + result[i].bzFee + "</td></tr>";
  306. }
  307. } else {
  308. for (var i = 0; i < result.length; i++) {
  309. trlue = trlue + "<tr><td>" + result[i].describe + "</td><td>" + result[i].wbsCode + "</td><td>" + result[i].originalRate + "</td><td>" + result[i].jkFee + "</td></tr>";
  310. }
  311. }
  312. trlue=trlue+"<tr><td>合计</td><td></td><td>100%</td><td></td></tr>";
  313. $("#mytbody").html(trlue);
  314. }
  315. );
  316. // var trlue="";
  317. // for(var i=0;i<=3;i++){
  318. // trlue = trlue + "<tr><td>基础工程</td><td>xxx</td><td>20%</td><td>20</td></tr>";
  319. // }
  320. // trlue=trlue+"<tr><td>合计</td><td></td><td>100%</td><td>500</td></tr>";
  321. // $("#mytbody").html(trlue);
  322. layer.open({
  323. type:1,
  324. area:['600px','400px'],
  325. title:['调整','color:#fff;background-color:#999999;'],
  326. shadeClose:false,
  327. content: $('#motaikuang'),
  328. });
  329. }
  330. function sure(){
  331. var tr = $("#mytble tr");
  332. var result = []; // 数组
  333. for (var i = 0; i < tr.length; i++) {
  334. var tds = $(tr[i]).find("td");
  335. if (tds.length > 0) {
  336. result.push({
  337. "wbsys" : $(tds[0]).val(),
  338. "wbssbm" : $(tds[1]).val(),
  339. "bili" : $(tds[2]).val(),
  340. "ftje" : $(tds[3]).val()
  341. })
  342. }
  343. }
  344. var jsonData = {
  345. "personLst" : result
  346. }
  347. // alert(jsonData);
  348. // $.ajax({
  349. // type : "post",
  350. // url : "#",
  351. // contentType : "application/json;charset=UTF-8",
  352. // data:JSON.stringify(jsonData),
  353. // success : function(result) {
  354. // window.location.reload();
  355. // }
  356. // });
  357. }
  358. </script>
  359. </html>