123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463 |
- 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_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_ROLENAME = $('#pd_ROLENAME').html();
- var editflag = 0;
- var recordData = new Object();
- var recordBeforeValue = new Object();
- var status = $('.edittr:eq(0) >td >input[name="STATUS"]').val();
- var currStatus = status;
- var rocordInfoList = new Object();
- function tableInit(){
- //小计行的总计列
- var totalcells = $('.totaltr').find('.sumCell');
- for(var i=0; i<totalcells.length; i++){
- setTotalCell(i);
- }
- //小计行的百分比初始化
- $('#Form table tbody tr').each(function(index,e){
- setTrPercentCell(e);
- });
- //小计序号
- $('.totaltr').find('.indexCell').html($('.edittr').length+1);
- //留痕标红
- setRecordInfo();
- //数字格式化
- $("input.editInput").each(function(index,e){
- var num = $(e).val();
- num = numFormat(num);
- $(e).val(num);
- });
- }
- function setTotalCell(index){
- if(index < $('.totaltr').find('.sumCell').length){
- var totalvalue = 0;
- for(var i=0; i<$('.edittr').length; i++){
- var editcellval = $('.edittr').eq(i).find('input[totalType="sum"]').eq(index).val();
- if(typeof(editcellval) != "undefined")
- totalvalue += Number(editcellval);
- }
- $('.totaltr').find('.sumCell').eq(index).html(numFormat(totalvalue) + '');
- }
- }
- function editTable(){
- if(editflag == 0){
- $('#editbutton').html('编辑中');
- $(".editInput").removeAttr("readonly");
- $("#savebutton").removeAttr("disabled");
- editflag = 1;
- }else if(editflag == 1){
- $('#editbutton').html('编辑');
- $("#savebutton").attr("disabled","disabled");
- $(".editInput").attr("readonly","readonly" );
- editflag = 0;
- }
- }
- function saveTable(type){
- $("#savebutton").attr("disabled","disabled");
- if(type == 5){
- addNewSHPanle();
- //updateStatus(5);
- }else{
- saveTableRecords(type);
- }
- }
- function saveTableRecords(type){
- debugger;
- if(editflag == 1){
- $('#editbutton').html('编辑');
- $(".editInput").attr("readonly","readonly");
- editflag = 0;
- }
- var tabledata = dataResult();
- $.ajax({
- type : "post",
- //type : "get",
- contentType: "application/x-www-form-urlencoded; charset=utf-8",
- //url : locat+'/annualDailyComp/saveData.do?data='+JSON.stringify(tabledata)+'&TABLETYPE='+pd_TABLETYPE+'&COMPANY_ID='+pd_COMPANY_ID+'&YEAR='+pd_YEAR+'&ROAD_ID='+pd_ROAD_ID,
- url : locat+'/annualDailyComp/saveData.do',
- data:{
- data:JSON.stringify(tabledata),
- TABLETYPE:pd_TABLETYPE,
- COMPANY_ID:pd_COMPANY_ID,
- YEAR:pd_YEAR,
- ROAD_ID:pd_ROAD_ID
- },
- dataType : 'json',
- success : function(data){
- if(JSON.stringify(recordData) != "{}") saveRecordInfo();
- //保存后更新input原始值
- for(var i=0;i<$('.editInput').length;i++){
- var e = $('.editInput')[i];
- $(e).attr('value',$(e).val());
- }
- if(data.msg == 'success'){
- getTop(globalThis).hangge();
- bootbox.dialog({
- message: "<span class='bigger-110'>保存成功!</span>",
- buttons:
- {
- "button" :
- {
- "label" : "确定",
- "className" : "btn-sm btn-success",
- }
- }
- });
- updateStatus(type);
- }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"
- }
- }
- });
- }
- });
- }
- //增加审核意见弹出框
- 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;
- diag.Width = 400;
- diag.Height = 200;
- diag.CancelEvent = function(){ //关闭事件
- diag.close();
- };
- diag.show();
- }
- function updateStatus(type){
- debugger;
- $.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 + '&ROAD_ID='+ pd_ROAD_ID,
- dataType : 'json',
- success : function(data){
- //alert("change success!");
- }
- });
- }
- function saveRecordInfo(){
- debugger;
- $.ajax({
- type : "get",
- url : locat+'/annualDailyComp/saveRecordInfo.do?recordData='+JSON.stringify(recordData)
- +'&recordBeforeValue='+JSON.stringify(recordBeforeValue)+'&TABLE_NAME='+pd_TABLETYPE+'&COMPANY_ID='+pd_COMPANY_ID
- +'&YEAR='+pd_YEAR+'&BEFORE_STATUS='+status+'&AFTER_STATUS='+currStatus+'&type=ROAD_ID',
- dataType : 'json',
- success : function(data){
- recordData = new Object();
- recordBeforeValue = new Object();
- //留痕标红
- setRecordInfo();
- }
- });
- }
- function dataResult(){
- debugger;
- var mapArry = $("#Form").serializeArray();
- var dataArry = [];
- var recordmap = new Object();
- for(var i=0; i<mapArry.length; i++){
- recordmap[mapArry[i].name] = mapArry[i].value.replace("%","");
- }
- dataArry.push(recordmap);
- return dataArry;
- }
- function editValue(e){
- debugger;
- 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);
- }
- }
- function setRecordData(e){
- debugger;
- var key = $(e).attr('name');
- var roadid = $("input[name='ROAD_ID']").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(key in recordData[roadid] && roadid in recordData){
- delete recordData[roadid][key];
- delete recordBeforeValue[roadid][key];
- if(JSON.stringify(recordData[roadid]) == "{}"){
- delete recordData[roadid];
- delete recordBeforeValue[roadid];
- }
- }
- }
- }
- function setRecordInfo(){
- debugger;
- $.ajax({
- type : "get",
- url : locat+'/annualDailyComp/showRecodInfo.do?TABLE_NAME='+pd_TABLETYPE+'&COMPANY_ID='+pd_COMPANY_ID+'&YEAR='+pd_YEAR,
- 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){
- $("input[name='"+data.rocordInfoList[e].TABLE_FIELDS+"']").addClass("highlight " + 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 before = rocordInfoList[indexClass].BEFORE_VAL;
- var after = rocordInfoList[indexClass].AFTER;
- $(this).parent().append('<div id="recordInfoDiv">'+before+'--'+after+'</div>');
- }else if(event.type == "mouseout"){
- $("#recordInfoDiv").remove();
- }
- }
- });
- }
- function excelExport(){
- window.location.href=locat+'/annualDailyComp/exportDoc.do?modelName=311_highway_scientific_project_dettable.ftl&COMPANY_ID=001&YEAR=2018&ROAD_ID=111&TABLETYPE=highway_scientific_project_dettable';
- }
- //function excelExport(){
- // var arry = [];
- // $('.edittr:eq(0)>td>input').each(function(index,e){
- // var n = $(e).attr('name');
- // if(n!='SERIAL_NUM'&&n!='STATUS'&&n!='COMPANY'&&n!='YEAR'&&n!='COMPANY_ID'&&n!='ROAD_ID'){
- // var key = $(e).attr('name');
- // arry.push(key);
- // }
- // });
- // var keyStr = arry.join(',');
- // window.location.href=locat+'/annualDailyComp/export.do?TABLETYPE='+pd_TABLETYPE+'&COMPANY_ID='+pd_COMPANY_ID+'&YEAR='+pd_YEAR+'&keyStr='+keyStr;
- //}
- $(function(){
- tableInit();
- highlightInit();
- dljszkxzInit();
- });
- 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 percentage(num1, num2){
- var percent = "";
- if(!isNaN(Number(num1)) && !isNaN(Number(num2)) && Number(num2) != "0" )
- // percent = Math.round(Number(num1) / Number(num2) * 10000) / 100.00 + "%";
- // percent = Math.round(Number(num1) / Number(num2) * 100) + "%";
- percent = Math.round(Number(num1) / Number(num2) * 100);
- return percent;
- }
- 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;
- }
- //上传excel控件
- function uploadPic() {
- //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();
- //var path = $("#pic").val();
- $.ajax({
- url:locat+'/annualDailyComp/importExcel?data='+JSON.stringify(tabledata)+'&TABLETYPE='
- +pd_TABLETYPE+'&COMPANY_ID='+pd_COMPANY_ID+'&YEAR='+pd_YEAR+'&ROAD_ID='+pd_ROAD_ID +'&ROAD='+pd_ROAD,
- type:"post",
- data: formData,
- async: false,
- cache: false,
- contentType: false,
- processData: false,
- success:function(res){
- if(res.length>0){
- alert(res);
- /*getTop(globalThis).hangge();
- bootbox.dialog({
- message: "<span class='bigger-110'>"+res+"</span>",
- buttons:
- {
- "button" :
- {
- "label" : "确定",
- "className" : "btn-sm btn-success"
- }
- }
- }); */
- }else{
- updateStatus(1);
- //alert("上传成功!");
- 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;
- self.location.href = selfhref;
- }
- }
- }
- });
- }
- },
- error:function(err){
- //alert("上传失败!");
- getTop(globalThis).hangge();
- bootbox.dialog({
- message: "<span class='bigger-110'>上传失败!</span>",
- buttons:
- {
- "button" :
- {
- "label" : "确定",
- "className" : "btn-sm btn-success"
- }
- }
- });
- }
- });
- }
- /**********高速公路养护质量目标表新增计算**********/
- function dljszkxzInit(){
- if(pd_TABLETYPE == "highway_quality_goals_table"){
- setPQI($('.PCI_STATUS')[0]);
- //setPQI($('.PCI_TARGET')[0]);
- $('#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($('.PCI_STATUS')[0]);
- //setPQI($('.PCI_TARGET')[0]);
- });
- }
- };
- function setMQI(e){
- var type = '_'+e.name.split('_')[1]
- if(type == '_STATUS'){
- 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]+type).val();
- if(typeof(editcellval) != "undefined") totalvalue += Number(editcellval)*qz[i];
- }
- $('.MQI'+type).val(numFormat(totalvalue) + '');
- }
- }
- function setPQI(e){
- var type = '_'+e.name.split('_')[1]
- 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]+type).val();
- if(typeof(editcellval) != "undefined") totalvalue += Number(editcellval)*qz[i];
- }
- $('.PQI'+type).val(numFormat(totalvalue) + '');
- //重设MQI
- setMQI(e);
- }
- /**********高速公路养护质量目标表新增计算**********/
- //获取本网站的顶级节点,解决被其他网站iframe引入时发生的跨域问题
- function getTop(obj){
- var tp = obj;
- //alert(obj.name);
- if (tp.mainFrame == undefined) {
- tp = tp.parent;
- return getTop(tp);
- } else {
- return tp;
- }
- }
|