123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307 |
- <%@ page language="java" contentType="text/html; charset=UTF-8"
- pageEncoding="UTF-8"%>
- <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
- <!DOCTYPE html>
- <html>
- <head>
- <jsp:include page="../common/common-meta-include.jsp"></jsp:include>
- <jsp:include page="../common/common-js-include.jsp"></jsp:include>
- <jsp:include page="../common/common-css-include.jsp"></jsp:include>
- <!--[if lt IE 9]>
- <script src="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>
- <script src="https://cdn.staticfile.org/respond.js/1.4.2/respond.min.js"></script>
- <![endif]-->
- <style type="text/css">
- .table_box .table_process .layui-table-cell {
- /*height: 75px;*/
- }
- .layui-table-col-special .layui-table-cell{
- display:flex;
- justify-content:space-between;
- }
- /*.layui-table-view .layui-table td >div{*/
- /* height: 75px !important;*/
- /* line-height: 22px !important;*/
- /* white-space: normal;*/
- /*}*/
- </style>
- </head>
- <body>
- <div id="app"></div>
- <template id="template">
- <div class="layui-layout layui-layout-admin pd0">
- <!-- 内容区域 -->
- <div class="right_title">
- <span class="txt">周调度图片<div class="top-breadcrumb"></div></span>
- <div class="layui-collapse search_form">
- <div class="layui-colla-item">
- <%-- <h2 class="layui-colla-title">筛选</h2>--%>
- <div class="layui-colla-content layui-show">
- <form class="layui-form" lay-filter="searchForm">
- <div class="layui-row">
- <div class="layui-col-xs3 layui-col-sm3 layui-col-md4">
- <div class="layui-form-item">
- <label class="layui-form-label required">项目名称</label>
- <div class="layui-input-block">
- <input type="text" name="subName" placeholder="请输入" autocomplete="off" class="layui-input">
- </div>
- </div>
- </div>
- <div class="layui-col-xs3 layui-col-sm3 layui-col-md4">
- <div class="layui-form-item">
- <label class="layui-form-label required">项目属地</label>
- <div class="layui-input-block">
- <select name="subjectId">
- <option value="">请选择</option>
- <c:forEach items="${JSDD }" var="hy">
- <option value="${hy.code }">${hy.title }</option>
- </c:forEach>
- </select>
- </div>
- </div>
- </div>
- <div class="layui-col-xs3 layui-col-sm3 layui-col-md4">
- <div class="layui-form-item">
- <label class="layui-form-label required">行业类别</label>
- <div class="layui-input-block">
- <select name="indusKind" v-model="indusKind" id="indusKind" lay-search="">
- <option value="">请选择</option>
- <c:forEach items="${HYFL }" var="hy">
- <option value="${hy.id }">${hy.title }</option>
- </c:forEach>
- </select>
- </div>
- </div>
- </div>
- <div class="layui-col-xs3 layui-col-sm3 layui-col-md4">
- <div class="layui-form-item">
- <label class="layui-form-label">进度范围(%)</label>
- <div class="layui-input-block time_box">
- <input type="number" name="numBlMin" placeholder="最小进度比例" autocomplete="off" class="layui-input" style="width:130px">
- <span class="split_txt">至</span>
- <input type="number" name="numBlMax" placeholder="最大进度比例" autocomplete="off" class="layui-input" style="width:130px">
- </div>
- </div>
- </div>
- <div class="layui-col-xs3 layui-col-sm3 layui-col-md4">
- <div class="layui-form-item">
- <label class="layui-form-label required">建设性质</label>
- <div class="layui-input-block">
- <select name="propKind">
- <option value="">请选择</option>
- <c:forEach items="${JSXZ}" var="js">
- <option value="${js.code }">${js.title }</option>
- </c:forEach>
- </select>
- </div>
- </div>
- </div>
- </div>
- <div class="layui-row">
- <div class="layui-col-xs4 layui-col-sm4 layui-col-md4">
- <div class="layui-form-item">
- <button type="button" class="layui-btn layui-btn-normal" @click="search">查询</button>
- </div>
- </div>
- </div>
- </form>
- </div>
- </div>
- </div>
- </div>
- <div class="table_box" style="padding-top: 0;">
- <div class="table_process">
- <table id="table1" lay-filter="test"></table>
- <div class="pagination-box" id="pagination"></div>
- </div>
- </div>
- <div style="height: 20px;"></div>
- </div>
- </template>
- <script type="text/html" id="subName">
- <span title="{{d.subName}}">{{d.subName}}</span>
- </script>
- <script type="text/html" id="amt">
- <span title="">总投资:{{d.amtTotal||0}}万元</span>
- </script>
- <script type="text/html" id="amtYear">
- {{# var computedPer = function(total, now){
- return (total == 0) ? 0 : parseInt(now * 100 / total +0.5);
- };
- }}
- <span title="">
- <span class="qianse">年度计划投资:</span><strong class="lanse">{{d.yearAmt||0}}</strong> 万元 <br/>
- <span class="qianse">年度完成投资:</span><strong class="lanse">{{d.yearAmtSj||0}}</strong> 万元(<i class="lanse">{{computedPer(d.yearAmt||0, d.yearAmtSj||0)}} %</i> )
- </span>
- </script>
- <script type="text/html" id="date">
- <div title="">
- <div class="line"><span class="qianse">计划开工:</span><span class="shense">{{d.beginDate}}</span>
- </div>
- <div class="line"><span class="qianse">计划竣工:</span><span class="shense">{{d.endDate}}</span>
- </div>
- </div>
- </script>
- <script type="text/html" id="toolBar">
- <div class="toolBar">
- <span lay-event="toDetail">周调度图片展示</span>
- </div>
- </script>
- <script>
- new Vue({
- el: "#app",
- template: "#template",
- data: {
- winH: 0,
- dataList : [],
- pageNo : 1,
- kind: {},
- tableName: 'test',
- sort: {field: "amtTotal", type:""},
- pageSize : 10
- },
- mounted : function() {
- this.init()
- },
- methods: {
- init : function() {
- this.winH = document.body.clientHeight
- var xmlx = [];
- <c:forEach items="${XMLX}" var="xm">
- xmlx.push({value:"${xm.code}", name:"${xm.title}"});
- </c:forEach>
- this.kind = layui.xmSelect.render({
- el: "#kind",
- language:'zn',
- data:xmlx
- });
- this.getData();
- window.toDetail = this.toDetail;
- window.showImage = this.showImage;
- },
- getData : function(){
- var self = this;
- var param = layui.form.getValue("searchForm");
- param.kind = "";
- param.pageNo = this.pageNo;
- param.pageSize = this.pageSize;
- param.orderBy = this.sort.field;
- param.orderType = this.sort.type || null;
- App.postJson("/api/graphicProgress/list",param, function(res){
- self.dataList = res.rows;
- self.loadPage(res.total);
- self.loadTable();
- });
- },
- loadTable : function(){
- for(var i=0;i<this.dataList.length;i++){
- var tem = this.dataList[i];
- switch(tem.status){
- case '0':
- tem.statusName = '暂存';
- break;
- case '1':
- tem.statusName = '项目前期';
- break;
- case '6':
- tem.statusName = '待开工';
- break;
- case '7':
- tem.statusName = '施工中';
- break;
- case '8':
- tem.statusName = '暂停施工';
- break;
- case 'A':
- tem.statusName = '已竣工';
- break;
- }
- }
- var self = this;
- layui.table.render({
- elem: '#table1', // 指定原始表格元素选择器(推荐id选择器)
- even: true,
- autoSort: false,
- initSort: self.sort,
- cols: [[ // 设置表头
- {type: 'numbers', fixed: 'left', align: 'center',title:'序号',width:50},
- {field: 'subName', fixed: 'left', title: '项目名称', minWidth: 300, templet: '#subName'},
- {field: 'amtTotal', title: '总投资额', minWidth: 162, templet: '#amt' },
- {field: 'amtYear', title: '计划/完成投资', minWidth: 231, templet: '#amtYear',sort:"amtYear"},
- {field: 'beginDate', title: '计划日期', minWidth: 180, templet: '#date'},
- {field: 'statusName', title: '项目进度', minWidth: 100},
- {field: 'num_bl', title: '进度比例-%', width: 120},
- {field: 'unitName', title: '项目单位', minWidth: 200},
- {title: '操作', width: 120, align:'center', toolbar: '#toolBar', fixed: 'right'},
- ]],
- fixed:true,
- height:window.screen.availHeight-400,
- data : self.dataList,
- done: function (res, curr, count) {
- res.data.forEach(function (item, index) {
- $(".layui-table-body tr").resize(function () {
- $(".layui-table-body tr").each(function (index, val) {
- $($(".layui-table-fixed .layui-table-body table tr")[index]).height($(val).height());
- });
- });
- //初始化高度,使得冻结行表体高度一致
- $(".layui-table-body tr").each(function (index, val) {
- $($(".layui-table-fixed .layui-table-body table tr")[index]).height($(val).height());
- });
- });
- }
- });
- layui.table.on('tool('+this.tableName+')', function(obj){
- var event = obj.event;
- self[event].call(this, obj);
- });
- layui.table.on('sort('+this.tableName+')', function(obj) {
- self.sort = obj;
- self.getData();
- return;
- })
- },
- loadPage : function(totalCount){
- var self = this;
- layui.laypage.render({
- elem: 'pagination',
- count: totalCount,
- curr : self.pageNo,
- limit : self.pageSize,
- layout: ['count', 'prev', 'page', 'next', 'skip'],
- jump: function(obj, first) {
- //首次不执行
- if(!first) {
- self.pageNo = obj.curr;
- self.getData();
- }
- }
- });
- },
- toDetail : function(obj){
- //详情
- var index = layer.open({
- type: 2,
- area: ['1000px', '800px'],
- title:obj.data.subName||"",
- content: App.getUrl("/graphicProgress/detail?subId="+ obj.data.id),
- });
- layui.layer.full(index);
- },
- search : function(){
- var param = layui.form.getValue("searchForm");
- this.pageNo = 1;
- this.getData();
- }
- }
- });
- </script>
- </body>
- </html>
|