Диплом: Автоматизация учета аренды площадей клиентами компании ООО "Грандтитул"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
117
this.paginateData.data.forEach(function(item,index){
if(item.id===model.id){
finalIndex=index;
console.log(index);
}
});
if(finalIndex)
this.paginateData.data.splice(finalIndex,1,model);
this.finalCaption="Редактирование клинта успешно!";
},
deleteModel:function(model){
this.paginateData.data=this.paginateData.data.filter(item=>{
return(item.id!==model.id);
});
this.finalCaption="Клиентудален!";
},
getSearchResult:_.debounce(
function(){
if(!this.searchField&&
!this.createdAtField&&
!this.fcField
){
this.paginateData.data=[];
this.searchCaptionClases='alert alert-info';
this.searchCaption="Укажите параметры поиска, чтобы начать просмотр!";
return
}
this.searchCaption="Ожидайтеответ...";
this.uploadData();
},700
),
uploadData:function(url=""){
letvm=this;
letbaseUrl='/clients/searcher?search_field='+vm.searchField
+'&created_at_field='+vm.createdAtField
+'&fc_field='+((vm.fcField)?vm.fcField:"")
+url;
axios.get(baseUrl/* + '&searchDostup=' +vm.searchDostup + '&searchWork='
+vm.searchWork
+ '&searchCreatedDate=' + vm.searchCreatedDate +
'&searchUpdatedDate=' + vm.searchUpdatedDate*/
)
.then(function(response){
vm.paginateData=response.data;
if(response.data.data.length>0){
vm.reFind=true;
vm.searchCaptionClases='alert alert-success';
if(response.data.last_page===1){
vm.searchCaption="Ответполучен. Всегорезультатов: "+response.data.data.length+". ";
}else{
vm.searchCaption="Ответполучен. Показано c "+response.data.from+" по
"+(response.data.from+response.data.data.length-1)+" из "+response.data.total;
}
}else{
vm.searchCaptionClases='alert alert-warning';
vm.searchCaption='Попробуйте другие варианты поиска.';
}
})
.catch(function(error){
alert('Ошибка! Не могу связаться с API. Попробуйтезаного.'+error);
});
},
getData:function(param,page){
this.searchCaption="Ожидайтеответ...";
118
leturl="";
switch(param){
case'prev':
url+='&page='+(this.paginateData.current_page-1);
break;
case'next':
url+='&page='+(this.paginateData.current_page+1);
break;
default:
url+='&page='+page;
break;
}
this.uploadData(url);
},
startAlert:function(message){
this.finalCaption=message;
setTimeout(()=>{
this.dismissAlert();
},5000);
},
dismissAlert:function(){
this.finalCaption="";
}
},
mounted(){
letvm=this;
$('#createdAtField').datepicker({
position:'bottom left',
autoClose:true,
dateFormat:'yyyy-mm-dd',
range:true,
toggleSelected:false,
onSelect:function(fn,date){
vm.createdAtField=fn;
}
});
}
});
}
if($("#orders").length>0){
constorders=newVue({
el:'#orders',
data:{
paginateData:{
current_page:1,
data:[],
first_page_url:"",
from:null,
last_page:1,
last_page_url:"",
next_page_url:null,
path:"",
per_page:15,
prev_page_url:null,
to:null,
total:0
},
clientField:"",
createdAtField:"",
statusField:"",
operationField:"",
agentField:"",
onlyMy:false,
searchCaption:"Укажите параметры поиска для зароса!",
searchCaptionClases:"alert alert-info",
finalCaption:"",
creating:false,
119
operations:backToFront.operations,
statuses:backToFront.statuses,
},
computed:{
orders:function(){
returnthis.paginateData.data;
},
},
watch:{
clientField:function(){
this.startSearch();
},
createdAtField:function(){
this.startSearch();
},
statusField:function(){
this.startSearch();
},
agentField:function(){
this.startSearch();
},
onlyMy:function(){
this.startSearch();
},
},
methods:{
startSearch:function(){
this.searchCaptionClases="alert alert-info";
this.searchCaption='Ожидаюокончанияввода';
this.getSearchResult();
},
createModel:function(){
this.creating=!this.creating;
},
cancelCreate:function(){
this.creating=false;
},
storeModel:function(model){
this.paginateData.data.unshift(model);
this.startAlert('Заказдобавлен');
this.creating=false;
},
updateModel:function(model){
letfinalIndex=false;
this.paginateData.data.forEach(function(item,index){
if(item.id===model.id){
finalIndex=index;
console.log(index);
}
});
if(finalIndex)
this.paginateData.data.splice(finalIndex,1,model);
this.finalCaption="Редактирование заказа успешно!";
},
deleteModel:function(model){
this.paginateData.data=this.paginateData.data.filter(item=>{
return(item.id!==model.id);
});
this.finalCaption="Заказудален!";
},
getSearchResult:_.debounce(
function(){
if(!this.clientField&&
!this.createdAtField&&
!this.statusField&&
120
!this.operationField&&
!this.agentField&&
!this.onlyMy
){
this.paginateData.data=[];
this.searchCaptionClases='alert alert-info';
this.searchCaption="Укажите параметры поиска, чтобы начать просмотр!";
return
}
this.searchCaption="Ожидайтеответ...";
this.uploadData();
},700
),
uploadData:function(url=""){
letvm=this;
letbaseUrl='/orders/searcher?'
+'client_field='+vm.clientField
+'&created_at_field='+vm.createdAtField
+'&agent_field='+vm.agentField
+'&only_my='+((vm.onlyMy)?1:"")
+'&status_field='+((vm.statusField)?vm.statusField:"")
+'&operation_Field='+((vm.operationField)?vm.operationField:"")
+url;
axios.get(baseUrl)
.then(function(response){
vm.paginateData=response.data;
if(response.data.data.length>0){
vm.reFind=true;
vm.searchCaptionClases='alert alert-success';
if(response.data.last_page===1){
vm.searchCaption="Ответполучен. Всегорезультатов: "+response.data.data.length+". ";
}else{
vm.searchCaption="Ответполучен. Показано c "+response.data.from+" по
"+(response.data.from+response.data.data.length-1)+" из "+response.data.total;
}
}else{
vm.searchCaptionClases='alert alert-warning';
vm.searchCaption='Попробуйте другие варианты поиска.';
}
})
.catch(function(error){
alert('Ошибка! Не могу связаться с API. Попробуйтезаного.'+error);
});
},
getData:function(param,page){
this.searchCaption="Ожидайтеответ...";
leturl="";
switch(param){
case'prev':
url+='&page='+(this.paginateData.current_page-1);
break;
case'next':
url+='&page='+(this.paginateData.current_page+1);
break;
default:
url+='&page='+page;
break;
}
this.uploadData(url);
},
startAlert:function(message){
this.finalCaption=message;
setTimeout(()=>{
this.dismissAlert();
},5000);
121
},
dismissAlert:function(){
this.finalCaption="";
}
},
mounted(){
letvm=this;
$('#createdAtField').datepicker({
position:'bottom left',
autoClose:true,
dateFormat:'yyyy-mm-dd',
range:true,
toggleSelected:false,
onSelect:function(fn,date){
vm.createdAtField=fn;
}
});
},
updated(){
}
});
}
window.selectStart=function(){
if($('.clientFieldSelect2').length>0){
$('.clientFieldSelect2').select2({
ajax:{
url:"/clients/searcher",
dataType:'json',
delay:750,
data:function(params){
return{
search_field:params.term,// search term
page:params.page
};
},
processResults:function(data,params){
// parse the results into the format expected by Select2
// since we are using custom formatting functions we do not need to
// alter the remote JSON data, except to indicate that infinite
// scrolling can be used
params.page=params.page||1;
return{
results:data.data,
pagination:{
more:(data.current_page
}
};
},
cache:true
},
placeholder:'Попо ID, ФИОклиента',
minimumInputLength:1,
escapeMarkup:function(markup){returnmarkup;},
templateResult:function(repo){
return'<div class="row">'+
'<div class="col-lg-12">'+
'<div class="row">'+
'<div class="col-lg-3">'+
'<span>'+repo.id+'</span>'+
'</div>'+
'<div class="col-lg-9">'+
'<span>'+repo.l_name+' '+repo.f_name+'</span>'+
'</div>'+
'</div>'+
'</div>'+
'</div>';
},
templateSelection:function(repo){
122
return'ID - '+repo.id+' | '+repo.l_name+' '+repo.f_name;
},
width:'100%'
});
}
};
if($("#buildings").length>0){
constbuildings=newVue({
el:'#buildings',
data:{
paginateData:{
current_page:1,
data:[],
first_page_url:"",
from:null,
last_page:1,
last_page_url:"",
next_page_url:null,
path:"",
per_page:15,
prev_page_url:null,
to:null,
total:0
},
addressField:"",
createdAtField:"",
clientField:"",
typeField:"",
operationField:"",
countRoomsField:[],
sqMinField:"",
sqMaxField:"",
priceMinField:"",
priceMaxField:"",
searchCaption:"Укажитепараметрыпоискадлязароса!",
searchCaptionClases:"alert alert-info",
finalCaption:"",
creating:false,
operations:backToFront.operations,
types:backToFront.types,
},
computed:{
buildings:function(){
returnthis.paginateData.data;
},
},
watch:{
addressField:function(){
this.startSearch();
},
clientField:function(){
this.startSearch();
},
createdAtField:function(){
this.startSearch();
},
typeField:function(){
this.startSearch();
},
countRoomsField:function(){
this.startSearch();
},
operationField:function(){
this.startSearch();
},
sqMinField:function(){
this.startSearch();
},
sqMaxField:function(){
123
this.startSearch();
},
priceMinField:function(){
this.startSearch();
},
priceMaxField:function(){
this.startSearch();
}
},
methods:{
startSearch:function(){
this.searchCaptionClases="alert alert-info";
this.searchCaption='Ожидаюокончанияввода';
this.getSearchResult();
},
createModel:function(){
this.creating=!this.creating;
},
cancelCreate:function(){
this.creating=false;
},
storeModel:function(model){
this.paginateData.data.unshift(model);
this.startAlert('Недвижимостьдобавлена');
this.creating=false;
},
updateModel:function(model){
letfinalIndex=false;
this.paginateData.data.forEach(function(item,index){
if(item.id===model.id){
finalIndex=index;
console.log(index);
}
});
if(finalIndex)
this.paginateData.data.splice(finalIndex,1,model);
this.finalCaption="Редактирование недвижимости успешно!";
},
deleteModel:function(model){
this.paginateData.data=this.paginateData.data.filter(item=>{
return(item.id!==model.id);
});
this.finalCaption="Недвижимостьудалена!";
},
getSearchResult:_.debounce(
function(){
if(!this.clientField&&
!this.createdAtField&&
!this.typeField&&
!this.operationField&&
!this.countRoomsField&&
!this.addressField&&
!this.priceMinField&&
!this.priceMaxField&&
!this.sqMaxField&&
!this.sqMinField
){
this.paginateData.data=[];
this.searchCaptionClases='alert alert-info';
this.searchCaption="Укажите параметры поиска, чтобы начать просмотр!";
return
}
this.searchCaption="Ожидайтеответ...";
124
this.uploadData();
},700
),
uploadData:function(url=""){
letvm=this;
letbaseUrl='/buildings/searcher?'
+'&address_field='+vm.addressField
+'&client_field='+vm.clientField
+'&created_at_field='+vm.createdAtField
+'&type_field='+vm.typeField
+'&operation_field='+((vm.operationField)?vm.operationField:"")
+'&count_rooms_field='+vm.countRoomsField
+'&price_min_field='+vm.priceMinField
+'&price_max_field='+vm.priceMaxField
+'&sq_min_field='+vm.sqMinField
+'&sq_max_field='+vm.sqMaxField
+url;
axios.get(baseUrl)
.then(function(response){
vm.paginateData=response.data;
if(response.data.data.length>0){
vm.reFind=true;
vm.searchCaptionClases='alert alert-success';
if(response.data.last_page===1){
vm.searchCaption="Ответполучен. Всегорезультатов: "+response.data.data.length+". ";
}else{
vm.searchCaption="Ответполучен. Показано c "+response.data.from+" по
"+(response.data.from+response.data.data.length-1)+" из "+response.data.total;
}
}else{
vm.searchCaptionClases='alert alert-warning';
vm.searchCaption='Попробуйте другие варианты поиска.';
}
})
.catch(function(error){
alert('Ошибка! Не могу связаться с API. Попробуйтезаного.'+error);
});
},
getData:function(param,page){
this.searchCaption="Ожидайтеответ...";
leturl="";
switch(param){
case'prev':
url+='&page='+(this.paginateData.current_page-1);
break;
case'next':
url+='&page='+(this.paginateData.current_page+1);
break;
default:
url+='&page='+page;
break;
}
this.uploadData(url);
},
startAlert:function(message){
this.finalCaption=message;
setTimeout(()=>{
this.dismissAlert();
},5000);
},
dismissAlert:function(){
this.finalCaption="";
}
},
mounted(){
125
letvm=this;
$('#createdAtField').datepicker({
position:'bottom left',
autoClose:true,
dateFormat:'yyyy-mm-dd',
range:true,
toggleSelected:false,
onSelect:function(fn,date){
vm.createdAtField=fn;
}
});
},
updated(){
}
});
}
if($("#contracts").length>0){
constcontracts=newVue({
el:'#contracts',
data:{
paginateData:{
current_page:1,
data:[],
first_page_url:"http://camobjects/cObjects/searcher?page=1",
from:null,
last_page:1,
last_page_url:"http://camobjects/cObjects/searcher?page=1",
next_page_url:null,
path:"http://camobjects/cObjects/searcher",
per_page:15,
prev_page_url:null,
to:null,
total:0
},
contractField:"",
createdAtField:"",
buildingField:"",
contractTypeField:"",
operationField:"",
searchCaption:"Укажитепараметрыпоискадлязароса!",
searchCaptionClases:"alert alert-info",
finalCaption:"",
creating:false,
type:backToFront.types,
operations:backToFront.operations
},
computed:{
clientsBr:function(){
returnthis.paginateData.data;
},
},
watch:{
contractField:function(){
this.startSearch();
},
createdAtField:function(){
this.startSearch();
},
buildingField:function(){
this.startSearch();
},
contractTypeField:function(){
this.startSearch();
},
operationField:function(){
this.startSearch();
}
},
methods:{
126
startSearch:function(){
this.searchCaptionClases="alert alert-info";
this.searchCaption='Ожидаюокончанияввода';
this.getSearchResult();
},
createModel:function(){
this.creating=!this.creating;
},
cancelCreate:function(){
this.creating=false;
},
storeModel:function(model){
this.paginateData.data.unshift(model);
this.startAlert('Клиентдобавлен');
this.creating=false;
},
updateModel:function(model){
letfinalIndex=false;
this.paginateData.data.forEach(function(item,index){
if(item.id===model.id){
finalIndex=index;
console.log(index);
}
});
if(finalIndex)
this.paginateData.data.splice(finalIndex,1,model);
this.finalCaption="Редактирование клинта успешно!";
},
deleteModel:function(model){
this.paginateData.data=this.paginateData.data.filter(item=>{
return(item.id!==model.id);
});
this.finalCaption="Клиентудален!";
},
getSearchResult:_.debounce(
function(){
if(!this.contractField&&
!this.createdAtField&&
!this.buildingField&&
!this.contractTypeField&&
!this.operationField
){
this.paginateData.data=[];
this.searchCaptionClases='alert alert-info';
this.searchCaption="Укажите параметры поиска, чтобы начать просмотр!";
return
}
this.searchCaption="Ожидайтеответ...";
this.uploadData();
},700
),
uploadData:function(url=""){
letvm=this;
letbaseUrl='/clients/searcher?'
+'contract_field='+vm.contractField
+'&created_at_field='+vm.createdAtField
+'&building_field='+vm.buildingField
+'&contract_type_field='+vm.contractTypeField
+'&operation_field='+vm.operationField
+url;
axios.get(baseUrl/* + '&searchDostup=' +vm.searchDostup + '&searchWork='
+vm.searchWork

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
IPO - инструмент финансирования деятельности организации. На примере ПАО «Нефтяная компания «Лукойл»
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)