diff --git a/_mock/_rule.ts b/_mock/_rule.ts
index c1e91847..4a145ba3 100644
--- a/_mock/_rule.ts
+++ b/_mock/_rule.ts
@@ -41,7 +41,7 @@ function getRule(params: any): any {
if (params.no) {
ret = ret.filter(data => data.no.indexOf(params.no) > -1);
}
- return { data: ret, success: true };
+ return { data: { records: ret, total: ret.length }, success: true };
}
function removeRule(nos: string): any {
@@ -51,7 +51,7 @@ function removeRule(nos: string): any {
list.splice(idx, 1);
}
});
-
+
return { data: true, success: true };
}
@@ -78,6 +78,6 @@ function saveRule(description: string): void {
export const RULES = {
'POST /rule': (req: MockRequest) => getRule(req.queryString),
- 'POST /delete/rule': (req: MockRequest) => removeRule(req.body.nos),
+ 'POST /delete/rule': (req: MockRequest) => removeRule(req.body.nos)
// 'POST /rule': (req: MockRequest) => saveRule(req.body.description)
};
diff --git a/angular.json b/angular.json
index b04d04a7..0405136b 100644
--- a/angular.json
+++ b/angular.json
@@ -58,8 +58,8 @@
"budgets": [
{
"type": "initial",
- "maximumWarning": "2mb",
- "maximumError": "5mb"
+ "maximumWarning": "4mb",
+ "maximumError": "10mb"
}
]
},
diff --git a/src/app/routes/demo/components/alian-demo/alian-demo.component.html b/src/app/routes/demo/components/alian-demo/alian-demo.component.html
index e2acb3be..e403a762 100644
--- a/src/app/routes/demo/components/alian-demo/alian-demo.component.html
+++ b/src/app/routes/demo/components/alian-demo/alian-demo.component.html
@@ -39,6 +39,6 @@
-
\ No newline at end of file
diff --git a/src/app/routes/demo/components/zorro-demo/zorro-demo.component.ts b/src/app/routes/demo/components/zorro-demo/zorro-demo.component.ts
index cef1b137..1bfa7d26 100644
--- a/src/app/routes/demo/components/zorro-demo/zorro-demo.component.ts
+++ b/src/app/routes/demo/components/zorro-demo/zorro-demo.component.ts
@@ -69,8 +69,8 @@ export class ZorroDemoComponent implements OnInit {
this.service
.request('/rule?_allow_anonymous=true', this.q)
.pipe(
- map((list: Array<{ status: number; statusText: string; statusType: string }>) =>
- list.map(i => {
+ map((list: { records: Array<{ status: number; statusText: string; statusType: string }> }) =>
+ list.records.map(i => {
const statusItem = this.status[i.status];
i.statusText = statusItem.text;
i.statusType = statusItem.type;
diff --git a/src/app/routes/routes-routing.module.ts b/src/app/routes/routes-routing.module.ts
index 351f4ee8..ee9104a3 100644
--- a/src/app/routes/routes-routing.module.ts
+++ b/src/app/routes/routes-routing.module.ts
@@ -25,12 +25,13 @@ const routes: Routes = [
{ path: 'demo', loadChildren: () => import('./demo/demo.module').then(m => m.DemoModule) },
{
path: 'account',
- loadChildren: () => import('./account/account.module').then((m) => m.AccountModule),
+ loadChildren: () => import('./account/account.module').then(m => m.AccountModule)
},
{
path: 'usercenter',
- loadChildren: () => import('./usercenter/usercenter.module').then((m) => m.UsercenterModule),
+ loadChildren: () => import('./usercenter/usercenter.module').then(m => m.UsercenterModule)
},
+ { path: 'system', loadChildren: () => import('./sys-setting/sys-setting.module').then(m => m.SysSettingModule) }
]
},
// passport
diff --git a/src/app/routes/sys-setting/components/staff-management/staff-management.component.html b/src/app/routes/sys-setting/components/staff-management/staff-management.component.html
new file mode 100644
index 00000000..4bd860b2
--- /dev/null
+++ b/src/app/routes/sys-setting/components/staff-management/staff-management.component.html
@@ -0,0 +1,40 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 已选择
+ {{ selectedRows.length }}项
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/app/routes/sys-setting/components/staff-management/staff-management.component.less b/src/app/routes/sys-setting/components/staff-management/staff-management.component.less
new file mode 100644
index 00000000..04fd4ba3
--- /dev/null
+++ b/src/app/routes/sys-setting/components/staff-management/staff-management.component.less
@@ -0,0 +1,13 @@
+:host::ng-deep{
+ .search-box{
+ .ant-card-body{
+ padding-bottom: 18px;
+ }
+ }
+
+ .content-box{
+ .ant-card-body{
+ padding-top: 14px;
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/app/routes/sys-setting/components/staff-management/staff-management.component.ts b/src/app/routes/sys-setting/components/staff-management/staff-management.component.ts
new file mode 100644
index 00000000..81cc4922
--- /dev/null
+++ b/src/app/routes/sys-setting/components/staff-management/staff-management.component.ts
@@ -0,0 +1,155 @@
+import { Component, OnInit, ViewChild } from '@angular/core';
+import { STComponent, STColumn, STChange } from '@delon/abc/st';
+import { SFComponent, SFSchema } from '@delon/form';
+import { NzModalService } from 'ng-zorro-antd/modal';
+import { SystemService } from '../../services/system.service';
+import { SystemStaffStaffModalComponent } from './staff-modal/staff-modal.component';
+import { BuyerTranspowerComponent } from './transpower/transpower.component';
+
+@Component({
+ selector: 'app-staff-management',
+ templateUrl: './staff-management.component.html',
+ styleUrls: ['./staff-management.component.less']
+})
+export class StaffManagementComponent implements OnInit {
+ @ViewChild('st', { static: true })
+ st!: STComponent;
+ @ViewChild('sf', { static: false })
+ sf!: SFComponent;
+
+ url = `/rule?_allow_anonymous=true`;
+
+ searchSchema: SFSchema = {
+ properties: {
+ receiveName: {
+ type: 'string',
+ title: '输入搜索',
+ ui: { placeholder: '手机号码 / 成员姓名' }
+ }
+ }
+ };
+
+ columns: STColumn[] = [
+ { title: '', index: 'key', type: 'checkbox' },
+ { title: '员工姓名', index: 'no' },
+ { title: '手机号码', index: 'description' },
+ { title: '角色', index: 'description' },
+ {
+ title: '最后登录时间',
+ index: 'updatedAt',
+ type: 'date'
+ },
+ {
+ title: '成员状态',
+ className: 'text-center',
+ index: 'status',
+ type: 'badge',
+ badge: {
+ 0: { text: '正常', color: 'success' },
+ 2: { text: '废弃', color: 'warning' },
+ 3: { text: '废弃', color: 'warning' },
+ 1: { text: '冻结', color: 'error' }
+ }
+ },
+ {
+ title: '操作',
+ buttons: [
+ {
+ text: '编辑',
+ click: item => this.staffAction(item)
+ },
+ {
+ text: '恢复',
+ iif: item => item.status === 1,
+ click: item => this.action(2)
+ },
+ {
+ text: '冻结',
+ iif: item => item.status === 0,
+ click: item => this.action(1)
+ },
+ {
+ text: '超管转授',
+ iif: item => item.status === 0,
+ click: item => this.transpowerAction(item)
+ },
+ {
+ text: '删除',
+ iif: item => item.status === 1,
+ click: item => this.action(3)
+ }
+ ]
+ }
+ ];
+
+ selectedRows: any[] = [];
+
+ reqParams = { pageIndex: 1, pageSize: 10 };
+
+ actionLabel = {
+ 1: { title: '确认冻结?', text: '冻结后用户在本系统将无法登录使用,请谨慎操作!' },
+ 2: { title: '确认恢复?', text: '恢复后用户在本系统的权限将一并重新开启。' },
+ 3: { title: '确认删除?', text: '删除后该用户ID将在本系统中将无法登录使用并删除,请谨慎操作!' }
+ };
+ constructor(public service: SystemService, private nzModalService: NzModalService) {}
+
+ ngOnInit(): void {}
+
+ stChange(e: STChange): void {
+ switch (e.type) {
+ case 'checkbox':
+ this.selectedRows = e.checkbox!;
+ break;
+ case 'filter':
+ this.st.load();
+ break;
+ }
+ }
+
+ action(type: 1 | 2 | 3) {
+ this.nzModalService.error({
+ nzTitle: this.actionLabel[type].title,
+ nzContent: ``,
+ nzClosable: false,
+ nzCancelText: '取消',
+ nzOnOk: () => {
+ switch (type) {
+ case 1:
+ break;
+
+ default:
+ break;
+ }
+ }
+ });
+ }
+
+ transpowerAction(item: any) {
+ const modal = this.nzModalService.create({
+ nzContent: BuyerTranspowerComponent,
+ nzComponentParams: { i: { ...item } },
+ nzFooter: null
+ });
+ modal.afterClose.subscribe(res => {
+ this.st.load();
+ });
+ }
+
+ staffAction(item?: any) {
+ const modal = this.nzModalService.create({
+ nzContent: SystemStaffStaffModalComponent,
+ nzComponentParams: item ? { i: { ...item, roleId: '1,2,3', name: '用户名', phone: 18555555555 } } : { i: { id: 0 } },
+ nzFooter: null
+ });
+ modal.afterClose.subscribe(res => {
+ this.st.load();
+ });
+ }
+
+ /**
+ * 重置表单
+ */
+ resetSF() {
+ this.sf.reset();
+ }
+}
diff --git a/src/app/routes/sys-setting/components/staff-management/staff-modal/staff-modal.component.html b/src/app/routes/sys-setting/components/staff-management/staff-modal/staff-modal.component.html
new file mode 100644
index 00000000..f3d377e0
--- /dev/null
+++ b/src/app/routes/sys-setting/components/staff-management/staff-modal/staff-modal.component.html
@@ -0,0 +1,24 @@
+
+
+
+
+
+
+
+
+
+
+ - {{ i.phone }}
+
+
+
+
+
+
+
+
diff --git a/src/app/routes/sys-setting/components/staff-management/staff-modal/staff-modal.component.ts b/src/app/routes/sys-setting/components/staff-management/staff-modal/staff-modal.component.ts
new file mode 100644
index 00000000..e9944ab5
--- /dev/null
+++ b/src/app/routes/sys-setting/components/staff-management/staff-modal/staff-modal.component.ts
@@ -0,0 +1,146 @@
+import { Component, OnInit, ViewChild } from '@angular/core';
+import { SFComponent, SFSchema, SFUISchema } from '@delon/form';
+import { _HttpClient } from '@delon/theme';
+import { copy } from '@delon/util';
+import { NzMessageService } from 'ng-zorro-antd/message';
+import { NzModalRef, NzModalService } from 'ng-zorro-antd/modal';
+import { map } from 'rxjs/operators';
+import { EAEnterpriseService } from 'src/app/shared/services/business/enterprise.service';
+import { SystemService } from '../../../services/system.service';
+
+@Component({
+ selector: 'app-system-add',
+ templateUrl: './staff-modal.component.html',
+ styleUrls: ['./staff-modal.less']
+})
+export class SystemStaffStaffModalComponent implements OnInit {
+ @ViewChild('sf', { static: false })
+ sf!: SFComponent;
+ i: any;
+ schema!: SFSchema;
+ ui!: SFUISchema;
+ roleList = [];
+ roleNames: any = [];
+ constructor(
+ private modal: NzModalRef,
+ public msgSrv: NzMessageService,
+ public service: SystemService,
+ private enterpriseSrv: EAEnterpriseService
+ ) {}
+
+ ngOnInit(): void {
+ if (this.i?.id !== 0) {
+ this.i.roleIds = this.i.roleId !== '' ? this.i.roleId.split(',') : [];
+ }
+
+ this.initSF(this.i);
+ }
+ initSF(staff: any) {
+ console.log(staff);
+ this.schema = {
+ properties: {
+ name: {
+ title: '员工姓名',
+ type: 'string',
+ maxLength: 32,
+ ui: { widget: staff?.name ? 'text' : 'string', placeholder: '请输入员工姓名' },
+ default: staff.name
+ },
+ phone: {
+ title: '手机号码',
+ type: 'string',
+ format: 'mobile',
+ maxLength: 11,
+ ui: { widget: staff?.phone ? 'text' : 'string', placeholder: '请输入员工手机号' },
+ default: staff.phone
+ },
+ roleIds: {
+ title: '角色',
+ type: 'string',
+ ui: {
+ widget: 'select',
+ placeholder: '请选择员工角色',
+ mode: 'multiple',
+ maxMultipleCount: 5,
+ // asyncData: () => {
+ // return this.service.request(this.service.$api_getAppRoleList).pipe(
+ // map((res: any) => {
+ // this.roleList = res;
+ // return res.map((item: any) => {
+ // return { label: item.roleName, value: item.id };
+ // });
+ // }),
+ // );
+ // },
+ change: (i: any) => {
+ this.sf.value.roleIds = i;
+ this.sf?.setValue('/roleIds', i);
+ }
+ },
+ default: staff?.roleIds
+ }
+ },
+ required: ['name', 'phone', 'roleIds']
+ };
+ this.ui = {
+ '*': {
+ spanLabelFixed: 120,
+ grid: { span: 24 }
+ }
+ };
+ }
+
+ sure() {
+ if (!this.sf.value.roleIds || this.sf.value.roleIds.length === 0) {
+ this.service.msgSrv.error('员工角色不能为空!');
+ return;
+ }
+ this.roleNames = [];
+ this.roleList.forEach((item: { id: any; roleName: string }) => {
+ this.sf.value.roleIds.forEach((ele: any) => {
+ if (ele === item.id) {
+ this.roleNames.push(item.roleName);
+ }
+ });
+ });
+ if (this.i.id === 0) {
+ const params: any = {
+ ...this.sf.value,
+ roleId: this.sf.value.roleIds,
+ roleNames: this.roleNames.join(','),
+ telephone: this.sf.value.phone,
+ staffName: this.sf.value.name
+ };
+ // this.service.request(this.service.$api_addStaff, params).subscribe((res) => {
+ // console.log(res);
+ // if (res) {
+ // this.service.msgSrv.success('保存成功!');
+ // this.modal.close(true);
+ // }
+ // // this.showInviteFlag = true;
+ // // this.inviteCode = res.inviteCode;
+ // });
+ } else {
+ const params: any = {
+ appUserId: this.i.appUserId,
+ staffName: this.sf.value.name,
+ roleId: this.sf.value.roleIds,
+ telephone: this.i.telephone
+ };
+ // this.service.request(this.service.$api_editorStaff, params).subscribe((res) => {
+ // this.service.msgSrv.success('编辑成功!');
+ // // this.loadMyIdentity();
+ // this.modal.close(true);
+ // });
+ }
+ }
+ loadMyIdentity() {
+ this.enterpriseSrv.loadEnterpises().subscribe((data: any[]) => {
+ this.enterpriseSrv.setCache(data);
+ });
+ }
+
+ close() {
+ this.modal.destroy();
+ }
+}
diff --git a/src/app/routes/sys-setting/components/staff-management/staff-modal/staff-modal.less b/src/app/routes/sys-setting/components/staff-management/staff-modal/staff-modal.less
new file mode 100644
index 00000000..79ab5bb0
--- /dev/null
+++ b/src/app/routes/sys-setting/components/staff-management/staff-modal/staff-modal.less
@@ -0,0 +1,25 @@
+.info {
+ width: 100%;
+ margin: 0 auto 10px auto;
+ color: #333;
+ text-indent: 24px;
+}
+.staffBox {
+ display: flex;
+ img {
+ width: 30px;
+ height: 30px;
+ overflow: hidden;
+ border-radius: 50px;
+ }
+ dl {
+ margin: 0 0 0 5px;
+ dt {
+ font-size: 14px;
+ line-height: 28px;
+ }
+ dd {
+ font-size: 12px;
+ }
+ }
+}
diff --git a/src/app/routes/sys-setting/components/staff-management/transpower/transpower.component.html b/src/app/routes/sys-setting/components/staff-management/transpower/transpower.component.html
new file mode 100644
index 00000000..767478a2
--- /dev/null
+++ b/src/app/routes/sys-setting/components/staff-management/transpower/transpower.component.html
@@ -0,0 +1,27 @@
+
+
+
\ No newline at end of file
diff --git a/src/app/routes/sys-setting/components/staff-management/transpower/transpower.component.ts b/src/app/routes/sys-setting/components/staff-management/transpower/transpower.component.ts
new file mode 100644
index 00000000..7b9106d4
--- /dev/null
+++ b/src/app/routes/sys-setting/components/staff-management/transpower/transpower.component.ts
@@ -0,0 +1,83 @@
+import { ChangeDetectorRef, Component, OnInit, TemplateRef } from '@angular/core';
+import { NzModalRef } from 'ng-zorro-antd/modal';
+import { interval } from 'rxjs';
+import { take } from 'rxjs/operators';
+import { DunHelper } from 'src/app/shared/components/captcha/dun.helper';
+import { EACaptchaService } from 'src/app/shared/services/business/captcha.service';
+
+@Component({
+ selector: 'app-buyer-transpower',
+ templateUrl: './transpower.component.html',
+ styleUrls: ['./transpower.less']
+})
+export class BuyerTranspowerComponent implements OnInit {
+ record: any = {};
+ count = 0;
+ interval$: any;
+ i: any;
+ smsVerifyCode = '';
+ superPhone = '';
+ staffId = 1;
+ staffList: any = [];
+ constructor(
+ private modal: NzModalRef,
+ public captchaService: EACaptchaService,
+ private dunHelper: DunHelper,
+ private cdr: ChangeDetectorRef
+ ) {}
+
+ ngOnInit(): void {
+ this.getPhone();
+ }
+ getPhone() {
+ // this.service.request(this.service.$api_getAppLesseeAdmin).subscribe((res) => {
+ // console.log(res);
+ // if (res) {
+ // this.superPhone = res.telephone;
+ // }
+ // });
+ }
+ sure() {
+ const params = {
+ appUserId: this.i.appUserId,
+ smsVerifyCode: this.smsVerifyCode
+ };
+ // this.service.request(this.service.$api_shiftResellerAdmin, params).subscribe((res) => {
+ // if (res) {
+ // this.service.msgSrv.success('操作成功!');
+ // this.modal.close(true);
+ // }
+ // });
+ }
+ close() {
+ this.modal.destroy();
+ }
+ /**
+ * 获取手机验证码
+ */
+ sendCode() {
+ this.captchaService.getAppLesseeAdminSMVerificationCode().subscribe(res => {
+ if (res.success && res.data.code === '1') {
+ this.captchaService.msgSrv.success('发送验证码成功');
+ this.createInterval();
+ } else if (res.data.code === '503046') {
+ this.dunHelper.popUp().subscribe(_ => {
+ this.createInterval();
+ this.dunHelper.destory();
+ });
+ } else {
+ this.captchaService.msgSrv.warning(res.msg);
+ }
+ });
+ }
+
+ private createInterval() {
+ this.count = 59;
+ interval(1000)
+ .pipe(take(60))
+ .subscribe(x => {
+ this.count = 59 - (x + 1);
+ this.cdr.detectChanges();
+ });
+ }
+}
diff --git a/src/app/routes/sys-setting/components/staff-management/transpower/transpower.less b/src/app/routes/sys-setting/components/staff-management/transpower/transpower.less
new file mode 100644
index 00000000..665d6a15
--- /dev/null
+++ b/src/app/routes/sys-setting/components/staff-management/transpower/transpower.less
@@ -0,0 +1,41 @@
+.info {
+ width : 90%;
+ margin : 0 auto;
+ color : #333;
+ text-indent: 24px;
+}
+
+.staffBox {
+ display : flex;
+ align-items: center;
+
+ img {
+ width : 30px;
+ height : 30px;
+ overflow : hidden;
+ border-radius: 50px;
+ }
+
+ dl {
+ margin: 0 0 0 5px;
+
+ dt {
+ font-size : 14px;
+ line-height: 28px;
+ }
+
+ dd {
+ font-size: 12px;
+ }
+ }
+}
+
+.inputBox {
+ position: relative;
+
+ a {
+ position: absolute;
+ top : 0;
+ right : 5px;
+ }
+}
\ No newline at end of file
diff --git a/src/app/routes/sys-setting/services/system.service.ts b/src/app/routes/sys-setting/services/system.service.ts
new file mode 100644
index 00000000..b6bbf64e
--- /dev/null
+++ b/src/app/routes/sys-setting/services/system.service.ts
@@ -0,0 +1,11 @@
+import { Injectable, Injector } from '@angular/core';
+import { BaseService } from 'src/app/shared/services';
+
+@Injectable({
+ providedIn: 'root'
+})
+export class SystemService extends BaseService {
+ constructor(public injector: Injector) {
+ super(injector);
+ }
+}
diff --git a/src/app/routes/sys-setting/sys-setting-routing.module.ts b/src/app/routes/sys-setting/sys-setting-routing.module.ts
index 5c565818..7e35a056 100644
--- a/src/app/routes/sys-setting/sys-setting-routing.module.ts
+++ b/src/app/routes/sys-setting/sys-setting-routing.module.ts
@@ -1,7 +1,8 @@
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
+import { StaffManagementComponent } from './components/staff-management/staff-management.component';
-const routes: Routes = [];
+const routes: Routes = [{ path: 'staff-management', component: StaffManagementComponent }];
@NgModule({
imports: [RouterModule.forChild(routes)],
diff --git a/src/app/routes/sys-setting/sys-setting.module.ts b/src/app/routes/sys-setting/sys-setting.module.ts
index e39f6be4..b71876d6 100644
--- a/src/app/routes/sys-setting/sys-setting.module.ts
+++ b/src/app/routes/sys-setting/sys-setting.module.ts
@@ -1,9 +1,14 @@
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { SharedModule } from '@shared';
+import { StaffManagementComponent } from './components/staff-management/staff-management.component';
+import { SysSettingRoutingModule } from './sys-setting-routing.module';
+import { BuyerTranspowerComponent } from './components/staff-management/transpower/transpower.component';
+import { SystemStaffStaffModalComponent } from './components/staff-management/staff-modal/staff-modal.component';
+const COMPONENTS = [StaffManagementComponent, BuyerTranspowerComponent, SystemStaffStaffModalComponent];
@NgModule({
- declarations: [],
- imports: [CommonModule, SharedModule]
+ declarations: COMPONENTS,
+ imports: [CommonModule, SysSettingRoutingModule, SharedModule]
})
export class SysSettingModule {}
diff --git a/src/app/routes/usercenter/components/freight/list/new/new.component.less b/src/app/routes/usercenter/components/freight/list/new/new.component.less
index 1014aacf..55bf514e 100644
--- a/src/app/routes/usercenter/components/freight/list/new/new.component.less
+++ b/src/app/routes/usercenter/components/freight/list/new/new.component.less
@@ -3,20 +3,21 @@
nz-card {
.page-title {
margin-bottom: 39px;
- color: #333;
- font-weight: 500;
- font-size: 20px;
- line-height: 28px;
- text-align: center;
+ color : #333;
+ font-weight : 500;
+ font-size : 20px;
+ line-height : 28px;
+ text-align : center;
}
+
.step-title {
display: block;
- width: 800px !important;
- margin: 0 auto;
+ width : 800px !important;
+ margin : 0 auto;
}
.myForm {
- width: 680px;
+ width : 680px;
margin: 5rem auto;
}
@@ -27,69 +28,82 @@
.btn-submit {
margin-top: 16px;
}
+
.pr {
position: relative;
}
+
.pa {
position: absolute;
- top: 35px;
- left: 150px;
+ top : 35px;
+ left : 150px;
}
+
.tips {
- display: flex;
+ display : flex;
margin-bottom: 0;
- color: #333;
+ color : #333;
+
dt {
width: 150px;
}
+
dd {
- width: 190px;
+ width : 190px;
margin-bottom: 0;
- text-align: center;
+ text-align : center;
}
}
+
.form-title {
margin-bottom: 10px;
- padding-left: 8px;
- color: #333;
- font-weight: 700;
- font-size: 18px;
- line-height: 20px;
- border-left: solid 3px #1890ff;
+ padding-left : 8px;
+ color : #333;
+ font-weight : 700;
+ font-size : 18px;
+ line-height : 20px;
+ border-left : solid 3px #1890ff;
}
+
.form-content {
padding: 48px 32px;
}
+
.apply-sv {
- margin: 16px 0;
- padding: 20px;
- background: #f8f8f8;
+ margin : 16px 0;
+ padding : 20px;
+ background : #f8f8f8;
border-radius: 2px;
}
+
.result-date {
font-size: 12px;
}
+
.result-tips {
- color: #ff4d4f;
+ color : #ff4d4f;
font-size: 14px;
}
+
.sv-img {
- display: inline-block;
- width: 104px;
- height: 104px;
- margin-right: 20px;
- padding: 8px;
- background: #fff;
- border: 1px solid rgba(0, 0, 0, 0.15);
+ display : inline-block;
+ width : 104px;
+ height : 104px;
+ margin-right : 20px;
+ padding : 8px;
+ background : #fff;
+ border : 1px solid rgba(0, 0, 0, 0.15);
border-radius: 2px;
+
img {
- width: 100%;
+ width : 100%;
height: 100%;
}
}
}
- /deep/ .ant-row {
+
+ .ant-row {
margin-left: 100px;
}
}
-}
+}
\ No newline at end of file
diff --git a/src/assets/mocks/menu-data.json b/src/assets/mocks/menu-data.json
index b0130592..f043b580 100644
--- a/src/assets/mocks/menu-data.json
+++ b/src/assets/mocks/menu-data.json
@@ -69,7 +69,7 @@
"children": [
{
"text": "员工管理",
- "link": "/demo/zorro"
+ "link": "/system/staff-management"
},
{
"text": "角色管理",
diff --git a/src/style-icons-auto.ts b/src/style-icons-auto.ts
index 6dee7dec..a07c78c9 100644
--- a/src/style-icons-auto.ts
+++ b/src/style-icons-auto.ts
@@ -104,5 +104,5 @@ export const ICONS_AUTO = [
UsbOutline,
UserOutline,
WeiboCircleOutline,
- EyeInvisibleOutline
+ EyeInvisibleOutline,
];
diff --git a/src/styles.less b/src/styles.less
index de0c513b..4368dd61 100644
--- a/src/styles.less
+++ b/src/styles.less
@@ -6,8 +6,15 @@
@import './styles/index';
@import './styles/theme';
+@layout-gutter: 8px;
+/* 全局滚动条美化 */
+*::-webkit-scrollbar {
+ width : (@layout-gutter);
+ height: (@layout-gutter);
+}
-// .page-header {
-// margin-left: -24px;
-// margin-top : -24px;
-// }
\ No newline at end of file
+*::-webkit-scrollbar-thumb {
+ background : #d9d9d9;
+ cursor : pointer;
+ border-radius: (@layout-gutter) / 2;
+}
\ No newline at end of file
diff --git a/src/styles/theme.less b/src/styles/theme.less
index 89ff4bdd..74b0ba47 100644
--- a/src/styles/theme.less
+++ b/src/styles/theme.less
@@ -8,3 +8,7 @@
// ==========Custom brand visual color==========
// ==========Custom brand visual color==========
+
+.error-color {
+ color: #ff4d4f;
+}
\ No newline at end of file