%PDF- %PDF-
Direktori : /home/ugotscom/3vfm3/resources/js/components/clients/ |
Current File : /home/ugotscom/3vfm3/resources/js/components/clients/clientdetail.vue |
<template> <div class="container" > <div class="row" v-for="user in users" :key="user.id"> <div class="col-md"> <div class="card"> <div class="card-body"> <ul class="nav nav-tabs nav-justified"> <li class="nav-item"> <a class="nav-link" @click.prevent="setActive('activity')" :class="{ active: isActive('activity') }" href="#activity">Activity</a> </li> <li class="nav-item"> <a class="nav-link" @click.prevent="setActive('projects')" :class="{ active: isActive('projects') }" href="#projects">Properties</a> </li> <li class="nav-item"> <a class="nav-link" @click.prevent="setActive('tasks')" :class="{ active: isActive('tasks') }" href="#tasks">Tasks</a> </li> <li class="nav-item"> <a class="nav-link" @click.prevent="setActive('documents')" :class="{ active: isActive('documents') }" href="#documents">Documents</a> </li> <li class="nav-item"> <a class="nav-link" @click.prevent="setActive('accounts')" :class="{ active: isActive('accounts') }" href="#accounts">Accounts</a> </li> <li class="nav-item"> <a class="nav-link" @click.prevent="setActive('requirements')" :class="{ active: isActive('requirements') }" href="#requirements">Requirement</a> </li> <li class="nav-item"> <a class="nav-link" @click.prevent="setActive('requests')" :class="{ active: isActive('requests') }" href="#requests">Maintenance</a> </li> </ul> <div class="tab-content py-3" id="myTabContent"> <div class="tab-pane fade" :class="{ 'active show': isActive('activity') }" id="activity"> </div> <div class="tab-pane fade" :class="{ 'active show': isActive('projects') }" id="projects"> <div v-for="property in properties.data" :key="property.id"> <div class="card border-left-primary shadow h-100 py-2"> <div class="card-body"> <div class="row"> <div class="col-md-3"> <img v-bind:src="'../images/'+property.featured_image" /> </div> <div class="col-md-9"> <p>{{property.title}}</p> <div class="row"> <div class="col"> <p>Build up Area{{property.buildup_area}}Sqft</p></div> <div class="col"><p>Carpet Area{{property.carpet_area}}Sqft</p></div> <div class="col"><p>{{property.bhk}} BHK</p></div> </div> <p>Price Rs{{property.price}}</p> <p>Deposit Rs{{property.price*6}}</p> <p>{{property.description}}</p> </div> </div> </div> </div> </div> <pagination :data="properties" @pagination-change-page="getProperties"></pagination> </div> <div class="tab-pane fade" :class="{ 'active show': isActive('tasks') }" id="tasks"> <h2>taskls</h2> <div v-for="task in tasks.data" :key="task.id"> <p>{{task.id}}</p> <p>{{task.task}}</p> </div> <pagination :data="tasks" @pagination-change-page="getResults"></pagination> </div> <div class="tab-pane fade" :class="{ 'active show': isActive('documents') }" id="documents">documents content</div> <div class="tab-pane fade" :class="{ 'active show': isActive('requirements') }" id="requirements"> <div v-for="lead in leads.data" :key="lead.id"> <div class="card border-left-primary shadow h-100 py-2"> <div class="card-body"> <div class="row"> <div class="col-md-3"> </div> <div class="col-md-9"> <p>{{lead.property_for}}</p> <p>{{lead.additional_info}}</p> <div class="row"> </div> </div> </div> </div> </div> </div> <pagination :data="leads" @pagination-change-page="getLeads"></pagination> </div> <div class="tab-pane fade" :class="{ 'active show': isActive('requests') }" id="requests">Maintenance content</div> <div class="tab-pane fade" :class="{ 'active show': isActive('accounts') }" id="accounts">accounts content</div> </div> </div> </div> </div> <div class="col-md-3"> <b-dropdown id="dropdown-1" text="Actions" class="m-md-2"> <b-dropdown-item><router-link to="/addticket">Add Ticket</router-link></b-dropdown-item> <b-dropdown-item><a v-b-toggle href="#example-collapse" @click.prevent>Add task</a></b-dropdown-item> <b-dropdown-item>Add Properties</b-dropdown-item> <b-dropdown-item>Add Maintenance Request</b-dropdown-item> <b-dropdown-item>Add Document</b-dropdown-item> <b-dropdown-divider></b-dropdown-divider> <b-dropdown-item active>Active action</b-dropdown-item> <b-dropdown-item disabled>Disabled action</b-dropdown-item> </b-dropdown> <b-sidebar id="example-collapse" class="w-50" title="Add Client" right shadow backdrop backdrop-variant="dark"> <h2>Add Task</h2> <form action="/tasks" method="POST" @submit.prevent="addtask()"> <div class="form-group"> <input type="hidden" class="form-control" v-model="id" placeholder="client_id"> </div> <div class="form-group"> <label for="task">Task</label> <input type="text" class="form-control" name="task" v-model="task" placeholder="Task"> </div> <div class="form-row"> <div class="form-group"> <label for="status">status</label> <input type="text" class="form-control" name="status" v-model="status"> </div> </div> <button type="submit" value="submit" class="btn btn-primary">Submit</button> </form> </b-sidebar> <div class="card"> <div class="card-body"> <img src="/images/profile.png" class="img-responsive profile-img"> <h4 class="profile-title">{{user.name}}</h4> <span>Contact Details</span> <p>{{user.email}}</p> <p>{{user.phone}}</p> <div class="form-group"> <label for="pwd">Phone:</label> <p>{{user.phone}}</p> </div> <div class="form-group"> <label for="pwd">Whatsapp No:</label> <p>{{user.phone}}</p> </div> <div class="form-group"> <label for="pwd">Address:</label> <p></p> </div> </div> </div> </div> </div> </div> </template> <script> export default { data(){ return { id:this.$route.params.id, clientid:1, client_id:'', task:'', status:'', id:this.$route.params.id, users:[], tasks:{}, activeItem: 'activity', properties:{}, leads:{}, profiles:[], } }, methods:{ loadusers(){ axios.get('/client/clientdetails/'+this.id) .then(response => { this.users = response.data }) }, loadtasks(){ axios.get('/tasks/taskdetails/'+this.id).then(response => { this.tasks = response.data }) }, getResults(page = 1) { axios.get('/tasks/taskdetails/'+this.id+'?page=' + page) .then(response => { this.tasks = response.data; }); }, addtask(){ axios .post('/tasks', { client_id: this.client_id, task: this.task, status:this.status }) .then(function (response) { //handle success console.log(response); }); this.$root.$emit('bv::toggle::collapse', 'example-collapse') }, isActive (menuItem) { return this.activeItem === menuItem }, setActive (menuItem) { this.activeItem = menuItem }, getProperties:function(page = 1) { axios.get('/properties/propertydetails/'+this.id+'?page=' + page) .then(response => { this.properties = response.data; }); }, loadproperties:function(){ axios.get('/properties/propertydetails/'+this.id).then(({data})=> (this.properties = data)); }, getLeads:function(page = 1) { axios.get('/leads/leaddetails/'+this.id+'?page=' + page) .then(response => { this.leads = response.data; }); }, loadLeads:function(){ axios.get('/leads/leaddetails/'+this.id).then(({data})=> (this.leads = data)); }, }, created: function(){ this.loadusers(), this.loadtasks(), this.loadproperties(), this.loadLeads() } } </script> <style scoped> .nav-tabs .nav-link.active, .nav-tabs .nav-item.show .nav-link { color: #ffffff; background-color: #0d75dd; border-color: #dee2e6 #dee2e6 #f8fafc; } #tasks ul { padding: 0; margin: 0; list-style: none; } .profile-title{ font-size: 1em; } </style>