|
@@ -2,36 +2,7 @@
|
|
* Created by chen on 2017/8/1.
|
|
* Created by chen on 2017/8/1.
|
|
*/
|
|
*/
|
|
|
|
|
|
-/*var rate_data = [
|
|
|
|
- {"ID":1,"ParentID":null,"name":"企业管理费","rate":null,"memo":""},
|
|
|
|
-{"ID":101,"ParentID":1,"name":"建筑工程","rate":16.36,"memo":""},
|
|
|
|
-{"ID":102,"ParentID":1,"name":"市政工程","rate":17.43,"memo":""},
|
|
|
|
-{"ID":103,"ParentID":1,"name":"机械土石方","rate":10.82,"memo":""},
|
|
|
|
-{"ID":104,"ParentID":1,"name":"仿古建筑工程","rate":12,"memo":""},
|
|
|
|
-{"ID":105,"ParentID":1,"name":"建筑修缮工程","rate":12.47,"memo":""},
|
|
|
|
-{"ID":106,"ParentID":1,"name":"炉窑砌筑工程","rate":10.8,"memo":""},
|
|
|
|
-{"ID":2, "ParentID":null,"name":"夜间施工费","rate":null,"memo":""},
|
|
|
|
-{"ID":201,"ParentID":2,"name":"建筑工程","rate":0.45,"memo":""},
|
|
|
|
-{"ID":202,"ParentID":2,"name":"市政工程","rate":0.4,"memo":""},
|
|
|
|
-{"ID":203,"ParentID":2,"name":"机械土石方","rate":0.7,"memo":""},
|
|
|
|
-{"ID":204,"ParentID":2,"name":"仿古建筑工程","rate":0.2,"memo":""},
|
|
|
|
-{"ID":205,"ParentID":2,"name":"建筑修缮工程","rate":0.35,"memo":""},
|
|
|
|
-{"ID":206,"ParentID":2,"name":"炉窑砌筑工程","rate":0.4,"memo":""},
|
|
|
|
-{"ID":3, "ParentID":null,"name":"规费","rate":null,"memo":""},
|
|
|
|
-{"ID":301,"ParentID":3,"name":"建筑工程","rate":16.03,"memo":""},
|
|
|
|
-{"ID":302,"ParentID":3,"name":"市政工程","rate":16.33,"memo":""},
|
|
|
|
-{"ID":303,"ParentID":3,"name":"机械土石方","rate":15.5,"memo":""},
|
|
|
|
-{"ID":304,"ParentID":3,"name":"仿古建筑工程","rate":12,"memo":""},
|
|
|
|
-{"ID":305,"ParentID":3,"name":"建筑修缮工程","rate":12.47,"memo":""},
|
|
|
|
-{"ID":306,"ParentID":3,"name":"炉窑砌筑工程","rate":10.8,"memo":""},
|
|
|
|
-{"ID":4,"ParentID":null,"name":"利润","rate":null,"memo":""},
|
|
|
|
-{"ID":401,"ParentID":4,"name":"建筑工程","rate":8.73,"memo":""},
|
|
|
|
-{"ID":402,"ParentID":4,"name":"市政工程","rate":9.2,"memo":""},
|
|
|
|
-{"ID":403,"ParentID":4,"name":"机械土石方","rate":6.5,"memo":""},
|
|
|
|
-{"ID":404,"ParentID":4,"name":"仿古建筑工程","rate":7,"memo":""},
|
|
|
|
-{"ID":405,"ParentID":4,"name":"建筑修缮工程","rate":3.72,"memo":""},
|
|
|
|
-{"ID":406,"ParentID":4,"name":"炉窑砌筑工程","rate":4.9,"memo":""},
|
|
|
|
-{"ID":5,"ParentID":null,"name":"税金","rate":11,"memo":""}];*/
|
|
|
|
|
|
+
|
|
|
|
|
|
var feeRateObject={
|
|
var feeRateObject={
|
|
mainViews:null,
|
|
mainViews:null,
|
|
@@ -40,6 +11,7 @@ var feeRateObject={
|
|
activateFeeRate:null,
|
|
activateFeeRate:null,
|
|
needCascadeSet:false,
|
|
needCascadeSet:false,
|
|
selectionLoad:false,
|
|
selectionLoad:false,
|
|
|
|
+ changeInfo:null,
|
|
columns: [
|
|
columns: [
|
|
{
|
|
{
|
|
id: 'name',
|
|
id: 'name',
|
|
@@ -242,6 +214,13 @@ var feeRateObject={
|
|
|
|
|
|
projectObj.project.FeeRate.batchUpdateFeeRate(items,feeRateObject.activateFeeRate);
|
|
projectObj.project.FeeRate.batchUpdateFeeRate(items,feeRateObject.activateFeeRate);
|
|
},
|
|
},
|
|
|
|
+ loadPageContent:function(){
|
|
|
|
+ var feeRateFile = projectObj.project.FeeRate.getActivateFeeRate();
|
|
|
|
+ var usageProjects = feeRateFile.usageProjects;
|
|
|
|
+ $('#feeRateFileName').text(feeRateFile.name);
|
|
|
|
+ $('#feeRateLibName').text(feeRateFile.libName);
|
|
|
|
+ $('#projectCount').text(usageProjects.length);
|
|
|
|
+ },
|
|
loadFeeRateSelection:function() {
|
|
loadFeeRateSelection:function() {
|
|
if(!this.selectionLoad){
|
|
if(!this.selectionLoad){
|
|
var selectedID=0;
|
|
var selectedID=0;
|
|
@@ -254,22 +233,243 @@ var feeRateObject={
|
|
})
|
|
})
|
|
$('#inlineFormCustomSelect').val(selectedID);
|
|
$('#inlineFormCustomSelect').val(selectedID);
|
|
}
|
|
}
|
|
|
|
+ },
|
|
|
|
+ getFeeRateStandards:function (callback) {
|
|
|
|
+ CommonAjax.post('/feeRates/getFeeRateStandards', {"rootProjectID": this.activateFeeRate.rootProjectID}, function (data) {
|
|
|
|
+ if (data) {
|
|
|
|
+ callback(data);
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ },
|
|
|
|
+ changeFeeRateStandard:function(newVal){
|
|
|
|
+ var callback=function () {
|
|
|
|
+ feeRateObject.createSpreadView();
|
|
|
|
+ feeRateObject.loadPageContent();
|
|
|
|
+ projectObj.project.FeeRate.synchronizeFeeRate();
|
|
|
|
+ };
|
|
|
|
+ projectObj.project.FeeRate.changeFeeRateStandard(newVal,callback);
|
|
|
|
+ },
|
|
|
|
+ checkFeeRateName:function (newVal) {
|
|
|
|
+ if(!newVal||newVal==""){
|
|
|
|
+ $('#saveAsConfirm').attr("disabled","disabled");
|
|
|
|
+ $('#nameError').text("请输入文件名称。").show();
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ var callback=function (data) {
|
|
|
|
+ if(data){
|
|
|
|
+ $('#saveAsConfirm').attr("disabled","disabled");
|
|
|
|
+ $('#nameError').text("已存在同名费率文件。").show();
|
|
|
|
+ }else {
|
|
|
|
+ $('#saveAsConfirm').removeAttr("disabled");
|
|
|
|
+ $('#nameError').hide();
|
|
|
|
+ }
|
|
|
|
+ console.log(data);
|
|
|
|
+ };
|
|
|
|
+ projectObj.project.FeeRate.checkFeeRateName(newVal,callback);
|
|
|
|
+ },
|
|
|
|
+ feeRateFileSaveAs:function (newName) {
|
|
|
|
+ this.activateFeeRate = projectObj.project.FeeRate.feeRateFileSaveAs(newName);
|
|
|
|
+ feeRateObject.loadPageContent();
|
|
|
|
+ },
|
|
|
|
+ getChangeInfo:function () {
|
|
|
|
+ var me = this;
|
|
|
|
+ var callback=function (data) {
|
|
|
|
+ me.changeInfo=data;
|
|
|
|
+ me.loadChangePageContent(data);
|
|
|
|
+ console.log(data);
|
|
|
|
+ };
|
|
|
|
+ projectObj.project.FeeRate.getChangeInfo(callback);
|
|
|
|
+ },
|
|
|
|
+ loadChangePageContent:function (data) {
|
|
|
|
+ $('#currentProject').text(data.currentProject.name);
|
|
|
|
+ $('#currentOptions').empty();
|
|
|
|
+ _.forEach(data.currentProject.currentOptions,function (s) {
|
|
|
|
+ var option = $("<option>").val(s.ID).text(s.name);
|
|
|
|
+ $('#currentOptions').append(option);
|
|
|
|
+ })
|
|
|
|
+ $('#currentOptions').val(projectObj.project.FeeRate.getActivateFeeRateID());
|
|
|
|
+ $('#otherProject').empty();
|
|
|
|
+ _.forEach(data.others,function (p) {
|
|
|
|
+ var option = $("<option>").val(p.projectID).text(p.name);
|
|
|
|
+ $('#otherProject').append(option);
|
|
|
|
+ });
|
|
|
|
+ $('#otherFeeRateOption').empty();
|
|
|
|
+ if(data.others.length>0){
|
|
|
|
+ _.forEach(data.others[0].optionList,function (f) {
|
|
|
|
+ var option = $("<option>").val(f.ID).text(f.name);
|
|
|
|
+ $('#otherFeeRateOption').append(option);
|
|
|
|
+ });
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ changeFeeRateFileFromCurrent:function(){
|
|
|
|
+ var newVal = $("#currentOptions").val();
|
|
|
|
+ if($("#currentOptions").val()==this.activateFeeRate.ID){
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ var callback=function () {
|
|
|
|
+ feeRateObject.createSpreadView();
|
|
|
|
+ feeRateObject.loadPageContent();
|
|
|
|
+ projectObj.project.FeeRate.synchronizeFeeRate();
|
|
|
|
+ }
|
|
|
|
+ projectObj.project.FeeRate.changeFeeRateFileFromCurrent(newVal,callback);
|
|
|
|
+ },
|
|
|
|
+ changeFeeRateFileFromOthers:function () {
|
|
|
|
+ var feeRateFileID = $("#otherFeeRateOption").val();
|
|
|
|
+ var name =$("#otherFeeRateOption").find("option:selected").text();
|
|
|
|
+ var currentOption = _.find(this.changeInfo.currentProject.currentOptions,{name:name})
|
|
|
|
+ if(currentOption){
|
|
|
|
+ $("#rename-lv").modal({show:true});
|
|
|
|
+ $("#newFeeRateID").val(feeRateFileID);
|
|
|
|
+ $("#newFeeRateName").val(name);
|
|
|
|
+ }else {
|
|
|
|
+ this.changeFeeRateFileConfirm(feeRateFileID,name);
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ changeFeeRateFileConfirm:function(feeRateFileID,name){
|
|
|
|
+ var callback=function () {
|
|
|
|
+ feeRateObject.createSpreadView();
|
|
|
|
+ feeRateObject.loadPageContent();
|
|
|
|
+ projectObj.project.FeeRate.synchronizeFeeRate();
|
|
|
|
+ }
|
|
|
|
+ projectObj.project.FeeRate.changeFeeRateFileFromOthers(feeRateFileID,name,callback);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+function getPopoverContent() {
|
|
|
|
+ var feeRateFile = projectObj.project.FeeRate.getActivateFeeRate();
|
|
|
|
+ var usageProjects = feeRateFile.usageProjects;
|
|
|
|
+ var popover_content = "";
|
|
|
|
+ _.forEach(usageProjects,function (p,index) {
|
|
|
|
+ if(index>0){
|
|
|
|
+ popover_content+='<br>';
|
|
|
|
+ }
|
|
|
|
+ popover_content+=p.name;
|
|
|
|
+ })
|
|
|
|
+ return popover_content;
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+$('#pop-lv').popover({
|
|
|
|
+ placement:"bottom",
|
|
|
|
+ html:true,
|
|
|
|
+ trigger:"hover | focus",
|
|
|
|
+ content:getPopoverContent
|
|
|
|
+ }
|
|
|
|
+);
|
|
|
|
+
|
|
|
|
+
|
|
$('#tab_fee_rate').bind('click', function () {
|
|
$('#tab_fee_rate').bind('click', function () {
|
|
- $("#de").trigger("click");
|
|
|
|
feeRateObject.reFreshRateViews();
|
|
feeRateObject.reFreshRateViews();
|
|
- $('#projectName').text(projectInfoObj.projectInfo.name);
|
|
|
|
- feeRateObject.loadFeeRateSelection();
|
|
|
|
|
|
+ feeRateObject.loadPageContent();
|
|
|
|
+ //feeRateObject.loadFeeRateSelection();
|
|
});
|
|
});
|
|
|
|
|
|
-/*$('#fee_rates').bind('click', function () {
|
|
|
|
- feeRateObject.datas[0].name = 'test';
|
|
|
|
- feeRateObject.mainViews.refresh();
|
|
|
|
- feeRateObject.mainViews.invalidate();
|
|
|
|
|
|
+$('#setNewFeeRate').bind('click', function () {
|
|
|
|
+ var feeRateFile = projectObj.project.FeeRate.getActivateFeeRate();
|
|
|
|
+ var usageProjects = feeRateFile.usageProjects;
|
|
|
|
+ var listString ='';
|
|
|
|
+ _.forEach(usageProjects,function (u) {
|
|
|
|
+ listString+="<li>"+u.name+"</li>"
|
|
|
|
+ })
|
|
|
|
+ $("#usageProjectList").html(listString);
|
|
|
|
+
|
|
|
|
+ feeRateObject.getFeeRateStandards(function (data) {
|
|
|
|
+ $('#standardSelect').empty();
|
|
|
|
+ _.forEach(data,function (s) {
|
|
|
|
+ var option = $("<option>").val(s.ID).text(s.libName);
|
|
|
|
+ $('#standardSelect').append(option);
|
|
|
|
+ })
|
|
|
|
+ $('#standardSelect').val(feeRateFile.libID);
|
|
|
|
+ });
|
|
|
|
+
|
|
|
|
+});
|
|
|
|
+$('#changeConfirm').bind('click', function (){
|
|
|
|
+ var newVal=$('#standardSelect').val();
|
|
|
|
+ var feeRateFile = projectObj.project.FeeRate.getActivateFeeRate();
|
|
|
|
+ if(newVal&&newVal!=feeRateFile.libID){
|
|
|
|
+ feeRateObject.changeFeeRateStandard(newVal);
|
|
|
|
+ }
|
|
|
|
+});
|
|
|
|
+
|
|
|
|
+$('#saveAs').bind('click', function (){
|
|
|
|
+ var feeRateFile = projectObj.project.FeeRate.getActivateFeeRate();
|
|
|
|
+ $('#copyFeeRateName').val(feeRateFile.name+'副本');
|
|
|
|
+});
|
|
|
|
+
|
|
|
|
+$('#saveAsConfirm').bind('click',function () {
|
|
|
|
+ feeRateObject.feeRateFileSaveAs($('#copyFeeRateName').val());
|
|
|
|
+})
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+$('#copyFeeRateName').change(function () {
|
|
|
|
+ feeRateObject.checkFeeRateName(this.value);
|
|
|
|
+});
|
|
|
|
+
|
|
|
|
+$('#newFeeRateName').change(function () {
|
|
|
|
+ var newName = $(this).val();
|
|
|
|
+ if(!newName||newName==""){
|
|
|
|
+ $('#renameConfirm').attr("disabled","disabled");
|
|
|
|
+ $('#renameError').text("请输入文件名称。").show();
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ var callback=function (data) {
|
|
|
|
+ if(data){
|
|
|
|
+ $('#renameConfirm').attr("disabled","disabled");
|
|
|
|
+ $('#renameError').text("本建设项目中已存在同名费率文件。").show();
|
|
|
|
+ }else {
|
|
|
|
+ $('#renameConfirm').removeAttr("disabled");
|
|
|
|
+ $('#renameError').hide();
|
|
|
|
+ }
|
|
|
|
+ };
|
|
|
|
+ projectObj.project.FeeRate.checkFeeRateName(newName,callback);
|
|
|
|
+});
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+function changeFRadioClick() {
|
|
|
|
+ var radioV= $("input[name='chaneg-lv-Radio']:checked").val();
|
|
|
|
+ if(radioV==='0'){
|
|
|
|
+ $("#fromProject").show();
|
|
|
|
+ $("#fromOther").hide();
|
|
|
|
+ }else {
|
|
|
|
+ $("#fromProject").hide();
|
|
|
|
+ $("#fromOther").show();
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+$('#changeFeeRateConfirm').bind('click',function (){
|
|
|
|
+ var radioV= $("input[name='chaneg-lv-Radio']:checked").val();
|
|
|
|
+ if(radioV==='0'){
|
|
|
|
+ feeRateObject.changeFeeRateFileFromCurrent();
|
|
|
|
+ }else {
|
|
|
|
+ feeRateObject.changeFeeRateFileFromOthers();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+})
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+$('#changFeeRateFile').bind('click',function (){
|
|
|
|
+ $("input[name='chaneg-lv-Radio']")[0].checked=true;
|
|
|
|
+ $("#fromProject").show();
|
|
|
|
+ $("#fromOther").hide();
|
|
|
|
+ feeRateObject.getChangeInfo();
|
|
|
|
+})
|
|
|
|
+
|
|
|
|
+$('#otherProject').change(function(){
|
|
|
|
+ var newVal = $(this).val();
|
|
|
|
+ var projects = feeRateObject.changeInfo.others;
|
|
|
|
+ var selected = _.find(projects,{projectID:parseInt(newVal)});
|
|
|
|
+ $('#otherFeeRateOption').empty();
|
|
|
|
+ _.forEach(selected.optionList,function (f) {
|
|
|
|
+ var option = $("<option>").val(f.ID).text(f.name);
|
|
|
|
+ $('#otherFeeRateOption').append(option);
|
|
|
|
+ });
|
|
|
|
+})
|
|
|
|
+
|
|
|
|
+$('#renameConfirm').bind('click',function (){
|
|
|
|
+ var feeRateFileID= $("#newFeeRateID").val();
|
|
|
|
+ var name = $("#newFeeRateName").val();
|
|
|
|
+ feeRateObject.changeFeeRateFileConfirm(feeRateFileID,name);
|
|
|
|
+})
|
|
|
|
|
|
-});*/
|
|
|
|
|
|
|
|
$('#inlineFormCustomSelect').change(function(){
|
|
$('#inlineFormCustomSelect').change(function(){
|
|
var updateTask = [];
|
|
var updateTask = [];
|
|
@@ -284,11 +484,11 @@ $('#inlineFormCustomSelect').change(function(){
|
|
}else {
|
|
}else {
|
|
feeRate.status='disable';
|
|
feeRate.status='disable';
|
|
}
|
|
}
|
|
- updateTask.push({query:{ID:feeRate.ID,projectID:projectObj.project.ID()},doc:{status:feeRate.status}});
|
|
|
|
|
|
+ updateTask.push({query:{ID:feeRate.feeRateID},doc:{status:feeRate.status}});
|
|
})
|
|
})
|
|
projectObj.project.FeeRate.updateStatusBySelected(updateTask);
|
|
projectObj.project.FeeRate.updateStatusBySelected(updateTask);
|
|
feeRateObject.createSpreadView();
|
|
feeRateObject.createSpreadView();
|
|
subRateObject.destorySpreadView();
|
|
subRateObject.destorySpreadView();
|
|
socket.emit('changeActivateFeeRate',{oldRoom:oldValue,newRoom:selectID});
|
|
socket.emit('changeActivateFeeRate',{oldRoom:oldValue,newRoom:selectID});
|
|
|
|
+})
|
|
|
|
|
|
-})
|
|
|