|
@@ -88,7 +88,7 @@
|
|
|
<form:input path="contractName" htmlEscape="false" maxlength="255" class=" form-control layui-input"/>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div class="layui-item query athird">
|
|
|
+ <%--<div class="layui-item query athird">
|
|
|
<label class="layui-form-label">创建时间:</label>
|
|
|
<div class="layui-input-block">
|
|
|
<input id="startDate" placeholder="开始时间" name="startDate" type="text" readonly="readonly" maxlength="20" class="laydate-icondate form-control layer-date layui-input laydate-icon query-group"
|
|
@@ -99,7 +99,7 @@
|
|
|
value="<fmt:formatDate value="${constructionContract.endDate}" pattern="yyyy-MM-dd"/>"/>
|
|
|
</input>
|
|
|
</div>
|
|
|
- </div>
|
|
|
+ </div>--%>
|
|
|
<div class="layui-item athird">
|
|
|
<div class="input-group">
|
|
|
<a href="#" id="moresee"><i class="glyphicon glyphicon-menu-down"></i></a>
|
|
@@ -120,7 +120,7 @@
|
|
|
<div class="contentShadow layui-form contentDetails">
|
|
|
<div class="nav-btns">
|
|
|
<%--此处按钮样式包括 nav-btn-add nav-btn-refresh nav-btn-import nav-btn-export nav-btn-query nav-btn-reset--%>
|
|
|
- <table:addRow url="${ctx}/project/constructionContract/form" title="合同管理"></table:addRow><!-- 增加按钮 -->
|
|
|
+ <%--<table:addRow url="${ctx}/project/constructionContract/form" title="合同管理"></table:addRow>--%><!-- 增加按钮 -->
|
|
|
<%--<shiro:hasPermission name="project:constructionContract:import">
|
|
|
<table:importExcel url="${ctx}/workclientinfo/workClientInfo/import"></table:importExcel><!-- 导入按钮 -->
|
|
|
</shiro:hasPermission>
|
|
@@ -143,7 +143,7 @@
|
|
|
<div id="changewidth"></div>
|
|
|
</div>
|
|
|
<script src="${ctxStatic}/layer-v2.3/layui/layui.all.js" charset="utf-8"></script>
|
|
|
-<script>
|
|
|
+<%--<script>
|
|
|
layui.use('table', function(){
|
|
|
layui.table.render({
|
|
|
limit:${ page.pageSize }
|
|
@@ -204,8 +204,279 @@
|
|
|
|
|
|
resizeListTable();/*消除由于有竖向滚动条造成table出现横向滚动条*/
|
|
|
$("a").on("click",addLinkVisied);
|
|
|
+</script>--%>
|
|
|
+<script src="${ctxStatic}/layer-v2.3/layui/layui.all.js" charset="utf-8"></script>
|
|
|
+<script src="${ctxStatic}/layer-v2.3/layui/tableTree/treetable.js" charset="utf-8"></script>
|
|
|
+<script>
|
|
|
+ /*使用模块加载的方式 加载文件*/
|
|
|
+ layui.config({
|
|
|
+ base: '${ctx}/resoueces/css/layui/module/'
|
|
|
+ }).extend({
|
|
|
+ treetable: 'treetable-lay/treetable'
|
|
|
+ }).use(['layer', 'table', 'treetable'], function () {
|
|
|
+ var $ = layui.jquery;
|
|
|
+ var table = layui.table;
|
|
|
+ var layer = layui.layer;
|
|
|
+ var treetable = layui.treetable;
|
|
|
+
|
|
|
+ // 渲染表格
|
|
|
+ var renderTable = function () {
|
|
|
+ var projectName = $("#projectName").val();
|
|
|
+ var contractName = $("#contractName").val();
|
|
|
+ if(undefined == contractName){
|
|
|
+ contractName = "";
|
|
|
+ }
|
|
|
+ layer.load(2);
|
|
|
+ treetable.render({
|
|
|
+ treeColIndex: 1,//树形图标显示在第几列
|
|
|
+ treeSpid: 0,//最上级的父级id
|
|
|
+ treeIdName: 'permissionId',//id字段的名称
|
|
|
+ treePidName: 'pid',//pid字段的名称
|
|
|
+ treeDefaultClose: true,//是否默认折叠
|
|
|
+ treeLinkage: true,//父级展开时是否自动展开所有子级
|
|
|
+ elem: '#permissionTable',
|
|
|
+ url: '${ctx}/project/constructionContract/getProjectList?projectId=${projectRecords.id}&pageNo=${page.pageNo}&projectName='+$("#projectName").val()+'&leaderNameStr='+$("#leaderNameStr").val()+'&workContractInfo.name='+contractName,
|
|
|
+ page: false,
|
|
|
+ cols: [[
|
|
|
+ {type: 'numbers', align:'center', title: '序号' ,width:80},
|
|
|
+ {field: 'projectId', title: '项目编号/施工合同编号'},
|
|
|
+ {field: 'projectName', align:'center', title: '项目名称/施工合同名称',templet:function(d){
|
|
|
+ if(0 == d.pid){
|
|
|
+ return "<a class=\"attention-info pid\" title=\"" + d.projectName + "\" href=\"javascript:void(0);\" onclick=\"openDialogView('查看项目', '${ctx}/project/projectRecords/view?id=" + d.id +"','95%', '95%')\">" + d.projectName + "</a>";
|
|
|
+ }else{
|
|
|
+ return "<a class=\"attention-info\" href=\"javascript:void(0)\" onclick=\"openDialogView('查看工作内容', '${ctx}/projectcontentinfo/projectcontentinfo/form?view=contentView&condition=according&dictType=&id="+d.contentPId+"&parentIds="+d.parentIds+"&infoId="+d.id+"','95%', '95%')\">" + d.projectName + "</a>";
|
|
|
+ }
|
|
|
+ }},
|
|
|
+ {field: 'clientName', align:'center', title: '合同分类',templet: function(d){
|
|
|
+ if(0 == d.pid){
|
|
|
+ return "";
|
|
|
+ }else{
|
|
|
+ return "<font>"+d.clientName+"</font>";
|
|
|
+ }
|
|
|
+ }},
|
|
|
+ {field: 'projectLeader', align:'center', title: '有效合同额',templet: function(d){
|
|
|
+ if(0 == d.pid){
|
|
|
+ return "";
|
|
|
+ }else{
|
|
|
+ return "<font>"+d.projectLeader+"</font>";
|
|
|
+ }
|
|
|
+ }},
|
|
|
+ {field: 'projectLeader', align:'center', title: '项目负责人',templet: function(d){
|
|
|
+ if(0 == d.pid){
|
|
|
+ return "<font style = 'font-size:14px;font-weight:500;'>"+d.projectLeader+"</font>";
|
|
|
+ }else{
|
|
|
+ return "<font>"+d.projectLeader+"</font>";
|
|
|
+ }
|
|
|
+ }},
|
|
|
+ {field: 'projectRegistrant', align:'center', title: '登记人',templet: function(d){
|
|
|
+ if(0 == d.pid){
|
|
|
+ return "<font style = 'font-size:14px;font-weight:500;'>"+d.projectRegistrant+"</font>";
|
|
|
+ }else{
|
|
|
+ return "<font>"+d.projectRegistrant+"</font>";
|
|
|
+ }
|
|
|
+ }},
|
|
|
+ {field: 'createDate', align:'center', title: '登记日期',width:100,templet: function(d){
|
|
|
+ var date=d.createDate;
|
|
|
+ date=date.replace(new RegExp(/-/gm) ,"/");
|
|
|
+
|
|
|
+ if(0 == d.pid){
|
|
|
+ return "<font style = 'font-size:14px;font-weight:500;'>"+layui.util.toDateString(date,'yyyy-MM-dd')+"</font>";
|
|
|
+ }else{
|
|
|
+ return "<font>"+layui.util.toDateString(date,'yyyy-MM-dd')+"</font>";
|
|
|
+ }
|
|
|
+ }},
|
|
|
+ {templet: complain, align:'center', title: '操作',width:130}
|
|
|
+ ]],
|
|
|
+ done: function () {
|
|
|
+ layer.closeAll('loading');
|
|
|
+ }
|
|
|
+ });
|
|
|
+ };
|
|
|
+
|
|
|
+ renderTable();
|
|
|
+
|
|
|
+ //触发三个button按钮
|
|
|
+ $('#btn-expand').click(function () {
|
|
|
+ treetable.expandAll('#permissionTable');
|
|
|
+ });
|
|
|
+
|
|
|
+ $('#btn-fold').click(function () {
|
|
|
+ treetable.foldAll('#permissionTable');
|
|
|
+ });
|
|
|
+
|
|
|
+ $('#btn-refresh').click(function () {
|
|
|
+ renderTable();
|
|
|
+ });
|
|
|
+
|
|
|
+
|
|
|
+ function complain(d){//操作中显示的内容
|
|
|
+ if(d.pid=="0") {
|
|
|
+ if(1 == d.operationSign) {
|
|
|
+ return [
|
|
|
+ '<a href="javascript:void(0)" onclick="openDialogreAudit(\'新增工作内容\', \'${ctx}/project/projectImplementEarly/form?view=before&dictType=&parentIds=&projectContentId='+d.projectContentId+'&project.id=' + d.id +'\',\'95%\',\'95%\')" style=\"color: white;background: darkseagreen\" class="op-btn op-btn-add" ><i class="fa fa-plus"></i> 新增</a>',
|
|
|
+ ].join('');
|
|
|
+ }else{
|
|
|
+ return [
|
|
|
+ '',
|
|
|
+ ].join('');
|
|
|
+ }
|
|
|
+ } else if (d.pid!="0"){
|
|
|
+ if(1 == d.operationSign) {
|
|
|
+ if(d.status ==null){
|
|
|
+ //子级内容
|
|
|
+ return [
|
|
|
+ '<a href="javascript:void(0)" onclick="openDialogreAudit(\'修改工作内容\', \'${ctx}/projectcontentinfo/projectcontentinfo/form?view=content&condition=early&flag=modify&dictType=&id='+d.contentPId+'&parentIds='+d.parentIds+'&infoId='+d.id+'\',\'95%\',\'95%\')" class="op-btn op-btn-edit" ><i class="fa fa-edit"></i> 编辑</a>',
|
|
|
+ /*'<a href="${ctx}/projectcontentinfo/projectcontentinfo/delete?infoId='+d.id+'&id='+d.contentPId+'&type=8&condition=record" onclick="return confirmxRefresh(\'确认要删除该工作内容报告吗?\', this.href)" class="op-btn op-btn-delete"><i class="fa fa-trash"></i> 删除</a>',*/
|
|
|
+ ].join('');
|
|
|
+
|
|
|
+ }else{
|
|
|
+ return [
|
|
|
+ '',
|
|
|
+ ].join('');
|
|
|
+ }
|
|
|
+
|
|
|
+ }else{
|
|
|
+ return [
|
|
|
+ '',
|
|
|
+ ].join('');
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ return[''].join('');
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //监听工具条
|
|
|
+ table.on('tool(permissionTable)', function (obj) {
|
|
|
+ var data = obj.data;
|
|
|
+ var layEvent = obj.event;
|
|
|
+ if(data.permissionName!=null){
|
|
|
+ if (layEvent === 'del') {
|
|
|
+ layer.msg('删除' + data.id);
|
|
|
+ } else if (layEvent === 'edit') {
|
|
|
+ layer.msg('修改' + data.id);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ });
|
|
|
+
|
|
|
</script>
|
|
|
+<script>
|
|
|
+ function openDialogres(title,url,width,height,target){
|
|
|
+
|
|
|
+ if(navigator.userAgent.match(/(iPhone|iPod|Android|ios)/i)){//如果是移动端,就使用自适应大小弹窗
|
|
|
+ width='auto';
|
|
|
+ height='auto';
|
|
|
+ }else{//如果是PC端,根据用户设置的width和height显示。
|
|
|
|
|
|
+ }
|
|
|
+ top.layer.open({
|
|
|
+ type: 2,
|
|
|
+ area: [width, height],
|
|
|
+ title: title,
|
|
|
+ skin: 'three-btns',
|
|
|
+ maxmin: true, //开启最大化最小化按钮
|
|
|
+ content: url ,
|
|
|
+ btn: ['提交','暂存','关闭'],
|
|
|
+ btn1: function(index, layero){
|
|
|
+ var body = top.layer.getChildFrame('body', index);
|
|
|
+ var iframeWin = layero.find('iframe')[0]; //得到iframe页的窗口对象,执行iframe页的方法:iframeWin.method();
|
|
|
+ var inputForm = body.find('#inputForm');
|
|
|
+ var top_iframe;
|
|
|
+ if(target){
|
|
|
+ top_iframe = target;//如果指定了iframe,则在改frame中跳转
|
|
|
+ }else{
|
|
|
+ top_iframe = top.getActiveTab().attr("name");//获取当前active的tab的iframe
|
|
|
+ }
|
|
|
+ inputForm.attr("target",top_iframe);//表单提交成功后,从服务器返回的url在当前tab中展示
|
|
|
+ if(iframeWin.contentWindow.doSubmit(1) ){
|
|
|
+ //top.layer.close(index);//关闭对话框。
|
|
|
+ setTimeout(function(){top.layer.close(index)}, 100);//延时0.1秒,对应360 7.1版本bug
|
|
|
+ }
|
|
|
+ },
|
|
|
+ btn2:function(index,layero){
|
|
|
+ var body = top.layer.getChildFrame('body', index);
|
|
|
+ var iframeWin = layero.find('iframe')[0]; //得到iframe页的窗口对象,执行iframe页的方法:iframeWin.method();
|
|
|
+ var inputForm = body.find('#inputForm');
|
|
|
+ var top_iframe;
|
|
|
+ if(target){
|
|
|
+ top_iframe = target;//如果指定了iframe,则在改frame中跳转
|
|
|
+ }else{
|
|
|
+ top_iframe = top.getActiveTab().attr("name");//获取当前active的tab的iframe
|
|
|
+ }
|
|
|
+ inputForm.attr("target",top_iframe);//表单提交成功后,从服务器返回的url在当前tab中展示
|
|
|
+ if(iframeWin.contentWindow.doSubmit(2) ){
|
|
|
+ // top.layer.close(index);//关闭对话框。
|
|
|
+ setTimeout(function(){top.layer.close(index)}, 100);//延时0.1秒,对应360 7.1版本bug
|
|
|
+ }
|
|
|
+ return false;
|
|
|
+ },
|
|
|
+ btn3: function(index){
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ function openDialogreAudit(title,url,width,height,target){
|
|
|
+
|
|
|
+ if(navigator.userAgent.match(/(iPhone|iPod|Android|ios)/i)){//如果是移动端,就使用自适应大小弹窗
|
|
|
+ width='auto';
|
|
|
+ height='auto';
|
|
|
+ }else{//如果是PC端,根据用户设置的width和height显示。
|
|
|
+
|
|
|
+ }
|
|
|
+ top.layer.open({
|
|
|
+ type: 2,
|
|
|
+ area: [width, height],
|
|
|
+ title: title,
|
|
|
+ skin: 'three-btns',
|
|
|
+ maxmin: true, //开启最大化最小化按钮
|
|
|
+ content: url ,
|
|
|
+ btn: ['提交','关闭'],
|
|
|
+ btn1: function(index, layero){
|
|
|
+ var body = top.layer.getChildFrame('body', index);
|
|
|
+ var iframeWin = layero.find('iframe')[0]; //得到iframe页的窗口对象,执行iframe页的方法:iframeWin.method();
|
|
|
+ var inputForm = body.find('#inputForm');
|
|
|
+ var top_iframe;
|
|
|
+ if(target){
|
|
|
+ top_iframe = target;//如果指定了iframe,则在改frame中跳转
|
|
|
+ }else{
|
|
|
+ top_iframe = top.getActiveTab().attr("name");//获取当前active的tab的iframe
|
|
|
+ }
|
|
|
+ inputForm.attr("target",top_iframe);//表单提交成功后,从服务器返回的url在当前tab中展示
|
|
|
+ if(iframeWin.contentWindow.doSubmit(1) ){
|
|
|
+ top.layer.close(index);//关闭对话框。
|
|
|
+ setTimeout(function(){top.layer.close(index)}, 100);//延时0.1秒,对应360 7.1版本bug
|
|
|
+ }
|
|
|
+ },
|
|
|
+ btn2: function(index){
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ // 确认对话框
|
|
|
+ function confirmxRefresh(mess, href){
|
|
|
+ top.layer.confirm(mess, {icon: 3, title:'系统提示'}, function(index){
|
|
|
+ //do something
|
|
|
+ if (typeof href == 'function') {
|
|
|
+ href();
|
|
|
+ }else{
|
|
|
+ resetTip(); //loading();
|
|
|
+ $.ajax({
|
|
|
+ url:href,
|
|
|
+ data:$('#loginForm').serialize(),
|
|
|
+ type:"post",
|
|
|
+ success:function(data){
|
|
|
+ if(data.status){
|
|
|
+ parent.layer.msg(data.msg,{icon:1});
|
|
|
+ }else {
|
|
|
+ parent.layer.msg(data.msg,{icon:2});
|
|
|
+ }
|
|
|
+ //parent.refreshTrees();
|
|
|
+ location = '${ctx}/project/projectRecords/list';
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ top.layer.close(index);
|
|
|
+ });
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+</script>
|
|
|
<script type="text/javascript">
|
|
|
resizeListWindow1();
|
|
|
$(window).resize(function(){
|