diff --git a/src/forge/Head/NoticeContent.jsx b/src/forge/Head/NoticeContent.jsx
new file mode 100644
index 00000000..ab637f96
--- /dev/null
+++ b/src/forge/Head/NoticeContent.jsx
@@ -0,0 +1,19 @@
+import React, { useEffect, useState } from 'react';
+import { Badge} from 'antd';
+import './header.scss';
+
+function NoticeContent(props) {
+ const noticeType = props.noticeType;
+ return(
+
+
+ {noticeType === "0" ?
: ""}
+
+ 蒋宇航:
+ 最好的OpenStack控制台,对标Open社区项目Horizon,在易...
+ 4分钟前
+
+
+ )
+}
+export default NoticeContent;
diff --git a/src/forge/SecuritySetting/notice/privateLetter/Index.jsx b/src/forge/SecuritySetting/notice/privateLetter/Index.jsx
new file mode 100644
index 00000000..be5b1bb3
--- /dev/null
+++ b/src/forge/SecuritySetting/notice/privateLetter/Index.jsx
@@ -0,0 +1,82 @@
+import React, { useState, useEffect } from 'react';
+import './Index.scss'
+import '../manager/Index.scss'
+import { Button, Input, Icon, Badge } from 'antd';
+
+function PrivateLetter(props){
+
+ const { TextArea,Search } = Input;
+
+ function deleteNotice(){
+ alert("删除消息");
+ }
+
+ return(
+
+
+
+
+
+
+
+
+ 嗨在吗?哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈
+
删除
+
+
2021-08-29 11:59
+
+
+
+
+
+
+ 哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈
+
删除
+
+
2021-08-29 11:59
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ }
+ onSearch={value => console.log(value)}
+ style={{ width: 265 }}
+ />
+
+
+
+
+
+
+ 蒋宇航
+ 4分钟前
+
+
+
最好的OpenStack控制台,对标OpenStack社区Horizon项目,在易用性、页面性能等方面进行深度优化,提供简单控制台。
+
删除
+
+
+
+
+
+
+ )
+}
+export default PrivateLetter;
\ No newline at end of file
diff --git a/src/forge/SecuritySetting/notice/privateLetter/Index.scss b/src/forge/SecuritySetting/notice/privateLetter/Index.scss
new file mode 100644
index 00000000..0ac006bd
--- /dev/null
+++ b/src/forge/SecuritySetting/notice/privateLetter/Index.scss
@@ -0,0 +1,181 @@
+.private-letter{
+ border-radius: 4px 4px 0px 0px;
+ border: 1px solid rgba(151, 151, 151, 0.24);
+ display: flex;
+}
+
+.pl-content{
+ flex: auto;
+ .pl-name{
+ height: 3rem;
+ // padding-left: 26px;
+ border-bottom: 1px solid #EEEEEE;
+
+ &>a{
+ position: relative;
+ left: 26px;
+ }
+ span{
+ font-size: 16px;
+ font-weight: 600;
+ color: #333333;
+ flex: auto;
+ text-align: center;
+ }
+ }
+ .plcontent-list{
+ height: 24rem;
+ padding:25px;
+ overflow-y: scroll;
+
+ .plclo{
+ margin-bottom: 30px;
+ }
+
+ .notice-my{
+ flex-direction: row-reverse;
+
+ & .pld01{
+ left: 0;
+ }
+ }
+
+ & .notice-content{
+ padding:8px 10px;
+ background: #F4F4F4;
+ border-radius:5px;
+ position: relative;
+ max-width: 20rem;
+
+ .pld01{
+ display: none;
+
+ }
+ &:hover .pld01{
+ display: block;
+ position: absolute;
+ right: 0;
+ bottom: -2em;
+ color: #999999;
+ font-size: 12px;
+ &:hover{
+ color: #666666;
+ }
+ }
+ }
+
+ & .message-bubble{
+ position:relative;
+ width:0;
+ height:0;
+ font-size:0;
+ border:solid 8px;
+ border-color:#FFFFFF #FFFFFF #FFFFFF #F4F4F4;
+ }
+
+ & .mb-other{
+ border-color:#FFFFFF #F4F4F4 #FFFFFF #FFFFFF;
+ }
+
+ & span{
+ margin: 0 10px;
+ font-size: 12px;
+ color: #999999;
+ line-height: 17px;
+ }
+ }
+ .private-letter-present{
+ padding:20px 28px;
+ & div{
+ display: flex;
+ align-items: center;
+ justify-content: flex-end;
+ flex: auto;
+ }
+ .private-letter-cont-mt25{
+ margin-top: 8px;
+ padding:0 22px;
+ // background-color: #2A61FF;
+ // color: #fff;
+ // border-color: #2A61FF;
+ // &:hover,&:focus,&:active{
+ // background-color: #4a76f8;
+ // border-color: #4a76f8;
+ // }
+ }
+
+ .private-letter-cont, .private-letter-cont .ant-input-suffix{
+ background-color: #F4F4F4 !important;
+ margin-left: 17px;
+ }
+ .private-letter-cont:hover,.private-letter-cont:focus {
+ background-color: #F4F4F4 !important;
+ }
+ }
+}
+
+.pl-list{
+ width: 30%;
+ border-left: 1px solid #EEEEEE;
+ .list-sort{
+ justify-content: center;
+ height: 3rem;
+ border-bottom: 1px solid #EEEEEE;
+ & .ant-btn-primary{
+ width: 2.3rem;
+ color: #466AFF;
+ background: #eff2ff;
+ border: 1px solid rgba(151, 151, 151, 0.24);
+ }
+
+ & .ant-btn{
+ padding: 0;
+ }
+ }
+
+ .list-scroll{
+ height: 32.4rem;
+ overflow-y: scroll;
+ }
+
+ .list-scroll-content{
+ padding: 10px 10px 15px 15px;
+ border-bottom: 1px solid #EEEEEE;
+ // &:last-child{
+ // border-bottom: 0px;
+ // }
+ &:hover{
+ background: #F3F4F6;
+ }
+ & a{
+ display: none;
+ }
+ &:hover a{
+ display: block;
+ color: #466AFF;
+ }
+ }
+
+ .ls-cont{
+ width: 13rem;
+ // flex: auto;
+ margin-left: 6px;
+ justify-content: space-between;
+ & .ls-content-span{
+ max-width: 11rem;
+ overflow: hidden;
+ white-space: nowrap;
+ text-overflow: ellipsis;
+ }
+ }
+}
+
+.vertical-center-style{
+ display: flex;
+ align-items: center;
+}
+
+img{
+ width: 45x;
+ height: 45px;
+}