Skip to content

Commit

Permalink
solved future date selecttion issue and back button show/hide issue. F…
Browse files Browse the repository at this point in the history
…ixes #286
  • Loading branch information
iamronakshah committed Mar 17, 2017
1 parent 99018e8 commit a19f532
Show file tree
Hide file tree
Showing 3 changed files with 38 additions and 33 deletions.
Expand Up @@ -249,10 +249,16 @@ private async Task<List<TaskMailReportAc>> TaskMailsDetailAsync(string userId, s
List<TaskMailReportAc> taskMailReportAcList = new List<TaskMailReportAc>();
//find maximum and minimum date from the employee task mails
IEnumerable<TaskMail> taskMails = (await _taskMailRepository.FetchAsync(x => x.EmployeeId == userId)).ToList();
DateTime maxDate = taskMails.Max(x => x.CreatedOn);
DateTime minDate = taskMails.Min(x => x.CreatedOn);
_logger.Debug("Task Mail Detail Async maxDate" + maxDate);
_logger.Debug("Task Mail Detail Async minDate" + minDate);
DateTime maxDate, minDate;
if (taskMails.Any())
{
maxDate = taskMails.Max(x => x.CreatedOn);
minDate = taskMails.Min(x => x.CreatedOn);
}
else {
maxDate = selectedDate;
minDate = selectedDate;
}
//getting task mail information.
TaskMailReportAc taskMailReportAc = await GetTaskReportAsync(userId, role, userName, selectedDate.Date, maxDate.Date, minDate.Date);
taskMailReportAcList.Add(taskMailReportAc);
Expand Down
Expand Up @@ -15,12 +15,12 @@ import { LoaderService } from '../../shared/loader.service';
})
export class TaskMailDetailsComponent implements OnInit {
taskMail: Array<TaskMailModel>;
public IsMaxDate: boolean;
public IsMinDate: boolean;
public SelectedDate: string;
public MaxDate: string; // For Date Picker
public MinDate: string; // For Date Picker
public IsHide: boolean;
public isMaxDate: boolean;
public isMinDate: boolean;
public selectedDate: string;
public maxDate: string; // For Date Picker
public minDate: string; // For Date Picker
public isHide: boolean;
constructor(private route: ActivatedRoute, private router: Router, private taskService: TaskService, private stringConstant: StringConstant, private loader: LoaderService) {
}
ngOnInit() {
Expand All @@ -30,21 +30,21 @@ export class TaskMailDetailsComponent implements OnInit {
this.loader.loader = true;
this.route.params.subscribe(params => {
if (params[this.stringConstant.userRole] === this.stringConstant.RoleAdmin) {
this.IsHide = false;
this.isHide = false;
}
else {
this.IsHide = true;
this.isHide = true;
}
this.IsMaxDate = true;
this.isMaxDate = true;
this.taskService.getTaskMailDetailsReport(params[this.stringConstant.paramsUserId], params[this.stringConstant.userRole], params[this.stringConstant.paramsUserName]).subscribe(taskMails => {
this.taskMail = taskMails;
let datePipeMinDate = new DatePipe(this.stringConstant.medium);
this.MinDate = datePipeMinDate.transform(this.taskMail[0].MinDate, this.stringConstant.dateDefaultFormat);
this.minDate = datePipeMinDate.transform(this.taskMail[0].MinDate, this.stringConstant.dateDefaultFormat);
if (datePipeMinDate.transform(this.taskMail[0].MinDate, this.stringConstant.dateDefaultFormat) === datePipeMinDate.transform(this.taskMail[0].CreatedOn, this.stringConstant.dateDefaultFormat)) {
this.IsMinDate = true;
this.isMinDate = true;
}
let datePipeMaxDate = new DatePipe(this.stringConstant.medium);
this.MaxDate = datePipeMaxDate.transform(this.taskMail[0].MaxDate, this.stringConstant.dateDefaultFormat);
this.maxDate = datePipeMaxDate.transform(this.taskMail[0].MaxDate, this.stringConstant.dateDefaultFormat);
this.taskMail.forEach(taskmails => {
let datePipe = new DatePipe(this.stringConstant.medium);
taskmails.CreatedOns = datePipe.transform(taskmails.CreatedOn, this.stringConstant.dateFormat);
Expand All @@ -62,12 +62,12 @@ export class TaskMailDetailsComponent implements OnInit {
}
getTaskMailPrevious(UserName, UserId, UserRole, CreatedOn) {
this.loader.loader = true;
this.SelectedDate = this.stringConstant.empty;
this.selectedDate = this.stringConstant.empty;
this.taskService.getTaskMailDetailsReportPreviousDate(UserName, UserId, UserRole, CreatedOn).subscribe(taskMails => {
this.taskMail = taskMails;
let datePipeMinDate = new DatePipe(this.stringConstant.medium);
if (datePipeMinDate.transform(this.taskMail[0].MinDate, this.stringConstant.dateDefaultFormat) === datePipeMinDate.transform(this.taskMail[0].CreatedOn, this.stringConstant.dateDefaultFormat)) {
this.IsMinDate = true;
this.isMinDate = true;
}
this.taskMail.forEach(taskmails => {
let datePipe = new DatePipe(this.stringConstant.medium);
Expand All @@ -79,18 +79,18 @@ export class TaskMailDetailsComponent implements OnInit {
});
this.loader.loader = false;
});
this.IsMaxDate = false;
this.isMaxDate = false;
}
getTaskMailNext(UserName, UserId, UserRole, CreatedOn) {
this.loader.loader = true;
this.SelectedDate = this.stringConstant.empty;
this.selectedDate = this.stringConstant.empty;
this.taskService.getTaskMailDetailsReportNextDate(UserName, UserId, UserRole, CreatedOn).subscribe(taskMails => {
this.taskMail = taskMails;
let datePipeMaxDate = new DatePipe(this.stringConstant.medium);
if (datePipeMaxDate.transform(this.taskMail[0].MaxDate, this.stringConstant.dateDefaultFormat) === datePipeMaxDate.transform(this.taskMail[0].CreatedOn, this.stringConstant.dateDefaultFormat)) {
this.IsMaxDate = true;
this.isMaxDate = true;
}
this.IsMinDate = false;
this.isMinDate = false;
this.taskMail.forEach(taskmails => {
let datePipe = new DatePipe(this.stringConstant.medium);
taskmails.CreatedOns = datePipe.transform(taskmails.CreatedOn, this.stringConstant.dateFormat);
Expand All @@ -99,21 +99,21 @@ export class TaskMailDetailsComponent implements OnInit {

});
});
this.loader.loader = false;
this.loader.loader = false;
});
}
getTaskMailForSelectedDate(UserName, UserId, UserRole, CreatedOn, SelectedDate) {
this.loader.loader = true;
this.taskService.getTaskMailDetailsReportSelectedDate(UserName, UserId, UserRole, CreatedOn, SelectedDate).subscribe(taskMails => {
this.taskMail = taskMails;
this.IsMaxDate = false;
this.IsMinDate = false;
this.isMaxDate = false;
this.isMinDate = false;
let datePipe = new DatePipe(this.stringConstant.medium);
if (datePipe.transform(this.taskMail[0].MaxDate, this.stringConstant.dateFormat) === datePipe.transform(this.taskMail[0].CreatedOn, this.stringConstant.dateFormat)) {
this.IsMaxDate = true;
this.isMaxDate = true;
}
if (datePipe.transform(this.taskMail[0].MinDate, this.stringConstant.dateFormat) === datePipe.transform(this.taskMail[0].CreatedOn, this.stringConstant.dateFormat)) {
this.IsMinDate = true;
this.isMinDate = true;
}
this.taskMail.forEach(taskmails => {
taskmails.CreatedOns = datePipe.transform(taskmails.CreatedOn, this.stringConstant.dateFormat);
Expand Down
Expand Up @@ -5,22 +5,21 @@ <h3>Task Mail Details</h3>
</div>
<div class="title_right">
<div class="form-group pull-right ">
<button class="btn btn-back btn-success btn-sm" (click)="getTaskMailList()" [hidden]="IsHide"><i class="fa fa-arrow-left"></i>Back</button>
<button class="btn btn-back btn-success btn-sm" (click)="getTaskMailList()" *ngIf="isHide==false"><i class="fa fa-arrow-left"></i>Back</button>
</div>
</div>
</div>

<div class="row">
<div class="col-md-12 col-sm-12 col-xs-12">
<div class="x_panel">
<div class="x_content">
<div class="form-group row m-0">
<label class="control-label col-md-1 selc-date">Select Date:</label>
<div class="col-md-4">
<input type="date" class="form-control col-md-4" name="selectDate" [(ngModel)]="SelectedDate" [max]="MaxDate" [min]="MinDate">
<input type="date" class="form-control col-md-4" name="selectDate" onkeydown="return false" [(ngModel)]="selectedDate" [max]="maxDate" [min]="minDate">
</div>
<div class="col-md-2">
<button class="btn btn-success" (click)="getTaskMailForSelectedDate(taskMail[0].UserName,taskMail[0].UserId,taskMail[0].UserRole,taskMail[0].CreatedOns,SelectedDate)">Search</button>
<button class="btn btn-success" (click)="getTaskMailForSelectedDate(taskMail[0].UserName,taskMail[0].UserId,taskMail[0].UserRole,taskMail[0].CreatedOns,selectedDate)">Search</button>
</div>
</div>
<div *ngFor="let taskmailUser of taskMail" class="tsk-view">
Expand Down Expand Up @@ -57,8 +56,8 @@ <h3>Task Mail Details</h3>
</div>
<div class="x_title"></div>
<div class="row m-0">
<button [disabled]="IsMinDate" (click)="getTaskMailPrevious(taskMail[0].UserName,taskMail[0].UserId,taskMail[0].UserRole,taskMail[0].CreatedOns)" class="btn btn-success pull-left"> Previous</button>
<button [disabled]="IsMaxDate" (click)="getTaskMailNext(taskMail[0].UserName,taskMail[0].UserId,taskMail[0].UserRole,taskMail[0].CreatedOns)" class="btn btn-success pull-right"> Next</button>
<button [disabled]="isMinDate" (click)="getTaskMailPrevious(taskMail[0].UserName,taskMail[0].UserId,taskMail[0].UserRole,taskMail[0].CreatedOns)" class="btn btn-success pull-left"> Previous</button>
<button [disabled]="isMaxDate" (click)="getTaskMailNext(taskMail[0].UserName,taskMail[0].UserId,taskMail[0].UserRole,taskMail[0].CreatedOns)" class="btn btn-success pull-right"> Next</button>
</div>
</div>
</div>
Expand Down

0 comments on commit a19f532

Please sign in to comment.