Parcourir la source

项目文件上传

user5 il y a 4 ans
Parent
commit
c6e026be76

+ 952 - 0
src/main/webapp/webpage/modules/ruralprojectrecords/projectAccessoryForm.jsp

@@ -0,0 +1,952 @@
+<%@ page contentType="text/html;charset=UTF-8" %>
+<%@ include file="/webpage/include/taglib.jsp"%>
+<html>
+<head>
+	<title>报告详情管理</title>
+	<meta name="decorator" content="default"/>
+	<style>
+		label.error{
+			top:40px;
+			left:0;
+		}
+	</style>
+	<script type="text/javascript">
+        var validateForm;
+        var dataList;
+        function doSubmit(obj){//回调函数,在编辑和保存动作时,供openDialog调用提交表单。
+            if(validateForm.form()){
+				if(obj == 1){
+					$("#inputForm").attr("action","${ctx}/ruralProject/ruralProjectMessage/saveReport");
+				}else{
+					$("#inputForm").attr("action","${ctx}/ruralProject/ruralProjectMessage/holdSaveReport");
+				}
+				$("#inputForm").submit();
+				return true;
+            }else {
+				parent.layer.msg("信息未填写完整!", {icon: 5});
+			}
+
+            return false;
+        }
+        $(document).ready(function() {
+            validateForm = $("#inputForm").validate({
+                submitHandler: function(form){
+                    loading('正在提交,请稍等...');
+                    form.submit();
+                },
+                errorContainer: "#messageBox",
+                errorPlacement: function(error, element) {
+                    $("#messageBox").text("输入有误,请先更正。");
+                    if (element.is(":checkbox")||element.is(":radio")||element.parent().is(".input-append")){
+                        error.appendTo(element.parent().parent());
+                    } else {
+                        error.insertAfter(element);
+                    }
+                }
+            });
+            laydate.render({
+                elem: '#reportDate', //目标元素。由于laydate.js封装了一个轻量级的选择器引擎,因此elem还允许你传入class、tag但必须按照这种方式 '#id .class'
+                event: 'focus', //响应事件。如果没有传入event,则按照默认的click
+                type : 'date'
+, trigger: 'click'
+            });
+            $("#attachment_btn").click(function () {
+                $("#attachment_file").click();
+            });;
+            $("#gistdata_btn").click(function () {
+                $("#gistdata_file").click();
+            });;
+            $("#other_btn").click(function () {
+                $("#other_file").click();
+            });
+        });
+        function hasInArr(id,idArr) {
+            for(var i=0;i<idArr.length;i++){
+                if(id==$(idArr[i]).val()){
+                    return true;
+                }
+            }
+            return false;
+        }
+        function insertTitle(tValue){
+            var files = $("#attachment_file")[0].files;
+            for(var i=0;i<files.length;i++) {
+                var file = files[i];
+                var attachmentId = "";
+                var attachmentFlag = "86";
+                console.log(file);
+                var timestamp = new Date().getTime();
+
+				var storeAs = "projectRecords";
+                var uploadPath = "http://gangwan-app.oss-cn-hangzhou.aliyuncs.com/" + storeAs;
+                /*将这段字符串存到数据库即可*/
+                var divId = "_attachment";
+                $("#addFile" + divId).show();
+                multipartUploadWithSts(storeAs, file, attachmentId, attachmentFlag, uploadPath, divId, "0");
+            }
+        }
+
+        function gistdataInsertTitle(tValue){
+            var files = $("#gistdata_file")[0].files;
+            for(var i=0;i<files.length;i++) {
+                var file = files[i];
+                var gistdataId = "";
+                var gistdataFlag = "152";
+                console.log(file);
+                var timestamp = new Date().getTime();
+
+				var storeAs = "projectRecords";
+                var uploadPath = "http://gangwan-app.oss-cn-hangzhou.aliyuncs.com/" + storeAs;
+                /*将这段字符串存到数据库即可*/
+                var divId = "_gistdata";
+                $("#addFile" + divId).show();
+                multipartUploadWithSts(storeAs, file, gistdataId, gistdataFlag, uploadPath, divId, "0");
+            }
+        }
+
+        function otherInsertTitle(tValue){
+            var files = $("#other_file")[0].files;
+            for(var i=0;i<files.length;i++) {
+                var file = files[i];
+                var attachmentId = "";
+                var attachmentFlag = "153";
+                console.log(file);
+                var timestamp = new Date().getTime();
+
+				var storeAs = "projectRecords";
+                var uploadPath = "http://gangwan-app.oss-cn-hangzhou.aliyuncs.com/" + storeAs;
+                /*将这段字符串存到数据库即可*/
+                var divId = "_other";
+                $("#addFile" + divId).show();
+                multipartUploadWithSts(storeAs, file, attachmentId, attachmentFlag, uploadPath, divId, "0");
+            }
+        }
+        
+        function selectNum() {
+			top.layer.open({
+				type: 2,
+				area: ['50%','95%'],
+				title:'选择报告号',
+				content: '${ctx}/projectreportnum/projectReportNum/select',
+				btn: ['确定','关闭'],
+				btn1: function(index, layero){
+					var iframeWin = layero.find('iframe')[0].contentWindow; //得到iframe页的窗口对象,执行iframe页的方法:iframeWin.method();
+					var item = iframeWin.getSelectedItem();
+					if(item === 'false'){
+						iframeWin.layer.msg('请选择一条数据', {icon: 5});
+					}else {
+						$("#number").val(item)
+						top.layer.close(index);//关闭对话框。
+					}
+				},
+				btn2: function(index){
+				}
+
+			})
+		}
+        function openDialogre(title,url,width,height,formId){
+
+            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;
+                    inputForm.attr("action","${ctx}/projectcontentinfo/projectcontentinfo/ajaxsaveBaseData");//表单提交成功后,从服务器返回的url在当前tab中展示
+                    var $document = iframeWin.contentWindow.document;
+                    formSubmitAjax($document,formId,index);
+                },
+                btn2: function(index){
+                }
+            });
+        }
+        function formSubmitAjax($document,inputForm,index){
+            var validateForm = $($document.getElementById(inputForm)).validate({
+                submitHandler: function(form){
+                    loading('正在提交,请稍等...');
+                    form.submit();
+                },
+                errorContainer: "#messageBox",
+                errorPlacement: function(error, element) {
+                    $($document.getElementById("#messageBox")).text("输入有误,请先更正。");
+                    if (element.is(":checkbox")||element.is(":radio")||element.parent().is(".input-append")){
+                        error.appendTo(element.parent().parent());
+                    } else {
+                        error.insertAfter(element);
+                    }
+                }
+            });
+            if(validateForm.form()){
+                $($document.getElementById(inputForm)).ajaxSubmit({
+                    success:function(data) {
+                        if(!data.success){
+                            top.layer.msg("保存依据资料信息异常!",{icon:2});
+                            return false;
+                        }
+                        var idx = $("#workBaseDataList tr").length;
+                        addRowBaseData("#workBaseDataList",idx,workBaseDataTpl,data.body.workBasedData);
+                        parent.layer.msg(data.msg,{icon:1});
+                        top.layer.close(index)
+                    }
+                });
+            }
+        }
+
+        function delRowBaseData(obj, prefix,userId){
+            var id = $(prefix+"_id").val();
+            /* var createBy = $(prefix+"_userId").val();*/
+            var currentUser = '${fns:getUser().id}';
+            var contentId = '${projectcontentinfo.projectContentData.id}';
+            console.log(contentId);
+
+            $.ajax({
+                type:"post",
+                url:'${ctx}/projectcontentinfo/projectContentData/ajaxdelete',
+                data:{"contentId":contentId,"basedId":id},
+                dataType:"json",
+                success:function(data){
+                    if(data.success) {
+                        $(obj).parent().parent().remove();
+                        /*parent.parent.refreshTrees();*/
+                        if(data.body.inuse){
+                            return;
+                        }
+                        if (currentUser == userId) {
+                            confirmDelete('是否同步删除资料库的文件?','${ctx}/projectcontentinfo/projectcontentinfo/delete?infoId='+id+'&id=${projectcontentinfo.id}&type=1');
+                        }
+                    }else {
+                        top.layer.msg("删除依据资料失败!", {icon: 0});
+                    }
+                }
+            })
+            return;
+        }
+
+		function reviewAudits(mess, href,obj,remarks){
+				console.log(remarks);
+				var remark = $(remarks);
+				remark.val("确认");
+			    $("#audit"+obj).val("1");
+				$("#check1"+obj).attr("style","display:none");
+				$("#check2"+obj).attr("style","display");
+				top.layer.msg("已确认!", {icon: 1});
+			return false;
+		}
+
+		function getFee() {
+			var rf = $("#reviewFee").val();
+			var af = $("#approvalFee").val();
+			if(rf != ''&& af !=''){
+				var hf = parseInt(rf)-parseInt(af);
+				var rate = Math.round(parseInt(hf) / parseInt(rf) * 100) / 100 * 100
+				$("#verifyFee").val(hf);
+				$("#verifyRate").val(rate);
+			}
+			if(af !=''){
+				$("#consultFee").val(af)
+			}
+		}
+
+		function getAttachment() {
+        	/*var projectSort = $("#projectSort").val();
+        	//0为非打包项目
+        	if(projectSort == 0){*/
+				var reviewFee = $("#reviewFee").val();
+				$("#upTable").load(location.href+"&reviewFee="+reviewFee + " #upTable");
+				$("#gistdata_upTable").load(location.href+"&reviewFee="+reviewFee + " #gistdata_upTable");
+				$("#upTable_other").load(location.href+"&reviewFee="+reviewFee + " #upTable_other");
+			/*}*/
+		}
+
+		function getApprovalFee() {
+			var rf = $("#reviewFee").val();
+			var af = $("#approvalFee").val();
+			//土建
+			var bf = $("#buildingFee").val();
+			//安装
+			var inf = $("#installFee").val();
+			if(rf != ''&& af !=''){
+				var hf = parseInt(rf)-parseInt(af);
+				var rate = Math.round(parseInt(hf) / parseInt(rf) * 100) / 100 * 100
+				$("#verifyFee").val(hf);
+				$("#verifyRate").val(rate);
+			}
+			if(af !=''){
+				$("#consultFee").val(af)
+			}
+			$("#buildingFee").val("");
+			$("#installFee").val("");
+			$("#buildingRate").val("");
+			$("#installRate").val("");
+		}
+
+		function getInstallFee() {
+			var af = $("#approvalFee").val();
+			//安装
+			var inf = $("#installFee").val();
+			if(inf != ''&& af !=''){
+				var hf = parseInt(af)-parseInt(inf);
+				var rate = Math.round(parseInt(inf) / parseInt(af) * 100) / 100 * 100
+				$("#installRate").val(rate);
+				$("#buildingFee").val(hf);
+				bf = hf;
+				var bRate = Math.round(parseInt(hf) / parseInt(af) * 100) / 100 * 100
+				$("#buildingRate").val(bRate);
+			}
+			if(inf == ''|| af ==''){
+				$("#installRate").val("");
+			}
+		}
+
+		function getBuildingFee() {
+			var af = $("#approvalFee").val();
+			//土建
+			var bf = $("#buildingFee").val();
+			if(bf != ''&& af !=''){
+				var hf = parseInt(af)-parseInt(bf);
+				var rate = Math.round(parseInt(bf) / parseInt(af) * 100) / 100 * 100
+				$("#buildingRate").val(rate);
+				$("#installFee").val(hf);
+				inf = hf;
+				var inRate = Math.round(parseInt(hf) / parseInt(af) * 100) / 100 * 100
+				$("#installRate").val(inRate);
+			}
+			if(bf == ''|| af ==''){
+				$("#buildingRate").val("");
+			}
+		}
+
+        function addReview(obj) {
+            var infoId = $("#id").val();
+            var name = $("#name").val();
+            $.ajax({
+                type:"post",
+                url:'${ctx}/projectcontentinfo/projectContentData/addReview',
+                data:{"reviewId":obj,"name":name,"infoId":infoId},
+                dataType:"json",
+                success:function(data){
+                    if(data.success) {
+                        $("#projectContentDataList2").html("");
+						var list = eval(data.body.list);
+						dataList=list
+                        for(var i in list){
+                            var tr = "<tr>" +
+                                "<td>" +
+                                "<input id=\"projectReviewList"+i+"_id\" name=\"projectReportData.projectReviewList["+i+"].id\" type=\"hidden\" value=\""+list[i].id+"\"/>" +
+                                "<input id=\"projectReviewList"+i+"_delFalg\" name=\"projectReportData.projectReviewList["+i+"].delFalg\" type=\"hidden\" value=\"1\"/>" +
+                                "<input id=\"projectReviewList"+i+"_remarks\" name=\"projectReportData.projectReviewList["+i+"].remarks\" type=\"hidden\" value=\"\"/>" +
+                                ""+(parseInt(i)+1)+"" +
+                                "</td>" +
+                                "<td>" +
+                                ""+list[i].standardDetail+"" +
+                                "</td>" +
+                                "<td>" +
+                               	"<div id = \"check1"+list[i].id+"\">\n" +
+                                "<input type=\"hidden\" id=\"audit"+list[i].id+"\" value=\"0\"/>\n" +
+                                "<a href=\"projectReviewList"+list[i]+"\" onclick=\"return reviewAudits('确认要审核该质量复核内容吗?', this.href,'"+list[i].id+"','#projectReviewList"+i+"_remarks')\" style=\"color:#fff;\" class=\"op-btn op-btn-edit\">确认</a>" +
+                                "</div>\n" +
+                                "<div id = \"check2"+list[i].id+"\" class=\"check-ok\" style=\"display: none\">" +
+                                "<i class=\"fa fa-check\"></i>" +
+                                "</div>"
+                                "</td>" +
+                                "</tr>";
+                            $("#projectContentDataList2").append(tr);
+                        }
+                    }else {
+                        top.layer.msg("获取数据失败!", {icon: 0});
+                    }
+                }
+            })
+        }
+
+	</script>
+</head>
+<body>
+<div class="single-form">
+	<div class="container${container}">
+		<form:form id="inputForm" modelAttribute="projectcontentinfo" action="${ctx}/ruralProject/ruralProjectMessage/saveReport" method="post" class="form-horizontal">
+		<form:hidden path="id"/>
+		<form:hidden path="name"/>
+		<form:hidden path="parentIds"/>
+		<form:hidden path="edit"/>
+		<form:hidden path="projectReportData.id"/>
+		<form:hidden path="projectReportData.createBy.id"/>
+		<form:hidden path="project.id"/>
+			<input type="hidden" id="reviewFee" value="${projectcontentinfo.projectReportData.reviewFee}">
+		<sys:message content="${message}"/>
+			<div class="form-group layui-row">
+				<div class="form-group-label"><h2>成果文件</h2></div>
+				<div class="layui-item nav-btns">
+					<a href="javascript:void(0)"  onclick="formAttachment('添加类型', '${ctx}/projectAccessoryRelation/projectAccessoryRelation/formAttachment?parentId=11&projectType=1&projectId=${projectRecords.id}&reviewFee='+$('#reviewFee').val(),'500px','350px',false,'inputForm','file_attachment')" class="nav-btn nav-btn-add" ><i class="fa fa-plus"></i> 添加类型</a>
+				</div>
+				<div id="addFile_attachment" style="display: none" class="upload-progress">
+					<span id="fileName_attachment" ></span>
+					<span id="_attachment" ></span>
+					<b><span id="baifenbi_attachment" ></span></b>
+					<div class="progress">
+						<div id="jindutiao_attachment" class="progress-bar" style="width: 0%" aria-valuenow="0">
+						</div>
+					</div>
+				</div>
+				<input id="attachment_file" type="file" name="attachment_file" multiple="multiple" style="display: none;" onChange="if(this.value)insertTitle(this.value);"/>
+				<span id="attachment_title"></span>
+				<div class="layui-item layui-col-xs12" style="padding:0 16px;">
+					<table id="upTable" class="table table-bordered table-condensed details">
+						<thead>
+						<tr>
+								<%-- <th>序号</th>--%>
+							<th>电子件名称</th>
+							<th width="100px">最大容量(M)</th>
+							<th width="18%">类型限制</th>
+							<th>文件名</th>
+							<th width="150px">操作</th>
+						</tr>
+						</thead>
+						<tbody id="file_attachment">
+						<c:forEach items="${projectcontentinfo.fileAttachmentList}" var = "fileAttachment" varStatus="status">
+							<tr>
+								<td style="display:none">${fileAttachment.id}</td>
+								<td style="display:none">${fileAttachment.mustFlag}</td>
+								<c:choose>
+									<c:when test="${fileAttachment.mustFlag == 1}">
+										<td><span style="color: red">* </span>${fileAttachment.attachName}</td>
+									</c:when>
+									<c:otherwise>
+										<td>${fileAttachment.attachName}</td>
+									</c:otherwise>
+								</c:choose>
+
+								<td>${fileAttachment.attachLength}</td>
+								<td>${fileAttachment.attachTypes}</td>
+								<td>
+									<c:forEach items="${fileAttachment.workAttachments}" var = "workAttachment" varStatus="status">
+										<a class="attention-info" href="javascript:void(0)" onclick="preview('预览','${workAttachment.url}','90%','90%')">${workAttachment.attachmentName} ; </a>
+									</c:forEach>
+								</td>
+								<td class="op-td">
+									<div class="op-btn-box" >
+										<a href="javascript:void(0)"  onclick="openBill2('编辑附件', '${ctx}/projectAccessory/projectAccessory/workAttachmentForm?attachmentId=${fileAttachment.id}&projectId=${projectRecords.id}','70%','80%',false,'inputForm','upTable')" class="op-btn op-btn-edit" ><i class="fa fa-edit"></i> 编辑</a>
+									</div>
+								</td>
+							</tr>
+						</c:forEach>
+						</tbody>
+					</table>
+				</div>
+			</div>
+			<script type="text/template" id="fileAttachmentTpl">//<!--
+                <tr id="budgetList{{idx}}">
+                    <td class="hide">
+                        <input id="fileAttachment{{idx}}_id" type="hidden" value="{{row.id}}" class="clientId"/>
+                    </td>
+                    <td class="hide">
+                        0
+                    </td>
+                    <td style="text-align:center;">
+                        {{row.attachName}}
+                    </td>
+                    <td style="text-align:center;">
+                        {{row.attachLength}}
+                    </td>
+                    <td style="text-align:center;">
+                        {{row.attachTypes}}
+                    </td>
+                    <td style="text-align:center;">
+
+                    </td>
+					<td class="op-td">
+						<div class="op-btn-box" >
+							<a href="javascript:void(0)"  onclick="openBill2('编辑附件', '${ctx}/projectAccessory/projectAccessory/workAttachmentForm?attachmentId={{row.id}}&projectId=${projectRecords.id}','70%','80%',false,'inputForm','upTable')" class="op-btn op-btn-edit" ><i class="fa fa-edit"></i> 编辑</a>
+						</div>
+					</td>
+                </tr>//-->
+			</script>
+
+
+			<div class="form-group layui-row">
+				<div class="form-group-label"><h2>依据性资料</h2></div>
+				<div class="layui-item nav-btns">
+					<%--<a id="gistdata_btn" class="nav-btn nav-btn-add" title="添加附件"><i class="fa fa-plus"></i>&nbsp;添加附件</a>--%>
+					<a href="javascript:void(0)"  onclick="formAttachment('添加类型', '${ctx}/projectAccessoryRelation/projectAccessoryRelation/formAttachment?parentId=12&projectType=1&projectId=${projectRecords.id}&reviewFee='+$('#reviewFee').val(),'500px','350px',false,'inputForm','file_gistdata')" class="nav-btn nav-btn-add" ><i class="fa fa-plus"></i> 添加类型</a>
+				</div>
+				<div id="addFile_gistdata" style="display: none" class="upload-progress">
+					<span id="fileName_gistdata" ></span>
+					<span id="_gistdata" ></span>
+					<b><span id="baifenbi_gistdata" ></span></b>
+					<div class="progress">
+						<div id="jindutiao_gistdata" class="progress-bar" style="width: 0%" aria-valuenow="0">
+						</div>
+					</div>
+				</div>
+				<input id="gistdata_file" type="file" name="gistdata_file" multiple="multiple" style="display: none;" onChange="if(this.value)gistdataInsertTitle(this.value);"/>
+				<span id="gistdata_title"></span>
+				<div class="layui-item layui-col-xs12" style="padding:0 16px;">
+					<table id="gistdata_upTable" class="table table-bordered table-condensed details">
+						<thead>
+						<tr>
+								<%-- <th>序号</th>--%>
+							<th>电子件名称</th>
+							<th width="100px">最大容量(M)</th>
+							<th width="18%">类型限制</th>
+							<th>文件名</th>
+							<th width="150px">操作</th>
+						</tr>
+						</thead>
+						<tbody id="file_gistdata">
+						<c:forEach items="${projectcontentinfo.fileGistdataList}" var = "fileGistdata" varStatus="status">
+							<tr>
+									<%-- <td>${status.index + 1}</td>--%>
+								<td style="display:none">${fileGistdata.id}</td>
+								<td style="display:none">${fileGistdata.mustFlag}</td>
+								<c:choose>
+									<c:when test="${fileGistdata.mustFlag == 1}">
+										<td><span style="color: red">* </span>${fileGistdata.attachName}</td>
+									</c:when>
+									<c:otherwise>
+										<td>${fileGistdata.attachName}</td>
+									</c:otherwise>
+								</c:choose>
+								<td>${fileGistdata.attachLength}</td>
+								<td>${fileGistdata.attachTypes}</td>
+								<td>
+									<c:forEach items="${fileGistdata.workAttachments}" var = "workAttachment" varStatus="status">
+										<a class="attention-info" href="javascript:void(0)" onclick="preview('预览','${workAttachment.url}','90%','90%')">${workAttachment.attachmentName} ; </a>
+									</c:forEach>
+								</td>
+								<td class="op-td">
+									<div class="op-btn-box" >
+										<a href="javascript:void(0)"  onclick="openBill2('编辑附件', '${ctx}/projectAccessory/projectAccessory/workAttachmentForm?attachmentId=${fileGistdata.id}&projectId=${projectRecords.id}','70%','80%',false,'inputForm','gistdata_upTable')" class="op-btn op-btn-edit" ><i class="fa fa-edit"></i> 编辑</a>
+									</div>
+								</td>
+							</tr>
+						</c:forEach>
+						</tbody>
+					</table>
+				</div>
+			</div>
+			<script type="text/template" id="gistdataTpl">//<!--
+                <tr id="budgetList{{idx}}">
+                    <td class="hide">
+                        <input id="gistdataTpl{{idx}}_id" type="hidden" value="{{row.id}}" class="clientId"/>
+                    </td>
+                    <td class="hide">
+                        0
+                    </td>
+                    <td style="text-align:center;">
+                        {{row.attachName}}
+                    </td>
+                    <td style="text-align:center;">
+                        {{row.attachLength}}
+                    </td>
+                    <td style="text-align:center;">
+                        {{row.attachTypes}}
+                    </td>
+                    <td style="text-align:center;">
+
+                    </td>
+					<td class="op-td">
+						<div class="op-btn-box" >
+							<a href="javascript:void(0)"  onclick="openBill2('编辑附件', '${ctx}/projectAccessory/projectAccessory/workAttachmentForm?attachmentId={{row.id}}&projectId=${projectRecords.id}','70%','80%',false,'inputForm','gistdata_upTable')" class="op-btn op-btn-edit" ><i class="fa fa-edit"></i> 编辑</a>
+						</div>
+					</td>
+                </tr>//-->
+			</script>
+
+			<div class="form-group layui-row">
+				<div class="form-group-label"><h2>其他文件</h2></div>
+				<div class="layui-item nav-btns">
+					<%--<a id="other_btn" class="nav-btn nav-btn-add" title="添加附件"><i class="fa fa-plus"></i>&nbsp;添加附件</a>--%>
+					<a href="javascript:void(0)"  onclick="formAttachment('添加类型', '${ctx}/projectAccessoryRelation/projectAccessoryRelation/formAttachment?parentId=13&projectType=1&projectId=${projectRecords.id}&reviewFee='+$('#reviewFee').val(),'500px','350px',false,'inputForm','file_other')" class="nav-btn nav-btn-add" ><i class="fa fa-plus"></i> 添加类型</a>
+				</div>
+				<div id="addFile_other" style="display: none" class="upload-progress">
+					<span id="fileName_other" ></span>
+					<span id="_other" ></span>
+					<b><span id="baifenbi_other" ></span></b>
+					<div class="progress">
+						<div id="jindutiao_other" class="progress-bar" style="width: 0%" aria-valuenow="0">
+						</div>
+					</div>
+				</div>
+				<input id="other_file" type="file" name="other_file" multiple="multiple" style="display: none;" onChange="if(this.value)otherInsertTitle(this.value);"/>
+				<span id="other_title"></span>
+				<div class="layui-item layui-col-xs12" style="padding:0 16px;">
+					<table id="upTable_other" class="table table-bordered table-condensed details">
+						<thead>
+						<tr>
+								<%-- <th>序号</th>--%>
+							<th>电子件名称</th>
+							<th width="100px">最大容量(M)</th>
+							<th width="18%">类型限制</th>
+							<th>文件名</th>
+							<th width="150px">操作</th>
+						</tr>
+						</thead>
+						<tbody id="file_other">
+						<c:forEach items="${projectcontentinfo.fileOtherList}" var = "fileOther" varStatus="status">
+							<tr>
+									<%-- <td>${status.index + 1}</td>--%>
+								<td style="display:none">${fileOther.id}</td>
+								<td style="display:none">${fileOther.mustFlag}</td>
+								<c:choose>
+									<c:when test="${fileOther.mustFlag == 1}">
+										<td><span style="color: red">* </span>${fileOther.attachName}</td>
+									</c:when>
+									<c:otherwise>
+										<td>${fileOther.attachName}</td>
+									</c:otherwise>
+								</c:choose>
+								<td>${fileOther.attachLength}</td>
+								<td>${fileOther.attachTypes}</td>
+								<td>
+									<c:forEach items="${fileOther.workAttachments}" var = "workAttachment" varStatus="status">
+										<a class="attention-info" href="javascript:void(0)" onclick="preview('预览','${workAttachment.url}','90%','90%')">${workAttachment.attachmentName} ; </a>
+									</c:forEach>
+								</td>
+								<td class="op-td">
+									<div class="op-btn-box" >
+										<a href="javascript:void(0)"  onclick="openBill2('编辑附件', '${ctx}/projectAccessory/projectAccessory/workAttachmentForm?attachmentId=${fileOther.id}&projectId=${projectRecords.id}','70%','80%',false,'inputForm','upTable_other')" class="op-btn op-btn-edit" ><i class="fa fa-edit"></i> 编辑</a>
+									</div>
+								</td>
+							</tr>
+						</c:forEach>
+						</tbody>
+					</table>
+				</div>
+			</div>
+			<script type="text/template" id="otherTpl">//<!--
+                <tr id="budgetList{{idx}}">
+                    <td class="hide">
+                        <input id="otherTpl{{idx}}_id" type="hidden" value="{{row.id}}" class="clientId"/>
+                    </td>
+                    <td class="hide">
+                        0
+                    </td>
+                    <td style="text-align:center;">
+                        {{row.attachName}}
+                    </td>
+                    <td style="text-align:center;">
+                        {{row.attachLength}}
+                    </td>
+                    <td style="text-align:center;">
+                        {{row.attachTypes}}
+                    </td>
+                    <td style="text-align:center;">
+
+                    </td>
+					<td class="op-td">
+						<div class="op-btn-box" >
+							<a href="javascript:void(0)"  onclick="openBill2('编辑附件', '${ctx}/projectAccessory/projectAccessory/workAttachmentForm?attachmentId={{row.id}}&projectId=${projectRecords.id}','70%','80%',false,'inputForm','upTable_other')" class="op-btn op-btn-edit" ><i class="fa fa-edit"></i> 编辑</a>
+						</div>
+					</td>
+                </tr>//-->
+			</script>
+		<div class="form-group layui-row page-end"></div>
+		</form:form>
+	</div>
+</div>
+<script>
+	function openBill2(title,url,width,height,target,formId,tableId){
+		var rows = $(this).parent().prevAll().length + 1;
+		var frameIndex = parent.layer.getFrameIndex(window.name);
+		var urls = url+"&index="+frameIndex;
+		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:"two-btns",
+			maxmin: false, //开启最大化最小化按钮
+			content: urls ,
+			btn: ['确定','关闭'],
+			yes: 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中展示
+				inputForm.attr("action","${ctx}/projectAccessory/projectAccessory/saveWorkAttachment");//表单提交成功后,从服务器返回的url在当前tab中展示
+				var $document = iframeWin.contentWindow.document;
+
+				formSubmit2($document,formId,index,tableId);
+
+			},
+			cancel: function(index){
+			},
+			end:function () {
+				var reviewFee = $("#reviewFee").val();
+				$("#"+tableId).load(location.href+"&reviewFee="+reviewFee + " #"+tableId);
+			}
+		});
+	}
+	function formSubmit2($document,inputForm,index,tableId){
+
+		var validateForm = $($document.getElementById(inputForm)).validate({
+			submitHandler: function(form){
+				loading('正在提交,请稍等...');
+				form.submit();
+			},
+			errorContainer: "#messageBox",
+			errorPlacement: function(error, element) {
+				$($document.getElementById("#messageBox")).text("输入有误,请先更正。");
+				if (element.is(":checkbox")||element.is(":radio")||element.parent().is(".input-append")){
+					error.appendTo(element.parent().parent());
+				} else {
+					error.insertAfter(element);
+				}
+			}
+		});
+		if(validateForm.form()){
+			$($document.getElementById(inputForm)).ajaxSubmit({
+				success:function(data) {
+					var d = data;
+					//输出提示信息
+					if(d.str.length>0){
+						parent.layer.msg(d.str,{icon:1});
+					}
+					var reviewFee = $("#reviewFee").val();
+					$("#"+tableId).load(location.href+"&reviewFee="+reviewFee + " #"+tableId);
+					//关闭当前页
+					top.layer.close(index)
+				}
+			});
+		}
+	}
+
+
+	//新增行方法
+	var fileAttachmentTpl = $("#fileAttachmentTpl").html().replace(/(\/\/\<!\-\-)|(\/\/\-\->)/g,"");
+	var gistdataTpl = $("#gistdataTpl").html().replace(/(\/\/\<!\-\-)|(\/\/\-\->)/g,"");
+	var otherTpl = $("#otherTpl").html().replace(/(\/\/\<!\-\-)|(\/\/\-\->)/g,"");
+
+	function formAttachment(title,url,width,height,target,formId,divId){
+		var rows = $(this).parent().prevAll().length + 1;
+		var frameIndex = parent.layer.getFrameIndex(window.name);
+		var urls = url;
+		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:"two-btns",
+			maxmin: false, //开启最大化最小化按钮
+			content: urls ,
+			btn: ['确定','关闭'],
+			yes: 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;
+				inputForm.attr("action","${ctx}/projectTemplate/projectTemplate/getProjectTemplateInfo");//表单提交成功后,从服务器返回的url在当前tab中展示
+				var $document = iframeWin.contentWindow.document;
+				formSubmitAjax($document,formId,index,divId);
+
+			},
+			cancel: function(index){
+			}
+		});
+	}
+	function formSubmitAjax($document,inputForm,index,divId){
+		var validateForm = $($document.getElementById(inputForm)).validate({
+			submitHandler: function(form){
+				loading('正在提交,请稍等...');
+				form.submit();
+			},
+			errorContainer: "#messageBox",
+			errorPlacement: function(error, element) {
+				$($document.getElementById("#messageBox")).text("输入有误,请先更正。");
+				if (element.is(":checkbox")||element.is(":radio")||element.parent().is(".input-append")){
+					error.appendTo(element.parent().parent());
+				} else {
+					error.insertAfter(element);
+				}
+			}
+		});
+		if(validateForm.form()){
+			$($document.getElementById(inputForm)).ajaxSubmit({
+				success:function(data) {
+					if(!data.success){
+						top.layer.msg("保存依据资料信息异常!",{icon:2});
+						return false;
+					}
+					var idx = ''
+					if(divId == 'file_attachment'){
+						idx = $("#file_attachment tr").length;
+						addRowBaseData("#file_attachment",idx,fileAttachmentTpl,data.body.projectAccessoryInfo);
+					}else if(divId == 'file_gistdata'){
+						idx = $("#file_gistdata tr").length;
+						addRowBaseData("#file_gistdata",idx,gistdataTpl,data.body.projectAccessoryInfo);
+					}else if(divId == 'file_other'){
+						idx = $("#file_other tr").length;
+						addRowBaseData("#file_other",idx,otherTpl,data.body.projectAccessoryInfo);
+					}
+					parent.layer.msg(data.msg,{icon:1});
+					top.layer.close(index)
+				}
+			});
+		}
+	}
+
+
+	function hasInArr(id,idArr) {
+		for(var i=0;i<idArr.length;i++){
+			if(id==$(idArr[i]).val()){
+				return true;
+			}
+		}
+		return false;
+	}
+	function existBaseData(id,length) {
+		for (var i=0;i<length;i++) {
+			var val = $('#file_attachment'+i+'_id').val();
+			if(id==val){
+				return true;
+			}
+		}
+		return false;
+	}
+
+	function addRowBaseData(list, idx, tpl, row){
+		bornTemplete(list, idx, tpl, row, idx);
+	}
+
+	function bornTemplete(list, idx, tpl, row, idx1){
+		var idx1 = '';
+		if(list == 'file_attachment'){
+			idx1 = $("#file_attachment tr").length +1;
+		}else if(list == 'file_gistdata'){
+			idx1 = $("#file_gistdata tr").length +1;
+		}else if(list == 'file_other'){
+			idx1 = $("#file_other tr").length +1;
+		}
+
+		$(list).append(Mustache.render(tpl, {
+			idx: idx, delBtn: true, row: row,
+			order:idx1 + 1, idx1:idx1
+		}));
+		$(list+idx).find("select").each(function(){
+			$(this).val($(this).attr("data-value"));
+		});
+		$(list+idx).find("input[type='checkbox'], input[type='radio']").each(function(){
+			var ss = $(this).attr("data-value").split(',');
+			for (var i=0; i<ss.length; i++){
+				if($(this).val() == ss[i]){
+					$(this).attr("checked","checked");
+				}
+			}
+		});
+	}
+	function delRowBaseData(obj, prefix,userId){
+		var id = $(prefix+"_id").val();
+		var currentUser = '${fns:getUser().id}';
+		var contentId = '${projectcontentinfo.projectContentData.id}';
+		console.log(contentId);
+		var condition = "${flag}";
+		$.ajax({
+			type:"post",
+			url:'${ctx}/projectcontentinfo/projectContentData/ajaxdelete',
+			data:{"contentId":contentId,"basedId":id,"condition":condition},
+			dataType:"json",
+			success:function(data){
+				if(data.success) {
+					if("according" == condition || "completion" == condition || "early" == condition || "claim" == condition || "design" == condition || "visa" == condition || "interim" == condition || "distribution" == condition || "material" == condition || "armor" == condition ){
+						$(obj).parent().parent().remove();
+					}else{
+						$(obj).parent().parent().remove();
+					}
+					if(data.body.inuse){
+						return;
+					}
+					if (currentUser == userId) {
+						confirmDelete('是否同步删除资料库的文件?','${ctx}/projectcontentinfo/projectcontentinfo/delete?infoId='+id+'&id=${projectcontentinfo.id}&type=1');
+					}
+				}else {
+					top.layer.msg("删除依据资料失败!", {icon: 0});
+				}
+			}
+		})
+		return;
+	}
+
+	function delBaseData(obj, prefix,userId){
+		var id = $(prefix+"_id").val();
+		var currentUser = '${fns:getUser().id}';
+		var contentId = '${projectcontentinfo.projectContentData.id}';
+		console.log(contentId);
+		var condition = "${flag}";
+		$.ajax({
+			type:"post",
+			url:'${ctx}/projectcontentinfo/projectContentData/ajaxdelete',
+			data:{"contentId":contentId,"basedId":id,"condition":condition},
+			dataType:"json",
+			success:function(data){
+				if(data.success) {
+					if("according" == condition || "completion" == condition || "early" == condition || "claim" == condition || "design" == condition || "visa" == condition || "interim" == condition || "distribution" == condition || "material" == condition || "armor" == condition ){
+						$(obj).parent().parent().parent().remove();
+					}else{
+						$(obj).parent().parent().remove();
+					}
+					if(data.body.inuse){
+						return;
+					}
+					if (currentUser == userId) {
+						confirmDelete('是否同步删除资料库的文件?','${ctx}/projectcontentinfo/projectcontentinfo/delete?infoId='+id+'&id=${projectcontentinfo.id}&type=1');
+					}
+				}else {
+					top.layer.msg("删除依据资料失败!", {icon: 0});
+				}
+			}
+		})
+		return;
+	}
+
+	function confirmDelete(mess, href){
+		top.layer.confirm(mess, {icon: 3, title:'系统提示'}, function(index){
+			//do something
+			if (typeof href == 'function') {
+				href();
+			}else{
+				$.ajax({
+					url:href,
+					type:"post",
+					success:function(data){
+						if(data.success){
+							top.layer.msg("删除依据资料成功!", {icon: 0});
+						}
+					}
+				});
+			}
+			top.layer.close(index);
+		});
+		return false;
+	}
+</script>
+</body>
+</html>