add group
This commit is contained in:
@@ -25,14 +25,16 @@
|
||||
<div style="float: left; width: 75%; padding-right: 10px; ">
|
||||
<ion-select label="Select Group"
|
||||
[(ngModel)]='job_group'
|
||||
(ionChange)="refreshList()"
|
||||
(ionChange)="refreshGroupOnChange()"
|
||||
style=" background-color: #3dc2ff;
|
||||
border-radius: 10px; font-size: 12px; height: 35px;"
|
||||
placeholder="Select Group"
|
||||
label-placement="stacked">
|
||||
<ion-select-option value="" selected="true">Select Group</ion-select-option>
|
||||
<ion-select-option *ngFor="let item of jobGroupDataResult"
|
||||
value="{{item.group_id}}">{{item.group_name}}</ion-select-option>
|
||||
value="{{item.group_id}}"
|
||||
selected
|
||||
>{{item.group_name}}</ion-select-option>
|
||||
</ion-select>
|
||||
</div>
|
||||
<div style="float: right; width: 20%;">
|
||||
@@ -61,14 +63,15 @@
|
||||
<ion-item-option color="danger">Delete</ion-item-option>
|
||||
</ion-item-options>
|
||||
</ion-item-sliding>
|
||||
<ion-item *ngIf="job_group > 0">
|
||||
<ion-button
|
||||
size="small"
|
||||
(click)="addGroupMember()"
|
||||
shape="round"
|
||||
expand="block">Add Member</ion-button>
|
||||
</ion-item>
|
||||
|
||||
</ion-list>
|
||||
<div *ngIf="job_group > 0" style="text-align: right; margin-top: 10px; width: 100%;">
|
||||
<ion-button
|
||||
size="small"
|
||||
(click)="addGroupMember()"
|
||||
shape="round"
|
||||
>Add Member</ion-button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
@@ -178,14 +181,42 @@
|
||||
</ion-header>
|
||||
<ion-content class="ion-padding">
|
||||
<ion-grid style="background-color: lightgoldenrodyellow;">
|
||||
<ion-row>
|
||||
<ion-col>
|
||||
{{current_group_name}}
|
||||
</ion-col>
|
||||
</ion-row>
|
||||
<ion-row>
|
||||
<ion-col>
|
||||
<ion-input
|
||||
maxlength="25"
|
||||
(ionChange)="inVerifyNewGroup()"
|
||||
[(ngModel)]="new_group_name"
|
||||
placeholder="Firstname"
|
||||
(ionChange)="inVerifyNewMember()"
|
||||
[(ngModel)]="firstname"
|
||||
style="background-color: aliceblue; border-radius: 10px;"
|
||||
label="New Group Name.">
|
||||
label="Firstname">
|
||||
</ion-input>
|
||||
</ion-col>
|
||||
<ion-col>
|
||||
<ion-input
|
||||
maxlength="25"
|
||||
placeholder="Lastname"
|
||||
(ionChange)="inVerifyNewMember()"
|
||||
[(ngModel)]="lastname"
|
||||
style="background-color: aliceblue; border-radius: 10px;"
|
||||
label="Lastname">
|
||||
</ion-input>
|
||||
</ion-col>
|
||||
</ion-row>
|
||||
<ion-row>
|
||||
<ion-col>
|
||||
<ion-input
|
||||
maxlength="35"
|
||||
placeholder="Email"
|
||||
(ionChange)="inVerifyNewMember()"
|
||||
[(ngModel)]="email"
|
||||
style="background-color: aliceblue; border-radius: 10px;"
|
||||
label="Email">
|
||||
</ion-input>
|
||||
</ion-col>
|
||||
</ion-row>
|
||||
@@ -196,10 +227,10 @@
|
||||
<ion-col style="text-align: right;">
|
||||
<ion-button
|
||||
shape="round"
|
||||
[disabled]="isDisabled"
|
||||
[disabled]="isMemberDisabled"
|
||||
size="small"
|
||||
(click)="processAddGroup()">
|
||||
Add Group
|
||||
(click)="processAddMember()">
|
||||
Add Member
|
||||
</ion-button>
|
||||
</ion-col>
|
||||
</ion-row>
|
||||
|
||||
@@ -12,14 +12,17 @@ import {JobgroupDataService} from "../../store/jobgroup-data.service";
|
||||
export class JobGroupComponent implements OnInit {
|
||||
@ViewChild('job_group') job_group;
|
||||
@ViewChild('new_group_name') new_group_name;
|
||||
|
||||
@Input('jobData') jobData:any;
|
||||
current_group_name:string='';
|
||||
current_group_id:number=0;
|
||||
|
||||
constructor( public sessionDataProviderService: SessionDataProviderService,
|
||||
private wrenchService: WrenchService,
|
||||
public jobgroupDataService: JobgroupDataService,
|
||||
private alertController: AlertController,
|
||||
private loadingCtrl: LoadingController) { }
|
||||
private loadingCtrl: LoadingController) {
|
||||
this.job_group=0;
|
||||
}
|
||||
|
||||
jobGroupDataTotalResult: any;
|
||||
jobGroupDataResult: any;
|
||||
@@ -49,7 +52,22 @@ export class JobGroupComponent implements OnInit {
|
||||
this.group_count = this.jobGroupDataResult?.length;
|
||||
}
|
||||
jobGroupListFilterdData:any;
|
||||
jobGroupSelected:any;
|
||||
|
||||
refreshGroupOnChange(){
|
||||
if( this.isModalMemberOpen== false){
|
||||
this.current_group_id = this.job_group;
|
||||
this.refreshList();
|
||||
}
|
||||
}
|
||||
refreshList(){
|
||||
this.current_group_name ='';
|
||||
this.jobGroupSelected = this.jobGroupDataResult.filter(m=> m.group_id== this.job_group);
|
||||
if (this.jobGroupSelected.length == 1){
|
||||
this.current_group_name=this.jobGroupSelected[0].group_name;
|
||||
}
|
||||
|
||||
//debugger;
|
||||
this.group_member_count= 0;
|
||||
this.jobGroupListFilterdData = this.jobGroupListDataResult.filter(k=> k.group_id == this.job_group);
|
||||
this.group_member_count= this.jobGroupListFilterdData.length;
|
||||
@@ -228,11 +246,86 @@ export class JobGroupComponent implements OnInit {
|
||||
|
||||
isModalMemberOpen:boolean = false;
|
||||
isModalMemberOpenBackdrop:boolean = false;
|
||||
|
||||
@ViewChild('firstname') firstname;
|
||||
@ViewChild('lastname') lastname;
|
||||
@ViewChild('email') email;
|
||||
|
||||
addGroupMember(){
|
||||
// debugger;
|
||||
var dddd = this.jobGroupListFilterdData;
|
||||
this.isModalMemberOpen = true;
|
||||
this.isModalMemberOpenBackdrop= true;
|
||||
}
|
||||
isMemberDisabled:boolean= true;
|
||||
inVerifyNewMember(){
|
||||
// debugger;
|
||||
this.isMemberDisabled= true;
|
||||
if (this.firstname.length> 2 && this.lastname.length> 2 && this.validateEmail(this.email) == true){
|
||||
this.isMemberDisabled= false;
|
||||
}
|
||||
}
|
||||
|
||||
validateEmail(email) {
|
||||
var re = /\S+@\S+\.\S+/;
|
||||
return re.test(email);
|
||||
}
|
||||
|
||||
memberAddResult:any;
|
||||
member_added_result: string;
|
||||
reqCreateMemberData: {
|
||||
action:number,
|
||||
member_id: number,
|
||||
uid: string,
|
||||
sessionid: string,
|
||||
group_id: number,
|
||||
firstname: string,
|
||||
lastname: string,
|
||||
email: string,
|
||||
};
|
||||
processAddMember(){
|
||||
/*
|
||||
REQ_LONG(in, "group_id", 1, -1);
|
||||
REQ_LONG(in, "member_id", 1, -1);
|
||||
REQ_STRING(in, "firstname", 1, 29, "(.*)");
|
||||
REQ_STRING(in, "lastname", 1, 29, "(.*)");
|
||||
REQ_STRING(in, "email", 1, 149, "(.*)");
|
||||
*/
|
||||
this.reqCreateMemberData={
|
||||
action:13015,
|
||||
member_id: this.sessionDataProviderService.member_id,
|
||||
uid: this.sessionDataProviderService.member_uid,
|
||||
sessionid: this.sessionDataProviderService.session,
|
||||
group_id: this.current_group_id,
|
||||
firstname: this.firstname,
|
||||
lastname: this.lastname,
|
||||
email: this.email,
|
||||
};
|
||||
|
||||
this.wrenchService.jobGroupMemberAdd(this.reqCreateMemberData).subscribe(
|
||||
memberAddResult => {
|
||||
this.memberAddResult = memberAddResult;
|
||||
console.log("memberAddResult RETURN->", this.memberAddResult);
|
||||
if ( this.memberAddResult != undefined && this.memberAddResult.internal_return > 0){
|
||||
this.member_added_result = "Member Added.";
|
||||
this.firstname=this.lastname=this.email='';
|
||||
this.jobgroupDataService.getjobGroupData();
|
||||
//const event = new Event("app-myjob-offers-refresh");
|
||||
// Dispatch the event.
|
||||
// dispatchEvent(event);
|
||||
setTimeout(() => {
|
||||
this.refreshList();
|
||||
this.member_added_result ='';
|
||||
}, 3000);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
}
|
||||
// jobGroupAdd(reqData){
|
||||
// return this.getPostData("jobgroupadd", reqData);
|
||||
// }
|
||||
|
||||
@@ -209,6 +209,9 @@ export class WrenchService {
|
||||
return this.getPostData("jobgroupadd", reqData);
|
||||
}
|
||||
|
||||
jobGroupMemberAdd(reqData){
|
||||
return this.getPostData("groupmemberadd", reqData);
|
||||
}
|
||||
getFamilyWallets(reqData) {
|
||||
return this.getPostData("familywallet", reqData);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user