diff --git a/src/app/app.routing.ts b/src/app/app.routing.ts
index 7c0dd24..9e0c0c7 100644
--- a/src/app/app.routing.ts
+++ b/src/app/app.routing.ts
@@ -171,6 +171,41 @@ export const appRoutes: Route[] = [
                 'app/modules/admin/member/current-user/current-user.module'
               ).then((m: any) => m.CurrentUserModule),
           },
+          {
+            path: 'partner',
+            loadChildren: () =>
+              import('app/modules/admin/member/partner/partner.module').then(
+                (m: any) => m.PartnerModule
+              ),
+          },
+          {
+            path: 'partner-mainoffice',
+            loadChildren: () =>
+              import(
+                'app/modules/admin/member/partner-mainoffice/partner-mainoffice.module'
+              ).then((m: any) => m.PartnerMainofficeModule),
+          },
+          {
+            path: 'partner-branch',
+            loadChildren: () =>
+              import(
+                'app/modules/admin/member/partner-branch/partner-branch.module'
+              ).then((m: any) => m.PartnerBranchModule),
+          },
+          {
+            path: 'partner-division',
+            loadChildren: () =>
+              import(
+                'app/modules/admin/member/partner-division/partner-division.module'
+              ).then((m: any) => m.PartnerDivisionModule),
+          },
+          {
+            path: 'partner-office',
+            loadChildren: () =>
+              import(
+                'app/modules/admin/member/partner-office/partner-office.module'
+              ).then((m: any) => m.PartnerOfficeModule),
+          },
         ],
       },
       {
diff --git a/src/app/mock-api/apps/member/partner-branch/api.ts b/src/app/mock-api/apps/member/partner-branch/api.ts
new file mode 100644
index 0000000..0eba1aa
--- /dev/null
+++ b/src/app/mock-api/apps/member/partner-branch/api.ts
@@ -0,0 +1,223 @@
+import { Injectable } from '@angular/core';
+import { assign, cloneDeep } from 'lodash-es';
+import { FuseMockApiService, FuseMockApiUtils } from '@fuse/lib/mock-api';
+import { partnerBranchs as partnerBranchsData } from './data';
+
+@Injectable({
+  providedIn: 'root',
+})
+export class MemberPartnerBranchMockApi {
+  private _partnerBranchs: any[] = partnerBranchsData;
+
+  /**
+   * Constructor
+   */
+  constructor(private _fuseMockApiService: FuseMockApiService) {
+    // Register Mock API handlers
+    this.registerHandlers();
+  }
+
+  // -----------------------------------------------------------------------------------------------------
+  // @ Public methods
+  // -----------------------------------------------------------------------------------------------------
+
+  /**
+   * Register Mock API handlers
+   */
+  registerHandlers(): void {
+    // -----------------------------------------------------------------------------------------------------
+    // @ PartnerBranchs - GET
+    // -----------------------------------------------------------------------------------------------------
+    this._fuseMockApiService
+      .onGet('api/apps/member/partner-branch/partner-branchs', 300)
+      .reply(({ request }) => {
+        // Get available queries
+        const search = request.params.get('search');
+        const sort = request.params.get('sort') || 'name';
+        const order = request.params.get('order') || 'asc';
+        const page = parseInt(request.params.get('page') ?? '1', 10);
+        const size = parseInt(request.params.get('size') ?? '10', 10);
+
+        // Clone the partnerBranchs
+        let partnerBranchs: any[] | null = cloneDeep(this._partnerBranchs);
+
+        // Sort the partnerBranchs
+        if (sort === 'sku' || sort === 'name' || sort === 'active') {
+          partnerBranchs.sort((a, b) => {
+            const fieldA = a[sort].toString().toUpperCase();
+            const fieldB = b[sort].toString().toUpperCase();
+            return order === 'asc'
+              ? fieldA.localeCompare(fieldB)
+              : fieldB.localeCompare(fieldA);
+          });
+        } else {
+          partnerBranchs.sort((a, b) =>
+            order === 'asc' ? a[sort] - b[sort] : b[sort] - a[sort]
+          );
+        }
+
+        // If search exists...
+        if (search) {
+          // Filter the partnerBranchs
+          partnerBranchs = partnerBranchs.filter(
+            (contact: any) =>
+              contact.name &&
+              contact.name.toLowerCase().includes(search.toLowerCase())
+          );
+        }
+
+        // Paginate - Start
+        const partnerBranchsLength = partnerBranchs.length;
+
+        // Calculate pagination details
+        const begin = page * size;
+        const end = Math.min(size * (page + 1), partnerBranchsLength);
+        const lastPage = Math.max(Math.ceil(partnerBranchsLength / size), 1);
+
+        // Prepare the pagination object
+        let pagination = {};
+
+        // If the requested page number is bigger than
+        // the last possible page number, return null for
+        // partnerBranchs but also send the last possible page so
+        // the app can navigate to there
+        if (page > lastPage) {
+          partnerBranchs = null;
+          pagination = {
+            lastPage,
+          };
+        } else {
+          // Paginate the results by size
+          partnerBranchs = partnerBranchs.slice(begin, end);
+
+          // Prepare the pagination mock-api
+          pagination = {
+            length: partnerBranchsLength,
+            size: size,
+            page: page,
+            lastPage: lastPage,
+            startIndex: begin,
+            endIndex: end - 1,
+          };
+        }
+
+        // Return the response
+        return [
+          200,
+          {
+            partnerBranchs,
+            pagination,
+          },
+        ];
+      });
+
+    // -----------------------------------------------------------------------------------------------------
+    // @ PartnerBranch - GET
+    // -----------------------------------------------------------------------------------------------------
+    this._fuseMockApiService
+      .onGet('api/apps/member/partne-branch/partner-branch')
+      .reply(({ request }) => {
+        // Get the id from the params
+        const id = request.params.get('id');
+
+        // Clone the partnerBranchs
+        const partnerBranchs = cloneDeep(this._partnerBranchs);
+
+        // Find the partnerBranch
+        const partnerBranch = partnerBranchs.find(
+          (item: any) => item.id === id
+        );
+
+        // Return the response
+        return [200, partnerBranch];
+      });
+
+    // -----------------------------------------------------------------------------------------------------
+    // @ PartnerBranch - POST
+    // -----------------------------------------------------------------------------------------------------
+    this._fuseMockApiService
+      .onPost('api/apps/member/partner-branch/partner-branch')
+      .reply(() => {
+        // Generate a new partnerBranch
+        const newPartnerBranch = {
+          id: FuseMockApiUtils.guid(),
+          category: '',
+          name: 'A New User',
+          description: '',
+          tags: [],
+          sku: '',
+          barcode: '',
+          brand: '',
+          vendor: '',
+          stock: '',
+          reserved: '',
+          cost: '',
+          basePrice: '',
+          taxPercent: '',
+          price: '',
+          weight: '',
+          thumbnail: '',
+          images: [],
+          active: false,
+        };
+
+        // Unshift the new partnerBranch
+        this._partnerBranchs.unshift(newPartnerBranch);
+
+        // Return the response
+        return [200, newPartnerBranch];
+      });
+
+    // -----------------------------------------------------------------------------------------------------
+    // @ PartnerBranch - PATCH
+    // -----------------------------------------------------------------------------------------------------
+    this._fuseMockApiService
+      .onPatch('api/apps/member/partner-branch/partner-branch')
+      .reply(({ request }) => {
+        // Get the id and partnerBranch
+        const id = request.body.id;
+        const partnerBranch = cloneDeep(request.body.partnerBranch);
+
+        // Prepare the updated partnerBranch
+        let updatedPartnerBranch = null;
+
+        // Find the partnerBranch and update it
+        this._partnerBranchs.forEach((item, index, partnerBranchs) => {
+          if (item.id === id) {
+            // Update the partnerBranch
+            partnerBranchs[index] = assign(
+              {},
+              partnerBranchs[index],
+              partnerBranch
+            );
+
+            // Store the updated partnerBranch
+            updatedPartnerBranch = partnerBranchs[index];
+          }
+        });
+
+        // Return the response
+        return [200, updatedPartnerBranch];
+      });
+
+    // -----------------------------------------------------------------------------------------------------
+    // @ PartnerBranch - DELETE
+    // -----------------------------------------------------------------------------------------------------
+    this._fuseMockApiService
+      .onDelete('api/apps/member/partner-branch/partner-branch')
+      .reply(({ request }) => {
+        // Get the id
+        const id = request.params.get('id');
+
+        // Find the partnerBranch and delete it
+        this._partnerBranchs.forEach((item, index) => {
+          if (item.id === id) {
+            this._partnerBranchs.splice(index, 1);
+          }
+        });
+
+        // Return the response
+        return [200, true];
+      });
+  }
+}
diff --git a/src/app/mock-api/apps/member/partner-branch/data.ts b/src/app/mock-api/apps/member/partner-branch/data.ts
new file mode 100644
index 0000000..2af1fba
--- /dev/null
+++ b/src/app/mock-api/apps/member/partner-branch/data.ts
@@ -0,0 +1,33 @@
+/* eslint-disable */
+
+export const partnerBranchs = [
+  {
+    id: 'on00',
+    totalPartnerCount: '5',
+    totalHoldingMoney: 303675,
+    totalComp: 108933,
+    total: 412608,
+    branchCount: 1,
+    divisionCount: 1,
+    officeCount: 1,
+    storeCount: 1,
+    memberCount: 1,
+    nickname: 'on00',
+    accountHolder: '11',
+    phoneNumber: '010-1111-1111',
+    calculateType: '롤링',
+    ownCash: 50000,
+    ownComp: 1711,
+    ownCoupon: 50000,
+    gameMoney: 0,
+    todayComp: 0,
+    totalDeposit: 0,
+    totalWithdraw: 0,
+    balance: 0,
+    registDate: '2022-06-12 15:38',
+    finalSigninDate: '',
+    ip: '',
+    state: '정상',
+    note: '부본등록',
+  },
+];
diff --git a/src/app/mock-api/apps/member/partner-division/api.ts b/src/app/mock-api/apps/member/partner-division/api.ts
new file mode 100644
index 0000000..4b9ff47
--- /dev/null
+++ b/src/app/mock-api/apps/member/partner-division/api.ts
@@ -0,0 +1,223 @@
+import { Injectable } from '@angular/core';
+import { assign, cloneDeep } from 'lodash-es';
+import { FuseMockApiService, FuseMockApiUtils } from '@fuse/lib/mock-api';
+import { partnerDivisions as partnerDivisionsData } from './data';
+
+@Injectable({
+  providedIn: 'root',
+})
+export class MemberPartnerDivisionMockApi {
+  private _partnerDivisions: any[] = partnerDivisionsData;
+
+  /**
+   * Constructor
+   */
+  constructor(private _fuseMockApiService: FuseMockApiService) {
+    // Register Mock API handlers
+    this.registerHandlers();
+  }
+
+  // -----------------------------------------------------------------------------------------------------
+  // @ Public methods
+  // -----------------------------------------------------------------------------------------------------
+
+  /**
+   * Register Mock API handlers
+   */
+  registerHandlers(): void {
+    // -----------------------------------------------------------------------------------------------------
+    // @ PartnerDivisions - GET
+    // -----------------------------------------------------------------------------------------------------
+    this._fuseMockApiService
+      .onGet('api/apps/member/partner-division/partner-divisions', 300)
+      .reply(({ request }) => {
+        // Get available queries
+        const search = request.params.get('search');
+        const sort = request.params.get('sort') || 'name';
+        const order = request.params.get('order') || 'asc';
+        const page = parseInt(request.params.get('page') ?? '1', 10);
+        const size = parseInt(request.params.get('size') ?? '10', 10);
+
+        // Clone the partnerDivisions
+        let partnerDivisions: any[] | null = cloneDeep(this._partnerDivisions);
+
+        // Sort the partnerDivisions
+        if (sort === 'sku' || sort === 'name' || sort === 'active') {
+          partnerDivisions.sort((a, b) => {
+            const fieldA = a[sort].toString().toUpperCase();
+            const fieldB = b[sort].toString().toUpperCase();
+            return order === 'asc'
+              ? fieldA.localeCompare(fieldB)
+              : fieldB.localeCompare(fieldA);
+          });
+        } else {
+          partnerDivisions.sort((a, b) =>
+            order === 'asc' ? a[sort] - b[sort] : b[sort] - a[sort]
+          );
+        }
+
+        // If search exists...
+        if (search) {
+          // Filter the partnerDivisions
+          partnerDivisions = partnerDivisions.filter(
+            (contact: any) =>
+              contact.name &&
+              contact.name.toLowerCase().includes(search.toLowerCase())
+          );
+        }
+
+        // Paginate - Start
+        const partnerDivisionsLength = partnerDivisions.length;
+
+        // Calculate pagination details
+        const begin = page * size;
+        const end = Math.min(size * (page + 1), partnerDivisionsLength);
+        const lastPage = Math.max(Math.ceil(partnerDivisionsLength / size), 1);
+
+        // Prepare the pagination object
+        let pagination = {};
+
+        // If the requested page number is bigger than
+        // the last possible page number, return null for
+        // partnerDivisions but also send the last possible page so
+        // the app can navigate to there
+        if (page > lastPage) {
+          partnerDivisions = null;
+          pagination = {
+            lastPage,
+          };
+        } else {
+          // Paginate the results by size
+          partnerDivisions = partnerDivisions.slice(begin, end);
+
+          // Prepare the pagination mock-api
+          pagination = {
+            length: partnerDivisionsLength,
+            size: size,
+            page: page,
+            lastPage: lastPage,
+            startIndex: begin,
+            endIndex: end - 1,
+          };
+        }
+
+        // Return the response
+        return [
+          200,
+          {
+            partnerDivisions,
+            pagination,
+          },
+        ];
+      });
+
+    // -----------------------------------------------------------------------------------------------------
+    // @ PartnerDivision - GET
+    // -----------------------------------------------------------------------------------------------------
+    this._fuseMockApiService
+      .onGet('api/apps/member/partne-division/partner-division')
+      .reply(({ request }) => {
+        // Get the id from the params
+        const id = request.params.get('id');
+
+        // Clone the partnerDivisions
+        const partnerDivisions = cloneDeep(this._partnerDivisions);
+
+        // Find the partnerDivision
+        const partnerDivision = partnerDivisions.find(
+          (item: any) => item.id === id
+        );
+
+        // Return the response
+        return [200, partnerDivision];
+      });
+
+    // -----------------------------------------------------------------------------------------------------
+    // @ PartnerDivision - POST
+    // -----------------------------------------------------------------------------------------------------
+    this._fuseMockApiService
+      .onPost('api/apps/member/partner-division/partner-division')
+      .reply(() => {
+        // Generate a new partnerDivision
+        const newPartnerDivision = {
+          id: FuseMockApiUtils.guid(),
+          category: '',
+          name: 'A New User',
+          description: '',
+          tags: [],
+          sku: '',
+          barcode: '',
+          brand: '',
+          vendor: '',
+          stock: '',
+          reserved: '',
+          cost: '',
+          basePrice: '',
+          taxPercent: '',
+          price: '',
+          weight: '',
+          thumbnail: '',
+          images: [],
+          active: false,
+        };
+
+        // Unshift the new partnerDivision
+        this._partnerDivisions.unshift(newPartnerDivision);
+
+        // Return the response
+        return [200, newPartnerDivision];
+      });
+
+    // -----------------------------------------------------------------------------------------------------
+    // @ PartnerDivision - PATCH
+    // -----------------------------------------------------------------------------------------------------
+    this._fuseMockApiService
+      .onPatch('api/apps/member/partner-division/partner-division')
+      .reply(({ request }) => {
+        // Get the id and partnerDivision
+        const id = request.body.id;
+        const partnerDivision = cloneDeep(request.body.partnerDivision);
+
+        // Prepare the updated partnerDivision
+        let updatedPartnerDivision = null;
+
+        // Find the partnerDivision and update it
+        this._partnerDivisions.forEach((item, index, partnerDivisions) => {
+          if (item.id === id) {
+            // Update the partnerDivision
+            partnerDivisions[index] = assign(
+              {},
+              partnerDivisions[index],
+              partnerDivision
+            );
+
+            // Store the updated partnerDivision
+            updatedPartnerDivision = partnerDivisions[index];
+          }
+        });
+
+        // Return the response
+        return [200, updatedPartnerDivision];
+      });
+
+    // -----------------------------------------------------------------------------------------------------
+    // @ PartnerDivision - DELETE
+    // -----------------------------------------------------------------------------------------------------
+    this._fuseMockApiService
+      .onDelete('api/apps/member/partner-division/partner-division')
+      .reply(({ request }) => {
+        // Get the id
+        const id = request.params.get('id');
+
+        // Find the partnerDivision and delete it
+        this._partnerDivisions.forEach((item, index) => {
+          if (item.id === id) {
+            this._partnerDivisions.splice(index, 1);
+          }
+        });
+
+        // Return the response
+        return [200, true];
+      });
+  }
+}
diff --git a/src/app/mock-api/apps/member/partner-division/data.ts b/src/app/mock-api/apps/member/partner-division/data.ts
new file mode 100644
index 0000000..d5af3d0
--- /dev/null
+++ b/src/app/mock-api/apps/member/partner-division/data.ts
@@ -0,0 +1,33 @@
+/* eslint-disable */
+
+export const partnerDivisions = [
+  {
+    id: 'on00',
+    totalPartnerCount: '5',
+    totalHoldingMoney: 303675,
+    totalComp: 108933,
+    total: 412608,
+    branchCount: 1,
+    divisionCount: 1,
+    officeCount: 1,
+    storeCount: 1,
+    memberCount: 1,
+    nickname: 'on00',
+    accountHolder: '11',
+    phoneNumber: '010-1111-1111',
+    calculateType: '롤링',
+    ownCash: 50000,
+    ownComp: 1711,
+    ownCoupon: 50000,
+    gameMoney: 0,
+    todayComp: 0,
+    totalDeposit: 0,
+    totalWithdraw: 0,
+    balance: 0,
+    registDate: '2022-06-12 15:38',
+    finalSigninDate: '',
+    ip: '',
+    state: '정상',
+    note: '총판등록',
+  },
+];
diff --git a/src/app/mock-api/apps/member/partner-mainoffice/api.ts b/src/app/mock-api/apps/member/partner-mainoffice/api.ts
new file mode 100644
index 0000000..86a96dd
--- /dev/null
+++ b/src/app/mock-api/apps/member/partner-mainoffice/api.ts
@@ -0,0 +1,228 @@
+import { Injectable } from '@angular/core';
+import { assign, cloneDeep } from 'lodash-es';
+import { FuseMockApiService, FuseMockApiUtils } from '@fuse/lib/mock-api';
+import { partnerMainoffices as partnerMainofficesData } from './data';
+
+@Injectable({
+  providedIn: 'root',
+})
+export class MemberPartnerMainofficeMockApi {
+  private _partnerMainoffices: any[] = partnerMainofficesData;
+
+  /**
+   * Constructor
+   */
+  constructor(private _fuseMockApiService: FuseMockApiService) {
+    // Register Mock API handlers
+    this.registerHandlers();
+  }
+
+  // -----------------------------------------------------------------------------------------------------
+  // @ Public methods
+  // -----------------------------------------------------------------------------------------------------
+
+  /**
+   * Register Mock API handlers
+   */
+  registerHandlers(): void {
+    // -----------------------------------------------------------------------------------------------------
+    // @ PartnerMainoffices - GET
+    // -----------------------------------------------------------------------------------------------------
+    this._fuseMockApiService
+      .onGet('api/apps/member/partner-mainoffice/partner-mainoffices', 300)
+      .reply(({ request }) => {
+        // Get available queries
+        const search = request.params.get('search');
+        const sort = request.params.get('sort') || 'name';
+        const order = request.params.get('order') || 'asc';
+        const page = parseInt(request.params.get('page') ?? '1', 10);
+        const size = parseInt(request.params.get('size') ?? '10', 10);
+
+        // Clone the partnerMainoffices
+        let partnerMainoffices: any[] | null = cloneDeep(
+          this._partnerMainoffices
+        );
+
+        // Sort the partnerMainoffices
+        if (sort === 'sku' || sort === 'name' || sort === 'active') {
+          partnerMainoffices.sort((a, b) => {
+            const fieldA = a[sort].toString().toUpperCase();
+            const fieldB = b[sort].toString().toUpperCase();
+            return order === 'asc'
+              ? fieldA.localeCompare(fieldB)
+              : fieldB.localeCompare(fieldA);
+          });
+        } else {
+          partnerMainoffices.sort((a, b) =>
+            order === 'asc' ? a[sort] - b[sort] : b[sort] - a[sort]
+          );
+        }
+
+        // If search exists...
+        if (search) {
+          // Filter the partnerMainoffices
+          partnerMainoffices = partnerMainoffices.filter(
+            (contact: any) =>
+              contact.name &&
+              contact.name.toLowerCase().includes(search.toLowerCase())
+          );
+        }
+
+        // Paginate - Start
+        const partnerMainofficesLength = partnerMainoffices.length;
+
+        // Calculate pagination details
+        const begin = page * size;
+        const end = Math.min(size * (page + 1), partnerMainofficesLength);
+        const lastPage = Math.max(
+          Math.ceil(partnerMainofficesLength / size),
+          1
+        );
+
+        // Prepare the pagination object
+        let pagination = {};
+
+        // If the requested page number is bigger than
+        // the last possible page number, return null for
+        // partnerMainoffices but also send the last possible page so
+        // the app can navigate to there
+        if (page > lastPage) {
+          partnerMainoffices = null;
+          pagination = {
+            lastPage,
+          };
+        } else {
+          // Paginate the results by size
+          partnerMainoffices = partnerMainoffices.slice(begin, end);
+
+          // Prepare the pagination mock-api
+          pagination = {
+            length: partnerMainofficesLength,
+            size: size,
+            page: page,
+            lastPage: lastPage,
+            startIndex: begin,
+            endIndex: end - 1,
+          };
+        }
+
+        // Return the response
+        return [
+          200,
+          {
+            partnerMainoffices,
+            pagination,
+          },
+        ];
+      });
+
+    // -----------------------------------------------------------------------------------------------------
+    // @ PartnerMainoffice - GET
+    // -----------------------------------------------------------------------------------------------------
+    this._fuseMockApiService
+      .onGet('api/apps/member/partne-mainoffice/partner-mainoffice')
+      .reply(({ request }) => {
+        // Get the id from the params
+        const id = request.params.get('id');
+
+        // Clone the partnerMainoffices
+        const partnerMainoffices = cloneDeep(this._partnerMainoffices);
+
+        // Find the partnerMainoffice
+        const partnerMainoffice = partnerMainoffices.find(
+          (item: any) => item.id === id
+        );
+
+        // Return the response
+        return [200, partnerMainoffice];
+      });
+
+    // -----------------------------------------------------------------------------------------------------
+    // @ PartnerMainoffice - POST
+    // -----------------------------------------------------------------------------------------------------
+    this._fuseMockApiService
+      .onPost('api/apps/member/partner-mainoffice/partner-mainoffice')
+      .reply(() => {
+        // Generate a new partnerMainoffice
+        const newPartnerMainoffice = {
+          id: FuseMockApiUtils.guid(),
+          category: '',
+          name: 'A New User',
+          description: '',
+          tags: [],
+          sku: '',
+          barcode: '',
+          brand: '',
+          vendor: '',
+          stock: '',
+          reserved: '',
+          cost: '',
+          basePrice: '',
+          taxPercent: '',
+          price: '',
+          weight: '',
+          thumbnail: '',
+          images: [],
+          active: false,
+        };
+
+        // Unshift the new partnerMainoffice
+        this._partnerMainoffices.unshift(newPartnerMainoffice);
+
+        // Return the response
+        return [200, newPartnerMainoffice];
+      });
+
+    // -----------------------------------------------------------------------------------------------------
+    // @ PartnerMainoffice - PATCH
+    // -----------------------------------------------------------------------------------------------------
+    this._fuseMockApiService
+      .onPatch('api/apps/member/partner-mainoffice/partner-mainoffice')
+      .reply(({ request }) => {
+        // Get the id and partnerMainoffice
+        const id = request.body.id;
+        const partnerMainoffice = cloneDeep(request.body.partnerMainoffice);
+
+        // Prepare the updated partnerMainoffice
+        let updatedPartnerMainoffice = null;
+
+        // Find the partnerMainoffice and update it
+        this._partnerMainoffices.forEach((item, index, partnerMainoffices) => {
+          if (item.id === id) {
+            // Update the partnerMainoffice
+            partnerMainoffices[index] = assign(
+              {},
+              partnerMainoffices[index],
+              partnerMainoffice
+            );
+
+            // Store the updated partnerMainoffice
+            updatedPartnerMainoffice = partnerMainoffices[index];
+          }
+        });
+
+        // Return the response
+        return [200, updatedPartnerMainoffice];
+      });
+
+    // -----------------------------------------------------------------------------------------------------
+    // @ PartnerMainoffice - DELETE
+    // -----------------------------------------------------------------------------------------------------
+    this._fuseMockApiService
+      .onDelete('api/apps/member/partner-mainoffice/partner-mainoffice')
+      .reply(({ request }) => {
+        // Get the id
+        const id = request.params.get('id');
+
+        // Find the partnerMainoffice and delete it
+        this._partnerMainoffices.forEach((item, index) => {
+          if (item.id === id) {
+            this._partnerMainoffices.splice(index, 1);
+          }
+        });
+
+        // Return the response
+        return [200, true];
+      });
+  }
+}
diff --git a/src/app/mock-api/apps/member/partner-mainoffice/data.ts b/src/app/mock-api/apps/member/partner-mainoffice/data.ts
new file mode 100644
index 0000000..9ae712c
--- /dev/null
+++ b/src/app/mock-api/apps/member/partner-mainoffice/data.ts
@@ -0,0 +1,33 @@
+/* eslint-disable */
+
+export const partnerMainoffices = [
+  {
+    id: 'on00',
+    totalPartnerCount: '5',
+    totalHoldingMoney: 303675,
+    totalComp: 108933,
+    total: 412608,
+    branchCount: 1,
+    divisionCount: 1,
+    officeCount: 1,
+    storeCount: 1,
+    memberCount: 1,
+    nickname: 'on00',
+    accountHolder: '11',
+    phoneNumber: '010-1111-1111',
+    calculateType: '롤링',
+    ownCash: 50000,
+    ownComp: 1711,
+    ownCoupon: 50000,
+    gameMoney: 0,
+    todayComp: 0,
+    totalDeposit: 0,
+    totalWithdraw: 0,
+    balance: 0,
+    registDate: '2022-06-12 15:38',
+    finalSigninDate: '',
+    ip: '',
+    state: '정상',
+    note: '대본등록',
+  },
+];
diff --git a/src/app/mock-api/apps/member/partner-office/api.ts b/src/app/mock-api/apps/member/partner-office/api.ts
new file mode 100644
index 0000000..8970aa0
--- /dev/null
+++ b/src/app/mock-api/apps/member/partner-office/api.ts
@@ -0,0 +1,223 @@
+import { Injectable } from '@angular/core';
+import { assign, cloneDeep } from 'lodash-es';
+import { FuseMockApiService, FuseMockApiUtils } from '@fuse/lib/mock-api';
+import { partnerOffices as partnerOfficesData } from './data';
+
+@Injectable({
+  providedIn: 'root',
+})
+export class MemberPartnerOfficeMockApi {
+  private _partnerOffices: any[] = partnerOfficesData;
+
+  /**
+   * Constructor
+   */
+  constructor(private _fuseMockApiService: FuseMockApiService) {
+    // Register Mock API handlers
+    this.registerHandlers();
+  }
+
+  // -----------------------------------------------------------------------------------------------------
+  // @ Public methods
+  // -----------------------------------------------------------------------------------------------------
+
+  /**
+   * Register Mock API handlers
+   */
+  registerHandlers(): void {
+    // -----------------------------------------------------------------------------------------------------
+    // @ PartnerOffices - GET
+    // -----------------------------------------------------------------------------------------------------
+    this._fuseMockApiService
+      .onGet('api/apps/member/partner-office/partner-offices', 300)
+      .reply(({ request }) => {
+        // Get available queries
+        const search = request.params.get('search');
+        const sort = request.params.get('sort') || 'name';
+        const order = request.params.get('order') || 'asc';
+        const page = parseInt(request.params.get('page') ?? '1', 10);
+        const size = parseInt(request.params.get('size') ?? '10', 10);
+
+        // Clone the partnerOffices
+        let partnerOffices: any[] | null = cloneDeep(this._partnerOffices);
+
+        // Sort the partnerOffices
+        if (sort === 'sku' || sort === 'name' || sort === 'active') {
+          partnerOffices.sort((a, b) => {
+            const fieldA = a[sort].toString().toUpperCase();
+            const fieldB = b[sort].toString().toUpperCase();
+            return order === 'asc'
+              ? fieldA.localeCompare(fieldB)
+              : fieldB.localeCompare(fieldA);
+          });
+        } else {
+          partnerOffices.sort((a, b) =>
+            order === 'asc' ? a[sort] - b[sort] : b[sort] - a[sort]
+          );
+        }
+
+        // If search exists...
+        if (search) {
+          // Filter the partnerOffices
+          partnerOffices = partnerOffices.filter(
+            (contact: any) =>
+              contact.name &&
+              contact.name.toLowerCase().includes(search.toLowerCase())
+          );
+        }
+
+        // Paginate - Start
+        const partnerOfficesLength = partnerOffices.length;
+
+        // Calculate pagination details
+        const begin = page * size;
+        const end = Math.min(size * (page + 1), partnerOfficesLength);
+        const lastPage = Math.max(Math.ceil(partnerOfficesLength / size), 1);
+
+        // Prepare the pagination object
+        let pagination = {};
+
+        // If the requested page number is bigger than
+        // the last possible page number, return null for
+        // partnerOffices but also send the last possible page so
+        // the app can navigate to there
+        if (page > lastPage) {
+          partnerOffices = null;
+          pagination = {
+            lastPage,
+          };
+        } else {
+          // Paginate the results by size
+          partnerOffices = partnerOffices.slice(begin, end);
+
+          // Prepare the pagination mock-api
+          pagination = {
+            length: partnerOfficesLength,
+            size: size,
+            page: page,
+            lastPage: lastPage,
+            startIndex: begin,
+            endIndex: end - 1,
+          };
+        }
+
+        // Return the response
+        return [
+          200,
+          {
+            partnerOffices,
+            pagination,
+          },
+        ];
+      });
+
+    // -----------------------------------------------------------------------------------------------------
+    // @ PartnerOffice - GET
+    // -----------------------------------------------------------------------------------------------------
+    this._fuseMockApiService
+      .onGet('api/apps/member/partne-office/partner-office')
+      .reply(({ request }) => {
+        // Get the id from the params
+        const id = request.params.get('id');
+
+        // Clone the partnerOffices
+        const partnerOffices = cloneDeep(this._partnerOffices);
+
+        // Find the partnerOffice
+        const partnerOffice = partnerOffices.find(
+          (item: any) => item.id === id
+        );
+
+        // Return the response
+        return [200, partnerOffice];
+      });
+
+    // -----------------------------------------------------------------------------------------------------
+    // @ PartnerOffice - POST
+    // -----------------------------------------------------------------------------------------------------
+    this._fuseMockApiService
+      .onPost('api/apps/member/partner-office/partner-office')
+      .reply(() => {
+        // Generate a new partnerOffice
+        const newPartnerOffice = {
+          id: FuseMockApiUtils.guid(),
+          category: '',
+          name: 'A New User',
+          description: '',
+          tags: [],
+          sku: '',
+          barcode: '',
+          brand: '',
+          vendor: '',
+          stock: '',
+          reserved: '',
+          cost: '',
+          basePrice: '',
+          taxPercent: '',
+          price: '',
+          weight: '',
+          thumbnail: '',
+          images: [],
+          active: false,
+        };
+
+        // Unshift the new partnerOffice
+        this._partnerOffices.unshift(newPartnerOffice);
+
+        // Return the response
+        return [200, newPartnerOffice];
+      });
+
+    // -----------------------------------------------------------------------------------------------------
+    // @ PartnerOffice - PATCH
+    // -----------------------------------------------------------------------------------------------------
+    this._fuseMockApiService
+      .onPatch('api/apps/member/partner-office/partner-office')
+      .reply(({ request }) => {
+        // Get the id and partnerOffice
+        const id = request.body.id;
+        const partnerOffice = cloneDeep(request.body.partnerOffice);
+
+        // Prepare the updated partnerOffice
+        let updatedPartnerOffice = null;
+
+        // Find the partnerOffice and update it
+        this._partnerOffices.forEach((item, index, partnerOffices) => {
+          if (item.id === id) {
+            // Update the partnerOffice
+            partnerOffices[index] = assign(
+              {},
+              partnerOffices[index],
+              partnerOffice
+            );
+
+            // Store the updated partnerOffice
+            updatedPartnerOffice = partnerOffices[index];
+          }
+        });
+
+        // Return the response
+        return [200, updatedPartnerOffice];
+      });
+
+    // -----------------------------------------------------------------------------------------------------
+    // @ PartnerOffice - DELETE
+    // -----------------------------------------------------------------------------------------------------
+    this._fuseMockApiService
+      .onDelete('api/apps/member/partner-office/partner-office')
+      .reply(({ request }) => {
+        // Get the id
+        const id = request.params.get('id');
+
+        // Find the partnerOffice and delete it
+        this._partnerOffices.forEach((item, index) => {
+          if (item.id === id) {
+            this._partnerOffices.splice(index, 1);
+          }
+        });
+
+        // Return the response
+        return [200, true];
+      });
+  }
+}
diff --git a/src/app/mock-api/apps/member/partner-office/data.ts b/src/app/mock-api/apps/member/partner-office/data.ts
new file mode 100644
index 0000000..aad813a
--- /dev/null
+++ b/src/app/mock-api/apps/member/partner-office/data.ts
@@ -0,0 +1,33 @@
+/* eslint-disable */
+
+export const partnerOffices = [
+  {
+    id: 'on00',
+    totalPartnerCount: '5',
+    totalHoldingMoney: 303675,
+    totalComp: 108933,
+    total: 412608,
+    branchCount: 1,
+    divisionCount: 1,
+    officeCount: 1,
+    storeCount: 1,
+    memberCount: 1,
+    nickname: 'on00',
+    accountHolder: '11',
+    phoneNumber: '010-1111-1111',
+    calculateType: '롤링',
+    ownCash: 50000,
+    ownComp: 1711,
+    ownCoupon: 50000,
+    gameMoney: 0,
+    todayComp: 0,
+    totalDeposit: 0,
+    totalWithdraw: 0,
+    balance: 0,
+    registDate: '2022-06-12 15:38',
+    finalSigninDate: '',
+    ip: '',
+    state: '정상',
+    note: '매장등록',
+  },
+];
diff --git a/src/app/mock-api/apps/member/partner/api.ts b/src/app/mock-api/apps/member/partner/api.ts
new file mode 100644
index 0000000..aec6a86
--- /dev/null
+++ b/src/app/mock-api/apps/member/partner/api.ts
@@ -0,0 +1,217 @@
+import { Injectable } from '@angular/core';
+import { assign, cloneDeep } from 'lodash-es';
+import { FuseMockApiService, FuseMockApiUtils } from '@fuse/lib/mock-api';
+import { partners as partnersData } from './data';
+
+@Injectable({
+  providedIn: 'root',
+})
+export class MemberPartnerMockApi {
+  private _partners: any[] = partnersData;
+
+  /**
+   * Constructor
+   */
+  constructor(private _fuseMockApiService: FuseMockApiService) {
+    // Register Mock API handlers
+    this.registerHandlers();
+  }
+
+  // -----------------------------------------------------------------------------------------------------
+  // @ Public methods
+  // -----------------------------------------------------------------------------------------------------
+
+  /**
+   * Register Mock API handlers
+   */
+  registerHandlers(): void {
+    // -----------------------------------------------------------------------------------------------------
+    // @ Partners - GET
+    // -----------------------------------------------------------------------------------------------------
+    this._fuseMockApiService
+      .onGet('api/apps/member/partner/partners', 300)
+      .reply(({ request }) => {
+        // Get available queries
+        const search = request.params.get('search');
+        const sort = request.params.get('sort') || 'name';
+        const order = request.params.get('order') || 'asc';
+        const page = parseInt(request.params.get('page') ?? '1', 10);
+        const size = parseInt(request.params.get('size') ?? '10', 10);
+
+        // Clone the partners
+        let partners: any[] | null = cloneDeep(this._partners);
+
+        // Sort the partners
+        if (sort === 'sku' || sort === 'name' || sort === 'active') {
+          partners.sort((a, b) => {
+            const fieldA = a[sort].toString().toUpperCase();
+            const fieldB = b[sort].toString().toUpperCase();
+            return order === 'asc'
+              ? fieldA.localeCompare(fieldB)
+              : fieldB.localeCompare(fieldA);
+          });
+        } else {
+          partners.sort((a, b) =>
+            order === 'asc' ? a[sort] - b[sort] : b[sort] - a[sort]
+          );
+        }
+
+        // If search exists...
+        if (search) {
+          // Filter the partners
+          partners = partners.filter(
+            (contact: any) =>
+              contact.name &&
+              contact.name.toLowerCase().includes(search.toLowerCase())
+          );
+        }
+
+        // Paginate - Start
+        const partnersLength = partners.length;
+
+        // Calculate pagination details
+        const begin = page * size;
+        const end = Math.min(size * (page + 1), partnersLength);
+        const lastPage = Math.max(Math.ceil(partnersLength / size), 1);
+
+        // Prepare the pagination object
+        let pagination = {};
+
+        // If the requested page number is bigger than
+        // the last possible page number, return null for
+        // partners but also send the last possible page so
+        // the app can navigate to there
+        if (page > lastPage) {
+          partners = null;
+          pagination = {
+            lastPage,
+          };
+        } else {
+          // Paginate the results by size
+          partners = partners.slice(begin, end);
+
+          // Prepare the pagination mock-api
+          pagination = {
+            length: partnersLength,
+            size: size,
+            page: page,
+            lastPage: lastPage,
+            startIndex: begin,
+            endIndex: end - 1,
+          };
+        }
+
+        // Return the response
+        return [
+          200,
+          {
+            partners,
+            pagination,
+          },
+        ];
+      });
+
+    // -----------------------------------------------------------------------------------------------------
+    // @ Partner - GET
+    // -----------------------------------------------------------------------------------------------------
+    this._fuseMockApiService
+      .onGet('api/apps/member/partner/partner')
+      .reply(({ request }) => {
+        // Get the id from the params
+        const id = request.params.get('id');
+
+        // Clone the partners
+        const partners = cloneDeep(this._partners);
+
+        // Find the partner
+        const partner = partners.find((item: any) => item.id === id);
+
+        // Return the response
+        return [200, partner];
+      });
+
+    // -----------------------------------------------------------------------------------------------------
+    // @ Partner - POST
+    // -----------------------------------------------------------------------------------------------------
+    this._fuseMockApiService
+      .onPost('api/apps/member/partner/partner')
+      .reply(() => {
+        // Generate a new partner
+        const newPartner = {
+          id: FuseMockApiUtils.guid(),
+          category: '',
+          name: 'A New User',
+          description: '',
+          tags: [],
+          sku: '',
+          barcode: '',
+          brand: '',
+          vendor: '',
+          stock: '',
+          reserved: '',
+          cost: '',
+          basePrice: '',
+          taxPercent: '',
+          price: '',
+          weight: '',
+          thumbnail: '',
+          images: [],
+          active: false,
+        };
+
+        // Unshift the new partner
+        this._partners.unshift(newPartner);
+
+        // Return the response
+        return [200, newPartner];
+      });
+
+    // -----------------------------------------------------------------------------------------------------
+    // @ Partner - PATCH
+    // -----------------------------------------------------------------------------------------------------
+    this._fuseMockApiService
+      .onPatch('api/apps/member/partner/partner')
+      .reply(({ request }) => {
+        // Get the id and partner
+        const id = request.body.id;
+        const partner = cloneDeep(request.body.partner);
+
+        // Prepare the updated partner
+        let updatedPartner = null;
+
+        // Find the partner and update it
+        this._partners.forEach((item, index, partners) => {
+          if (item.id === id) {
+            // Update the partner
+            partners[index] = assign({}, partners[index], partner);
+
+            // Store the updated partner
+            updatedPartner = partners[index];
+          }
+        });
+
+        // Return the response
+        return [200, updatedPartner];
+      });
+
+    // -----------------------------------------------------------------------------------------------------
+    // @ Partner - DELETE
+    // -----------------------------------------------------------------------------------------------------
+    this._fuseMockApiService
+      .onDelete('api/apps/member/partner/partner')
+      .reply(({ request }) => {
+        // Get the id
+        const id = request.params.get('id');
+
+        // Find the partner and delete it
+        this._partners.forEach((item, index) => {
+          if (item.id === id) {
+            this._partners.splice(index, 1);
+          }
+        });
+
+        // Return the response
+        return [200, true];
+      });
+  }
+}
diff --git a/src/app/mock-api/apps/member/partner/data.ts b/src/app/mock-api/apps/member/partner/data.ts
new file mode 100644
index 0000000..66280ff
--- /dev/null
+++ b/src/app/mock-api/apps/member/partner/data.ts
@@ -0,0 +1,30 @@
+/* eslint-disable */
+
+export const partners = [
+  {
+    id: 'kgon1',
+    nickname: '본사',
+    rank: '본사',
+    branchCount: 2,
+    divisionCount: 2,
+    officeCount: 1,
+    storeCount: 1,
+    memberCount: 5,
+    level: '1',
+    calculateType: '롤링',
+    holdingMoney: 253675,
+    accountHolder: '본사',
+    phoneNumber: '010-0000-0000',
+    comp: 100737,
+    coupon: 1900000,
+    ownCharge: 460000,
+    bottomCharge: 54020000,
+    ownExchange: 100000,
+    bottomExchange: 19970000,
+    ownRevenue: 360000,
+    bottomRevenue: 34050000,
+    accession: '2021-10-14 10:53',
+    state: '정상',
+    note: '대본등록',
+  },
+];
diff --git a/src/app/mock-api/common/navigation/data.ts b/src/app/mock-api/common/navigation/data.ts
index 93e8827..d7bbdce 100644
--- a/src/app/mock-api/common/navigation/data.ts
+++ b/src/app/mock-api/common/navigation/data.ts
@@ -67,6 +67,41 @@ export const defaultNavigation: FuseNavigationItem[] = [
         icon: 'heroicons_outline:academic-cap',
         link: '/member/current-user',
       },
+      {
+        id: 'member.partner',
+        title: 'All Partner',
+        type: 'basic',
+        icon: 'heroicons_outline:academic-cap',
+        link: '/member/partner',
+      },
+      {
+        id: 'member.partner-mainoffice',
+        title: 'Partner Mainoffice',
+        type: 'basic',
+        icon: 'heroicons_outline:academic-cap',
+        link: '/member/partner-mainoffice',
+      },
+      {
+        id: 'member.partner-branch',
+        title: 'Partner Branch',
+        type: 'basic',
+        icon: 'heroicons_outline:academic-cap',
+        link: '/member/partner-branch',
+      },
+      {
+        id: 'member.partner-division',
+        title: 'Partner Division',
+        type: 'basic',
+        icon: 'heroicons_outline:academic-cap',
+        link: '/member/partner-division',
+      },
+      {
+        id: 'member.partner-office',
+        title: 'Partner Office',
+        type: 'basic',
+        icon: 'heroicons_outline:academic-cap',
+        link: '/member/partner-office',
+      },
     ],
   },
   {
diff --git a/src/app/mock-api/index.ts b/src/app/mock-api/index.ts
index 9cf809e..4449d8e 100644
--- a/src/app/mock-api/index.ts
+++ b/src/app/mock-api/index.ts
@@ -15,6 +15,10 @@ import { MemberUserMockApi } from 'app/mock-api/apps/member/user/api';
 import { MemberCasinomoneyMockApi } from './apps/member/casinomoney/api';
 import { MemberUnconnectedMockApi } from './apps/member/unconnected/api';
 import { MemberCurrentUserMockApi } from './apps/member/current-user/api';
+import { MemberPartnerMockApi } from './apps/member/partner/api';
+import { MemberPartnerBranchMockApi } from './apps/member/partner-branch/api';
+import { MemberPartnerDivisionMockApi } from './apps/member/partner-division/api';
+import { MemberPartnerOfficeMockApi } from './apps/member/partner-office/api';
 import { MessagesMockApi } from 'app/mock-api/common/messages/api';
 import { NavigationMockApi } from 'app/mock-api/common/navigation/api';
 import { NotesMockApi } from 'app/mock-api/apps/notes/api';
@@ -50,6 +54,10 @@ export const mockApiServices = [
   MemberCasinomoneyMockApi,
   MemberUnconnectedMockApi,
   MemberCurrentUserMockApi,
+  MemberPartnerMockApi,
+  MemberPartnerBranchMockApi,
+  MemberPartnerDivisionMockApi,
+  MemberPartnerOfficeMockApi,
   MessagesMockApi,
   NavigationMockApi,
   NotesMockApi,
diff --git a/src/app/modules/admin/member/casinomoney/casinomoney.routing.ts b/src/app/modules/admin/member/casinomoney/casinomoney.routing.ts
index 500956f..7ee1be0 100644
--- a/src/app/modules/admin/member/casinomoney/casinomoney.routing.ts
+++ b/src/app/modules/admin/member/casinomoney/casinomoney.routing.ts
@@ -11,7 +11,7 @@ export const casinomoneyRoutes: Route[] = [
     path: '',
     component: ListComponent,
     resolve: {
-      casinomoneyrs: CasinomoneysResolver,
+      casinomoneys: CasinomoneysResolver,
     },
   },
   {
diff --git a/src/app/modules/admin/member/partner-branch/components/index.ts b/src/app/modules/admin/member/partner-branch/components/index.ts
new file mode 100644
index 0000000..04759eb
--- /dev/null
+++ b/src/app/modules/admin/member/partner-branch/components/index.ts
@@ -0,0 +1,3 @@
+import { ListComponent } from './list.component';
+
+export const COMPONENTS = [ListComponent];
diff --git a/src/app/modules/admin/member/partner-branch/components/list.component.html b/src/app/modules/admin/member/partner-branch/components/list.component.html
new file mode 100644
index 0000000..1a04a5e
--- /dev/null
+++ b/src/app/modules/admin/member/partner-branch/components/list.component.html
@@ -0,0 +1,363 @@
+
+  
+  
+    
+    
+      
+    
+    
+    
+    
+    
+      
+      
+
+      
+      
+        
+          40
+          60
+          80
+          100
+        
+      
+      
+        
+          LV.1
+          LV.2
+          LV.3
+          LV.4
+        
+      
+      
+        
+          정상
+          대기
+          탈퇴
+          휴면
+          블랙
+          정지
+        
+      
+      
+        
+          카지노제한
+          슬롯제한
+        
+      
+      
+        
+          계좌입금
+        
+      
+      
+        
+          카지노콤프
+          슬롯콤프
+          배팅콤프
+          첫충콤프
+        
+      
+      
+      
+      
+        
+        
+      
+      
+      
+      
+      
+    
+  
+
+  
+  
+    
+    
+      
+         0; else noPartnerBranch">
+          
+            
+            
+              
+              
요율
+              
상부트리
+              
관리
+              
매장수
+              
회원수
+              
아이디
+              
닉네임
+              
예금주
+              
연락처
+              
정산
+              
보유금
+              
+                게임중머니
+              
+              
+                카지노->캐쉬
+              
+              
금일콤프
+              
총입출
+              
로그
+              
상태
+              
회원수
+              
비고
+            
+            
+            
+              
+                
+                  
+                    
+                  
+                  
+                  
+                    
+                    
+                      
+                      
+                    
+                  
+                  
+                  
+                    
+                    
+                    
+                    
+                  
+                  
+                  
+                    
+                  
+                  
+                  
+                    
+                      
+                        {{ partnerBranch.id }}
+                      
+                    
+                  
+                  
+                  
+                    {{ partnerBranch.nickname }}
+                  
+                  
+                  
+                    {{ partnerBranch.accountHolder }}
+                  
+                  
+                  
+                    {{ partnerBranch.phoneNumber }}
+                  
+                  
+                  
+                    {{ partnerBranch.calculateType }}
+                  
+                  
+                  
+                    캐쉬{{ partnerBranch.ownCash }} 콤프{{
+                      partnerBranch.ownComp
+                    }}
+                    쿠폰{{ partnerBranch.ownCoupon }}
+                  
+                  
+                  
+                    {{ partnerBranch.gameMoney }}
+                  
+                  
+                  
+                    
+                    
+                  
+                  
+                  
+                    {{ partnerBranch.todayComp }}P
+                  
+                  
+                  
+                    입금{{ partnerBranch.totalDeposit }} 출금{{
+                      partnerBranch.totalWithdraw
+                    }}
+                    차익{{ partnerBranch.balance }}
+                  
+                  
+                  
+                    가입{{ partnerBranch.registDate }} 최종{{
+                      partnerBranch.finalSigninDate
+                    }}
+                    IP{{ partnerBranch.ip }}
+                  
+                  
+                  
+                    {{ partnerBranch.state }}
+                  
+                  
+                  
+                    {{ partnerBranch.memberCount }}
+                  
+                  
+                  
+                    
+                  
+                
+          
+
+      
+        
+          There are no partnerbranchs!
+        
+      
+    
+  
+
+  
+  
+    
+    
+      
+    
+    
+    
+    
+    
+      
+      
+
+      
+      
+        
+          40
+          60
+          80
+          100
+        
+      
+      
+        
+          LV.1
+          LV.2
+          LV.3
+          LV.4
+        
+      
+      
+        
+          정상
+          대기
+          탈퇴
+          휴면
+          블랙
+          정지
+        
+      
+      
+        
+          카지노제한
+          슬롯제한
+        
+      
+      
+        
+          계좌입금
+        
+      
+      
+        
+          카지노콤프
+          슬롯콤프
+          배팅콤프
+          첫충콤프
+        
+      
+      
+      
+      
+        
+        
+      
+      
+      
+      
+      
+    
+  
+
+  
+  
+    
+    
+      
+         0; else noPartnerDivision"
+        >
+          
+            
+            
+              
+              
요율
+              
상부트리
+              
관리
+              
매장수
+              
회원수
+              
아이디
+              
닉네임
+              
예금주
+              
연락처
+              
정산
+              
보유금
+              
+                게임중머니
+              
+              
+                카지노->캐쉬
+              
+              
금일콤프
+              
총입출
+              
로그
+              
상태
+              
회원수
+              
비고
+            
+            
+            
+              
+                
+                  
+                    
+                  
+                  
+                  
+                    
+                    
+                      
+                      
+                    
+                  
+                  
+                  
+                    
+                    
+                    
+                    
+                  
+                  
+                  
+                    
+                  
+                  
+                  
+                    
+                      
+                        {{ partnerDivision.id }}
+                      
+                    
+                  
+                  
+                  
+                    {{ partnerDivision.nickname }}
+                  
+                  
+                  
+                    {{ partnerDivision.accountHolder }}
+                  
+                  
+                  
+                    {{ partnerDivision.phoneNumber }}
+                  
+                  
+                  
+                    {{ partnerDivision.calculateType }}
+                  
+                  
+                  
+                    캐쉬{{ partnerDivision.ownCash }} 콤프{{
+                      partnerDivision.ownComp
+                    }}
+                    쿠폰{{ partnerDivision.ownCoupon }}
+                  
+                  
+                  
+                    {{ partnerDivision.gameMoney }}
+                  
+                  
+                  
+                    
+                    
+                  
+                  
+                  
+                    {{ partnerDivision.todayComp }}P
+                  
+                  
+                  
+                    입금{{ partnerDivision.totalDeposit }} 출금{{
+                      partnerDivision.totalWithdraw
+                    }}
+                    차익{{ partnerDivision.balance }}
+                  
+                  
+                  
+                    가입{{ partnerDivision.registDate }} 최종{{
+                      partnerDivision.finalSigninDate
+                    }}
+                    IP{{ partnerDivision.ip }}
+                  
+                  
+                  
+                    {{ partnerDivision.state }}
+                  
+                  
+                  
+                    {{ partnerDivision.memberCount }}
+                  
+                  
+                  
+                    
+                  
+                
+          
+
+      
+        
+          There are no partnerdivisions!
+        
+      
+    
+  
+
+  
+  
+    
+    
+      
+    
+    
+    
+    
+    
+      
+      
+
+      
+      
+        
+          40
+          60
+          80
+          100
+        
+      
+      
+        
+          LV.1
+          LV.2
+          LV.3
+          LV.4
+        
+      
+      
+        
+          정상
+          대기
+          탈퇴
+          휴면
+          블랙
+          정지
+        
+      
+      
+        
+          카지노제한
+          슬롯제한
+        
+      
+      
+        
+          계좌입금
+        
+      
+      
+        
+          카지노콤프
+          슬롯콤프
+          배팅콤프
+          첫충콤프
+        
+      
+      
+      
+      
+        
+        
+      
+      
+      
+      
+      
+    
+  
+
+  
+  
+    
+    
+      
+         0; else noPartnerMainoffice"
+        >
+          
+            
+            
+              
+              
요율
+              
상부트리
+              
관리
+              
매장수
+              
회원수
+              
아이디
+              
닉네임
+              
예금주
+              
연락처
+              
정산
+              
보유금
+              
+                게임중머니
+              
+              
+                카지노->캐쉬
+              
+              
금일콤프
+              
총입출
+              
로그
+              
상태
+              
회원수
+              
비고
+            
+            
+            
+              
+                
+                  
+                    
+                  
+                  
+                  
+                    
+                    
+                      
+                      
+                    
+                  
+                  
+                  
+                    
+                    
+                    
+                    
+                  
+                  
+                  
+                    
+                  
+                  
+                  
+                    
+                      
+                        {{ partnerMainoffice.id }}
+                      
+                    
+                  
+                  
+                  
+                    {{ partnerMainoffice.nickname }}
+                  
+                  
+                  
+                    {{ partnerMainoffice.accountHolder }}
+                  
+                  
+                  
+                    {{ partnerMainoffice.phoneNumber }}
+                  
+                  
+                  
+                    {{ partnerMainoffice.calculateType }}
+                  
+                  
+                  
+                    캐쉬{{ partnerMainoffice.ownCash }} 콤프{{
+                      partnerMainoffice.ownComp
+                    }}
+                    쿠폰{{ partnerMainoffice.ownCoupon }}
+                  
+                  
+                  
+                    {{ partnerMainoffice.gameMoney }}
+                  
+                  
+                  
+                    
+                    
+                  
+                  
+                  
+                    {{ partnerMainoffice.todayComp }}P
+                  
+                  
+                  
+                    입금{{ partnerMainoffice.totalDeposit }} 출금{{
+                      partnerMainoffice.totalWithdraw
+                    }}
+                    차익{{ partnerMainoffice.balance }}
+                  
+                  
+                  
+                    가입{{ partnerMainoffice.registDate }} 최종{{
+                      partnerMainoffice.finalSigninDate
+                    }}
+                    IP{{ partnerMainoffice.ip }}
+                  
+                  
+                  
+                    {{ partnerMainoffice.state }}
+                  
+                  
+                  
+                    {{ partnerMainoffice.memberCount }}
+                  
+                  
+                  
+                    
+                  
+                
+          
+
+      
+        
+          There are no partner mainoffices!
+        
+      
+    
+  
+
+  
+  
+    
+    
+      
+    
+    
+    
+    
+    
+      
+      
+
+      
+      
+        
+          40
+          60
+          80
+          100
+        
+      
+      
+        
+          LV.1
+          LV.2
+          LV.3
+          LV.4
+        
+      
+      
+        
+          정상
+          대기
+          탈퇴
+          휴면
+          블랙
+          정지
+        
+      
+      
+        
+          카지노제한
+          슬롯제한
+        
+      
+      
+        
+          계좌입금
+        
+      
+      
+        
+          카지노콤프
+          슬롯콤프
+          배팅콤프
+          첫충콤프
+        
+      
+      
+      
+      
+        
+        
+      
+      
+      
+      
+      
+    
+  
+
+  
+  
+    
+    
+      
+         0; else noPartnerOffice">
+          
+            
+            
+              
+              
요율
+              
상부트리
+              
관리
+              
매장수
+              
회원수
+              
아이디
+              
닉네임
+              
예금주
+              
연락처
+              
정산
+              
보유금
+              
+                게임중머니
+              
+              
+                카지노->캐쉬
+              
+              
금일콤프
+              
총입출
+              
로그
+              
상태
+              
회원수
+              
비고
+            
+            
+            
+              
+                
+                  
+                    
+                  
+                  
+                  
+                    
+                    
+                      
+                      
+                    
+                  
+                  
+                  
+                    
+                    
+                    
+                    
+                  
+                  
+                  
+                    
+                  
+                  
+                  
+                    
+                      
+                        {{ partnerOffice.id }}
+                      
+                    
+                  
+                  
+                  
+                    {{ partnerOffice.nickname }}
+                  
+                  
+                  
+                    {{ partnerOffice.accountHolder }}
+                  
+                  
+                  
+                    {{ partnerOffice.phoneNumber }}
+                  
+                  
+                  
+                    {{ partnerOffice.calculateType }}
+                  
+                  
+                  
+                    캐쉬{{ partnerOffice.ownCash }} 콤프{{
+                      partnerOffice.ownComp
+                    }}
+                    쿠폰{{ partnerOffice.ownCoupon }}
+                  
+                  
+                  
+                    {{ partnerOffice.gameMoney }}
+                  
+                  
+                  
+                    
+                    
+                  
+                  
+                  
+                    {{ partnerOffice.todayComp }}P
+                  
+                  
+                  
+                    입금{{ partnerOffice.totalDeposit }} 출금{{
+                      partnerOffice.totalWithdraw
+                    }}
+                    차익{{ partnerOffice.balance }}
+                  
+                  
+                  
+                    가입{{ partnerOffice.registDate }} 최종{{
+                      partnerOffice.finalSigninDate
+                    }}
+                    IP{{ partnerOffice.ip }}
+                  
+                  
+                  
+                    {{ partnerOffice.state }}
+                  
+                  
+                  
+                    {{ partnerOffice.memberCount }}
+                  
+                  
+                  
+                    
+                  
+                
+          
+
+      
+        
+          There are no partner offices!
+        
+      
+    
+  
+
+  
+  
+    
+    
+      
+    
+    
+    
+    
+    
+      
+      
+
+      
+      
+        
+        
+      
+      
+      
+    
+  
+
+  
+  
+    
+    
+      
+         0; else noPartner">
+          
+            
+            
+              
+              
아이디
+              
매장수
+              
관리
+              
요율
+              
예금주
+              
연락처
+              
등급
+              
정산
+              
보유금
+              
로그
+              
콤프
+              
쿠폰
+              
충전금
+              
환전금
+              
수익금
+              
가입날짜
+              
상태
+              
비고
+              
+            
+            
+            
+              
+                
+                  
+                  
+                    
+                      
+                      {{ partner.rank }}
+                      
+                        {{ partner.id }}
+                      
+                      
+                      {{ partner.nickname }}
+                    
+                  
+
+                  
+                  
+                    {{ partner.branchCount }}
+                    {{ partner.divisionCount }}
+                    {{ partner.officeCount }}
+                    {{ partner.storeCount }}
+                    {{ partner.memberCount }}
+                  
+                  
+                  
+                    
+                  
+                  
+                  
+                    
+
+                    
+                    
+                      {{ partner.accountHolder }}
+                    
+
+                    
+                    
+                      {{ partner.phoneNumber }}
+                    
+
+                    
+                    
+                      LV.{{ partner.level }}
+                    
+                  
+
+                  
+                  
+                    {{ partner.calculateType }}
+                  
+
+                  
+                  
+                    콤프{{ partner.comp }} 쿠폰{{ partner.coupon }}
+                  
+
+                  
+                  
+                    {{ partner.holdingMoney }}
+                  
+
+                  
+                  
+                    {{ partner.comp }}P
+                  
+
+                  
+                  
+                    {{ partner.coupon }}
+                  
+
+                  
+                  
+                    본인 {{ partner.ownCharge }} 하부
+                    {{ partner.bottomCharge }}
+                  
+
+                  
+                  
+                    본인 {{ partner.ownExchange }} 하부
+                    {{ partner.bottomExchange }}
+                  
+
+                  
+                  
+                    본인 {{ partner.ownRevenue }} 하부
+                    {{ partner.bottomRevenue }}
+                  
+
+                  
+                  
+                    가입날짜{{ partner.accession }}
+                  
+
+                  
+                  
+                    {{ partner.state }}
+                  
+
+                  
+                  
+                    
+                  
+                  
+                  
+
+                  
+                  
+
+                  
+                  
+
+                  
+                  
+
+                  
+                  
+                  
+                  
+                  
+                  
+                  
+                  
+
+                  
+                  
+
+                  
+                  
+                
+          
+
+      
+        
+          There are no partners!
+        
+      
+    
+  
+