Merge pull request 'mazdak/UX-1320' (#7) from mazdak/UX-1320 into dev-pending-09-12-2025

Reviewed-on: https://ct.mfsys.com.pk/aConnect/aConnect-UX/pulls/7
mazdak/UX-1373
Naeem Ullah 3 days ago
commit 3c3f1b5ee0

@ -1 +1,236 @@
<p>ib-unblock-user works!</p> <div id="layout-wrapper">
<div class="inner-pg-sp">
<div class="container-fluid">
<div class="row">
<div class="col-12">
<div class="d-sm-flex align-items-center justify-content-between navbar-header p-0">
</div>
</div>
</div>
<div class="container-fluid">
<div class="col-xl-12 mt-4">
<div class="card border">
<div class="card-body">
<div class="table-section">
<div class="row">
<div class="col-lg-12">
<div class="card-body mt-2 p-0">
<div class="card mb-0 mt-2">
<div
class="card-header font-edit-13-child d-flex justify-content-between align-items-center">
{{'IBChildTitle' | translate}}
</div>
<div class="card-body">
<form>
<div class="row g-3 mb-3">
<div class="col-md-6">
<div class="d-flex align-items-center gap-2">
<label for="selectIdentValueType" class="text-nowrap">
{{ 'selectIdentValueType' | translate }}<span
class="mandatory">*</span>
</label>
<div
class="password-wrapper position-relative w-100">
<div class="d-flex flex-row align-items-stretch">
<ng-select class="custom-select col-md-12 custom-select-sm ms-2 seleted-edit" [(ngModel)]="optionValue"
placeholder="{{ 'selectIdentValueType' | translate }}"
name="optionValue" [clearable]="false" [searchable]="false">
<!-- Select Type (CLICKABLE) -->
<ng-option value="select">
{{ 'selectIdentValueType' | translate }}
</ng-option>
<ng-option value="cnic">
{{ 'cnic_scnic' | translate }}
</ng-option>
<ng-option value="passport">
{{ 'passport' | translate }}
</ng-option>
<ng-option value="nicop">
{{ 'nicop' | translate }}
</ng-option>
<ng-option value="poc">
{{ 'poc' | translate }}
</ng-option>
</ng-select>
</div>
<!-- <div class="text-danger">
{{ 'requiredField' | translate }}
</div> -->
</div>
</div>
</div>
<div class="col-md-6">
<div class="d-flex align-items-center gap-2">
<label for="custId" class="text-nowrap">
{{ 'custId' | translate }}<span
class="mandatory">*</span>
</label>
<div
class="password-wrapper position-relative w-100">
<input id="custId" type="text" class="form-control"
placeholder="{{ 'enterIdentityValue' | translate }}"
maxlength="500"
appNoWhitespaces rows="3" />
</div>
</div>
</div>
</div>
<div class="row g-3 mb-3">
<div class="col-md-6 ms-auto text-end">
<button
class="btn btn-primary waves-effect waves-light">{{'fetchCustomer'
| translate}}</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="container-fluid">
<div class="col-xl-12 mt-4">
<div class="card border">
<div class="card-body">
<div class="table-section">
<div class="row">
<div class="col-lg-12">
<div class="card-body mt-2 p-0">
<div class="card mb-0 mt-2">
<div
class="card-header font-edit-13-child d-flex justify-content-between align-items-center">
{{'unblockUserDetails' | translate}}
<div class="d-flex align-items-center gap-2">
<div class="search-box">
<input type="text" class="form-control form-control-sm"
placeholder="{{ 'search' | translate }}">
<i class="fas fa-search search-icon"></i>
</div>
<i class="materialdesignicons">
<ng-container *ngIf="renewalDataExpanded; else collapsedIcon">
<i class="dripicons-chevron-up float-end"></i>
</ng-container>
<ng-template #collapsedIcon>
<i class="dripicons-chevron-down float-end"></i>
</ng-template>
</i>
</div>
</div>
<div class="card-body">
<div class="table-responsive">
<table class="table mb-0 border">
<thead class="table-light">
<tr>
<th>{{'firstName' | translate}}</th>
<th>{{'lastName' | translate}}</th>
<th>{{'cmpCuststatus' | translate}}</th>
<th>{{'cmpCustlastlogin' | translate}}</th>
<th>{{'accountNonLocked' | translate}}</th>
<th>{{'lockTime' | translate}}</th>
<th>{{'accountno' | translate}}</th>
<th>{{'phoneno' | translate}}</th>
<th>{{'action' | translate}}</th>
</tr>
</thead>
<tbody>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>
<div
class="d-flex justify-content-center gap-2">
<button class="btn btn-info btn-sm"
title="View">
<i class="mdi mdi-eye-outline"></i>
</button>
<button class="btn btn-secondary btn-sm"
title="Edit">
<i class="fas fa-pen"></i>
</button>
<button class="btn btn-danger btn-sm"
title="Delete">
<i class="fas fa-trash-alt"></i>
</button>
</div>
</td>
</tr>
</tbody>
</table>
<div
class="d-flex justify-content-between align-items-center mt-3">
<div class="form-group mb-0">
<ng-select class="form-select-sm"
[items]="pageSizeOptions" bindLabel="label"
bindValue="value" [(ngModel)]="itemsPerPage"
[searchable]="false" [clearable]="false"
[dropdownPosition]="'top'">
</ng-select>
</div>
<div class="text-muted">
{{ 'page' | translate }} {{ 'of' | translate }} ({{
'totalItems' | translate }})
</div>
<div class="btn-group">
<button
class="btn btn-primary waves-effect waves-light">
{{ 'previous' | translate }}
</button>
<button
class="btn btn-primary waves-effect waves-light">
{{ 'next' | translate }}
</button>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>

@ -1,11 +1,22 @@
import { Component } from '@angular/core'; import { Component } from '@angular/core';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { NgSelectModule } from '@ng-select/ng-select';
import { TranslateModule } from '@ngx-translate/core';
import { pageSizeOptions } from '../../utils/app.constants';
import { CommonModule } from '@angular/common';
@Component({ @Component({
selector: 'app-ib-unblock-user', selector: 'app-ib-unblock-user',
imports: [], imports: [TranslateModule, FormsModule, NgSelectModule, CommonModule, ReactiveFormsModule],
templateUrl: './ib-unblock-user.component.html', templateUrl: './ib-unblock-user.component.html',
styleUrl: './ib-unblock-user.component.scss' styleUrl: './ib-unblock-user.component.scss'
}) })
export class IbUnblockUserComponent { export class IbUnblockUserComponent {
renewalDataExpanded: boolean = true
itemsPerPage: number = 5;
pageSizeOptions = pageSizeOptions
optionValue: any;
itemsPerPageChanged() {}
} }

@ -58,7 +58,7 @@
class="form-control" class="form-control"
maxlength="500" maxlength="500"
placeholder="{{ 'username' | translate }}" appNoWhitespaces placeholder="{{ 'userName' | translate }}" appNoWhitespaces
rows="3" /> rows="3" />

@ -45,7 +45,7 @@
<div class="d-flex align-items-start gap-2"> <div class="d-flex align-items-start gap-2">
<label for="renewalRemarks" <label for="renewalRemarks"
class="text-nowrap mt-2"> class="text-nowrap mt-2">
{{ 'Name' | translate }}<span {{ 'name' | translate }}<span
class="mandatory">*</span> class="mandatory">*</span>
</label> </label>
<div class="d-flex flex-column w-100"> <div class="d-flex flex-column w-100">
@ -138,7 +138,7 @@
<input [type]="passwordType" <input [type]="passwordType"
autocomplete="new-password" autocomplete="new-password"
class="form-control pe-5" class="form-control pe-5"
placeholder="Password" /> placeholder="{{ 'password' | translate }}">
<app-password-hide-show class="password-eye" <app-password-hide-show class="password-eye"
[showPassword]="true" [showPassword]="true"
@ -212,10 +212,10 @@
<thead class="table-light"> <thead class="table-light">
<tr> <tr>
<th>{{'ThirdPartyID' | translate}}</th> <th>{{'ThirdPartyID' | translate}}</th>
<th>{{'Name' | translate}}</th> <th>{{'name' | translate}}</th>
<th>{{'Email' | translate}}</th> <th>{{'Email' | translate}}</th>
<th>{{'Address' | translate}}</th> <th>{{'Address' | translate}}</th>
<th>{{'PhoneNumber' | translate}}</th> <th>{{'phoneNumber' | translate}}</th>
<th>{{'TotalNoOfAccounts' | translate}}</th> <th>{{'TotalNoOfAccounts' | translate}}</th>
<th>{{'action' | translate}}</th> <th>{{'action' | translate}}</th>
</tr> </tr>

@ -45,11 +45,12 @@
"toDate":"حتي اليوم", "toDate":"حتي اليوم",
"findLogs":"البحث عن السجلات", "findLogs":"البحث عن السجلات",
"unBlockCustomer":"إلغاء حظر العميل", "unBlockCustomer":"إلغاء حظر العميل",
"unblockUserDetails": "إلغاء حظر تفاصيل المستخدم",
"loggerManagerDetails": "تفاصيل مدير السجلات", "loggerManagerDetails": "تفاصيل مدير السجلات",
"fatchCustomer": "ابحث عن العملاء", "fetchCustomer": "ابحث عن العملاء",
"loggingID":"معرف", "loggingID":"معرف",
"cmpFirstname":"الاسم الأول", "firstName":"الاسم الأول",
"cmpLastname": "اسم العائلة", "lastName": "اسم العائلة",
"cmpCuststatus":"حالة العميل", "cmpCuststatus":"حالة العميل",
"cmpCustlastlogin": "آخر تسجيل دخول للعميل", "cmpCustlastlogin": "آخر تسجيل دخول للعميل",
"accountNonLocked":"الحساب مغلق", "accountNonLocked":"الحساب مغلق",
@ -59,6 +60,7 @@
"loggingRequestUri":"طلب Uri", "loggingRequestUri":"طلب Uri",
"loggingResponseCode":"رمز الاستجابة", "loggingResponseCode":"رمز الاستجابة",
"loggingRemoteIP":"بعيد IP", "loggingRemoteIP":"بعيد IP",
"enterIdentityValue": "أدخل قيمة الهوية",
"loggingTimeTaken":"الوقت المستغرق", "loggingTimeTaken":"الوقت المستغرق",
"loggingDate":"تاريخ", "loggingDate":"تاريخ",
"loggingDateTime": "التاريخ والوقت", "loggingDateTime": "التاريخ والوقت",
@ -105,7 +107,7 @@
"savePassword":"يحفظ", "savePassword":"يحفظ",
"passwordPattern":"يجب أن تكون كلمة المرور أكثر من 8 أحرف وتتضمن حرفًا كبيرًا وحرفًا صغيرًا ورقمًا وحرفًا خاصًا", "passwordPattern":"يجب أن تكون كلمة المرور أكثر من 8 أحرف وتتضمن حرفًا كبيرًا وحرفًا صغيرًا ورقمًا وحرفًا خاصًا",
"SMSGatewaySelect":"اختر صنف", "SMSGatewaySelect":"اختر صنف",
"SelectIdentValueType": "حدد نوع قيمة الهوية", "selectIdentValueType": "حدد نوع قيمة الهوية",
"selectIdentityValue" : "رقم الهوية مطلوب", "selectIdentityValue" : "رقم الهوية مطلوب",
"IdTypeSelect":"حدد تحديد النوع", "IdTypeSelect":"حدد تحديد النوع",
"SMSGatewaySyriatel":"سيريتل", "SMSGatewaySyriatel":"سيريتل",

@ -1,7 +1,7 @@
{ {
"logintoAccount":"Login to your account", "logintoAccount":"Login to your account",
"username":"Username", "userName":"Username",
"userNamePlaceHolder":"Enter Username", "userNamePlaceHolder":"Enter Username",
"password":"Password", "password":"Password",
"passwordPlaceHolder":"Enter Password", "passwordPlaceHolder":"Enter Password",
@ -40,6 +40,7 @@
"SelectAUser":"Select a User", "SelectAUser":"Select a User",
"loggingTitle":"Logging", "loggingTitle":"Logging",
"IBChildTitle":"UnBlock User", "IBChildTitle":"UnBlock User",
"unblockUserDetails": "Unblock User Details",
"IBTitle":"Internet Banking Support", "IBTitle":"Internet Banking Support",
"loggingChildTitle":"Logger Manager", "loggingChildTitle":"Logger Manager",
"fromDate":"From Date", "fromDate":"From Date",
@ -47,10 +48,10 @@
"toDate":"To Date", "toDate":"To Date",
"findLogs":"Find Logs", "findLogs":"Find Logs",
"unBlockCustomer":"UnBlock Customer", "unBlockCustomer":"UnBlock Customer",
"fatchCustomer":"Find customer", "fetchCustomer":"Find Customer",
"loggingID":"Id", "loggingID":"Id",
"cmpFirstname":"First Name", "firstName":"First Name",
"cmpLastname": "Last name", "lastName": "Last Name",
"cmpCuststatus":"Customer Status", "cmpCuststatus":"Customer Status",
"cmpCustlastlogin": "Last Login", "cmpCustlastlogin": "Last Login",
"accountNonLocked":"Account Locked", "accountNonLocked":"Account Locked",
@ -106,7 +107,7 @@
"savePassword":"Save", "savePassword":"Save",
"passwordPattern":"Password must be over 8 characters and include an uppercase letter, a lower case letter, a number and a special character", "passwordPattern":"Password must be over 8 characters and include an uppercase letter, a lower case letter, a number and a special character",
"SMSGatewaySelect":"Select Gateway", "SMSGatewaySelect":"Select Gateway",
"SelectIdentValueType": "Select Type", "selectIdentValueType": "Select Type",
"IdTypeSelect":"Select Select Type", "IdTypeSelect":"Select Select Type",
"SMSGatewaySyriatel":"Syriatel", "SMSGatewaySyriatel":"Syriatel",
"SMSGatewayTwillio":"Twilio", "SMSGatewayTwillio":"Twilio",
@ -145,6 +146,7 @@
"nicop": "S/NICOP", "nicop": "S/NICOP",
"passport": "PASSPORT", "passport": "PASSPORT",
"senderNamePlaceHolder":"Enter Sender Name", "senderNamePlaceHolder":"Enter Sender Name",
"enterIdentityValue":"Enter Identity Value",
"senderName":"Sender Name", "senderName":"Sender Name",
"Next": "Next", "Next": "Next",
"ERR_APP_B_0001":"Internal Server Error", "ERR_APP_B_0001":"Internal Server Error",

Loading…
Cancel
Save