1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573 |
- var locat = (window.location+'').split('/');
- $(function(){if('fhsms'== locat[3]){locat = locat[0]+'//'+locat[2];}else{locat = locat[0]+'//'+locat[2]+'/'+locat[3];};});
- $(getTop(globalThis).hangge());
- var pd_ROLENAME = $('#pd_ROLENAME').html();
- var pd_mode = $('#pd_mode').html();
- var pd_TABLETYPE = $('#pd_TABLETYPE').html();
- var pd_COMPANY = $("input[name='COMPANY']").val();
- var pd_COMPANY_ID = $("input[name='COMPANY_ID']").val();
- var pd_YEAR = $("input[name='YEAR']").val();
- var pd_ROAD_ID = $("input[name='ROAD_ID']").val();
- var pd_ROAD = $("input[name='ROAD']").val();
- var pd_NAME = $('#pd_NAME').html();
- var pd_REPORTID = $('#REPORTID').html();
- var editflag = 0;
- var recordData = new Object();
- var recordBeforeValue = new Object();
- var sublistRecordData = new Object();
- var sublistRecordBeforeValue = new Object();
- var status = $('input[name="STATUS"]').val();
- var currStatus = status;
- var rocordInfoList = new Object();
- var sublistRecordInfoList = new Object();
- var validateJsonData = new Object();
- var labelsObj = new Object();
- var validateObj = new Object();
- var projectName = new Object();
- function tableInit(){
- //textarea替换
- $('textarea').hide();
- // $('textarea.bz').show();
- $('pre').show();
- //小计行的总计列
- // setTotalCell(0);
- //子表行总计各行初始化
- $('.sublisttr').each(function(index,e){
- setUnitTotalCell(e);
- });
- //小计行的总计列
- setTotalCell(0);
- setTotalCell(1);
- //重新计算工程估算
- if(pd_TABLETYPE == "highway_prevention_project_dettable" || pd_TABLETYPE == "highway_test_project_dettable"
- || pd_TABLETYPE == "highway_repair_project_dettable" || pd_TABLETYPE == "highway_special_project_dettable"){
- $('.PROJECT_COST').val($('.sumCell.TOTAL_COST').val());
- }
- setProjectScale();
- //数字格式化
- $("input.editInput").each(function(index,e){
- if($(e).attr('name')=='UNIT_PRICE'||$(e).attr('name')=='AUDIT_FEE'||$(e).attr('name')=='PROJECT_COST'
- ||$(e).attr('name')=='COSET'||$(e).attr('name')=='EXPENDITURE_COST'||$(e).attr('name')=='MQI'
- ||$(e).attr('name')=='PQI'||$(e).attr('name')=='SCI'||$(e).attr('name')=='BCI'||$(e).attr('name')=='TCI'
- ||$(e).attr('name')=='PCI'||$(e).attr('name')=='RQI'||$(e).attr('name')=='RDI'||$(e).attr('name')=='SRI'
- ||$(e).attr('name')=='PSSI'||$(e).attr('name')=='ONE_BRIDGE_PRO'||$(e).attr('name')=='TWO_BRIDGE_PRO'
- ||$(e).attr('name')=='THREE_BRIDGE_PRO'||$(e).attr('name')=='FOUR_BRIDGE_PRO'||$(e).attr('name')=='FIVE_BRIDGE_PRO'
- ||$(e).attr('name')=='TOTAL_COST'||$(e).attr('name')=='DAILY_COST'||$(e).attr('name')=='DAILY_KM_COST'
- ||$(e).hasClass('PLAN_COST')){
- var num = $(e).val();
- num = numFormat2(num);
- $(e).val(num);
- }
- });
- $('.PROJECT_COST').val(numFormat2($('.PROJECT_COST').val()));
- //留痕标红
- setRecordInfo();
- setSubRecordInfo();
- }
- function setTotalCell(index){
- if(index < $('.totaltr').find('.sumCell').length){
- var totalvalue = 0;
- for(var i=0; i<$('.sublisttr').length; i++){
- var editcellval = $('.sublisttr').eq(i).find('input[totalType="sum"]').eq(index).val();
- if(typeof(editcellval) != "undefined")
- totalvalue += Number(editcellval);
- }
- //单位 元——万元
- if(pd_TABLETYPE != 'highway_scientific_project_dettable') totalvalue = totalvalue/10000;
- $('.totaltr').find('.sumCell').eq(index).val(numFormat2(totalvalue) + '');
- }
- }
- function editTable(){
- if(editflag == 0){
- $('#editbutton').html('编辑中');
- $("#savebutton").removeAttr("disabled");
- $("select.editInput").removeAttr("disabled");
- $(".keyWordsCheckbox").removeAttr("disabled");
- //工程费用估算清单 增加、删除 按钮
- $("#removeRow").css('display','block');
- $("#addRow").css('display','block');
- // if(pd_ROLENAME != '控股集团管理员'){
- // $("input.editInput:not(.AUDIT_FEE)").removeAttr("readonly");
- // $("textarea.editInput:not(.AUDIT_MAKER)").removeAttr("readonly");
- // //textarea替换
- // $('textarea:not(.AUDIT_MAKER)').show();
- // $('pre:not(.AUDIT_MAKER)').hide();
- // }else{
- // $("input.editInput").removeAttr("readonly");
- // $("textarea.editInput").removeAttr("readonly");
- // //textarea替换
- // $('textarea').show();
- // $('pre').hide();
- // }
- $("input.editInput").removeAttr("readonly");
- $("textarea.editInput").removeAttr("readonly");
- //textarea替换
- $('textarea').show();
- $('textarea.bz').css('display','none');
- $('pre').hide();
- editflag = 1;
- }else if(editflag == 1){
- $('#editbutton').html('编辑');
- $("#savebutton").attr("disabled","disabled");
- $("input.editInput").attr("readonly","readonly" );
- $("textarea.editInput").attr("readonly","readonly" );
- $("select.editInput").attr("disabled","disabled" );
- $(".keyWordsCheckbox").attr("disabled","disabled" );
- //textarea替换
- $('textarea').hide();
- // $('textarea.bz').show();
- $('textarea').each(function(index,e){
- $(e).parent().find('pre').html($(e).val());
- })
- $('pre').show();
- editflag = 0;
- }
- }
- function changeTableName(name){
- if($('.editInput.PROJECT_NAME').val()!=''){
- var projectName = name + "---" + $('.PROJECT_NAME').val();
- $.ajax({
- type : "get",
- url : locat+'/annualPlan/changeTableName.do?TABLETYPE='+pd_TABLETYPE+'&COMPANY_ID='+pd_COMPANY_ID+'&YEAR='+pd_YEAR+'&ROAD_ID='+pd_ROAD_ID
- +'&COMPANY='+pd_COMPANY+'&ROAD='+pd_ROAD + '&PROJECT_NAME='+projectName + '&REPORTID='+pd_REPORTID,
- dataType : 'json',
- success : function(data){
- //alert("change success!");
- }
- });
- }
- saveTable("1");
- }
- function saveTable(type){
- //加载loading
- getTop(globalThis).jzts();
- for(var o=0;o<validateObj.length;o++){
- var isnotnull = 0;
- if(validateObj[o].notnull == '1'){
- if(!$('.editInput[name="'+validateObj[o].column+'"]').val()){
- isnotnull = 1;
- }else if($('.editInput[name="'+validateObj[o].column+'"]').val().trim()==''){
- isnotnull = 1;
- }
- }
- if(isnotnull == 1){
- if(validateObj[o].column=='PLAN_COST'||validateObj[o].column=='PLAN_QUANTITIES'){
- $('.editInput.'+validateObj[o].column).each(function(index,e){
- if(!$(e).val()){
- var vobj = $(e).parent();
- vobj.find('.vtip').remove();
- vobj.append("<div class='vtip'>该字段不能为空</div>");
- vobj.find('.vtip').width(vobj.width());
- }
- })
- }else{
- var vobj = $('.editInput[name="'+validateObj[o].column+'"]').parent();
- vobj.find('.vtip').remove();
- vobj.append("<div class='vtip'>该字段不能为空</div>");
- vobj.find('.vtip').width(vobj.width());
- }
- }
- }
- if($('.vtip').length == 0){
- if(type == 5){
- addNewSHPanle();
-
- }else{
- if(type == 1){
- saveTableRecords(type);
- }
- updateStatus(type);
- }
- }else{
- getTop(globalThis).hangge();
- bootbox.dialog({
- message: "<span class='bigger-110'>仍有数据不符合要求!</span>",
- buttons:
- {
- "button" :
- {
- "label" : "确定",
- "className" : "btn-sm btn-success"
- }
- }
- });
- }
- }
- function saveTableRecords(type){
- getTop(globalThis).jzts();
- //根据tabletitle 获取当前立项年份
- var tabletitle = $(".tabletitle").text();
- var tabYear = tabletitle.split('年')[0];
- changeStatus(type);
- if(editflag == 1){
- $('#editbutton').html('编辑');
- //$("input.editInput").attr("readonly","readonly" );
- $("textarea.editInput").attr("readonly","readonly" );
- $("select.editInput").attr("disabled","disabled" );
- $(".keyWordsCheckbox").attr("disabled","disabled" );
- editflag = 0;
- //textarea替换
- $('textarea').hide();
- // $('textarea.bz').show();
- $('textarea').each(function(index,e){
- $(e).parent().find('pre').html($(e).val());
- })
- $('pre').show();
- }
- var tabledata = dataResult();
- var projectName = pd_NAME+"---"+$('.editInput.PROJECT_NAME').val();
- //进度月度分解
- var dataYDFJ = dataYDFJResult();
- $.ajax({
- type : "post",
- url : locat + '/annualDailyComp/saveDocData.do?TABLETYPE='
- +pd_TABLETYPE+'&COMPANY_ID='+pd_COMPANY_ID+'&YEAR='+pd_YEAR+'&ROAD_ID='+pd_ROAD_ID +'&COMPANY='+pd_COMPANY+'&ROAD='+pd_ROAD
- +'&mode='+pd_mode+'&PROJECT_NAME='+encodeURIComponent($('.PROJECT_NAME').val()) + '&NAME='+encodeURIComponent(projectName) + '&REPORTID='+pd_REPORTID+'&YEAR='+tabYear,
- data:{
- data:JSON.stringify(tabledata),
- dataYDFJ:JSON.stringify(dataYDFJ)
- },
- dataType : 'json',
- contentType: "application/x-www-form-urlencoded; charset=utf-8",
- success : function(data){
- if(data.msg == 'success'){
- //保存后不能改项目名称
- $('.PROJECT_NAME').removeClass("editInput");
- //留痕
- if(JSON.stringify(recordData) != "{}") saveRecordInfo();
- if(JSON.stringify(sublistRecordData) != "{}") saveSublistRecordInfo();
- //保存后更新input原始值
- for(var i=0;i<$('.editInput').length;i++){
- var e = $('.editInput')[i];
- $(e).attr('value',$(e).val());
- }
- //保存后更新子表id
- if(data.idlist){
- for(var i=0;i<data.idlist.length;i++){
- var name = data.idlist[i].name;
- var id = data.idlist[i].id;
- for(var j=0;j<$(".ITEM_NAME").length;j++){
- if($(".ITEM_NAME").eq(j).val() == name){
- $(".ITEM_NAME").eq(j).parent().parent().find("td>input[name='ID']").val(id);
- break;
- }
- }
- }
- $('#pd_mode').html("edit");
- }
- $('#pd_mode').html("edit");
-
- getTop(globalThis).hangge();
- bootbox.dialog({
- message: "<span class='bigger-110'>保存成功!</span>",
- buttons:
- {
- "button" :
- {
- "label" : "确定",
- "className" : "btn-sm btn-success",
- "callback" : function(){
- var selfhref = self.location.href;
- if(pd_TABLETYPE == "highway_prevention_project_dettable" || pd_TABLETYPE == "highway_test_project_dettable"
- || pd_TABLETYPE == "highway_scientific_project_dettable" || pd_TABLETYPE == "highway_repair_project_dettable"
- || pd_TABLETYPE == "highway_special_project_dettable" || pd_TABLETYPE == "highway_equipment_overhaul_project_dettable"){
- if(selfhref.indexOf('---') < 0){
- var replacestr = '---' + encodeURIComponent($('.PROJECT_NAME').val()) + '&STATUS=';
- selfhref = selfhref.replace('&STATUS=',replacestr);
- }
- }
- self.location.href = selfhref;
- }
- }
- }
- });
- }else{
- // 设置addRowFlag 的值
- addRowFlag = 2;
- getTop(globalThis).hangge();
- bootbox.dialog({
- message: "<span class='bigger-110'>"+data.msg+"</span>",
- buttons:
- {
- "button" :
- {
- "label" : "确定",
- "className" : "btn-sm btn-success"
- }
- }
- });
- }
- },
- error:function(){
- getTop(globalThis).hangge();
- bootbox.dialog({
- message: "<span class='bigger-110'>保存失败!</span>",
- buttons:
- {
- "button" :
- {
- "label" : "确定",
- "className" : "btn-sm btn-success"
- }
- }
- });
- }
- });
- }
- //增加审核意见弹出框
- function addNewSHPanle(){
- getTop(globalThis).jzts();
- var diag = new getTop(globalThis).Dialog();
- diag.Drag=true;
- diag.Title ="填写审核意见";
- diag.URL = locat + '/annualMassagePanel/addNewSHPanel.do?TABLETYPE=' + pd_TABLETYPE +'&COMPANY_ID='+ pd_COMPANY_ID
- + '&YEAR='+pd_YEAR + '&ROAD_ID='+ pd_ROAD_ID + '&ROLE_NAME=' + pd_ROLENAME + '&TABLE_NAME=' + pd_NAME
- +'&COMPANY='+pd_COMPANY+'&ROAD='+pd_ROAD;
- diag.Width = 400;
- diag.Height = 200;
- diag.CancelEvent = function(){ //关闭事件
- diag.close();
- };
- diag.show();
- }
- function changeStatus(type){
- for(var i=0;i<$("input[name='STATUS']").length;i++){
- var e = $("input[name='STATUS']")[i];
- $(e).attr('value',type);
- $(e).val(type);
- currStatus = type;
- }
- }
- function updateStatus(type){
- $.ajax({
- type : "get",
- url : locat+'/annualDailyComp/updateStatus.do?STATUS='+type+'&TABLETYPE='+pd_TABLETYPE+'&COMPANY_ID='+pd_COMPANY_ID+'&YEAR='+pd_YEAR+'&ROAD_ID='+pd_ROAD_ID
- +'&COMPANY='+pd_COMPANY+'&ROAD='+pd_ROAD + '&PROJECT_NAME=' + $('.PROJECT_NAME').val(),
- dataType : 'json',
- contentType: "application/x-www-form-urlencoded; charset=utf-8",
- success : function(data){
- if(type != 1){
- getTop(globalThis).hangge();
- bootbox.dialog({
- message: "<span class='bigger-110'>"+data.msg+"</span>",
- buttons:
- {
- "button" :
- {
- "label" : "确定",
- "className" : "btn-sm btn-success"
- }
- }
- });
- }
- }
- });
- }
- function addNewTableInfo(name){
- if($('.editInput.PROJECT_NAME').val()!=''){
- var projectName = name + "---" + $('.PROJECT_NAME').val();
- $.ajax({
- type : "get",
- url : locat+'/annualPlan/addNewTableInfo.do?TABLETYPE='+pd_TABLETYPE+'&COMPANY_ID='+pd_COMPANY_ID+'&YEAR='+pd_YEAR+'&ROAD_ID='+pd_ROAD_ID
- +'&COMPANY='+encodeURIComponent(pd_COMPANY)+'&ROAD='+pd_ROAD + '&NAME='+encodeURIComponent(projectName) + '&REPORTID='+pd_REPORTID + '&PROJECT_NAME=' + encodeURIComponent($('.PROJECT_NAME').val()),
- dataType : 'json',
- success : function(data){
- if(data.msg == 'success'){
- saveTable("1");
- }else{
- getTop(globalThis).hangge();
- bootbox.dialog({
- message: "<span class='bigger-110'>"+data.msg+"</span>",
- buttons:
- {
- "button" :
- {
- "label" : "确定",
- "className" : "btn-sm btn-success"
- }
- }
- });
- }
- },
- error:function(){
- getTop(globalThis).hangge();
- bootbox.dialog({
- message: "<span class='bigger-110'>新建立项表失败!</span>",
- buttons:
- {
- "button" :
- {
- "label" : "确定",
- "className" : "btn-sm btn-success"
- }
- }
- });
- }
- });
- }else{
- getTop(globalThis).hangge();
- bootbox.dialog({
- message: "<span class='bigger-110'>请填写后保存</span>",
- buttons:
- {
- "button" :
- {
- "label" : "确定",
- "className" : "btn-sm btn-success"
- }
- }
- });
- }
- }
- //主表留痕标红
- function saveRecordInfo(){
- if($("input[name='PROJECT_NAME']").val() || pd_TABLETYPE=='highway_technica_statable' || pd_TABLETYPE=='highway_traiffcinfo_sumtable'){
- $.ajax({
- type : "post",
- url : locat+'/annualDailyComp/saveRecordInfo.do?TABLE_NAME='+pd_TABLETYPE+'&COMPANY_ID='+pd_COMPANY_ID
- +'&YEAR='+pd_YEAR+'&BEFORE_STATUS='+status+'&AFTER_STATUS='+currStatus+'&ROAD_ID='+pd_ROAD_ID+'&type=PROJECT_NAME',
- data:{
- recordData:JSON.stringify(recordData),
- recordBeforeValue:JSON.stringify(recordBeforeValue)
- },
- dataType : 'json',
- success : function(data){
- recordData = new Object();
- recordBeforeValue = new Object();
- //留痕标红
- setRecordInfo();
- }
- });
- }
- }
- //子表留痕标红
- function saveSublistRecordInfo(){
- // var projectName = $("input[name='PROJECT_NAME']").val()?$("input[name='PROJECT_NAME']").val():'';
- if($("input[name='PROJECT_NAME']").val()){
- $.ajax({
- type : "post",
- url : locat+'/annualDailyComp/saveRecordInfo.do?TABLE_NAME='+pd_TABLETYPE+'_cost&COMPANY_ID='
- +pd_COMPANY_ID+'&YEAR='+pd_YEAR+'&BEFORE_STATUS='+status+'&AFTER_STATUS='+currStatus
- +'&ROAD_ID='+pd_ROAD_ID+'&PROJECT_NAME='+encodeURIComponent($("input[name='PROJECT_NAME']").val())+'&type=ITEM_ID',
- data:{
- recordData:JSON.stringify(sublistRecordData),
- recordBeforeValue:JSON.stringify(sublistRecordBeforeValue)
- },
- dataType : 'json',
- success : function(data){
- sublistRecordData = new Object();
- sublistRecordBeforeValue = new Object();
- //留痕标红
- setSubRecordInfo();
- }
- });
- }
- }
- function dataResult(){
- var mapArry1 = $("#Form1").serializeArray();
- var dataArry = [];
- var recordmap = new Object();
- for(var i=0; i<mapArry1.length; i++){
- recordmap[mapArry1[i].name] = mapArry1[i].value;
- }
- if(pd_TABLETYPE == "highway_prevention_project_dettable" || pd_TABLETYPE == "highway_test_project_dettable"
- || pd_TABLETYPE == "highway_scientific_project_dettable" || pd_TABLETYPE == "highway_repair_project_dettable"
- || pd_TABLETYPE == "highway_special_project_dettable"){
- var mapArry3 = $("#Form3").serializeArray();
- for(var i=0; i<mapArry3.length; i++){
- recordmap[mapArry3[i].name] = mapArry3[i].value;
- }
- }
- dataArry.push(recordmap);
- if(pd_TABLETYPE == "highway_prevention_project_dettable" || pd_TABLETYPE == "highway_test_project_dettable"
- || pd_TABLETYPE == "highway_repair_project_dettable"
- || pd_TABLETYPE == "highway_special_project_dettable"){
- /*var mapArry2 = $("#Form2").serializeArray();
- var cellcount = 12;
- var recordcount = mapArry2.length / 12;
- for(var i=0; i<recordcount; i++){
- var recordmap = new Object();
- for(var j=0; j<cellcount; j++){
- recordmap[mapArry2[i*cellcount+j].name] = mapArry2[i*cellcount+j].value;
- }
- dataArry.push(recordmap);
- }*/
- var sublength = $(".sublisttr").find('td').find('input').length;
- var recordcount = sublength / 12;
- var cellcount = 12;
- for(var i=0; i<recordcount; i++){
- var recordmap = new Object();
- for(var j=0; j<cellcount; j++){
- //分项名称需要设置中文编码
- /*if($(".sublisttr").find('td').find('input')[i*cellcount+j].name=="ITEM_NAME"){
- console.log("***** 分项字段名 TITEM_NAME TRUE");
- recordmap[$(".sublisttr").find('td').find('input')[i*cellcount+j].name] =encodeURIComponent($(".sublisttr").find('td').find('input')[i*cellcount+j].value);
- }
- else{
- recordmap[$(".sublisttr").find('td').find('input')[i*cellcount+j].name] = $(".sublisttr").find('td').find('input')[i*cellcount+j].value;
- }*/
- recordmap[$(".sublisttr").find('td').find('input')[i*cellcount+j].name] = $(".sublisttr").find('td').find('input')[i*cellcount+j].value;
- }
- dataArry.push(recordmap);
- }
- }else if(pd_TABLETYPE == "highway_scientific_project_dettable"){
- /*var mapArry2 = $("#Form2").serializeArray();
- var cellcount = 11;
- var recordcount = mapArry2.length / 11;
- for(var i=0; i<recordcount; i++){
- var recordmap = new Object();
- for(var j=0; j<cellcount; j++){
- recordmap[mapArry2[i*cellcount+j].name] = mapArry2[i*cellcount+j].value;
- }
- dataArry.push(recordmap);
- }*/
- var sublength = $(".sublisttr").find('td').find('input').length;
- var recordcount = sublength / 11;
- var cellcount = 11;
- for(var i=0; i<recordcount; i++){
- var recordmap = new Object();
- for(var j=0; j<cellcount; j++){
- recordmap[$(".sublisttr").find('td').find('input')[i*cellcount+j].name] = $(".sublisttr").find('td').find('input')[i*cellcount+j].value;
- }
- dataArry.push(recordmap);
- }
- }
- return dataArry;
- }
- //主表编辑input失焦后操作
- function editValue(e){
- if(!$(e).attr('readonly')){
- //数字格式化
- // var num = "";
- // if(e.tagName == "INPUT"){
- // num = $(e).val();
- // num = numFormat(num);
- // $(e).val(num);
- // }
- if($(e).attr("totalType") == "sum") setTotalCell($(e).parent().parent().find('input[totalType="sum"]').index(e));
- setTrPercentCell($(e).parent().parent()[0]);
- setTrPercentCell($(".totaltr")[0]);
- if($('#pd_mode').html() == 'edit') setRecordData(e);
- //校验
- validateTip(e);
- }
- }
- //子表编辑input失焦后操作
- function editSublistValue(e){
- if(!$(e).attr('readonly')){
- //数字格式化
- // var num = "";
- // if(e.tagName == "INPUT"){
- // num = $(e).val();
- // num = numFormat(num);
- // $(e).val(num);
- // }
- if($(e).attr("totalType") == "sum") setTotalCell($(e).parent().parent().find('input[totalType="sum"]').index(e));
- setTrPercentCell($(e).parent().parent()[0]);
- setTrPercentCell($(".totaltr")[0]);
- if($('#pd_mode').html() == 'edit') setSublistRecordData(e);
- //校验
- validateTip(e);
- $(e)[0].defaultValue = $(e)[0].value;
- }
- }
- function resetUnitTotal(e){
- if(!$(e).attr('readonly')){
- setUnitTotalCell($(e).parent().parent()[0]);
- setTotalCell(0);
- $('.PROJECT_COST').val($('.sumCell.TOTAL_COST').val());
- setAllCostRatio();//重新计算月度进程百分比
- setProjectScale();
- }
- }
- //主表留痕数据
- function setRecordData(e){
- if(e){
- var key = $(e).attr('name');
- // var roadid = $("input[name='PROJECT_NAME']").val();
- var roadid = $("input[name='PROJECT_NAME']").val()?$("input[name='PROJECT_NAME']").val():'';
- var value = $(e).val();
- var beforeValue = $(e).attr('value');
- if($(e).val() != $(e).attr('value') && $(e).attr('value') != ''){
- if(!recordData[roadid]){
- recordData[roadid] = new Object();
- recordBeforeValue[roadid] = new Object();
- }
- recordData[roadid][key] = value;
- recordBeforeValue[roadid][key] = beforeValue;
- }else if($(e).val() == $(e).attr('value') && $(e).attr('value') != ''){
- if(roadid in recordData && key in recordData[roadid]){
- delete recordData[roadid][key];
- delete recordBeforeValue[roadid][key];
- if(JSON.stringify(recordData[roadid]) == "{}"){
- delete recordData[roadid];
- delete recordBeforeValue[roadid];
- }
- }
- }
- }
- }
- //子表留痕数据
- function setSublistRecordData(e){
- var key = $(e).attr('name');
- var roadid = $(e).parent().parent().find('td>input[name="ID"]').val();
- var value = $(e).val();
- var beforeValue = $(e).attr('value');
- if($(e).val() != $(e).attr('value') && $(e).attr('value') != ''){
- if(!sublistRecordData[roadid]){
- sublistRecordData[roadid] = new Object();
- sublistRecordBeforeValue[roadid] = new Object();
- }
- sublistRecordData[roadid][key] = value;
- sublistRecordBeforeValue[roadid][key] = beforeValue;
- }else if($(e).val() == $(e).attr('value') && $(e).attr('value') != ''){
- if(key in sublistRecordData[roadid] && roadid in sublistRecordData){
- delete sublistRecordData[roadid][key];
- delete sublistRecordBeforeValue[roadid][key];
- if(JSON.stringify(sublistRecordData[roadid]) == "{}"){
- delete sublistRecordData[roadid];
- delete sublistRecordBeforeValue[roadid];
- }
- }
- }
- }
- function setTrPercentCell(tr){
- $(tr).find("td>.percentCell").each(function(index,e){
- if(e.tagName == "INPUT"){
- var num1 = $(tr).find("td>."+$(e).attr("num1")).val();
- var num2 = $(tr).find("td>."+$(e).attr("num2")).val();
- var result = percentage(num1, num2);
- $(e).val(result);
- }else if(e.tagName == "SPAN"){
- var num1 = $(tr).find("td>."+$(e).attr("num1")).html();
- var num2 = $(tr).find("td>."+$(e).attr("num2")).html();
- var result = percentage(num1, num2);
- $(e).html(result);
- }
- });
- }
- function setUnitTotalCell(tr){
- $(tr).find("td>.unitTotalCell").each(function(index,e){
- var num1 = $(tr).find("td>."+$(e).attr("num1")).val();
- var num2 = $(tr).find("td>."+$(e).attr("num2")).val();
- var result = unitTotal(num1, num2);
- $(e).val(result);
- });
- }
- function percentage(num1, num2){
- var percent = "";
- if(!isNaN(Number(num1)) && !isNaN(Number(num2)) && Number(num2) != "0" )
- percent = Math.round(Number(num1) / Number(num2) * 100);
- // percent = Math.round(Number(num1) / Number(num2) * 100) + "%";
- return percent;
- }
- function unitTotal(num1, num2){
- var unitTotal = "";
- if(!isNaN(Number(num1)) && !isNaN(Number(num2)) && Number(num1) != "0" && Number(num2) != "0") unitTotal = Number(num1) * Number(num2);
- if(!isNaN(Number(unitTotal)) && Number(unitTotal) != "0") unitTotal = numFormat2(unitTotal);
- return unitTotal;
- }
- function numFormat(num){
- if(!isNaN(Number(num)) && Number(num) != "0"){
- if(num<10) num = Number(num).toFixed(1);
- else num = Math.round(Number(num));
- }
- return num;
- }
- function numFormat2(num){
- if(!isNaN(Number(num)) && Number(num) != "0"){
- num = Number(num).toFixed(2);
- }
- return num;
- }
- function setProjectScale(){
- var cost = $(".PROJECT_COST").val();
- var result = "";
- if(typeof(cost) != "undefined" && cost != ""){
- cost = Number(cost);
- if(cost < 500) result = "小修";
- else if(cost >= 500 && cost < 5000) result = "中修";
- else if(cost >= 5000) result = "大修";
- }
- $('.PROJECT_SCALE').val(result);
- }
- function setProjectName(){
- var name = $(".PROJECT_NAME").val();
- $('.sublisttr>td>input[name="PROJECT_NAME"]').attr('value',name);
- }
- function setCategory(e){
- var value = $('.CATEGORY>option:selected').text();
- if(value !=""){
- $('input[name="CATEGORY"]').val(value);
- $(e).parent().parent().find('>td>.CATEGORY').parent().find('.vtip').remove();
- // $('input[name="CATEGORY"]').attr('value',value);
- //留痕
- if($('#pd_mode').html() == 'edit') setRecordData($('input[name="CATEGORY"]')[0]);
- }
- else{
- //提示字段不能为空
- var vtip = validateFun($(e).attr('name'),value,e);
- $(e).parent().append("<div class='vtip'>"+vtip+"</div>");
- $(e).parent().find('.vtip').width($(e).parent().width());
- }
- }
- function setCategorySelect(){
- var value = $('input[name="CATEGORY"]').val();
- $(".CATEGORY>option:selected").removeAttr("selected");
- if(value == "") $(".CATEGORY>option").eq(0).attr("selected","selected");
- else $(".CATEGORY>option:contains('"+value+"')").attr("selected","selected");
- }
- function setQualityGradeSelect(){
- var value = $('input[name="QUALITY_GRADE"]').val();
- $(".QUALITY_GRADE>option:selected").removeAttr("selected");
- if(value == "") $(".QUALITY_GRADE>option").eq(0).attr("selected","selected");
- else $(".QUALITY_GRADE>option:contains('"+value+"')").attr("selected","selected");
- }
- function setQualityGrade(e){
- var value = $('.QUALITY_GRADE>option:selected').text();
- if(value !=""){
- $('input[name="QUALITY_GRADE"]').val(value);
- $(e).parent().parent().find('>td>.QUALITY_GRADE').parent().find('.vtip').remove();
- //留痕
- if($('#pd_mode').html() == 'edit') setRecordData($('input[name="QUALITY_GRADE"]')[0]);
- }
- else{
- //提示字段不能为空
- var vtip = validateFun($(e).attr('name'),value,e);
- $(e).parent().append("<div class='vtip'>"+vtip+"</div>");
- $(e).parent().find('.vtip').width($(e).parent().width());
- }
- }
- function setKeyWords(){
- var arr = [];
- $("input[type='checkbox']:checked").each(function (index,e) {
- arr.push($(this).parent().text());
- });
- $('input[name="KEY_WORDS"]').val(arr.join(","));
- //留痕
- if($('#pd_mode').html() == 'edit') setRecordData($('input[name="KEY_WORDS"]')[0]);
- }
- function setKeyWordsLabels(){
- $('#keyWordsCell').html('');
- var categoryType = $('.CATEGORY>option:selected').text();
- var arr = [];
- if(categoryType != ''){
- arr = labelsObj[pd_TABLETYPE][categoryType];
- }
- var str = '';
- if(arr.length>0){
- for(var i=0; i<arr.length; i++){
- str += '<label><input class="keyWordsCheckbox" type="checkbox" onchange="setKeyWords();"/>'+arr[i]+'</label>';
- }
- }
- $('#keyWordsCell').html(str);
- //设置关键字数值
- setKeyWords();
- }
- function setLabelsSelected(){
- if($('input[name="KEY_WORDS"]').attr('value')){
- var arr = $('input[name="KEY_WORDS"]').attr('value').split(',');
- for(var i=0; i<arr.length; i++){
- $(".keyWordsCheckbox").each(function (index,e) {
- if($(this).parent().text() == arr[i]) $(this).attr("checked","checked");
- });
- }
- }
- //设置关键字数值
- setKeyWords();
- }
- //主表查询留痕数据并标红
- function setRecordInfo(){
- if($("input[name='PROJECT_NAME']").val() || pd_TABLETYPE=='highway_technica_statable' || pd_TABLETYPE=='highway_traiffcinfo_sumtable'){
- var ritype = 1;
- if(pd_TABLETYPE=='highway_technica_statable' || pd_TABLETYPE=='highway_traiffcinfo_sumtable') ritype = 3;
- $.ajax({
- type : "get",
- url : locat+'/annualDailyComp/showRecodInfo.do?TABLE_NAME='+pd_TABLETYPE+'&COMPANY_ID='+pd_COMPANY_ID
- +'&YEAR='+pd_YEAR+'&ROAD_ID='+pd_ROAD_ID+'&PROJECT_NAME='+encodeURIComponent($("input[name='PROJECT_NAME']").val())+'&type='+ritype,
- dataType : 'json',
- success : function(data){
- for(var e in rocordInfoList){
- $('.highlight').removeClass(e);
- }
- $('.highlight').removeClass('highlight');
- rocordInfoList = data.rocordInfoList;
- for(var e in data.rocordInfoList){
- if(data.rocordInfoList[e].TABLE_FIELDS == "KEY_WORDS"){
- $('input[name="KEY_WORDS"]').addClass("highlight " + e);
- $('#keyWordsCell label').css('color','red');
- }else if(data.rocordInfoList[e].TABLE_FIELDS == "CATEGORY"){
- $('input[name="CATEGORY"]').addClass("highlight " + e);
- $('.CATEGORY').addClass("highlight");
- }else {
- $('.'+data.rocordInfoList[e].TABLE_FIELDS).addClass("highlight " + e);
- //pre
- $('textarea.highlight').each(function(index,e){
- $(e).parent().find('pre').attr('class',$(e).attr('class'));
- });
- }
- }
- }
- });
- }
- }
- //子表查询留痕数据并标红
- function setSubRecordInfo(){
- if($("input[name='PROJECT_NAME']").val()){
- $.ajax({
- type : "get",
- url : locat+'/annualDailyComp/showRecodInfo.do?TABLE_NAME='+pd_TABLETYPE+'_cost&COMPANY_ID='+pd_COMPANY_ID
- +'&YEAR='+pd_YEAR+'&ROAD_ID='+pd_ROAD_ID+'&PROJECT_NAME='+encodeURIComponent($("input[name='PROJECT_NAME']").val())+'&type=2',
- dataType : 'json',
- success : function(data){
- for(var e in sublistRecordInfoList){
- $('.subhighlight').removeClass(e);
- }
- $('.subhighlight').removeClass('subhighlight');
- sublistRecordInfoList = data.rocordInfoList;
- for(var e in sublistRecordInfoList){
- $('input[name="ID"]').each(function(index,obj){
- if($(this).val() == sublistRecordInfoList[e].ITEM_ID){
- $(this).parent().parent().find('td>.'+sublistRecordInfoList[e].TABLE_FIELDS).addClass("subhighlight " + e);
- }
- })
- }
- }
- });
- }
- }
- function highlightInit(){
- $('.editInput').off("mouseover mouseout").on("mouseover mouseout",function(event){
- if($(this).attr('class').split(' ').length > 2){
- if(event.type == "mouseover"){
- var indexClass = $(this).attr('class').split(' ')[3];
- var typeClass = $(this).attr('class').split(' ')[2];
- if(typeClass == 'subhighlight'){
- var before = sublistRecordInfoList[indexClass].BEFORE_VAL?sublistRecordInfoList[indexClass].BEFORE_VAL:"空";
- var after = sublistRecordInfoList[indexClass].AFTER?sublistRecordInfoList[indexClass].AFTER:"空";
- var modifier = sublistRecordInfoList[indexClass].MODIFIER;
- var time = sublistRecordInfoList[indexClass].MODIFY_TIME;
- }else{
- var before = rocordInfoList[indexClass].BEFORE_VAL?rocordInfoList[indexClass].BEFORE_VAL:"空";
- var after = rocordInfoList[indexClass].AFTER?rocordInfoList[indexClass].AFTER:"空";
- var modifier = rocordInfoList[indexClass].MODIFIER;
- var time = rocordInfoList[indexClass].MODIFY_TIME;
- }
- $(this).parent().append('<div id="recordInfoDiv">修改人:'+modifier+'<br/>修改时间:'+time+'<br/>'+before+'<br/>'+after+'</div>');
- $('#recordInfoDiv').width($(this).parent().width());
- }else if(event.type == "mouseout"){
- $("#recordInfoDiv").remove();
- }
- }
- });
- $('#keyWordsCell').off("mouseover mouseout").on("mouseover mouseout",function(event){
- if($('input[name="KEY_WORDS"]').attr('class').split(' ').length > 1){
- if(event.type == "mouseover"){
- var indexClass = $('input[name="KEY_WORDS"]').attr('class').split(' ')[2];
- var typeClass = $('input[name="KEY_WORDS"]').attr('class').split(' ')[1];
- var before = rocordInfoList[indexClass].BEFORE_VAL?rocordInfoList[indexClass].BEFORE_VAL:"空";
- var after = rocordInfoList[indexClass].AFTER?rocordInfoList[indexClass].AFTER:"空";
- var modifier = rocordInfoList[indexClass].MODIFIER;
- var time = rocordInfoList[indexClass].MODIFY_TIME;
- $('#keyWordsCell').append('<div id="recordInfoDiv">修改人:'+modifier+'<br/>修改时间:'+time+'<br/>'+before+'<br/>'+after+'</div>');
- $('#recordInfoDiv').width($('#keyWordsCell').width());
- }else if(event.type == "mouseout"){
- $("#recordInfoDiv").remove();
- }
- }
- });
- $('#categoryCell').off("mouseover mouseout").on("mouseover mouseout",function(event){
- if($('input[name="CATEGORY"]').attr('class').split(' ').length > 1){
- if(event.type == "mouseover"){
- var indexClass = $('input[name="CATEGORY"]').attr('class').split(' ')[2];
- var typeClass = $('input[name="CATEGORY"]').attr('class').split(' ')[1];
- var before = rocordInfoList[indexClass].BEFORE_VAL?rocordInfoList[indexClass].BEFORE_VAL:"空";
- var after = rocordInfoList[indexClass].AFTER?rocordInfoList[indexClass].AFTER:"空";
- var modifier = rocordInfoList[indexClass].MODIFIER;
- var time = rocordInfoList[indexClass].MODIFY_TIME;
- $('#categoryCell').append('<div id="recordInfoDiv">修改人:'+modifier+'<br/>修改时间:'+time+'<br/>'+before+'<br/>'+after+'</div>');
- $('#recordInfoDiv').width($('#categoryCell').width());
- }else if(event.type == "mouseout"){
- $("#recordInfoDiv").remove();
- }
- }
- });
- }
- function importTableName(name,proJectName1){
- if($('.editInput.PROJECT_NAME').val()==''){
- var str = name;
- if(str.indexOf("---") != -1 ){
- var projectName = name;
- }else{
- if(pd_TABLETYPE == "highway_prevention_project_dettable" || pd_TABLETYPE == "highway_test_project_dettable"
- || pd_TABLETYPE == "highway_scientific_project_dettable" || pd_TABLETYPE == "highway_repair_project_dettable"
- || pd_TABLETYPE == "highway_special_project_dettable" || pd_TABLETYPE == "highway_equipment_overhaul_project_dettable")
- {
- var projectName = name + "---" + proJectName1;
- }
-
- }
- $.ajax({
- type : "get",
- url : locat+'/annualPlan/changeTableName.do?TABLETYPE='+pd_TABLETYPE+'&COMPANY_ID='+pd_COMPANY_ID+'&YEAR='+pd_YEAR+'&ROAD_ID='+pd_ROAD_ID
- +'&COMPANY='+encodeURIComponent(pd_COMPANY)+'&ROAD='+pd_ROAD + '&PROJECT_NAME='+encodeURIComponent(projectName)+ '&REPORTID='+pd_REPORTID,
- dataType : 'json',
- success : function(data){
- //alert("change success!");
-
- }
- });
- }
- }
- function uploadPic(name) {
- //var form = document.getElementById('upload'),
- var formData = new FormData($( "#upload" )[0]);
- var x=document.getElementById("pic").value;
- if(x=="")
- {
- alert("请选择文件");
- return false;
- }
- var tabledata = dataResult();
- formData.append("data",JSON.stringify(tabledata));
- formData.append("TABLETYPE",pd_TABLETYPE);
- formData.append("COMPANY_ID",pd_COMPANY_ID);
- formData.append("YEAR",pd_YEAR);
- formData.append("ROAD_ID",pd_ROAD_ID);
- formData.append("COMPANY",pd_COMPANY);
- formData.append("ROAD",pd_ROAD);
- formData.append("REPORTID",pd_REPORTID);
- //var path = $("#pic").val();
- $.ajax({
- /* url:locat+'/annualDailyComp/importDoc?data='+JSON.stringify(tabledata)+'&TABLETYPE='
- +pd_TABLETYPE+'&COMPANY_ID='+pd_COMPANY_ID+'&YEAR='+pd_YEAR+'&ROAD_ID='+pd_ROAD_ID+'&COMPANY='
- +encodeURIComponent(pd_COMPANY)+'&ROAD='+encodeURIComponent(pd_ROAD) + '&REPORTID='+pd_REPORTID,*/
- url:locat+'/annualDailyComp/importDoc',
- type:"post",
- dataType: "json",
- data: formData,
- processData : false,
- contentType : false,
- //contentType: "application/x-www-form-urlencoded; charset=utf-8",
- success:function(res){
- if(res){
- if(res.error != undefined){
- //alert(res.error);
- getTop(globalThis).hangge();
- bootbox.dialog({
- message: "<span class='bigger-110'>"+res.error+"</span>",
- buttons:
- {
- "button" :
- {
- "label" : "确定",
- "className" : "btn-sm btn-success"
- }
- }
- });
- }else{
- //updateStatus(1);
- /* $.ajax({
- type : "post",
- url:locat+'/annualDailyComp/getProJectName?data='+'&TABLETYPE='
- +pd_TABLETYPE+'&COMPANY_ID='+pd_COMPANY_ID+'&YEAR='+pd_YEAR+'&ROAD_ID='+pd_ROAD_ID,
- dataType : 'json',
- success : function(data){
- var projectname1 = data.projectname;
- importTableName(name,data.projectname);*/
- //alert("上传成功!");
- getTop(globalThis).hangge();
- bootbox.dialog({
- message: "<span class='bigger-110'>上传成功!</span>",
- buttons:
- {
- "button" :
- {
- "label" : "确定",
- "className" : "btn-sm btn-success"
- }
- }
- });
- var selfhref = self.location.href;
- if(pd_TABLETYPE == "highway_prevention_project_dettable" || pd_TABLETYPE == "highway_test_project_dettable"
- || pd_TABLETYPE == "highway_scientific_project_dettable" || pd_TABLETYPE == "highway_repair_project_dettable"
- || pd_TABLETYPE == "highway_special_project_dettable" || pd_TABLETYPE == "highway_equipment_overhaul_project_dettable"){
- if(selfhref.indexOf('---') < 0){
- var replacestr = '---' + res.projectName + '&STATUS=';
- selfhref = selfhref.replace('&STATUS=',replacestr);
- }
- }
- //changeTableName(projectname1);
- self.location.href = selfhref;
- /* },
- error:function(){
- alert('err');
- }
- });*/
- //getProjectName();
-
-
- }
-
- }
- console.log(res);
- },
- error:function(err){
- //alert("上传失败!");
- getTop(globalThis).hangge();
- bootbox.dialog({
- message: "<span class='bigger-110'>上传失败!</span>",
- buttons:
- {
- "button" :
- {
- "label" : "确定",
- "className" : "btn-sm btn-success"
- }
- }
- });
- }
-
- });
-
- }
- //获取校验json
- function getValidateJson(){
- $.ajax({
- type : "get",
- url : locat + "/annualDailyComp/getValidateJson.do?TABLETYPE=" + pd_TABLETYPE,
- dataType : 'json',
- success : function(data){
- Object.assign(validateJsonData,data.map,data.submap);
- }
- });
- }
- //校验规则
- function validateFun(name,val,e){
- if(name){
- //月度分解计划总和不能大于工程估算
- if(name == 'SumPlanCost'){
- var project_cost = $('.PROJECT_COST').val();
- if(!isNaN(Number(val)) && !isNaN(Number(project_cost))){
- if (Number(val) > Number(project_cost)) return "该字段不能大于工程估算";
- else return "";
- }else return "";
- }
- if(name.indexOf('PLAN_COST') == 0) name = 'PLAN_COST';
- else if(name.indexOf('PLAN_QUANTITIES') == 0) name = 'PLAN_QUANTITIES';
-
- var vtype = validateJsonData[name].type;
- var vlength = validateJsonData[name].length;
- var vscale = validateJsonData[name].scale;
- var vnotnull = validateJsonData[name].notnull;
- if(val != ""){
- if(vtype == 'decimal'){
- var re = new RegExp("^(\\-|\\+)?\\d+(\\.\\d+)?$");
- //是否为数字
- if(!re.test(val)) return "请填写数字";
- //小数位数
- if(vscale == "1") $(e).val(numFormat2(val));
- if(vscale != "1"){
- if(val.split(".").length == 2){
- if(val.split(".")[1].length > vscale) return "小数精度不超过"+vscale;
- }
- }
- }
- //长度
- if(val.length > vlength) return "长度超长";
- //分报告名称不能重复
- // if(name == 'ITEM_NAME'){
- // for(var i=0; i<$('.ITEM_NAME').length; i++){
- // if($('.ITEM_NAME')[i] != e && $('.ITEM_NAME').eq(i).val() == val) return "该字段不能重复";
- // }
- // }
- // if(name == 'SUBJECT'){
- // for(var i=0; i<$('.SUBJECT').length; i++){
- // if($('.SUBJECT')[i] != e && $('.SUBJECT').eq(i).val() == val) return "该字段不能重复";
- // }
- // }
- // if(name == 'EXPENDITURE_SUBJECT'){
- // for(var i=0; i<$('.EXPENDITURE_SUBJECT').length; i++){
- // if($('.EXPENDITURE_SUBJECT')[i] != e && $('.EXPENDITURE_SUBJECT').eq(i).val() == val) return "该字段不能重复";
- // }
- // }
- }else{
- if(vnotnull == '1') return "该字段不能为空";
- // if(name == 'SUBJECT'){
- // if($(e).parent().parent().find('>td>.COSET').val()!=''){
- // return "该字段不能为空";
- // }
- // }
- // if(name == 'EXPENDITURE_SUBJECT'){
- // if($(e).parent().parent().find('>td>.EXPENDITURE_COST').val()!=''){
- // return "该字段不能为空";
- // }
- // }
- }
- //分报告名称非空校验
- if(name == 'UNIT'||name == 'UNIT_PRICE'||name == 'NUMBER'||name == 'ITEM_NAME'){
- if($(e).parent().parent().find('>td>.UNIT').val()!=''
- ||$(e).parent().parent().find('>td>.UNIT_PRICE').val()!=''
- ||$(e).parent().parent().find('>td>.NUMBER').val()!=''
- ||$(e).parent().parent().find('>td>.ITEM_NAME').val()!=''){
- validatecostdataTip($(e).parent().parent().find('>td>.UNIT')[0]);
- validatecostdataTip($(e).parent().parent().find('>td>.UNIT_PRICE')[0]);
- validatecostdataTip($(e).parent().parent().find('>td>.NUMBER')[0]);
- validatecostdataTip($(e).parent().parent().find('>td>.ITEM_NAME')[0]);
- }else if($(e).parent().parent().find('>td>.UNIT').val()==''
- &&$(e).parent().parent().find('>td>.UNIT_PRICE').val()==''
- &&$(e).parent().parent().find('>td>.NUMBER').val()==''
- &&$(e).parent().parent().find('>td>.ITEM_NAME').val()==''){
- $(e).parent().parent().find('>td>.vtip').remove();
- }
- }
- if(name == 'COSET'){
- $(e).parent().parent().find('>td>.SUBJECT').parent().find('.vtip').remove();
- if($(e).parent().parent().find('>td>.COSET').val()!=''){
- validateTip($(e).parent().parent().find('>td>.SUBJECT')[0]);
- }
- }
- if(name == 'EXPENDITURE_COST'){
- $(e).parent().parent().find('>td>.EXPENDITURE_SUBJECT').parent().find('.vtip').remove();
- if($(e).parent().parent().find('>td>.EXPENDITURE_COST').val()!=''){
- validateTip($(e).parent().parent().find('>td>.EXPENDITURE_SUBJECT')[0]);
- }
- }
- //份报告名称为空后,重新校验名称重复
- if(name == 'ITEM_NAME'){
- for(var i=0; i<$('.ITEM_NAME').parent().find('.vtip').length; i++){
- if($('.ITEM_NAME').parent().find('.vtip').eq(i).html()=='该字段不能重复'){
- var reValidateE = $('.ITEM_NAME').parent().find('.vtip').eq(i).parent().find('.ITEM_NAME')[0];
- $('.ITEM_NAME').parent().find('.vtip').eq(i).remove();
- for(var j=0; j<$('.ITEM_NAME').length; j++){
- if($('.ITEM_NAME')[j] != reValidateE && $('.ITEM_NAME').eq(j).val() == $(reValidateE).val()){
- $(reValidateE).parent().append("<div class='vtip'>该字段不能重复</div>");
- $(reValidateE).parent().find('.vtip').width($(e).parent().width());
- }
- }
- }
- }
- if(val != ""){
- for(var i=0; i<$('.ITEM_NAME').length; i++){
- if($('.ITEM_NAME')[i] != e && $('.ITEM_NAME').eq(i).val() == val) return "该字段不能重复";
- }
- }
- }
- if(name == 'SUBJECT'){
- for(var i=0; i<$('.SUBJECT').parent().find('.vtip').length; i++){
- if($('.SUBJECT').parent().find('.vtip').eq(i).html()=='该字段不能重复'){
- var reValidateE = $('.SUBJECT').parent().find('.vtip').eq(i).parent().find('.SUBJECT')[0];
- $('.SUBJECT').parent().find('.vtip').eq(i).remove();
- for(var j=0; j<$('.SUBJECT').length; j++){
- if($('.SUBJECT')[j] != reValidateE && $('.SUBJECT').eq(j).val() == $(reValidateE).val()){
- $(reValidateE).parent().append("<div class='vtip'>该字段不能重复</div>");
- $(reValidateE).parent().find('.vtip').width($(e).parent().width());
- }
- }
- }
- }
- if(val != ""){
- for(var i=0; i<$('.SUBJECT').length; i++){
- if($('.SUBJECT')[i] != e && $('.SUBJECT').eq(i).val() == val) return "该字段不能重复";
- }
- }else{
- if($(e).parent().parent().find('>td>.COSET').val()!=''){
- return "该字段不能为空";
- }
- }
- }
- if(name == 'EXPENDITURE_SUBJECT'){
- for(var i=0; i<$('.EXPENDITURE_SUBJECT').parent().find('.vtip').length; i++){
- if($('.EXPENDITURE_SUBJECT').parent().find('.vtip').eq(i).html()=='该字段不能重复'){
- var reValidateE = $('.EXPENDITURE_SUBJECT').parent().find('.vtip').eq(i).parent().find('.EXPENDITURE_SUBJECT')[0];
- $('.EXPENDITURE_SUBJECT').parent().find('.vtip').eq(i).remove();
- for(var j=0; j<$('.EXPENDITURE_SUBJECT').length; j++){
- if($('.EXPENDITURE_SUBJECT')[j] != reValidateE && $('.EXPENDITURE_SUBJECT').eq(j).val() == $(reValidateE).val()){
- $(reValidateE).parent().append("<div class='vtip'>该字段不能重复</div>");
- $(reValidateE).parent().find('.vtip').width($(e).parent().width());
- }
- }
- }
- }
- if(val != ""){
- for(var i=0; i<$('.EXPENDITURE_SUBJECT').length; i++){
- if($('.EXPENDITURE_SUBJECT')[i] != e && $('.EXPENDITURE_SUBJECT').eq(i).val() == val) return "该字段不能重复";
- }
- }else{
- if($(e).parent().parent().find('>td>.EXPENDITURE_COST').val()!=''){
- return "该字段不能为空";
- }
- }
- }
- }
- return "";
- }
- //分报道非空校验提示
- function validatecostdataTip(e){
- $(e).val($(e).val().trim());
- if($(e).val()==""){
- $(e).parent().find('.vtip').remove();
- $(e).parent().append("<div class='vtip'>该字段不能为空</div>");
- $(e).parent().find('.vtip').width($(e).parent().width());
- }
- }
- //校验提示
- function validateTip(e){
- $(e).val($(e).val().trim());
- $(e).parent().find('.vtip').remove();
- var vtip = validateFun($(e).attr('name'),$(e).val(),e);
- if(vtip != ""){
- $(e).parent().append("<div class='vtip'>"+vtip+"</div>");
- $(e).parent().find('.vtip').width($(e).parent().width());
- }
- }
- function getKeywordsJson(){
- $.ajax({
- type : "get",
- url : locat + "/static/ace/json/keywords.json",
- dataType : 'json',
- success : function(data){
- labelsObj = data;
- setKeyWordsLabels();
- //checkbox禁用
- $(".keyWordsCheckbox").attr("disabled","disabled" );
- setLabelsSelected();
- }
- });
- }
- function notnullvalidate(){
- $.ajax({
- type : "get",
- url : locat + "/static/ace/json/doc.json",
- dataType : 'json',
- success : function(data){
- validateObj = data[pd_TABLETYPE];
- }
- });
- }
- /**********进度月度分解**********/
- //计算所有月度进程百分比
- function setAllCostRatio(){
- $('.COST_RATIO').each(function(index,e){
- setCostRatio(e);
- })
- }
- function monthPlanInit(){
- setSumPlanCost();
- setAllCostRatio();
- }
- //小计行总计
- function setSumPlanCost(){
- var totalvalue = 0;
- $('.ydfj_tr .PLAN_COST').each(function(index,e){
- var editcellval = $(e).val();
- if(typeof(editcellval) != "undefined")
- totalvalue += Number(editcellval);
- });
- $('.ydfj_sum_tr .PLAN_COST').val(numFormat2(totalvalue) + '');
- }
- //计算百分比
- function setCostRatio(e){
- var num1 = $(e).parent().parent().find("td>.PLAN_COST").val();
- var num2 = $('.PROJECT_COST').val();
- var result = percentage(num1, num2);
- $(e).html(result);
- //验证总计是否大于PROJECT_COST
- if($(e).is($('.ydfj_sum_tr .COST_RATIO'))) validateSumPlanCostTip($('.ydfj_sum_tr .PLAN_COST')[0]);
- }
- function editYDFJValue(e){
- if(!$(e).attr('readonly')){
- if($(e).hasClass('PLAN_COST')){
- setSumPlanCost();
- setCostRatio($(e).parent().parent().find("td>.COST_RATIO")[0]);
- setCostRatio($('.ydfj_sum_tr .COST_RATIO')[0]);
- }
- //校验
- validateTip(e);
- }
- }
- //月度总和校验提示
- function validateSumPlanCostTip(e){
- $(e).val($(e).val().trim());
- $(e).parent().find('.vtip').remove();
- var vtip = validateFun('SumPlanCost',$(e).val(),e);
- if(vtip != ""){
- $(e).parent().append("<div class='vtip'>"+vtip+"</div>");
- $(e).parent().find('.vtip').width($(e).parent().width());
- }
- }
- function dataYDFJResult(){
- var dataYDFJ = new Object();
- if(pd_TABLETYPE != "highway_scientific_project_dettable" && pd_TABLETYPE != "highway_technica_statable"
- && pd_TABLETYPE != "highway_traiffcinfo_sumtable"){
- var mapArry = $("#Form4").serializeArray();
- for(var i=0; i<mapArry.length; i++){
- dataYDFJ[mapArry[i].name] = mapArry[i].value;
- }
- }
- return dataYDFJ;
- }
- function removeDefaut(e){
- if($(e).hasClass('PLAN_QUANTITIES') && $(e).val() == '--' && $(e).attr("readonly") != "readonly") $(e).val('');
- else if(($(e).hasClass('PLAN_COST') && $(e).val() == '0' || $(e).val() == '0.0') && $(e).attr("readonly") != "readonly") $(e).val('');
- }
- function setDefaut(e){
- if($(e).hasClass('PLAN_QUANTITIES') && $(e).val() == '' && $(e).attr("readonly") != "readonly") $(e).val('--');
- else if($(e).hasClass('PLAN_COST') && $(e).val() == '' && $(e).attr("readonly") != "readonly") $(e).val('0');
- }
- /**********进度月度分解**********/
- /**********道路技术状况现状新增计算**********/
- function dljszkxzInit(){
- if(pd_TABLETYPE == "highway_technica_statable"){
- setBridgeTotalNum();
- setPQI();
- $('#SRI_PWI.active').on('click',function(){
- var bval = $('#SRI_PWI').html();
- if(bval == 'SRI'){
- $('#SRI_PWI').html('PWI');
- $('.SRI_PWI').val('PWI');
- $('.SRI_PWI').attr('value','PWI');
- }else if(bval == 'PWI'){
- $('#SRI_PWI').html('SRI');
- $('.SRI_PWI').val('SRI');
- $('.SRI_PWI').attr('value','SRI');
- }
- setPQI();
- });
- }
- };
- function setMQI(){
- var totalvalue = 0;
- var mc = ['SCI','PQI','BCI','TCI'];
- var qz = [0.08,0.7,0.12,0.1];
- for(var i=0;i<mc.length;i++){
- var editcellval = $('.'+mc[i]).val();
- if(typeof(editcellval) != "undefined") totalvalue += Number(editcellval)*qz[i];
- }
- $('.MQI').val(numFormat2(totalvalue) + '');
- }
- function setPQI(){
- var totalvalue = 0;
- var mc = ['PCI','RQI','RDI','PBI'];
- var qz = [0.35,0.3,0.15,0.1,0.1];
- mc.push($('#SRI_PWI').html());
- for(var i=0;i<mc.length;i++){
- var editcellval = $('.'+mc[i]).val();
- if(typeof(editcellval) != "undefined") totalvalue += Number(editcellval)*qz[i];
- }
- $('.PQI').val(numFormat2(totalvalue) + '');
- //重设MQI
- setMQI();
- }
- function setBridgeTotalNum(){
- var totalvalue = 0;
- var mc = ['ONE_BRIDGE_NUM','TWO_BRIDGE_NUM','THREE_BRIDGE_NUM','FOUR_BRIDGE_NUM','FIVE_BRIDGE_NUM'];
- for(var i=0;i<mc.length;i++){
- var editcellval = $('.'+mc[i]).val();
- if(typeof(editcellval) != "undefined") totalvalue += Number(editcellval);
- }
- $('.BRIDGE_TOTAL_NUM').val(numFormat2(totalvalue) + '');
- //计算所有桥梁比例
- setBridgePro();
- }
- function setBridgePro(){
- var mc = ['ONE_BRIDGE_NUM','TWO_BRIDGE_NUM','THREE_BRIDGE_NUM','FOUR_BRIDGE_NUM','FIVE_BRIDGE_NUM'];
- for(var i=0;i<mc.length;i++){
- var numE = $('.'+mc[i])[0];
- var num1 = $(numE).val();
- var num2 = $('.BRIDGE_TOTAL_NUM').val();
- var result = percentage(num1, num2);
- var proClassName = numE.classList[1].split('_')[0]+'_BRIDGE_PRO';
- $('.'+proClassName).val(result);
- }
- }
- /**********道路技术状况现状新增计算**********/
- $(function(){
- notnullvalidate();
- monthPlanInit();
- tableInit();
- setCategorySelect();
- setCategory();
- setQualityGrade();
- setQualityGradeSelect();
- getKeywordsJson();
- highlightInit();
- setProjectScale();
- // setKeyWordsLabels();
- // //checkbox禁用
- // $(".keyWordsCheckbox").attr("disabled","disabled" );
- // setLabelsSelected();
- getValidateJson();
- dljszkxzInit();
- });
- //获取本网站的顶级节点,解决被其他网站iframe引入时发生的跨域问题
- function getTop(obj){
- var tp = obj;
- //alert(obj.name);
- if (tp.mainFrame == undefined) {
- tp = tp.parent;
- return getTop(tp);
- } else {
- return tp;
- }
- }
- //工程费用预估清单数据获取
- function projectCostDataResult(){
- var dataArry = [];
- if(pd_TABLETYPE == "highway_prevention_project_dettable" || pd_TABLETYPE == "highway_test_project_dettable"
- || pd_TABLETYPE == "highway_repair_project_dettable"
- || pd_TABLETYPE == "highway_special_project_dettable"){
- var sublength = $(".sublisttr").find('td').find('input').length;
- var recordcount = sublength / 12;
- var cellcount = 12;
- for(var i=0; i<recordcount; i++){
- var recordmap = new Object();
- for(var j=0; j<cellcount; j++){
- recordmap[$(".sublisttr").find('td').find('input')[i*cellcount+j].name] = $(".sublisttr").find('td').find('input')[i*cellcount+j].value;
- }
- dataArry.push(recordmap);
- }
- }else if(pd_TABLETYPE == "highway_scientific_project_dettable"){
- var sublength = $(".sublisttr").find('td').find('input').length;
- var recordcount = sublength / 11;
- var cellcount = 11;
- for(var i=0; i<recordcount; i++){
- var recordmap = new Object();
- for(var j=0; j<cellcount; j++){
- recordmap[$(".sublisttr").find('td').find('input')[i*cellcount+j].name] = $(".sublisttr").find('td').find('input')[i*cellcount+j].value;
- }
- dataArry.push(recordmap);
- }
- }
- var lastdata = dataArry[dataArry.length-1];
- return lastdata;
- }
- //数据库删除当前清单
- function doDeleteRow(trId){
- var lastdata = projectCostDataResult();
- if(lastdata.ID != ""){
- bootbox.confirm("确定要删除吗?", function(result) {
- if(result) {
- removeLastRow(trId);
- $.ajax({
- type : "post",
- url : locat + '/annualDailyComp/delelLastRow.do?TABLETYPE='+pd_TABLETYPE+"_cost",
- data:{
- data:JSON.stringify(lastdata)
- },
- dataType : 'json',
- success : function(data){
- if(data.msg == 'success'){
- getTop(globalThis).hangge();
- bootbox.dialog({
- message: "<span class='bigger-110'>删除成功,请保存修改!</span>",
- buttons:
- {
- "button" :
- {
- "label" : "确定",
- "className" : "btn-sm btn-success"
- }
- }
- });
- }else{
- getTop(globalThis).hangge();
- bootbox.dialog({
- message: "<span class='bigger-110'>"+data.msg+"</span>",
- buttons:
- {
- "button" :
- {
- "label" : "确定",
- "className" : "btn-sm btn-success"
- }
- }
- });
- }
- },
- error:function(){
- getTop(globalThis).hangge();
- bootbox.dialog({
- message: "<span class='bigger-110'>失败!</span>",
- buttons:
- {
- "button" :
- {
- "label" : "确定",
- "className" : "btn-sm btn-success"
- }
- }
- });
- }
- });
- }
- else{
- return;
- }
- });
- }
- else{
- removeLastRow(trId);
- }
- }
- function removeLastRow(trId){
- //移除页面元素
- if(trId > 1 ){
- $("#"+trId+"").remove();
- var row = document.getElementById("planCost").getAttribute("rowspan");
- document.getElementById("planCost").setAttribute("rowspan", parseInt(row)-1);
- }else{
- bootbox.dialog({
- message: "<span class='bigger-110'>最少需要保留一个分项</span>",
- buttons:
- {
- "button" :
- {
- "label" : "确定",
- "className" : "btn-sm btn-success"
- }
- }
- });
- }
- }
|