|
@@ -0,0 +1,543 @@
|
|
|
+<%@ page contentType="text/html;charset=UTF-8" %>
|
|
|
+<%@ include file="/webpage/include/taglib.jsp"%>
|
|
|
+<html>
|
|
|
+<head>
|
|
|
+ <title>项目管理</title>
|
|
|
+ <meta name="decorator" content="default"/>
|
|
|
+ <script type="text/javascript" src="${ctxStatic}/helloweba_editable-select/jquery.editable-select.min.js"></script>
|
|
|
+ <script type="text/javascript" src="${ctxStatic}/iCheck/icheck.min.js"></script>
|
|
|
+ <script type="text/javascript" src="${ctxStatic}/layui/layuidown.js"></script>
|
|
|
+ <script src="${ctxStatic}/common/html/js/script.js"></script>
|
|
|
+ <link rel='stylesheet' type="text/css" href="${ctxStatic}/layui/layuidown.css"/>
|
|
|
+ <link rel='stylesheet' type="text/css" href="${ctxStatic}/helloweba_editable-select/jquery.editable-select.min.css"/>
|
|
|
+ <style>
|
|
|
+ #projectDesc-error{
|
|
|
+ left:0;
|
|
|
+ top:82px;
|
|
|
+ }
|
|
|
+ .layui-layer-dialog{
|
|
|
+ background: red;
|
|
|
+ }
|
|
|
+ td input{
|
|
|
+ margin-left:0px !important;
|
|
|
+ height: 42px !important;
|
|
|
+ }
|
|
|
+ .disables {
|
|
|
+ pointer-events: none;
|
|
|
+ }
|
|
|
+ .notDisables {
|
|
|
+ pointer-events: all;
|
|
|
+ }
|
|
|
+ .forbidden{
|
|
|
+ background-color:#c2c2c2;
|
|
|
+ }
|
|
|
+
|
|
|
+ .notForbidden{
|
|
|
+ background-color:#3ca2e0;
|
|
|
+ }
|
|
|
+ .spanzj{
|
|
|
+ color:red;
|
|
|
+ font-size: 12px;
|
|
|
+ padding-left: 10px;
|
|
|
+ }
|
|
|
+ #workInvoiceProjectRelationList td{
|
|
|
+ padding-left: 0px;
|
|
|
+ padding-right: 0px;
|
|
|
+ }
|
|
|
+ </style>
|
|
|
+ <script type="text/javascript">
|
|
|
+ var validateForm;
|
|
|
+ var isMasterClient = true;//是否是委托方
|
|
|
+ var clientCount = 0;
|
|
|
+ function doSubmit(i){//回调函数,在编辑和保存动作时,供openDialog调用提交表单。
|
|
|
+ if(validateForm.form()){
|
|
|
+
|
|
|
+ if(i==2){
|
|
|
+ $("#inputForm").attr("action","${ctx}/sealApplyFor/sealApplyFor/tstore");
|
|
|
+ }else if(i==1){
|
|
|
+ var size = $("#workInvoiceProjectRelationList tr").length;
|
|
|
+ if(size < 1){
|
|
|
+ parent.layer.msg("项目信息至少存在一条!", {icon: 5});
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ var size2 = $("#sealMaterialInfoList tr").length;
|
|
|
+ if(size2 < 1){
|
|
|
+ parent.layer.msg("盖章文件至少存在一条!", {icon: 5});
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ console.log('size2', size2)
|
|
|
+ console.log('size', size)
|
|
|
+ if (size<size2){
|
|
|
+ parent.layer.msg("盖章文件数量不能大于项目信息数量!", {icon: 5});
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ // var val = $("#workInvoiceProjectRelationList").find("tr").eq(0).find("input").eq(6).val();
|
|
|
+ // console.log('val', val)
|
|
|
+ // var delFlag = $("#workInvoiceProjectRelationList").find("tr").eq(0).find("input").eq(1).val();
|
|
|
+ // console.log('delFlag', delFlag)
|
|
|
+ // var val2 = $("#sealMaterialInfoList").find("tr").eq(0).find("input").eq(3).val();
|
|
|
+ // console.log('val2', val2)
|
|
|
+ var arr = [];
|
|
|
+ for (var j=0;j<size2;j++){
|
|
|
+ var val = $("#sealMaterialInfoList").find("tr").eq(j).find("input").eq(3).val();
|
|
|
+ arr.push(val);
|
|
|
+ }
|
|
|
+ console.log('arr', arr)
|
|
|
+ for (var i = 0; i < size; i++) {
|
|
|
+ // var delFlag = $("#workInvoiceProjectRelationList").val()
|
|
|
+ var val = $("#workInvoiceProjectRelationList").find("tr").eq(i).find("input").eq(6).val();
|
|
|
+ if (arr.includes(val)){
|
|
|
+
|
|
|
+ }else {
|
|
|
+ parent.layer.msg("盖章文件的报告号必须与项目信息的报告号相同!", {icon: 5});
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ $("#inputForm").submit();
|
|
|
+ return true;
|
|
|
+ }else{
|
|
|
+ parent.layer.msg("信息未填写完整!", {icon: 5});
|
|
|
+ }
|
|
|
+
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ $(document).ready(function() {
|
|
|
+ layui.use(['dropdown', 'util','form', 'layer'], function () {
|
|
|
+ var form = layui.form;
|
|
|
+ var dropdown = layui.dropdown
|
|
|
+ ,util = layui.util
|
|
|
+ ,layer = layui.layer
|
|
|
+ ,$ = layui.jquery;
|
|
|
+ });
|
|
|
+ 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);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ });
|
|
|
+
|
|
|
+ function setValue(obj){
|
|
|
+ if(location.href.includes("?")){
|
|
|
+ $("#upTable").load(location.href+"&projectId="+obj + " #upTable");
|
|
|
+ }else{
|
|
|
+ $("#upTable").load(location.href+"?projectId="+obj + " #upTable");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ function genRow(data) {
|
|
|
+ for (var i = 0; i < data.length; i++) {
|
|
|
+ addRow1('#sealMaterialInfoList', sealMaterialInfoListRowIdx, sealMaterialInfoListTpl, data[i])
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ function addRow1(list, idx, tpl, row){
|
|
|
+ var idx1 = $("#sealMaterialInfoList tr").length;
|
|
|
+ if(list == '#sealMaterialInfoList'){
|
|
|
+ bornTemplete1(list, idx, tpl, row, idx1);
|
|
|
+ sealMaterialInfoListRowIdx+=1;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ function addRow2(list, idx, tpl, row){
|
|
|
+ var idx1 = $("#workInvoiceProjectRelationList tr").length;
|
|
|
+ if(idx1>0){
|
|
|
+ var count=0;
|
|
|
+ for (var i=1;i<=idx1;i++) {
|
|
|
+ var delFlag = $("#workInvoiceProjectRelationList").find("tr").eq(i-1).find("input").eq(1).val();
|
|
|
+ if (delFlag == "1") {
|
|
|
+ count = i;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // if (idx1>1){
|
|
|
+ // for (var i = 0; i <= idx1; i++) {
|
|
|
+ // // var delFlag = $("#workInvoiceProjectRelationList").val()
|
|
|
+ // var val = $("#workInvoiceProjectRelationList").find("tr").eq(i).find("input").eq(6).val();
|
|
|
+ // for (var j = i+1; j <= idx1; j++) {
|
|
|
+ // // var delFlag = $("#workInvoiceProjectRelationList").val()
|
|
|
+ // var val2 = $("#workInvoiceProjectRelationList").find("tr").eq(j).find("input").eq(6).val();
|
|
|
+ // if (val === val2){
|
|
|
+ //
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+
|
|
|
+ }
|
|
|
+ if(list == '#workInvoiceProjectRelationList'){
|
|
|
+ bornTemplete1(list, idx, tpl, row, idx1);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ function bornTemplete1(list, idx, tpl, row, idx1){
|
|
|
+ $(list).append(Mustache.render(tpl, {
|
|
|
+ idx: idx, delBtn: true, row: row,
|
|
|
+ order:idx1 + 1
|
|
|
+ }));
|
|
|
+ $(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 delRow(obj, prefix) {
|
|
|
+ var id = $(prefix + "_invoiceId");
|
|
|
+ var delFlag = $(prefix + "_delFlag");
|
|
|
+ if (id.val() == "") {
|
|
|
+ $(obj).parent().parent().remove();
|
|
|
+ } else if (delFlag.val() == "0") {
|
|
|
+ delFlag.val("1");
|
|
|
+ $(obj).html("÷").attr("title", "撤回删除");
|
|
|
+ $(obj).parent().parent().addClass("error");
|
|
|
+ $(obj).parent().parent().addClass("hide");
|
|
|
+ } else if (delFlag.val() == "1") {
|
|
|
+ delFlag.val("0");
|
|
|
+ $(obj).html("×").attr("title", "删除");
|
|
|
+ $(obj).parent().parent().removeClass("error");
|
|
|
+ }
|
|
|
+ var length=$("#projectMaterialStorageList tr").length;
|
|
|
+ var count=length;
|
|
|
+ for (var i=1;i<=length;i++) {
|
|
|
+ var delFlag = $("#projectMaterialStorageList").find("tr").eq(i-1).find("input").eq(1).val();
|
|
|
+ if (delFlag == "1") {
|
|
|
+ count =count-1;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(count==1){
|
|
|
+ $("#chargeType").val("2")
|
|
|
+ layui.form.render();
|
|
|
+ }else if (count>1){
|
|
|
+ $("#chargeType").val("1")
|
|
|
+ layui.form.render();
|
|
|
+ }else if(count == 0){
|
|
|
+ $("#projectFlag").val("");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ function delRow2(obj, prefix) {
|
|
|
+ var id = $(prefix + "_invoiceId");
|
|
|
+ var delFlag = $(prefix + "_delFlag");
|
|
|
+ if (id.val() == "") {
|
|
|
+ $(obj).parent().parent().remove();
|
|
|
+ } else if (delFlag.val() == "0") {
|
|
|
+ delFlag.val("1");
|
|
|
+ $(obj).html("÷").attr("title", "撤回删除");
|
|
|
+ $(obj).parent().parent().addClass("error");
|
|
|
+ $(obj).parent().parent().addClass("hide");
|
|
|
+ } else if (delFlag.val() == "1") {
|
|
|
+ delFlag.val("0");
|
|
|
+ $(obj).html("×").attr("title", "删除");
|
|
|
+ $(obj).parent().parent().removeClass("error");
|
|
|
+ }
|
|
|
+ var length=$("#workInvoiceProjectRelationList tr").length;
|
|
|
+ var count=length;
|
|
|
+ for (var i=1;i<=length;i++) {
|
|
|
+ var delFlag = $("#workInvoiceProjectRelationList").find("tr").eq(i-1).find("input").eq(1).val();
|
|
|
+ if (delFlag == "1") {
|
|
|
+ count =count-1;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ function num(obj){
|
|
|
+ obj.value = obj.value.replace(/[^\d]/g,""); //清除"数字"以外的字符
|
|
|
+ }
|
|
|
+
|
|
|
+ function newSetPNumber(obj,ids){
|
|
|
+ var idx=ids.split("_")[0]
|
|
|
+ var idArray= new Array(); //定义一数组
|
|
|
+ idArray=obj.split(","); //字符分割
|
|
|
+ console.log('idArray',idArray)
|
|
|
+
|
|
|
+ for (var k=0;k<idArray.length ;k++ )
|
|
|
+ {
|
|
|
+ $.ajax({
|
|
|
+ async:false,
|
|
|
+ type:'post',
|
|
|
+ url:'${ctx}/sealApplyFor/sealApplyFor/getPNumber',
|
|
|
+ data:{
|
|
|
+ "obj":idArray[k]
|
|
|
+ },
|
|
|
+ success:function(data){
|
|
|
+ if(k>=1){
|
|
|
+ var row = workInvoiceProjectRelationListRowIdx;
|
|
|
+ addRow2('#workInvoiceProjectRelationList', workInvoiceProjectRelationListRowIdx, workInvoiceProjectRelationListTpl, data[k])
|
|
|
+ workInvoiceProjectRelationListRowIdx = workInvoiceProjectRelationListRowIdx + 1;
|
|
|
+ var d = JSON.parse(data);
|
|
|
+ var projectReportDataNumber="#workInvoiceProjectRelationList"+row+"_projectReportDataNumber";
|
|
|
+ var projectName="#workInvoiceProjectRelationList"+row+"_projectIdName";
|
|
|
+ var projectId="#workInvoiceProjectRelationList"+row+"_projectId";
|
|
|
+ var createByName="#workInvoiceProjectRelationList"+row+"_createByName";
|
|
|
+ var createById="#workInvoiceProjectRelationList"+row+"_createById";
|
|
|
+ var projectMasterName="#workInvoiceProjectRelationList"+row+"_projectMasterName";
|
|
|
+ var startDate="#workInvoiceProjectRelationList"+row+"_startDate";
|
|
|
+ var endingDate="#workInvoiceProjectRelationList"+row+"_endingDate";
|
|
|
+ $(projectMasterName).val(d.projectMasterName);
|
|
|
+ $(startDate).val(d.startDate);
|
|
|
+ $(endingDate).val(d.endingDate);
|
|
|
+ $(projectName).val(d.projectName);
|
|
|
+ $(createByName).val(d.createByName);
|
|
|
+ $(createById).val(d.createById);
|
|
|
+ $(projectId).val(d.projectId);
|
|
|
+ $(projectReportDataNumber).val(d.reportDataNum);
|
|
|
+ }else{
|
|
|
+ var d = JSON.parse(data);
|
|
|
+ var projectReportDataNumber="#"+idx+"_projectReportDataNumber";
|
|
|
+ var projectName="#"+idx+"_projectIdName";
|
|
|
+ var projectId="#"+idx+"_projectId";
|
|
|
+ var createByName="#"+idx+"_createByName";
|
|
|
+ var createById="#"+idx+"_createById";
|
|
|
+ var projectMasterName="#"+idx+"_projectMasterName";
|
|
|
+ var startDate="#"+idx+"_startDate";
|
|
|
+ var endingDate="#"+idx+"_endingDate";
|
|
|
+ $(projectMasterName).val(d.projectMasterName);
|
|
|
+ $(startDate).val(d.startDate);
|
|
|
+ $(endingDate).val(d.endingDate);
|
|
|
+ $(projectName).val(d.projectName);
|
|
|
+ console.log('d.projectId', d.id)
|
|
|
+ $(projectId).val(d.projectId);
|
|
|
+ $(createByName).val(d.createByName);
|
|
|
+ $(createById).val(d.createById);
|
|
|
+ $(projectReportDataNumber).val(d.reportDataNum);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ </script>
|
|
|
+</head>
|
|
|
+<body>
|
|
|
+<div class="single-form">
|
|
|
+ <div class="container">
|
|
|
+ <sys:message content="${message}"/>
|
|
|
+ <form:form id="inputForm" modelAttribute="sealApplyForInfo" action="${ctx}/sealApplyFor/sealApplyFor/save" method="post" class="form-horizontal layui-form">
|
|
|
+ <form:hidden path="id"/>
|
|
|
+ <input type="hidden" id="flagFile" value="">
|
|
|
+
|
|
|
+ <%--<div id="upTable" class="form-group layui-row first">
|
|
|
+ <div class="form-group layui-row first">
|
|
|
+ <div class="form-group-label"><h2>项目基础信息</h2></div>
|
|
|
+ <div class="layui-item layui-col-sm6 lw6">
|
|
|
+ <label class="layui-form-label"><span class="require-item">*</span>项目名称:</label>
|
|
|
+ <div class="layui-input-block with-icon">
|
|
|
+ <sys:gridselectcallproject url="${ctx}/sealApplyFor/sealApplyFor/selectprojectOnList" id="projectRecords" name="projectRecords.id" value="${sealApplyForInfo.projectRecords.id}" title="选择所属项目" labelName="projectRecords.projectName" cssStyle="background-color:#fff"
|
|
|
+ labelValue="${sealApplyForInfo.projectRecords.projectName}" cssClass="form-control required layui-input" fieldLabels="项目" fieldKeys="projectName" searchLabel="项目名称" searchKey="projectName" ></sys:gridselectcallproject>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div class="layui-item layui-col-sm6 lw6">
|
|
|
+ <label class="layui-form-label">报告号:</label>
|
|
|
+ <div class="layui-input-block">
|
|
|
+ <input id="projectReportDataNumber" htmlEscape="false" readonly="true" class="form-control layui-input" style="background-color: #f1f1f1" value="${sealApplyForInfo.projectRecords.projectReportNumber}"/>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="layui-item layui-col-sm6 lw6">
|
|
|
+ <label class="layui-form-label">项目所在地:</label>
|
|
|
+ <div class="layui-input-block">
|
|
|
+ <input id="area" htmlEscape="false" style="background-color: #f1f1f1" readonly="true" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.province}-${sealApplyForInfo.projectRecords.city}-${sealApplyForInfo.projectRecords.county}"/>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="layui-item layui-col-sm6 lw6">
|
|
|
+ <label class="layui-form-label">创建人:</label>
|
|
|
+ <div class="layui-input-block">
|
|
|
+ <input htmlEscape="false" style="background-color: #f1f1f1" readonly="true" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.createBy.name}"/>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="layui-item layui-col-sm6 lw6">
|
|
|
+ <label class="layui-form-label">盖章审核人:</label>
|
|
|
+ <div class="layui-input-block">
|
|
|
+ <input htmlEscape="false" style="background-color: #f1f1f1" readonly="true" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.reviewerPerson}"/>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="layui-item layui-col-sm6 lw6">
|
|
|
+ <label class="layui-form-label">项目负责人:</label>
|
|
|
+ <div class="layui-input-block">
|
|
|
+ <input htmlEscape="false" style="background-color: #f1f1f1" readonly="true" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.projectMasterName}"/>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="layui-item layui-col-sm6 lw6">
|
|
|
+ <label class="layui-form-label double-line">工作开始日期:</label>
|
|
|
+ <div class="layui-input-block">
|
|
|
+ <input class="laydate-icondate form-control layui-input layer-date ash" style="background-color: #f1f1f1" readonly="true" id="startDate" name="startDate" value="<fmt:formatDate value="${sealApplyForInfo.projectRecords.startDate}" pattern="yyyy-MM-dd"/>">
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="layui-item layui-col-sm6 lw6">
|
|
|
+ <label class="layui-form-label double-line">工作结束日期:</label>
|
|
|
+ <div class="layui-input-block">
|
|
|
+ <input class="laydate-icondate form-control layui-input layer-date " style="background-color: #f1f1f1" readonly="true" id="endingDate" name="endingDate" value="<fmt:formatDate value="${sealApplyForInfo.projectRecords.endingDate}" pattern="yyyy-MM-dd"/>">
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>--%>
|
|
|
+ <div class="form-group layui-row">
|
|
|
+ <div class="form-group-label"><h2>项目基础信息</h2></div>
|
|
|
+ <div class="layui-item nav-btns">
|
|
|
+ <a class="nav-btn nav-btn-add" onclick="addRow2('#workInvoiceProjectRelationList', workInvoiceProjectRelationListRowIdx, workInvoiceProjectRelationListTpl);workInvoiceProjectRelationListRowIdx = workInvoiceProjectRelationListRowIdx + 1;" title="新增"><i class="fa fa-plus"></i> 新增</a>
|
|
|
+ </div>
|
|
|
+ <div class="layui-table-body layui-item layui-col-xs12 form-table-container" style="padding:0px">
|
|
|
+ <table id="contentTables2" class="table table-bordered table-condensed can-edit no-bottom-margin details">
|
|
|
+ <thead>
|
|
|
+ <tr>
|
|
|
+ <th width="300px"><font color="red">*</font>项目名称</th>
|
|
|
+ <th width="250px">报告号</th>
|
|
|
+ <th width="80px">创建人</th>
|
|
|
+ <th width="80px">项目负责人</th>
|
|
|
+ <th width="150px">工作开始日期</th>
|
|
|
+ <th width="150px">工作结束日期</th>
|
|
|
+ <th >操作</th>
|
|
|
+ </tr>
|
|
|
+ </thead>
|
|
|
+ <tbody id="workInvoiceProjectRelationList">
|
|
|
+ </tbody>
|
|
|
+ </table>
|
|
|
+ <script type="text/template" id="workInvoiceProjectRelationListTpl">//<!--
|
|
|
+ <tr id="workInvoiceProjectRelationList{{idx}}">
|
|
|
+ <td class="hide">
|
|
|
+ <input id="workInvoiceProjectRelationList{{idx}}_projectId" name="workInvoiceProjectRelationList[{{idx}}].projectId" type="hidden" value="{{row.projectId}}"/>
|
|
|
+ <input id="workInvoiceProjectRelationList{{idx}}_delFlag" name="workInvoiceProjectRelationList[{{idx}}].delFlag" type="hidden" value="0"/>
|
|
|
+ <input id="workInvoiceProjectRelationList{{idx}}_createById" name="workInvoiceProjectRelationList[{{idx}}].createById" type="hidden" value="{{row.createById}}"/>
|
|
|
+ <input id="workInvoiceProjectRelationList{{idx}}_projectMasterId" name="workInvoiceProjectRelationList[{{idx}}].projectMasterId" type="hidden" value="{{row.projectMasterId}}"/>
|
|
|
+ </td>
|
|
|
+ <td>
|
|
|
+ <sys:gridselectcallproject2 url="${ctx}/sealApplyFor/sealApplyFor/selectprojectOnList" id="workInvoiceProjectRelationList{{idx}}_projectId" name="workInvoiceProjectRelationList{{idx}}.projectId" value="{{row.projectId}}" title="选择所属项目" labelName="workInvoiceProjectRelationList[{{idx}}].projectName" cssStyle="background-color:#fff"
|
|
|
+ labelValue="{{row.projectName}}" cssClass="form-control required layui-input" fieldLabels="项目" fieldKeys="projectName" searchLabel="项目名称" searchKey="projectName" ></sys:gridselectcallproject2>
|
|
|
+ </td>
|
|
|
+ <td style="text-align:center;">
|
|
|
+ <input id="workInvoiceProjectRelationList{{idx}}_projectReportDataNumber" name="workInvoiceProjectRelationList[{{idx}}].projectReportDataNumber" title="报告号" type="text" value="{{row.reportDataNum}}" readonly="readonly" class="form-control"/>
|
|
|
+ </td>
|
|
|
+ <td>
|
|
|
+ <input id="workInvoiceProjectRelationList{{idx}}_createByName" title="创建人" name="workInvoiceProjectRelationList[{{idx}}].createByName" type="text" value="{{row.createByName}}" readonly="readonly" class="form-control"/>
|
|
|
+ </td>
|
|
|
+ <td>
|
|
|
+ <input id="workInvoiceProjectRelationList{{idx}}_projectMasterName" title="项目负责人" name="workInvoiceProjectRelationList[{{idx}}].projectMasterName" type="text" value="{{row.projectMasterName}}" readonly="readonly" class="form-control"/>
|
|
|
+ </td>
|
|
|
+ <td>
|
|
|
+ <input id="workInvoiceProjectRelationList{{idx}}_startDate" title="工作开始日期" name="workInvoiceProjectRelationList[{{idx}}].startDate" type="text" value="{{row.startDate}}" readonly="readonly" class="form-control"/>
|
|
|
+ </td>
|
|
|
+ <td>
|
|
|
+ <input id="workInvoiceProjectRelationList{{idx}}_endingDate" title="工作结束日期" name="workInvoiceProjectRelationList[{{idx}}].endingDate" type="text" value="{{row.endingDate}}" readonly="readonly" class="form-control"/>
|
|
|
+ </td>
|
|
|
+ <td class="text-center op-td" >
|
|
|
+ {{#delBtn}}<span class="op-btn op-btn-delete" onclick="delRow2(this, '#workInvoiceProjectRelationList{{idx}}')" title="删除"><i class="glyphicon glyphicon-remove"></i> 删除</span>{{/delBtn}}
|
|
|
+ </td>
|
|
|
+ </tr>//-->
|
|
|
+ </script>
|
|
|
+ <script type="text/javascript">
|
|
|
+ var workInvoiceProjectRelationListRowIdx = 0, workInvoiceProjectRelationListTpl = $("#workInvoiceProjectRelationListTpl").html().replace(/(\/\/\<!\-\-)|(\/\/\-\->)/g,"");
|
|
|
+ /*if($("#id").val()){
|
|
|
+ workInvoiceProjectRelationListRowIdx = ${fn:length(workInvoice.workInvoiceProjectRelationList)};
|
|
|
+ }*/
|
|
|
+ $(document).ready(function() {
|
|
|
+ var data = ${fns:toJson(sealApplyForInfo.workInvoiceProjectRelationList)};
|
|
|
+ for (var i=0; i<data.length; i++){
|
|
|
+ addRow2('#workInvoiceProjectRelationList', workInvoiceProjectRelationListRowIdx, workInvoiceProjectRelationListTpl, data[i])
|
|
|
+ workInvoiceProjectRelationListRowIdx = workInvoiceProjectRelationListRowIdx + 1;
|
|
|
+ }
|
|
|
+ });
|
|
|
+ </script>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div class="form-group layui-row first">
|
|
|
+ <div class="form-group-label"><h2>盖章信息</h2></div>
|
|
|
+ <div class="layui-item layui-col-sm6">
|
|
|
+ <label class="layui-form-label"><span class="require-item">*</span>单位:</label>
|
|
|
+ <div class="layui-input-block">
|
|
|
+ <input type="radio" name="sealCompany" value="0" title="东兴" <c:if test="${sealApplyForInfo.sealCompany=='0'}">checked</c:if>>
|
|
|
+ <input type="radio" name="sealCompany" value="1" title="赣能" <c:if test="${sealApplyForInfo.sealCompany=='1'}">checked</c:if>>
|
|
|
+ <input type="radio" name="sealCompany" value="2" title="一达" <c:if test="${sealApplyForInfo.sealCompany=='2'}">checked</c:if>>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="layui-item layui-col-sm6 lw6 with-textarea">
|
|
|
+ <label class="layui-form-label ">盖章说明:</label>
|
|
|
+ <div class="layui-input-block">
|
|
|
+ <form:textarea path="remarks" placeholder="请输入盖章说明信息" id="remarks" htmlEscape="false" rows="4" maxlength="255" class="form-control "/>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div class="form-group layui-row">
|
|
|
+ <div class="layui-item nav-btns">
|
|
|
+ <a class="nav-btn nav-btn-add" onclick="addRow1('#sealMaterialInfoList', sealMaterialInfoListRowIdx, sealMaterialInfoListTpl);sealMaterialInfoListRowIdx = sealMaterialInfoListRowIdx + 1;" title="新增"><i class="fa fa-plus"></i> 新增</a>
|
|
|
+ <table:importExcelA url="${ctx}/seal/sealMaterial/import"></table:importExcelA><!-- 导入按钮 -->
|
|
|
+ </div>
|
|
|
+ <div class="layui-table-body layui-item layui-col-xs12 form-table-container" style="padding:0px">
|
|
|
+ <table id="contentTables" class="table table-bordered table-condensed can-edit no-bottom-margin details">
|
|
|
+ <thead>
|
|
|
+ <tr>
|
|
|
+ <th width="10%"><font color="red" >*</font>报告号</th>
|
|
|
+ <th width="10%"><font color="red" >*</font>盖章材料名称</th>
|
|
|
+ <th width="10%"><font color="red">*</font>份数</th>
|
|
|
+ <th width="40%">主要内容简述</th>
|
|
|
+ <th width="10%">经办人</th>
|
|
|
+ <th width="10%">备注</th>
|
|
|
+ <th width="10%">操作</th>
|
|
|
+ </tr>
|
|
|
+ </thead>
|
|
|
+ <tbody id="sealMaterialInfoList">
|
|
|
+ </tbody>
|
|
|
+ </table>
|
|
|
+ <script type="text/template" id="sealMaterialInfoListTpl">//<!--
|
|
|
+ <tr id="sealMaterialInfoList{{idx}}">
|
|
|
+ <td class="hide" >
|
|
|
+ <input id="sealMaterialInfoList{{idx}}_projectId" name="sealMaterialInfoList[{{idx}}].projectId" type="hidden" value="{{row.projectId}}"/>
|
|
|
+ <input id="sealMaterialInfoList{{idx}}_delFlag" name="sealMaterialInfoList[{{idx}}].delFlag" type="hidden" value="0"/>
|
|
|
+ <input id="sealMaterialInfoList{{idx}}_id" name="sealMaterialInfoList[{{idx}}].id" type="hidden" value="{{row.id}}"/>
|
|
|
+ </td>
|
|
|
+ <td style="padding:0px">
|
|
|
+ <input id="sealMaterialInfoList{{idx}}_reportNumber" name = "sealMaterialInfoList[{{idx}}].reportNumber" type="text" value="{{row.reportNumber}}" class="form-control" style="padding:0px;margin-left:0px;text-align:center;" required/>
|
|
|
+ </td>
|
|
|
+ <td style="padding:0px">
|
|
|
+ <input id="sealMaterialInfoList{{idx}}_sealMaterialName" name = "sealMaterialInfoList[{{idx}}].sealMaterialName" type="text" value="{{row.sealMaterialName}}" class="form-control" style="padding:0px;margin-left:0px;text-align:center;" required/>
|
|
|
+ </td>
|
|
|
+ <td style="padding:0px">
|
|
|
+ <input id="sealMaterialInfoList{{idx}}_amount" name = "sealMaterialInfoList[{{idx}}].amount" type="text" value="{{row.amount}}" onkeyup="num(this)" class="form-control" style="padding:0px;margin-left:0px;text-align:center;" required/>
|
|
|
+ </td>
|
|
|
+ <td style="padding:0px">
|
|
|
+ <input id="sealMaterialInfoList{{idx}}_mainContents" name = "sealMaterialInfoList[{{idx}}].mainContents" type="text" value="{{row.mainContents}}" class="form-control" style="padding:0px;margin-left:0px;text-align:center;"/>
|
|
|
+ </td>
|
|
|
+ <td style="padding:0px">
|
|
|
+ <input id="sealMaterialInfoList{{idx}}_agent" name = "sealMaterialInfoList[{{idx}}].agent.name" type="text" value="${sealMaterialInfo.agent.name}" class="form-control" style="padding:0px;margin-left:0px;text-align:center;" readonly="true"/>
|
|
|
+ </td>
|
|
|
+ <td style="padding:0px">
|
|
|
+ <input id="sealMaterialInfoList{{idx}}sealMaterialImportRemarks" name = "sealMaterialInfoList[{{idx}}].sealMaterialImportRemarks" type="text" value="{{row.sealMaterialImportRemarks}}" class="form-control" style="padding:0px;margin-left:0px;text-align:center;"/>
|
|
|
+ </td>
|
|
|
+ <td class="text-center op-td" style="padding:0px">
|
|
|
+ {{#delBtn}}<span class="op-btn op-btn-delete" onclick="delRow(this, '#sealMaterialInfoList{{idx}}')" title="删除"><i class="glyphicon glyphicon-remove" style="padding:0px;margin-left:0px;text-align:center;"></i> 删除</span>{{/delBtn}}
|
|
|
+ </td>
|
|
|
+ </tr>//-->
|
|
|
+ </script>
|
|
|
+ <script type="text/javascript">
|
|
|
+ var sealMaterialInfoListRowIdx = 0, sealMaterialInfoListTpl = $("#sealMaterialInfoListTpl").html().replace(/(\/\/\<!\-\-)|(\/\/\-\->)/g,"");
|
|
|
+ $(document).ready(function() {
|
|
|
+ var data = ${fns:toJson(sealMaterialInfo.sealMaterialInfoList)};
|
|
|
+ for (var i=0; i<data.length; i++){
|
|
|
+ addRow1('#sealMaterialInfoList', sealMaterialInfoListRowIdx, sealMaterialInfoListTpl, data[i])
|
|
|
+ }
|
|
|
+ });
|
|
|
+ </script>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ </div>
|
|
|
+ <div class="form-group layui-row page-end"></div>
|
|
|
+ </form:form>
|
|
|
+ </div>
|
|
|
+</div>
|
|
|
+</body>
|
|
|
+</html>
|