add group

This commit is contained in:
CHIEFSOFT\ameye
2023-12-27 10:31:11 -05:00
parent 113fe6f5af
commit 99f4d4684a
3 changed files with 144 additions and 17 deletions
@@ -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);
// }
+3
View File
@@ -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);
}