management.jsp 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377
  1. <%--
  2. Created by IntelliJ IDEA.
  3. User: user
  4. Date: 2019/8/16
  5. Time: 14:49
  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. <!DOCTYPE html>
  11. <html>
  12. <head>
  13. <title>工程管理</title>
  14. <link rel="stylesheet" href="${ctxp}/static/plugin/assets/layui/css/layui.css">
  15. <link rel="stylesheet" href="${ctxp}/static/plugin/assets/common.css"/>
  16. <link rel="stylesheet" href="${ctxp}/static/plugin/assets/vermeit.css">
  17. <script type="text/javascript" src="${ctxp}/static/plugin/assets/jquery-3.2.1.min.js"></script>
  18. <script src="${ctxp}/static/plugin/assets/layui/layui.js"></script>
  19. </head>
  20. <style>
  21. .layui-input{
  22. height: 28px;
  23. margin-top: 5px;
  24. width: 260px;
  25. }
  26. .input-meself-time{
  27. font-size: 13px;
  28. width: 140px;
  29. }
  30. .btn_out{
  31. width: 100px;
  32. margin: 0;
  33. float: right;
  34. margin-right:2%;
  35. }
  36. .div_main_form{
  37. width: 50%;
  38. margin-left: 10px;
  39. }
  40. .layui-icon-layer{
  41. display: none;
  42. }
  43. .layui-icon-file{
  44. display: none;
  45. }
  46. .layui-table-view .layui-table {width:100%}
  47. </style>
  48. <body style="height:100%">
  49. <input style="display: none;" id="addtext" value=""/>
  50. <div class="layui-main-bgc">
  51. <sys:message content="${message}"/>
  52. <div class="layui-row layui-col-space15">
  53. <div class="layui-col-md12">
  54. <div class="layui-card">
  55. <div class="layui-card-header layui-card-header-add">工程管理</div>
  56. <div class="layui-card-body" id="noneDiv" style="display: none">
  57. <div class="layui-meself-bgc">
  58. <form class="layui-form" action="${ctx}/project/list" style="margin-top: 10px;" method="post">
  59. <div class="layui-form-item">
  60. <div class="layui-inline">
  61. <div class="col-xs-12 col-sm-6 col-md-4" style="margin-left: 20px">
  62. <label class="layui-font-style">工程名称:</label>
  63. <input type="text" name="projectName" autocomplete="off" class="layui-input">
  64. </div>
  65. </div>
  66. <div class="layui-inline">
  67. <div class="col-xs-12 col-sm-6 col-md-4" style="margin-left: 20px">
  68. <label class="layui-font-style">登记人:</label>
  69. <input type="text" name="createBy" autocomplete="off" class="layui-input">
  70. </div>
  71. </div>
  72. <div class="layui-inline">
  73. <div class="col-xs-12 col-sm-6 col-md-4" style="margin-left: 20px">
  74. <label class="layui-font-style">工程登记时间:</label>
  75. <table>
  76. <tbody>
  77. <tr>
  78. <td> <input type="text" name="projectStartDate" id="beginDate1" placeholder="yyyy-MM-dd" autocomplete="off" class="layui-input input-meself-time"></td>
  79. <td>~</td>
  80. <td> <input type="text" name="projectEndDate" id="endDate1" placeholder="yyyy-MM-dd" autocomplete="off" class="layui-input input-meself-time"></td>
  81. </tr>
  82. </tbody>
  83. </table>
  84. </div>
  85. </div>
  86. </div>
  87. <div class="layui-form-item">
  88. <div class="layui-inline">
  89. <div class="col-xs-12 col-sm-6 col-md-4" style="margin-left: 20px">
  90. <label class="layui-font-style">项目名称:</label>
  91. <input type="text" name="itemName" autocomplete="off" class="layui-input">
  92. </div>
  93. </div>
  94. <div class="layui-inline">
  95. <div class="col-xs-12 col-sm-6 col-md-4" style="margin-left: 20px">
  96. <label class="layui-font-style">项目划分:</label>
  97. <input type="text" name="type" autocomplete="off" class="layui-input">
  98. </div>
  99. </div>
  100. <div class="layui-inline">
  101. <div class="col-xs-12 col-sm-6 col-md-4" style="margin-left: 20px">
  102. <label class="layui-font-style">施工单位:</label>
  103. <input type="text" name="unit" autocomplete="off" class="layui-input">
  104. </div>
  105. </div>
  106. </div>
  107. <div class="layui-form-item">
  108. <div class="layui-inline">
  109. <div class="col-xs-12 col-sm-6 col-md-4" style="margin-left: 20px">
  110. <label class="layui-font-style">项目登记时间:</label>
  111. <table>
  112. <tbody>
  113. <tr>
  114. <td><input type="text" name="itemStartDate" id="beginDate2" placeholder="yyyy-MM-dd" autocomplete="off" class="layui-input input-meself-time"></td>
  115. <td>~</td>
  116. <td> <input type="text" name="itemEndDate" id="endDate2" placeholder="yyyy-MM-dd" autocomplete="off" class="layui-input input-meself-time"></td>
  117. </tr>
  118. </tbody>
  119. </table>
  120. </div>
  121. </div>
  122. <div class="layui-inline">
  123. <div class="col-xs-12 col-sm-6 col-md-4 layui-mesl-mit">
  124. <button class="layui-btn layui-btn-primary layui-btn-radius formbtn" lay-submit="" lay-filter="mybtnsubmit">查询</button>
  125. <button type="reset" class="layui-btn layui-btn-primary layui-btn-radius formbtn">重置</button>
  126. </div>
  127. </div>
  128. </div>
  129. </form>
  130. </div>
  131. </div>
  132. <div class="layui-card-body">
  133. <div class="" style="margin-left: 10px;margin-right: 10px;margin-top: 10px;">
  134. <div class="layui-btn-group">
  135. <button type="button" class="layui-btn layui-btn-normal layui-btn-meself" onclick="addProject()"><i class="layui-icon"></i>新建</button>
  136. <button type="button" class="layui-btn layui-btn-primary layui-btn-meself" onclick="refresh()"><img class="layui-meself-img1" src="${ctxp}/icon/refush.png" alt="">&nbsp;刷新</button>
  137. </div>
  138. <div class="layui-btn-group" style="float: right;margin-right: 10px;border: 1px solid rgb(204,204,204)">
  139. <button type="button" class="layui-btn layui-btn-primary layui-btn-sm" id="noneBtn"><img class="layui-meself-img" src="${ctxp}/icon/solr.png" alt=""></button>
  140. <button type="button" class="layui-btn layui-btn-primary layui-btn-sm"><i class="layui-icon"></i></button>
  141. <button type="button" class="layui-btn layui-btn-primary layui-btn-sm"><i class="layui-icon"></i></button>
  142. <button type="button" class="layui-btn layui-btn-primary layui-btn-sm"><i class="layui-icon"></i></button>
  143. </div>
  144. <table id="table1" class="layui-table" lay-filter="table1"></table>
  145. </div>
  146. </div>
  147. </div>
  148. </div>
  149. </div>
  150. </div>
  151. <script>
  152. layui.use(['form', 'layedit', 'laydate'], function(){
  153. var form = layui.form
  154. ,layer = layui.layer
  155. ,layedit = layui.layedit
  156. ,laydate = layui.laydate;
  157. //日期
  158. laydate.render({
  159. elem: '#beginDate1'
  160. });
  161. laydate.render({
  162. elem: '#endDate1'
  163. });
  164. laydate.render({
  165. elem: '#beginDate2'
  166. });
  167. laydate.render({
  168. elem: '#endDate2'
  169. });
  170. });
  171. </script>
  172. <script>
  173. layui.config({
  174. base: '${ctxp}/static/plugin/assets/'
  175. }).extend({
  176. treetable: 'treetable-lay/treetable'
  177. }).use(['layer', 'table', 'treetable'], function () {
  178. var $ = layui.jquery;
  179. var table = layui.table;
  180. var layer = layui.layer;
  181. var treetable = layui.treetable;
  182. var renderTable1 = function () {
  183. layer.load(2);
  184. treetable.render({
  185. treeColIndex: 0,
  186. treeSpid: -1,
  187. treeIdName: 'id',
  188. treePidName: 'pid',
  189. treeDefaultClose: false,
  190. treeLinkage: false,
  191. elem: '#table1',
  192. cols: [[
  193. {field: 'gcmc',width:200,title: '工程名称'},
  194. {field:'xmsl',width:180,title:"项目数量"},
  195. {field:'cjsq',width:200,title: '创建时期'},
  196. {field:'djr',width:200,title:'登记人'},
  197. {field:'op',align:'center',title:"操作",minWidth:200,templet:function(d){
  198. ////对操作进行初始化
  199. var xml = "";
  200. if(d.status==1){
  201. xml += "<a class='layui-btn layui-btn-primary layui-btn-xs' onclick=\"look( '${ctx}/project/form?id=" + d.id + "&tabId=1')\">查看</a>"
  202. +"<a class='layui-btn layui-btn-xs' onclick=\"update( '${ctx}/project/form?id=" + d.id + "&tabId=2')\">修改</a>"
  203. +"<a class='layui-btn layui-btn-normal layui-btn-xs' lay-event='add'>添加项目</a>"
  204. +"<a class='layui-btn layui-btn-warm layui-btn-xs' lay-event=''href=\"${ctx}/project/export?id=" + d.id+"\">导出</a>";
  205. }
  206. if(d.status==2){
  207. xml +="<span class='myspan'>操作</span>";
  208. }
  209. if(d.status==3){
  210. xml +="<a class='layui-btn layui-btn-xs' href=\"${ctx}/jkxl/list?id="+d.id+"&type="+d.type+"\">编辑</a>";
  211. }
  212. return xml;
  213. }}
  214. ]],
  215. "data": [
  216. <c:if test="${ not empty list}">
  217. <c:forEach items="${list}" var="data" varStatus="index">
  218. {
  219. "id": "${data.id}",
  220. "gcmc":"${data.projectName}",
  221. "xmsl": "${data.number}",
  222. "cjsq": "<fmt:formatDate value="${data.createDate}" pattern="yyyy/MM/dd"/>",
  223. "djr":"${data.userName}",
  224. "status":"1",
  225. "pid": -1
  226. },
  227. {
  228. "id": "2",
  229. "gcmc":"项目名称",
  230. "xmsl": "施工单位",
  231. "cjsq": "项目划分",
  232. "djr":"创建时间",
  233. "status":"2",
  234. "pid": "${data.id}"
  235. },
  236. </c:forEach>
  237. </c:if>
  238. <c:forEach items="${list}" var="item" varStatus="index">
  239. <c:forEach items="${item.wbsItems}" var="items" varStatus="index">
  240. {
  241. "id": "${items.id}",
  242. "type":"${items.type}",
  243. "gcmc":"${items.itemName}",
  244. "xmsl": "某施工单位一",
  245. <%--"cjsq": <c:if test="${items.type eq '1'}">"架空线路"</c:if><c:if test="${items.type eq '2'}">"电缆线路"</c:if>,--%>
  246. "cjsq":<c:if test="${items.type eq '1'}">"架空线路"</c:if><c:if test="${items.type eq '2'}">"电缆线路"</c:if>,
  247. "djr":"<fmt:formatDate value="${items.createDate}" pattern="yyyy/MM/dd"/>",
  248. "status":"3",
  249. "pid": "${items.projectId}"
  250. },
  251. </c:forEach>
  252. </c:forEach>
  253. ],
  254. done: function () {
  255. $(".myspan").closest("tr").css('background-color','#f2f2f2');
  256. layer.closeAll('loading');
  257. }
  258. });
  259. };
  260. renderTable1();
  261. table.on('tool(table1)', function(obj,target){
  262. var data = obj.data;
  263. //console.log(obj)
  264. if(obj.event == 'add'){
  265. $("#addtext").val(data.id);
  266. layui.use(['table','layer'],function(){
  267. layer.open({
  268. type: 2,
  269. title: '添加工程',
  270. area: ['50%', '90%'],
  271. shade: 0.8,
  272. shadeClose: true,
  273. content: '${ctxp}/webpage/modules/sg/project/addItemForm.jsp'
  274. , btn: ['确定','关闭']
  275. ,yes: function(index, layero){
  276. // var bodyparent = layer.getChildFrame('body', index);
  277. // bodyparent.find('#newProject').click();
  278. var body = layer.getChildFrame('body', index);
  279. var iframeWin = layero.find('iframe')[0]; //得到iframe页的窗口对象,执行iframe页的方法:iframeWin.method();
  280. var inputForm = body.find('#inputForm');
  281. var top_iframe;
  282. if(target){
  283. top_iframe = target;//如果指定了iframe,则在改frame中跳转
  284. }else{
  285. top_iframe = top.getActiveTab().attr("name");//获取当前active的tab的iframe
  286. }
  287. inputForm.attr("target",top_iframe);//表单提交成功后,从服务器返回的url在当前tab中展示
  288. iframeWin.contentWindow.doSubmit();
  289. layer.close(index);//关闭对话框。
  290. }
  291. ,btn2: function(index, layero){
  292. layer.close(index);
  293. }
  294. })
  295. })
  296. }
  297. });
  298. });
  299. </script>
  300. <script>
  301. function refresh(){
  302. window.location.reload();
  303. }
  304. function addProject(){
  305. layer.prompt({title: '请输入工程名称', formType: 3}, function(text, index){
  306. layer.close(index);
  307. $.ajax({
  308. type: "post",
  309. url: "${ctx}/project/save",
  310. data:{projectName:text},
  311. dataType: "json",
  312. success: function(data){
  313. if(data.success){
  314. layer.msg(data.msg, {icon: 1});
  315. window.location.reload();
  316. }else{
  317. layer.msg('添加失败', {icon: 1});
  318. }
  319. }
  320. });
  321. });
  322. }
  323. </script>
  324. <script>
  325. function look(url) {
  326. layer.open({
  327. type: 2,
  328. title: '查看',
  329. area: ['70%', '90%'],
  330. shade: 0.8,
  331. shadeClose: true,
  332. fixed: true, //不固定
  333. maxmin: true,
  334. content: url
  335. , btn: ['关闭']
  336. })
  337. }
  338. function update(url) {
  339. layer.open({
  340. type: 2,
  341. title: '修改工程',
  342. area: ['70%', '90%'],
  343. shade: 0.8,
  344. shadeClose: true,
  345. fixed: false, //不固定
  346. maxmin: true,
  347. content: url
  348. , btn: ['确定','关闭']
  349. ,yes: function(index, layero){
  350. var bodyparent = layer.getChildFrame('body', index);
  351. bodyparent.find('#updatebtn').click();
  352. }
  353. ,btn2: function(index, layero){
  354. layer.close(index);
  355. }
  356. })
  357. }
  358. </script>
  359. <script>
  360. $(document).ready(function(e) {
  361. $("#noneBtn").click(function(e) {
  362. $("#noneDiv").toggle(400);
  363. });
  364. });
  365. </script>
  366. </body>
  367. </html>