Merge branch 'wfs-tmp-apply' into pro

This commit is contained in:
weifashi 2023-08-16 15:24:45 +08:00
commit b3c79be4e7
60 changed files with 1426 additions and 141 deletions

View File

@ -1349,3 +1349,21 @@ AI机器人
汇报人
提交时间
应用
机器人设置
去聊天
返回
会议设置
我是一个人工智能助手,为用户提供问题解答和指导。我没有具体的身份,只是一个程序。您有什么问题可以问我哦?
我是Claude,一个由Anthropic公司创造出来的AI助手机器人。我的工作是帮助人类,与人对话并给出解答。
我是文心一言英文名是ERNIE Bot。我能够与人对话互动回答问题协助创作高效便捷地帮助人们获取信息、知识和灵感。
我是达摩院自主研发的超大规模语言模型,能够回答问题、创作文字,还能表达观点、撰写代码。
机器人暂未开启
创建一个全新的会议视频会议,与会者可以在实时中进行面对面的视听交流。通过视频会议平台,参与者可以分享屏幕、共享文档,并与其他与会人员进行讨论和协。
加入视频会议,参与已经创建的会议,在会议过程中与其他参会人员进行远程实时视听交流和协作。
新会议
新建会议
LDAP设置
邮件管理
APP推送

View File

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 26.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill:#87D068;}
.st1{fill:#FFFFFF;}
</style>
<path class="st0" d="M36,48H12C5.4,48,0,42.6,0,36V12C0,5.4,5.4,0,12,0h24c6.6,0,12,5.4,12,12v24C48,42.6,42.6,48,36,48z"/>
<g>
<g>
<path class="st1" d="M35.7,20.1c0-0.8-0.4-1.5-1.1-1.9l-8.9-5.1c-1-0.6-2.2-0.6-3.1,0l-9.1,5.2c-0.6,0.4-1,1-1,1.8s0.4,1.4,1,1.8
l9.1,5.2c0.5,0.3,1,0.4,1.6,0.4c0.5,0,1.1-0.1,1.6-0.4l8.9-5.1C35.3,21.6,35.7,20.9,35.7,20.1z"/>
<path class="st1" d="M24,29.7c-0.4,0-0.8-0.1-1.2-0.3l-9-5.1c-0.4-0.2-0.9-0.1-1.2,0.3c-0.2,0.4-0.1,0.9,0.3,1.2l9,5.1
c0.6,0.4,1.3,0.6,2,0.6c0,0,0,0,0,0c0.5,0,0.9-0.4,0.9-0.9C24.9,30.1,24.5,29.7,24,29.7z"/>
<path class="st1" d="M24,33.5c-0.6,0-1.3-0.2-1.8-0.5l-8.4-4.8c-0.4-0.2-0.9-0.1-1.2,0.3c-0.2,0.4-0.1,0.9,0.3,1.2l8.4,4.8
c0.8,0.5,1.7,0.7,2.6,0.7c0,0,0,0,0,0c0.5,0,0.9-0.4,0.9-0.9C24.9,33.9,24.5,33.5,24,33.5z"/>
<path class="st1" d="M34.8,30h-2.6v-2.6c0-0.5-0.4-0.9-0.9-0.9c-0.5,0-0.9,0.4-0.9,0.9V30h-2.6c-0.5,0-0.9,0.4-0.9,0.9
s0.4,0.9,0.9,0.9h2.6v2.6c0,0.5,0.4,0.9,0.9,0.9c0.5,0,0.9-0.4,0.9-0.9v-2.6h2.6c0.5,0,0.9-0.4,0.9-0.9S35.3,30,34.8,30z"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1,29 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 26.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill:#87D068;}
.st1{fill:#FFFFFF;}
</style>
<path class="st0" d="M36,48H12C5.4,48,0,42.6,0,36V12C0,5.4,5.4,0,12,0h24c6.6,0,12,5.4,12,12v24C48,42.6,42.6,48,36,48z"/>
<g>
<g>
<circle class="st1" cx="19.7" cy="26.6" r="0.9"/>
<g>
<path class="st1" d="M29,26.9c0.5,0,0.9,0.4,0.9,0.9l0,2.6l2.6,0c0.5,0,0.9,0.4,0.9,0.9c0,0.5-0.4,0.9-0.9,0.9l-2.6,0l0,2.6
c0,0.5-0.4,0.9-0.9,0.9c-0.5,0-0.9-0.4-0.9-0.9l0-2.6l-2.6,0c-0.5,0-0.9-0.4-0.9-0.9c0-0.5,0.4-0.9,0.9-0.9l2.6,0l0-2.6
C28.1,27.3,28.5,26.9,29,26.9"/>
</g>
<g>
<path class="st1" d="M26.6,34.8l0-1.2l-1.2,0c0,0,0,0,0,0c-0.6,0-1.2-0.2-1.6-0.7c-0.4-0.4-0.7-1-0.7-1.6c0-0.6,0.2-1.2,0.7-1.6
c0.4-0.4,1-0.7,1.6-0.7l1.2,0l0-1.2c0-1.3,1-2.3,2.3-2.3c0,0,0,0,0,0c1.3,0,2.3,1,2.3,2.3l0,1.2l1.2,0c0,0,0,0,0,0
c0.3,0,0.6,0.1,0.9,0.2V14.7c0-1.3-1.1-2.3-2.3-2.3H17c-1.3,0-2.3,1.1-2.3,2.3v18.7c0,1.3,1,2.3,2.3,2.3h9.8
C26.7,35.4,26.6,35.1,26.6,34.8z M19.7,29.3c-1.4,0-2.6-1.2-2.6-2.6s1.2-2.6,2.6-2.6s2.6,1.2,2.6,2.6S21.1,29.3,19.7,29.3z
M22.6,17.9l-2.9,2.9c-0.2,0.2-0.4,0.3-0.6,0.3s-0.4-0.1-0.6-0.3l-1.2-1.2c-0.3-0.3-0.3-0.9,0-1.2s0.9-0.3,1.2,0l0.5,0.5l2.3-2.3
c0.3-0.3,0.9-0.3,1.2,0S23,17.6,22.6,17.9z M24.9,17.6h4.7c0.5,0,0.9,0.4,0.9,0.9s-0.4,0.9-0.9,0.9h-4.7c-0.5,0-0.9-0.4-0.9-0.9
S24.4,17.6,24.9,17.6z"/>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@ -0,0 +1,27 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 26.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill:#F57775;}
.st1{fill:#FFFFFF;}
</style>
<path class="st0" d="M36,48H12C5.4,48,0,42.6,0,36V12C0,5.4,5.4,0,12,0h24c6.6,0,12,5.4,12,12v24C48,42.6,42.6,48,36,48z"/>
<g>
<g>
<path class="st1" d="M21.5,24.5c-3.3,0-6-2.7-6-6s2.7-6,6-6s6,2.7,6,6C27.6,21.8,24.9,24.5,21.5,24.5z"/>
</g>
<g>
<path class="st1" d="M28.8,35.5H14.3c-1.1,0-2-0.9-2-2v-4.1c0-1.7,1.4-3.1,3.1-3.1h12.2c1.7,0,3.1,1.4,3.1,3.1v4.1
C30.7,34.6,29.9,35.5,28.8,35.5z"/>
</g>
<g>
<path class="st1" d="M29.6,22.5c-0.3,0-0.5-0.1-0.7-0.3c-0.2-0.3-0.2-0.7,0-1c0.6-0.8,0.9-1.7,0.9-2.7s-0.3-1.9-0.9-2.7
c-0.2-0.3-0.2-0.7,0-1s0.6-0.4,0.9-0.3c1.7,0.6,2.9,2.2,2.9,4s-1.2,3.4-2.9,4C29.8,22.5,29.7,22.5,29.6,22.5z"/>
</g>
<g>
<path class="st1" d="M34,34.7h-0.7c-0.3,0-0.5-0.1-0.7-0.3s-0.2-0.5-0.1-0.7c0-0.1,0-0.1,0-0.1v-4c0-0.4-0.2-0.7-0.3-0.9
c-0.2-0.2-0.2-0.6-0.1-0.9c0.1-0.3,0.4-0.5,0.7-0.5H33c1.4,0,2.6,1.2,2.6,2.6V33C35.7,34,34.9,34.7,34,34.7z"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="48" height="48" viewBox="0 0 48 48"><defs><clipPath id="master_svg0_3054_25679"><rect x="12" y="12" width="24" height="24" rx="0"/></clipPath></defs><g><rect x="0" y="0" width="48" height="48" rx="12" fill="#9D95E5" fill-opacity="1"/><g clip-path="url(#master_svg0_3054_25679)"><g><path d="M35.6226,12.187076C35.9089,12.366451,36.0526,12.70563,35.9824,13.03611L32.5574,33.5856C32.4912,34.000299999999996,32.1282,34.3018,31.7084,34.290800000000004C31.599,34.289100000000005,31.4912,34.2646,31.3918,34.2188L25.333399999999997,31.7437L22.095599999999997,35.6866C21.9377,35.8896,21.69045,36.0025,21.43364,35.9888C21.33001,35.990700000000004,21.22712,35.9711,21.131439999999998,35.9313C20.96605,35.8728,20.82448,35.7615,20.72851,35.6147C20.62727,35.4715,20.57206,35.300799999999995,20.57021,35.1254L20.57021,30.4629L32.125699999999995,16.28835L17.821640000000002,28.6641L12.540347,26.4912C12.225567,26.3831,12.0117595,26.09,12.0050232,25.7573C11.9677587,25.428800000000003,12.140421,25.112299999999998,12.436736,24.9658L34.7016,12.115123C34.833200000000005,12.040216,34.981899999999996,12.000561138,35.1333,12C35.3072,12.0294109,35.4735,12.092995,35.6226,12.187076Z" fill="#FFFFFF" fill-opacity="1"/></g></g></g></svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="48" height="48" viewBox="0 0 48 48"><defs><clipPath id="master_svg0_3054_25613"><rect x="12" y="12" width="24" height="24" rx="0"/></clipPath></defs><g><rect x="0" y="0" width="48" height="48" rx="12" fill="#F57775" fill-opacity="1"/><g clip-path="url(#master_svg0_3054_25613)"><g><g><path d="M32.753299999999996,26.9593L30.357,26.9593C29.1345,26.957700000000003,28.1438,25.967100000000002,28.142200000000003,24.744500000000002C28.139499999999998,24.1851,28.3448,23.6446,28.7182,23.228099999999998C31.2206,20.597839999999998,31.1498,16.44632,28.5592,13.9029C25.9685,11.359486,21.816380000000002,11.365081,19.23258,13.91547C16.648789999999998,16.46586,16.58916,20.61755,19.09864,23.2411C19.45887,23.6577,19.65585,24.1909,19.65307,24.7416C19.65997,25.8988,18.7744,26.8659,17.62114,26.9608L15.40058,26.9608C14.07758,26.9608,13.00396661,28.0311,13,29.3541L13,31.5142C13,32.024,13.413276,32.4373,13.923077,32.4373L34.227900000000005,32.4373C34.737700000000004,32.4373,35.150999999999996,32.024,35.150999999999996,31.5142L35.150999999999996,29.3541C35.145399999999995,28.0327,34.0747,26.9633,32.753299999999996,26.9593Z" fill="#FFFFFF" fill-opacity="1"/></g><g><path d="M34.2308,35.999994833374025L13.923077,35.999994833374025C13.413276,35.999994833374025,13.000000054161,35.58672483337402,13.000000054161,35.07692183337402C13.000000054161,34.56712083337403,13.413276,34.15384483337402,13.923077,34.15384483337402L34.227900000000005,34.15384483337402C34.737700000000004,34.15384483337402,35.150999999999996,34.56712083337403,35.150999999999996,35.07692183337402C35.150999999999996,35.58672483337402,34.737700000000004,35.999994833374025,34.227900000000005,35.999994833374025L34.2308,35.999994833374025Z" fill="#FFFFFF" fill-opacity="1"/></g></g></g></g></svg>

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 26.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill:#FFAA64;}
.st1{fill:#FFFFFF;}
</style>
<path class="st0" d="M36,48H12C5.4,48,0,42.6,0,36V12C0,5.4,5.4,0,12,0h24c6.6,0,12,5.4,12,12v24C48,42.6,42.6,48,36,48z"/>
<path class="st1" d="M32.5,14.5h-4.3v-1c0-0.4-0.3-0.8-0.8-0.8s-0.8,0.3-0.8,0.8v1h-5.3v-1c0-0.4-0.3-0.8-0.8-0.8s-0.8,0.3-0.8,0.8
v1h-4.3c-1.5,0-2.8,1.2-2.8,2.8v15.3c0,1.5,1.2,2.8,2.8,2.8h17c1.5,0,2.8-1.2,2.8-2.8V17.2C35.2,15.7,34,14.5,32.5,14.5z M15.5,16
h4.3v1c0,0.4,0.3,0.8,0.8,0.8s0.8-0.3,0.8-0.8v-1h5.3v1c0,0.4,0.3,0.8,0.8,0.8s0.8-0.3,0.8-0.8v-1h4.3c0.7,0,1.2,0.6,1.2,1.2v2.9
H14.2v-2.9C14.2,16.5,14.8,16,15.5,16z M18.3,28.1L18.3,28.1c0.6,0,1.1,0.5,1.1,1.1c0,0.6-0.5,1-1,1c-0.6,0-1.1-0.5-1.1-1
C17.3,28.5,17.8,28.1,18.3,28.1z M17.3,25.1c0-0.6,0.5-1,1-1h0c0.6,0,1,0.5,1,1s-0.5,1-1,1C17.8,26.2,17.3,25.7,17.3,25.1z M24,28.1
L24,28.1c0.6,0,1.1,0.5,1.1,1.1c0,0.6-0.5,1-1,1c-0.6,0-1.1-0.5-1.1-1C23,28.5,23.4,28.1,24,28.1z M23,25.1c0-0.6,0.5-1,1-1h0
c0.6,0,1,0.5,1,1s-0.5,1-1,1C23.4,26.2,23,25.7,23,25.1z M29.7,28.1L29.7,28.1c0.6,0,1.1,0.5,1.1,1.1c0,0.6-0.5,1-1,1
c-0.6,0-1.1-0.5-1.1-1C28.6,28.5,29.1,28.1,29.7,28.1z M28.6,25.1c0-0.6,0.5-1,1-1h0c0.6,0,1,0.5,1,1s-0.5,1-1,1
C29.1,26.2,28.6,25.7,28.6,25.1z"/>
</svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="48" height="48" viewBox="0 0 48 48"><defs><clipPath id="master_svg0_3054_25658"><rect x="12" y="12" width="24" height="24" rx="0"/></clipPath></defs><g><rect x="0" y="0" width="48" height="48" rx="12" fill="#72A1F7" fill-opacity="1"/><g clip-path="url(#master_svg0_3054_25658)"><g><path d="M33.1767,19.46395L30.5723,21.34133L30.5723,19.01332C30.5723,17.34516,29.217,15.99442094,27.5489,16L15.01332,16C13.34911,15.999999801611,12,17.34911,12,19.01332L12,29.5822C12,31.2464,13.34911,32.595600000000005,15.01332,32.595600000000005L27.5489,32.595600000000005C29.217,32.6011,30.5723,31.2504,30.5723,29.5822L30.5723,27.2542L33.182500000000005,29.1259C33.7237,29.5146,34.436800000000005,29.5683,35.0302,29.2651C35.623599999999996,28.9619,35.9979,28.3525,36,27.6861L36,20.907980000000002C36.0011,20.23879,35.626599999999996,19.62559,35.0308,19.32086C34.4351,19.01614,33.7187,19.07142,33.1767,19.46395Z" fill="#FFFFFF" fill-opacity="1"/></g></g></g></svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 26.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill:#FFAA64;}
.st1{fill:#FFFFFF;}
</style>
<path class="st0" d="M36,48H12C5.4,48,0,42.6,0,36V12C0,5.4,5.4,0,12,0h24c6.6,0,12,5.4,12,12v24C48,42.6,42.6,48,36,48z"/>
<g>
<g>
<path class="st1" d="M28.7,18.4h3.8c0.5,0,0.8-0.6,0.4-1l-4.7-4.7c-0.4-0.4-1-0.1-1,0.4V17C27.3,17.8,27.9,18.4,28.7,18.4z"/>
<path class="st1" d="M28.7,20.2c-1.8,0-3.2-1.4-3.2-3.2v-4c0-0.3-0.3-0.6-0.6-0.6H17c-1.3,0-2.3,1.1-2.3,2.3v18.7
c0,1.3,1,2.3,2.3,2.3h14c1.3,0,2.3-1,2.3-2.3V20.7c0-0.3-0.3-0.6-0.6-0.6H28.7z"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 890 B

View File

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 26.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill:#53CBAE;}
.st1{fill:#FFFFFF;}
</style>
<path class="st0" d="M36,48H12C5.4,48,0,42.6,0,36V12C0,5.4,5.4,0,12,0h24c6.6,0,12,5.4,12,12v24C48,42.6,42.6,48,36,48z"/>
<g>
<g>
<path class="st1" d="M35.8,18.3l-2.6,2.2c-0.3,0.3-0.5,0.6-0.5,1v4.8c0,0.4,0.2,0.8,0.5,1l2.6,2.2c0.9,0.8,2.2,0.1,2.2-1v-9.3
C38,18.2,36.6,17.6,35.8,18.3z"/>
<path class="st1" d="M28.8,14.6H12c-1.1,0-2,0.9-2,2v14.8c0,1.1,0.9,2,2,2h16.8c1.1,0,2-0.9,2-2V16.6
C30.8,15.5,29.9,14.6,28.8,14.6z M23.4,24.7h-2.2V27c0,0.4-0.3,0.7-0.7,0.7c-0.4,0-0.7-0.3-0.7-0.7v-2.2h-2.2
c-0.4,0-0.7-0.3-0.7-0.7s0.3-0.7,0.7-0.7h2.2V21c0-0.4,0.3-0.7,0.7-0.7c0.4,0,0.7,0.3,0.7,0.7v2.2h2.2c0.4,0,0.7,0.3,0.7,0.7
S23.8,24.7,23.4,24.7z"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="48" height="48" viewBox="0 0 48 48"><defs><clipPath id="master_svg0_3054_25667"><rect x="12" y="12" width="24" height="24" rx="0"/></clipPath></defs><g><rect x="0" y="0" width="48" height="48" rx="12" fill="#FFC835" fill-opacity="1"/><g clip-path="url(#master_svg0_3054_25667)"><g><path d="M33.400099999999995,12C34.0625,12,34.599599999999995,12.537033,34.599599999999995,13.1995L34.599599999999995,34.799099999999996C34.6004,35.4621,34.0631,36,33.400099999999995,36L16.59993,36C14.61174,36,13,34.3883,13,32.400099999999995L13,15.59993C13,13.61174,14.61174,12,16.59993,12L33.400099999999995,12ZM32.1991,31.1991L16.59993,31.1991C15.953240000000001,31.2215,15.440570000000001,31.7523,15.440570000000001,32.3994C15.440570000000001,33.0464,15.953240000000001,33.577200000000005,16.59993,33.599599999999995L32.1991,33.599599999999995L32.1991,31.1991ZM23.799799999999998,22.799799999999998C21.8116,22.799799999999998,20.19986,24.4115,20.19986,26.3997L27.3997,26.3997C27.3997,24.4115,25.788,22.799799999999998,23.799799999999998,22.799799999999998ZM23.799799999999998,16.799419999999998C22.47406,16.799419999999998,21.39935,17.87413,21.39935,19.19986C21.39935,20.525579999999998,22.47406,21.60029,23.799799999999998,21.60029C25.125500000000002,21.60029,26.200200000000002,20.525579999999998,26.200200000000002,19.19986C26.1994,17.87446,25.1252,16.80022,23.799799999999998,16.799419999999998Z" fill="#FFFFFF" fill-opacity="1"/></g></g></g></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="48" height="48" viewBox="0 0 48 48"><defs><clipPath id="master_svg0_3054_25401"><rect x="12" y="12" width="24" height="24" rx="0"/></clipPath></defs><g><rect x="0" y="0" width="48" height="48" rx="12" fill="#F57775" fill-opacity="1"/><g clip-path="url(#master_svg0_3054_25401)"><g><path d="M36,19.35553L36,31.6471C36,32.8166,35.0519,33.764700000000005,33.882400000000004,33.764700000000005L14.11765,33.764700000000005C12.948108,33.764700000000005,12.00000549316,32.8166,12.00000549316,31.6471L12.00000549316,19.35553L20.804470000000002,26.8202C22.6481,28.3834,25.3519,28.3834,27.1955,26.8202L36,19.35553ZM33.882400000000004,14.000000646254C34.1404,14.000286291,34.3963,14.0471559,34.6376,14.138353C34.984700000000004,14.270521,35.2905,14.492136,35.5242,14.780706C35.6509,14.935896,35.7549,15.10818,35.8334,15.29247C35.925200000000004,15.50988,35.9816,15.74565,35.9958,15.99341L36,16.11765L36,16.823529999999998L25.3744,25.8871C24.6211,26.5295,23.5233,26.5644,22.730800000000002,25.9711L22.625700000000002,25.886400000000002L12.00000517004,16.823529999999998L12.00000517004,16.11765C11.9982451,15.318200000000001,12.448325,14.586376,13.16259,14.227294C13.45869,14.0776132,13.78587,13.999747961,14.11765,14.000000646254L33.882400000000004,14.000000646254Z" fill="#FFFFFF" fill-opacity="1"/></g></g></g></svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="48" height="48" viewBox="0 0 48 48"><defs><clipPath id="master_svg0_3054_25658"><rect x="12" y="12" width="24" height="24" rx="0"/></clipPath></defs><g><rect x="0" y="0" width="48" height="48" rx="12" fill="#72A1F7" fill-opacity="1"/><g clip-path="url(#master_svg0_3054_25658)"><g><path d="M33.1767,19.46395L30.5723,21.34133L30.5723,19.01332C30.5723,17.34516,29.217,15.99442094,27.5489,16L15.01332,16C13.34911,15.999999801611,12,17.34911,12,19.01332L12,29.5822C12,31.2464,13.34911,32.595600000000005,15.01332,32.595600000000005L27.5489,32.595600000000005C29.217,32.6011,30.5723,31.2504,30.5723,29.5822L30.5723,27.2542L33.182500000000005,29.1259C33.7237,29.5146,34.436800000000005,29.5683,35.0302,29.2651C35.623599999999996,28.9619,35.9979,28.3525,36,27.6861L36,20.907980000000002C36.0011,20.23879,35.626599999999996,19.62559,35.0308,19.32086C34.4351,19.01614,33.7187,19.07142,33.1767,19.46395Z" fill="#FFFFFF" fill-opacity="1"/></g></g></g></svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="48" height="48" viewBox="0 0 48 48"><defs><clipPath id="master_svg0_3054_25545"><rect x="12" y="12" width="24" height="24" rx="0"/></clipPath></defs><g><rect x="0" y="0" width="48" height="48" rx="12" fill="#9D95E5" fill-opacity="1"/><g clip-path="url(#master_svg0_3054_25545)"><g><g><path d="M27.3699,31.3292C26.4274,32.2528,24.9169,32.2452,23.983800000000002,31.3121C23.0507,30.379,23.043100000000003,28.8686,23.9667,27.926099999999998L32.3201,19.578400000000002L32.3201,15.27301C32.3201,13.46482,30.8539,11.999210349,29.0457,12L15.27301,12C13.46538,11.999999784513,12,13.46538,12,15.27301L12,32.6318C11.999209911,34.44,13.46482,35.9063,15.27301,35.9063L29.0457,35.9063C30.8541,35.9063,32.3201,34.4403,32.3201,32.6318L32.3201,26.3789L27.3699,31.3292ZM17.74958,20.06886C17.25443,20.06886,16.85304,19.66746,16.85304,19.17232C16.85304,18.67717,17.25443,18.27578,17.74958,18.27578L23.1288,18.27578C23.624000000000002,18.27578,24.025399999999998,18.67717,24.025399999999998,19.17232C24.025399999999998,19.66746,23.624000000000002,20.06886,23.1288,20.06886L17.74958,20.06886Z" fill="#FFFFFF" fill-opacity="1"/></g><g transform="matrix(0.7071067690849304,0.7071067690849304,-0.7071067690849304,0.7071067690849304,23.826460884525744,-18.843463462634503)"><rect x="34.65930366516113" y="19.33935022354126" width="1.8960309028625488" height="14.49763011932373" rx="0.9480154514312744" fill="#FFFFFF" fill-opacity="1"/></g></g></g></g></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="48" height="48" viewBox="0 0 48 48"><defs><clipPath id="master_svg0_3054_25405"><rect x="12" y="12" width="24" height="24" rx="0"/></clipPath></defs><g><rect x="0" y="0" width="48" height="48" rx="12" fill="#FFC835" fill-opacity="1"/><g clip-path="url(#master_svg0_3054_25405)"><g><g><rect x="12" y="26.31494140625" width="1.8119423389434814" height="7.173644542694092" rx="0.9059711694717407" fill="#FFFFFF" fill-opacity="1"/></g><g><rect x="34.18804931640625" y="26.31494140625" width="1.8119423389434814" height="7.173644542694092" rx="0.9059711694717407" fill="#FFFFFF" fill-opacity="1"/></g><g><path d="M29.53465,20.54139L31.35485,17.38422C31.41525,17.38422,31.47695,17.39383,31.53875,17.39383C32.931349999999995,17.39648,33.97485,16.118949999999998,33.69415,14.75489C33.41345,13.390835,31.95045,12.629057,30.67195,13.181321C29.393549999999998,13.733585,28.94525,15.32101,29.74605,16.4604L27.76795,19.89211C25.287950000000002,19.2077,22.669629999999998,19.20201,20.18666,19.87564L18.21274,16.46315C19.0135,15.32376,18.56525,13.73633,17.28679,13.184066C16.00834,12.631803,14.545278,13.393581,14.2646052,14.75764C13.983932,16.1217,15.02738,17.39923,16.42001,17.39657C16.48179,17.39657,16.542180000000002,17.39657,16.60258,17.386960000000002L18.417270000000002,20.529040000000002C16.05625,21.62718,14.483158,23.3979,14.36648,25.4172L14.356871,25.4172L14.356871,33.289500000000004C14.356871,34.7254,15.52087,35.889399999999995,16.95673,35.889399999999995L30.96905,35.889399999999995C32.40495,35.889399999999995,33.56895,34.7254,33.56895,33.289500000000004L33.56895,25.4172L33.559349999999995,25.4172C33.444050000000004,23.4048,31.88195,21.636789999999998,29.53465,20.54139ZM27.063850000000002,29.5105L20.86888,29.5105C19.89243,29.5105,19.10087,28.718899999999998,19.10087,27.7425C19.10087,26.766,19.89243,25.9745,20.86888,25.9745L27.05695,25.9745C28.03335,25.9745,28.82495,26.766,28.82495,27.7425C28.82495,28.718899999999998,28.03335,29.5105,27.05695,29.5105L27.063850000000002,29.5105Z" fill="#FFFFFF" fill-opacity="1"/></g></g></g></g></svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -0,0 +1,41 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 26.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill:#72A1F7;}
.st1{fill:#FFFFFF;}
</style>
<path class="st0" d="M36,48H12C5.4,48,0,42.6,0,36V12C0,5.4,5.4,0,12,0h24c6.6,0,12,5.4,12,12v24C48,42.6,42.6,48,36,48z"/>
<g>
<g>
<g>
<g>
<g>
<path class="st1" d="M20.3,35.8h-4.7c-1.9,0-3.4-1.5-3.4-3.4v-4.7c0-0.4,0.3-0.8,0.8-0.8s0.8,0.3,0.8,0.8v4.7
c0,1.1,0.9,1.9,1.9,1.9h4.7c0.4,0,0.8,0.3,0.8,0.8S20.7,35.8,20.3,35.8z"/>
</g>
<g>
<path class="st1" d="M13,21.1c-0.4,0-0.8-0.3-0.8-0.8v-4.7c0-1.9,1.5-3.4,3.4-3.4h4.7c0.4,0,0.8,0.3,0.8,0.8s-0.3,0.8-0.8,0.8
h-4.7c-1.1,0-1.9,0.9-1.9,1.9v4.7C13.8,20.7,13.4,21.1,13,21.1z"/>
</g>
</g>
<g>
<g>
<path class="st1" d="M35,21.1c-0.4,0-0.8-0.3-0.8-0.8v-4.7c0-1.1-0.9-1.9-1.9-1.9h-4.7c-0.4,0-0.8-0.3-0.8-0.8s0.3-0.8,0.8-0.8
h4.7c1.9,0,3.4,1.5,3.4,3.4v4.7C35.8,20.7,35.4,21.1,35,21.1z"/>
</g>
<g>
<path class="st1" d="M32.3,35.8h-4.7c-0.4,0-0.8-0.3-0.8-0.8s0.3-0.8,0.8-0.8h4.7c1.1,0,1.9-0.9,1.9-1.9v-4.7
c0-0.4,0.3-0.8,0.8-0.8s0.8,0.3,0.8,0.8v4.7C35.8,34.2,34.2,35.8,32.3,35.8z"/>
</g>
</g>
</g>
<g>
<path class="st1" d="M29.5,16.5H18.5c-1.1,0-1.9,0.9-1.9,1.9v11.1c0,1.1,0.9,1.9,1.9,1.9h11.1c1.1,0,1.9-0.9,1.9-1.9V18.5
C31.5,17.4,30.6,16.5,29.5,16.5z M27.7,24.8h-7.3c-0.4,0-0.8-0.3-0.8-0.8s0.3-0.8,0.8-0.8h7.3c0.4,0,0.8,0.3,0.8,0.8
S28.1,24.8,27.7,24.8z"/>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 26.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill:#72A1F7;}
.st1{fill:#FFFFFF;}
</style>
<path class="st0" d="M36,48H12C5.4,48,0,42.6,0,36V12C0,5.4,5.4,0,12,0h24c6.6,0,12,5.4,12,12v24C48,42.6,42.6,48,36,48z"/>
<g>
<path class="st1" d="M34.6,26.5c-1.9-1.1-1.9-3.8,0-4.9c0.6-0.3,0.8-1.1,0.5-1.7l-1.9-3.3c-0.3-0.6-1.1-0.8-1.7-0.5
c-1.9,1.1-4.3-0.3-4.3-2.5c0-0.7-0.6-1.3-1.3-1.3h-3.8c-0.7,0-1.3,0.6-1.3,1.3c0,2.2-2.4,3.6-4.3,2.5l0,0c-0.6-0.3-1.4-0.1-1.7,0.5
L13,19.8c-0.3,0.6-0.1,1.4,0.5,1.7l0,0c1.9,1.1,1.9,3.8,0,4.9c-0.6,0.3-0.8,1.1-0.5,1.7l1.9,3.3c0.3,0.6,1.1,0.8,1.7,0.5
c1.9-1.1,4.3,0.3,4.3,2.5v0c0,0.7,0.6,1.3,1.3,1.3h3.8c0.7,0,1.3-0.6,1.3-1.3v0c0-2.2,2.4-3.6,4.3-2.5h0c0.6,0.3,1.4,0.1,1.7-0.5
l1.9-3.3C35.4,27.6,35.2,26.8,34.6,26.5z M24,26.6c-1.4,0-2.6-1.2-2.6-2.6c0-1.4,1.2-2.6,2.6-2.6c1.4,0,2.6,1.2,2.6,2.6
C26.6,25.4,25.4,26.6,24,26.6z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="48" height="48" viewBox="0 0 48 48"><defs><clipPath id="master_svg0_3054_25526"><rect x="12" y="12" width="24" height="24" rx="0"/></clipPath></defs><g><rect x="0" y="0" width="48" height="48" rx="12" fill="#72A1F7" fill-opacity="1"/><g clip-path="url(#master_svg0_3054_25526)"><g><g><path d="M34.0464,21.911920000000002C34.0464,16.439700000000002,29.336,12,23.523899999999998,12C17.71187,12,13,16.43682,13,21.911920000000002C13,24.689799999999998,14.21541,27.1998,16.16813,28.9999L23.5211,36L30.7962,29.0676C30.9402,28.9365,31.0842,28.8026,31.2196,28.6643C33.0192,26.8769,34.0359,24.4483,34.0464,21.911920000000002ZM23.397199999999998,26.7015C20.95156,26.6984,18.97124,24.7138,18.97336,22.2681C18.97548,19.82244,20.959229999999998,17.84126,23.404899999999998,17.84232C25.8506,17.84338,27.8326,19.82627,27.8326,22.271900000000002C27.8326,24.720599999999997,25.8459,26.704700000000003,23.397199999999998,26.7015Z" fill="#FFFFFF" fill-opacity="1"/></g><g><ellipse cx="23.397215843200684" cy="22.271930694580078" rx="2.733229160308838" ry="2.733229160308838" fill="#FFFFFF" fill-opacity="1"/></g></g></g></g></svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -5,12 +5,13 @@
:closable="escClosable"
:mask-closable="maskClosable"
:footer-hide="true"
:transition-names="[$A.isAndroid() ? '' : `drawer-slide-${placement}`, '']"
:transition-names="[$A.isAndroid() ? '' : `drawer-slide-${transitionName}`, '']"
:beforeClose="beforeClose"
fullscreen
:class-name="modalClass">
<DrawerOverlayView
:placement="placement"
<slot v-if="isFullscreen" />
<DrawerOverlayView v-else
:placement="transitionName"
:size="size"
:minSize="minSize"
:resize="resize"
@ -26,11 +27,20 @@ body {
&.common-drawer-overlay {
overflow: hidden;
}
&.common-drawer-modal{
.ivu-modal-body{
padding: 0;
}
.ivu-modal-close{
z-index: 3;
}
}
}
}
</style>
<script>
import DrawerOverlayView from "./view";
import {mapState} from 'vuex'
export default {
name: 'DrawerOverlay',
@ -74,6 +84,7 @@ export default {
data() {
return {
show: this.value,
isFullscreen: false
}
},
watch: {
@ -82,17 +93,30 @@ export default {
},
show(v) {
this.value !== v && this.$emit("input", v)
},
windowWidth(val){
this.isFullscreen = val < 500
}
},
computed: {
...mapState([ 'windowWidth' ]),
transitionName(){
return this.isFullscreen ? 'bottom' : this.placement
},
modalClass() {
if(this.isFullscreen){
return "common-drawer-modal"
}
if (this.className) {
return `common-drawer-overlay ${this.className} ${this.placement}`
return `common-drawer-overlay ${this.className} ${this.transitionName}`
} else {
return `common-drawer-overlay ${this.placement}`
return `common-drawer-overlay ${this.transitionName}`
}
}
},
mounted() {
this.isFullscreen = this.windowWidth < 515
},
methods: {
onClose() {
this.$refs.modal.close();

View File

@ -12,7 +12,7 @@
<div class="more-item">
<i class="taskfont" v-html="item.icon"></i>
<div class="tabbar-title">{{$L(item.label)}}</div>
<Badge v-if="item.name === 'workReport'" class="tabbar-badge" :overflow-count="999" :count="reportUnreadNumber"/>
<Badge v-if="item.name === 'workReport'" class="tabbar-badge" :overflow-count="999" :count="reportUnreadNumber + approveUnreadNumber"/>
</div>
</li>
</ul>
@ -30,6 +30,9 @@
<template v-else-if="item.name === 'dialog'">
<Badge class="tabbar-badge" :overflow-count="999" :text="msgUnreadMention"/>
</template>
<template v-else-if="item.name === 'apply'">
<Badge class="tabbar-badge" :overflow-count="999" :count="reportUnreadNumber + approveUnreadNumber"/>
</template>
<template v-else-if="item.name === 'more'">
<Badge class="tabbar-badge" :overflow-count="999" :count="reportUnreadNumber"/>
</template>
@ -68,7 +71,8 @@ export default {
{icon: '&#xe6fa;', name: 'project', label: '项目'},
{icon: '&#xe6eb;', name: 'dialog', label: '消息'},
{icon: '&#xe6b2;', name: 'contacts', label: '通讯录'},
{icon: '&#xe6e9;', name: 'more', label: '更多'},
{icon: '&#xe60c;', name: 'apply', label: '应用'},
// {icon: '&#xe6e9;', name: 'more', label: ''},
],
navMore: [
[
@ -112,7 +116,7 @@ export default {
},
computed: {
...mapState(['userIsAdmin', 'cacheDialogs', 'reportUnreadNumber']),
...mapState(['userIsAdmin', 'cacheDialogs', 'reportUnreadNumber', 'approveUnreadNumber']),
...mapGetters(['dashboardTask']),
routeName() {
@ -200,8 +204,9 @@ export default {
},
activeName() {
if (this.isMore || ['manage-calendar', 'manage-file', 'manage-setting'].includes(this.routeName)) {
return 'more';
if (this.isMore || ['manage-calendar', 'manage-file', 'manage-setting', 'manage-apply', 'manage-approve'].includes(this.routeName)) {
// return 'more';
return 'apply';
}
if (this.routeName === 'manage-dashboard') {

View File

@ -11,8 +11,7 @@
<UserAvatar :userid="userId" :size="36" tooltipDisabled/>
</div>
<span>{{userInfo.nickname}}</span>
<Badge v-if="(reportUnreadNumber + approveUnreadNumber) > 0" class="manage-box-top-report" :overflow-count="999" :count="reportUnreadNumber + approveUnreadNumber"/>
<Badge v-else-if="!!clientNewVersion" class="manage-box-top-report" dot/>
<Badge v-if="!!clientNewVersion" class="manage-box-top-report" dot/>
<div class="manage-box-arrow">
<Icon type="ios-arrow-up" />
<Icon type="ios-arrow-down" />
@ -57,18 +56,11 @@
<DropdownItem :divided="!!item.divided">
<div class="manage-menu-flex">
{{$L(item.name)}}
<Badge v-if="reportUnreadNumber > 0" class="manage-menu-report-badge" :overflow-count="999" :count="reportUnreadNumber"/>
<Icon v-else type="ios-arrow-forward"></Icon>
<Icon type="ios-arrow-forward"></Icon>
</div>
</DropdownItem>
<DropdownMenu slot="list">
<DropdownItem name="allUser">{{$L('团队管理')}}</DropdownItem>
<DropdownItem name="workReport">
<div class="manage-menu-flex">
{{$L('工作报告')}}
<Badge v-if="reportUnreadNumber > 0" class="manage-menu-report-badge" :overflow-count="999" :count="reportUnreadNumber"/>
</div>
</DropdownItem>
<DropdownItem name="exportTask">{{$L('导出任务统计')}}</DropdownItem>
<DropdownItem name="exportOverdueTask">{{$L('导出超期任务')}}</DropdownItem>
<DropdownItem name="exportApprove">{{$L('导出审批数据')}}</DropdownItem>
@ -123,6 +115,11 @@
<i class="taskfont">&#xe6f3;</i>
<div class="menu-title">{{$L('文件')}}</div>
</li>
<li @click="toggleRoute('apply')" :class="classNameRoute('apply')">
<i class="taskfont">&#xe60c;</i>
<div class="menu-title">{{$L('应用')}}</div>
<Badge class="menu-badge" :overflow-count="999" :text="String((reportUnreadNumber + approveUnreadNumber) || '')"/>
</li>
</ul>
</div>
<div ref="menuProject" class="menu-project">
@ -200,7 +197,7 @@
<div class="manage-box-main">
<keep-alive>
<router-view class="manage-box-view"></router-view>
<router-view class="manage-box-view" @on-click="onTabbarClick"></router-view>
</keep-alive>
</div>
@ -564,12 +561,10 @@ export default {
{path: 'archivedProject', name: '已归档的项目'},
{path: 'team', name: '团队管理', divided: true},
{path: 'approve', name: '审批中心'},
])
} else {
array.push(...[
{path: 'personal', name: '个人设置', divided: true},
{path: 'approve', name: '审批中心'},
{path: 'version', name: '更新版本', divided: true, visible: !!this.clientNewVersion},
{path: 'workReport', name: '工作报告', divided: true},
@ -625,7 +620,7 @@ export default {
if (this.routeName === 'manage-project' && !/^\d+$/.test(this.$route.params.projectId)) {
return true;
}
return ['manage-dashboard', 'manage-calendar', 'manage-messenger', 'manage-file', 'manage-setting'].includes(this.routeName)
return ['manage-dashboard', 'manage-calendar', 'manage-messenger', 'manage-file', 'manage-setting', 'manage-approve', 'manage-apply'].includes(this.routeName)
},
},
@ -818,8 +813,12 @@ export default {
},
classNameRoute(path) {
let routeName = this.routeName
if(routeName == 'manage-approve'){
routeName = `manage-apply`
}
return {
"active": this.routeName === `manage-${path}`,
"active": routeName === `manage-${path}`,
};
},

View File

@ -0,0 +1,406 @@
<template>
<div class="page-apply">
<PageTitle :title="$L('应用')" />
<div class="apply-wrapper">
<div class="apply-head">
<div class="apply-nav">
<h1>{{ $L('应用') }}</h1>
</div>
</div>
<div class="apply-row">
<Row :gutter="16">
<Col v-if="item.show==undefined || item.show" v-for="(item, key) in applyList" :key="key"
:xs="{ span: 8 }"
:sm="{ span: 8 }"
:lg="{ span: 6 }"
:xl="{ span: 4 }"
:xxl="{ span: 3 }"
>
<div class="apply-col">
<div @click="applyClick(item)">
<img :src="item.src">
<p>{{ item.label }}</p>
<!-- 审批中心 -->
<Badge v-if="item.value == 'approve' && approveUnreadNumber > 0" class="manage-box-top-report"
:overflow-count="999" :count="approveUnreadNumber" />
<!-- 工作报告 -->
<Badge v-if="item.value == 'report' && reportUnreadNumber > 0" class="manage-box-top-report"
:overflow-count="999" :count="reportUnreadNumber" />
</div>
</div>
</Col>
</Row>
</div>
</div>
<!--工作报告-->
<DrawerOverlay v-model="workReportShow" placement="right" :size="1200">
<Report v-if="workReportShow" v-model="workReportTabs" @on-read="$store.dispatch('getReportUnread', 1000)" />
</DrawerOverlay>
<!--AI机器人-->
<DrawerOverlay v-model="aibotShow" placement="right" :size="600">
<div class="ivu-modal-wrap-apply">
<div class="ivu-modal-wrap-apply-title">
{{ $L('AI机器人') }}
<p @click="aibotType = aibotType == 1 ? 2 : 1" v-if="userIsAdmin">
{{ aibotType == 1 ? $L('机器人设置') : $L('返回') }}
</p>
</div>
<div class="ivu-modal-wrap-apply-body">
<ul class="ivu-modal-wrap-ul" v-if="aibotType == 1">
<li v-for="(item, key) in aibotList" @click="onGoToChat(item.value)" :key="key">
<img :src="item.src">
<h4>{{ item.label }}</h4>
<p>{{ item.desc }}</p>
<p class="btn">{{ $L('去聊天') }}</p>
<div class="load" v-if="aibotDialogSearchLoad == item.value">
<Loading />
</div>
</li>
</ul>
<Tabs v-else v-model="aibotTabAction">
<TabPane label="ChatGPT" name="opanai">
<div class="aibot-warp">
<SystemAibot type="ChatGPT" v-if="aibotTabAction == 'opanai'" />
</div>
</TabPane>
<TabPane label="Claude" name="claude">
<div class="aibot-warp">
<SystemAibot type="Claude" v-if="aibotTabAction == 'claude'" />
</div>
</TabPane>
<TabPane label="文心一言" name="wenxin">
<div class="aibot-warp">
<SystemAibot type="Wenxin" v-if="aibotTabAction == 'wenxin'" />
</div>
</TabPane>
<TabPane label="通义千问" name="qianwen">
<div class="aibot-warp">
<SystemAibot type="Qianwen" v-if="aibotTabAction == 'qianwen'" />
</div>
</TabPane>
</Tabs>
</div>
</div>
</DrawerOverlay>
<!--签到-->
<DrawerOverlay v-model="signInShow" placement="right" :size="700">
<div class="ivu-modal-wrap-apply">
<div class="ivu-modal-wrap-apply-title">
{{ $L('签到管理') }}
<p @click="signType = signType == 1 ? 2 : 1" v-if="userIsAdmin">
{{ signType == 1 ? $L('系统设置') : $L('返回') }}
</p>
</div>
<div class="ivu-modal-wrap-apply-body">
<Checkin v-if="signType == 1" />
<SystemCheckin v-else />
</div>
</div>
</DrawerOverlay>
<!-- 会议 -->
<DrawerOverlay v-model="meetingShow" placement="right" :size="600">
<div class="ivu-modal-wrap-apply">
<div class="ivu-modal-wrap-apply-title">
{{ $L('会议') }}
<p @click="meetingType = meetingType == 1 ? 2 : 1">
{{ meetingType == 1 ? $L('会议设置') : $L('返回') }}
</p>
</div>
<div class="ivu-modal-wrap-apply-body">
<ul class="ivu-modal-wrap-ul" v-if="meetingType == 1">
<li @click="onMeeting('createMeeting')">
<img :src="$A.apiUrl('../images/apply/meeting.svg')">
<h4>{{ $L('新会议') }}</h4>
<p>{{ $L('创建一个全新的会议视频会议,与会者可以在实时中进行面对面的视听交流。通过视频会议平台,参与者可以分享屏幕、共享文档,并与其他与会人员进行讨论和协。作') }}</p>
<p class="btn">{{ $L('新建会议') }}</p>
</li>
<li @click="onMeeting('joinMeeting')">
<img :src="$A.apiUrl('../images/apply/joinMeeting.svg')">
<h4>{{ $L('加入会议') }}</h4>
<p>{{ $L('加入视频会议,参与已经创建的会议,在会议过程中与其他参会人员进行远程实时视听交流和协作。') }}</p>
<p class="btn">{{ $L('加入会议') }}</p>
</li>
</ul>
<SystemMeeting v-else />
</div>
</div>
</DrawerOverlay>
<!--LDAP-->
<DrawerOverlay v-model="ldapShow" placement="right" :size="700">
<div class="ivu-modal-wrap-apply">
<div class="ivu-modal-wrap-apply-title">
{{ $L('LDAP设置') }}
</div>
<div class="ivu-modal-wrap-apply-body">
<SystemThirdAccess />
</div>
</div>
</DrawerOverlay>
<!--邮件-->
<DrawerOverlay v-model="mailShow" placement="right" :size="700">
<div class="ivu-modal-wrap-apply">
<div class="ivu-modal-wrap-apply-title">
{{ $L('邮件管理') }}
</div>
<div class="ivu-modal-wrap-apply-body">
<SystemEmailSetting />
</div>
</div>
</DrawerOverlay>
<!--app推送-->
<DrawerOverlay v-model="appPushShow" placement="right" :size="700">
<div class="ivu-modal-wrap-apply">
<div class="ivu-modal-wrap-apply-title">
{{ $L('APP推送') }}
</div>
<div class="ivu-modal-wrap-apply-body">
<SystemAppPush />
</div>
</div>
</DrawerOverlay>
</div>
</template>
<script>
import { mapState } from "vuex";
import DrawerOverlay from "../../components/DrawerOverlay";
import UserSelect from "../../components/UserSelect";
import Report from "../manage/components/Report";
import SystemAibot from "./setting/components/SystemAibot";
import SystemCheckin from "./setting/components/SystemCheckin";
import Checkin from "./setting/checkin";
import SystemMeeting from "./setting/components/SystemMeeting";
import SystemThirdAccess from "./setting/components/SystemThirdAccess";
import SystemEmailSetting from "./setting/components/SystemEmailSetting";
import SystemAppPush from "./setting/components/SystemAppPush";
import { Store } from "le5le-store";
export default {
components: {
UserSelect,
DrawerOverlay,
Report,
SystemAibot,
SystemCheckin,
Checkin,
SystemMeeting,
SystemThirdAccess,
SystemEmailSetting,
SystemAppPush
},
data() {
return {
applyList: [],
//
workReportShow: false,
workReportTabs: "my",
//
aibotList: [
{
value: "openai",
label: "ChatGPT",
src: $A.apiUrl('../images/avatar/default_openai.png'),
desc: this.$L('我是一个人工智能助手,为用户提供问题解答和指导。我没有具体的身份,只是一个程序。您有什么问题可以问我哦?')
},
{
value: "claude",
label: "Claude",
src: $A.apiUrl('../images/avatar/default_claude.png'),
desc: this.$L('我是Claude,一个由Anthropic公司创造出来的AI助手机器人。我的工作是帮助人类,与人对话并给出解答。')
},
{
value: "wenxin",
label: "Wenxin",
src: $A.apiUrl('../avatar/Wenxin.png'),
desc: this.$L('我是文心一言英文名是ERNIE Bot。我能够与人对话互动回答问题协助创作高效便捷地帮助人们获取信息、知识和灵感。')
},
{
value: "qianwen",
label: "Qianwen",
src: $A.apiUrl('../avatar/%E9%80%9A%E4%B9%89%E5%8D%83%E9%97%AE.png'),
desc: this.$L('我是达摩院自主研发的超大规模语言模型,能够回答问题、创作文字,还能表达观点、撰写代码。')
},
],
aibotTabAction: "opanai",
aibotShow: false,
aibotType: 1,
aibotDialogSearchLoad: "",
//
signInShow: false,
signType: 1,
//
meetingShow: false,
meetingType: 1,
//
ldapShow: false,
//
mailType: 1,
mailShow: false,
//
appPushType: 1,
appPushShow: false,
}
},
created() {
},
mounted() {
},
activated() {
this.applyList = [
{ value: "approve", label: "审批中心", src: $A.apiUrl('../images/apply/approve.svg') },
{ value: "report", label: "工作报告", src: $A.apiUrl('../images/apply/report.svg') },
{ value: "ai", label: "AI机器人", src: $A.apiUrl('../images/apply/robot.svg') },
{ value: "signIn", label: "签到", src: $A.apiUrl('../images/apply/signin.svg') },
{ value: "meeting", label: "会议", src: $A.apiUrl('../images/apply/meeting.svg'), show: this.userIsAdmin },
{ value: "ldap", label: "LDAP", src: $A.apiUrl('../images/apply/ldap.svg'), show: this.userIsAdmin },
{ value: "mail", label: "邮件", src: $A.apiUrl('../images/apply/mail.svg'), show: this.userIsAdmin },
{ value: "appPush", label: "APP推送", src: $A.apiUrl('../images/apply/apppush.svg'), show: this.userIsAdmin },
{ value: "allUser", label: "团队管理", src: $A.apiUrl('../images/apply/allUser.svg'), show: this.userIsAdmin },
];
if (this.windowOrientation == 'portrait') {
this.applyList.push({ value: "calendar", label: "日历", src: $A.apiUrl('../images/apply/calendar.svg') })
this.applyList.push({ value: "file", label: "文件", src: $A.apiUrl('../images/apply/file.svg') })
this.applyList.push({ value: "addProject", label: "创建项目", src: $A.apiUrl('../images/apply/addProject.svg') })
this.applyList.push({ value: "addTask", label: "添加任务", src: $A.apiUrl('../images/apply/addTask.svg') })
if ($A.isEEUiApp) {
this.applyList.push({ value: "scan", label: "扫一扫", src: $A.apiUrl('../images/apply/scan.svg') })
}
this.applyList.push({ value: "setting", label: "设置", src: $A.apiUrl('../images/apply/setting.svg') })
}
},
computed: {
...mapState([
'userInfo',
'userIsAdmin',
'reportUnreadNumber',
'approveUnreadNumber',
'cacheDialogs',
'windowOrientation',
]),
},
watch: {
},
methods: {
applyClick(item) {
this.$emit("on-click", item.value)
switch (item.value) {
case 'approve':
case 'calendar':
case 'file':
case 'setting':
this.goForward({ name: 'manage-' + item.value });
break;
case 'report':
this.workReportShow = true;
break;
case 'ai':
this.aibotType = 1;
this.aibotTabAction = "opanai";
this.aibotShow = true;
break;
case 'signIn':
this.signInType = 1;
this.signInShow = true;
break;
case 'meeting':
this.meetingType = 1;
this.meetingShow = true;
break;
case 'ldap':
this.ldapShow = true;
break;
case 'mail':
this.mailType = 1;
this.mailShow = true;
break;
case 'appPush':
this.appPushType = 1;
this.appPushShow = true;
break;
}
},
//
onGoToChat(type) {
let dialogId = 0;
let email = `ai-${type}@bot.system`;
this.cacheDialogs.map(h => {
if (h.email == email) {
dialogId = h.id;
}
})
if (dialogId) {
if (this.windowOrientation == 'portrait') {
this.$store.dispatch("openDialog", dialogId)
} else {
this.goForward({ name: 'manage-messenger', params: { dialog_id: dialogId } });
}
this.aibotShow = false;
} else {
this.aibotDialogSearchLoad = type;
this.$store.dispatch("call", {
url: 'dialog/search',
data: { key: email },
}).then(({ data }) => {
if (data?.length < 1) {
$A.messageError('机器人暂未开启');
this.aibotDialogSearchLoad = '';
return;
}
this.$store.dispatch("openDialogUserid", data[0]?.dialog_user.userid).then(_ => {
if (this.windowOrientation != 'portrait') {
this.goForward({ name: 'manage-messenger' })
}
this.aibotShow = false;
}).catch(({ msg }) => {
$A.modalError(msg)
}).finally(_ => {
this.aibotDialogSearchLoad = '';
});
}).catch(_ => {
this.aibotDialogSearchLoad = '';
});
}
},
//
onMeeting(name) {
switch (name) {
case 'createMeeting':
Store.set('addMeeting', {
type: 'create',
userids: [this.userId],
});
break;
case 'joinMeeting':
Store.set('addMeeting', {
type: 'join',
});
break;
}
this.meetingShow = false;
}
}
}
</script>

View File

@ -1,5 +1,12 @@
<template>
<div class="approve-details" :style="{'z-index':modalTransferIndex}">
<!-- 导航 -->
<div class="approve-details-nav">
<div class="common-nav-back" @click="goBack()">
<i class="taskfont">&#xe676;</i>
</div>
<h2>{{$L('审批详情')}}</h2>
</div>
<!-- 审批详情 -->
<div class="approve-details-box" ref="approveDetailsBox">
<h2 class="approve-details-title">

View File

@ -5,12 +5,27 @@
<div class="approve-head">
<div class="approve-nav">
<div class="common-nav-back" @click="goBack()"><i class="taskfont">&#xe676;</i></div>
<h1>{{$L('审批中心')}}</h1>
</div>
<Button :loading="addLoadIng" type="primary" @click="addApply">{{$L("添加申请")}}</Button>
<Button v-if="showType == 1" :loading="addLoadIng" type="primary" @click="addApply">
<span v-if="!isShowIcon"> {{$L("添加申请")}} </span>
<i v-else class="taskfont">&#xe6f2;</i>
</Button>
<Button v-if="showType == 1 && userIsAdmin" @click="exportApproveShow = true">
<span v-if="!isShowIcon"> {{$L("导出审批数据")}} </span>
<i v-else class="taskfont">&#xe7a8;</i>
</Button>
<Button v-if="userIsAdmin" @click="showType = showType == 1 ? 2 : 1">
<span v-if="!isShowIcon"> {{ showType == 1 ? $L("流程设置") : $L("返回") }} </span>
<template v-else>
<i v-if="showType == 1" class="taskfont">&#xe67b;</i>
<i v-else class="taskfont">&#xe637;</i>
</template>
</Button>
</div>
<Tabs :value="tabsValue" @on-click="tabsClick" style="margin: 0 20px;height: 100%;" size="small">
<Tabs v-if="showType==1" :value="tabsValue" @on-click="tabsClick" style="margin: 0 20px;height: 100%;" size="small">
<TabPane :label="$L('待办') + (unreadTotal > 0 ? ('('+unreadTotal+')') : '')" name="unread" style="height: 100%;">
<div class="approve-main-search">
<div>
@ -132,6 +147,8 @@
</TabPane>
</Tabs>
<ApproveSetting v-else/>
</div>
<!--详情-->
@ -206,6 +223,9 @@
</div>
</Modal>
<!--导出审批数据-->
<ApproveExport v-model="exportApproveShow"/>
</div>
</template>
@ -214,13 +234,18 @@ import list from "./list.vue";
import listDetails from "./details.vue";
import DrawerOverlay from "../../../components/DrawerOverlay";
import ImgUpload from "../../../components/ImgUpload";
import ApproveSetting from "./setting";
import ApproveExport from "../components/ApproveExport";
import {mapState} from 'vuex'
export default {
components:{list,listDetails,DrawerOverlay,ImgUpload},
components:{list,listDetails,DrawerOverlay,ImgUpload,ApproveSetting,ApproveExport},
name: "approve",
data() {
return {
showType: 1,
exportApproveShow: false,
isShowIcon: false,
modalTransferIndex: window.modalTransferIndex,
minDate: new Date(2020, 0, 1),
@ -306,7 +331,7 @@ export default {
}
},
computed: {
...mapState([ 'wsMsg','userInfo','userIsAdmin' ]),
...mapState([ 'wsMsg','userInfo','userIsAdmin','windowWidth' ]),
departmentList(){
let departmentNames = (this.userInfo.department_name || '').split(',');
return (this.userInfo.department || []).map((h,index)=>{
@ -340,6 +365,14 @@ export default {
if(!val){
this.addData.other = ""
}
},
showType(val){
if(val == 1){
this.tabsClick()
}
},
windowWidth(val){
this.isShowIcon = val < 515
}
},
mounted() {
@ -348,6 +381,7 @@ export default {
this.getUnreadList()
this.addData.department_id = this.userInfo.department[0] || 0;
this.addData.startTime = this.addData.endTime = this.getCurrentDate();
this.isShowIcon = this.windowWidth < 515
},
methods:{
//

View File

@ -1,18 +1,18 @@
<template>
<div class="setting-item submit">
<Row class="approve-row" :gutter="8">
<Col :xxl="{ span: 6 }" :xl="{ span: 8 }" :lg="{ span: 12 }" :sm="{ span: 24 }" :xs="{ span: 24 }" >
<div class="page-approve-setting">
<Row class="approve-row" :gutter="16">
<Col :xxl="{ span: 6 }" :xl="{ span: 8 }" :lg="{ span: 12 }" :sm="{ span: 12 }" :xs="{ span: 24 }" >
<div class="approve-col-box approve-col-add" @click="add">
<Icon type="md-add" />
</div>
</Col>
<Col v-for="(item, key) in list" :xxl="{ span: 6 }" :xl="{ span: 8 }" :lg="{ span: 12 }" :sm="{ span: 24 }" :xs="{ span: 24 }" :key="key">
<Col v-for="(item, key) in list" :xxl="{ span: 6 }" :xl="{ span: 8 }" :lg="{ span: 12 }" :sm="{ span: 12 }" :xs="{ span: 24 }" :key="key">
<div class="approve-col-box approve-col-for" @click="edit(item)">
<p>{{$L('流程名称')}}<span style="font-weight: 500;color: #135de6;">{{$L(item.name)}}</span></p>
<Divider style="margin: 12px 0;margin-bottom: 9px;"/>
<p>{{$L('流程名称')}}<span class="approve-name">{{$L(item.name)}}</span></p>
<Divider class="divider"/>
<div class="approve-button-box" @click.stop="edit(item)">
<p>{{$L('已发布')}}</p>
<p @click.stop="change(item)" style="position: relative;">
<p class="icon-warp" @click.stop="change(item)" >
<Icon type="md-trash" size="16" class="delcon"/>
</p>
</div>
@ -33,7 +33,7 @@ import DrawerOverlay from "../../../components/DrawerOverlay";
import store from '../../../store/state'
import {languageType} from "../../../language";
export default {
name: "approve",
name: "ApproveSetting",
components: {DrawerOverlay},
data(){
return{

View File

@ -4,6 +4,7 @@
<div class="calendar-head">
<div class="calendar-titbox">
<div class="calendar-title">
<div class="common-nav-back portrait" @click="goBack()"><i class="taskfont">&#xe676;</i></div>
<h1>{{rangeText}}</h1>
</div>
<ButtonGroup class="calendar-arrow" size="small">

View File

@ -6,6 +6,7 @@
<div class="file-head">
<div class="file-nav">
<div class="common-nav-back portrait" @click="goBack()"><i class="taskfont">&#xe676;</i></div>
<h1>{{$L('文件')}}</h1>
<div v-if="loadIng == 0" class="file-refresh" @click="getFileList"><i class="taskfont">&#xe6ae;</i></div>
</div>

View File

@ -453,6 +453,14 @@ export default {
if (['dialog', 'contacts'].includes(params.dialogAction)) {
this.tabActive = params.dialogAction
}
if (params.dialog_id) {
this.tabActive = 'dialog'
const id = $A.runNum(params.dialog_id);
if (id > 0) {
this.openDialog(id)
}
this.clickAgainSubscribe = Store.subscribe('clickAgainDialog', this.shakeUnread);
}
},
immediate: true
},

View File

@ -60,6 +60,7 @@
<script>
import CheckinCalendar from "../components/CheckinCalendar";
export default {
name: "ManageCheckin",
components: {CheckinCalendar},
data() {

View File

@ -1,7 +1,7 @@
<template>
<div class="setting-component-item">
<Form ref="formData" :model="formData" :rules="ruleData" label-width="auto" @submit.native.prevent>
<div class="block-setting-box">
<div class="block-setting-box" v-if="type=='all' || type=='ChatGPT'">
<h3>ChatGPT</h3>
<div class="form-box">
<FormItem label="API Key" prop="openai_key">
@ -14,7 +14,7 @@
</FormItem>
</div>
</div>
<div class="block-setting-box">
<div class="block-setting-box" v-if="type=='all' || type=='Claude'">
<h3>Claude</h3>
<div class="form-box">
<FormItem label="Token" prop="claude_token">
@ -27,7 +27,7 @@
</FormItem>
</div>
</div>
<div class="block-setting-box">
<div class="block-setting-box" v-if="type=='all' || type=='Wenxin'">
<h3>文心一言 (Wenxin)</h3>
<div class="form-box">
<FormItem label="API Key" prop="wenxin_key">
@ -47,7 +47,7 @@
</FormItem>
</div>
</div>
<div class="block-setting-box">
<div class="block-setting-box" v-if="type=='all' || type=='Qianwen'">
<h3>通义千问 (Qianwen)</h3>
<div class="form-box">
<FormItem label="API Key" prop="qianwen_key">
@ -74,6 +74,11 @@
<script>
export default {
name: "SystemAibot",
props: {
type: {
default: 'all'
}
},
data() {
return {
loadIng: 0,

View File

@ -21,7 +21,7 @@
type="timerange"
format="HH:mm"
:placeholder="$L('请选择签到时间')"/>
<Form @submit.native.prevent>
<Form @submit.native.prevent class="block-setting-advance">
<FormItem :label="$L('最早可提前')" prop="advance">
<div class="input-number-box">
<InputNumber v-model="formData.advance" :min="0" :step="1"/>

View File

@ -43,7 +43,7 @@
<Radio label="open">{{ $L('开启') }}</Radio>
<Radio label="close">{{ $L('关闭') }}</Radio>
</RadioGroup>
<Form v-if="formData.notice_msg == 'open'" @submit.native.prevent>
<Form v-if="formData.notice_msg == 'open'" @submit.native.prevent class="block-setting-msg-unread">
<FormItem :label="$L('未读个人消息')" prop="msg_unread_user_minute">
<div class="input-number-box">
<InputNumber v-model="formData.msg_unread_user_minute" :min="0" :step="1"/>

View File

@ -4,6 +4,7 @@
<div class="setting-head">
<div class="setting-titbox">
<div class="setting-title">
<div class="common-nav-back portrait" @click="goBack()"><i class="taskfont">&#xe676;</i></div>
<h1>{{settingTitleName}}</h1>
<div v-if="!showMobileBox" class="setting-more" @click="toggleRoute('index')">
<Icon type="md-close" />
@ -74,7 +75,6 @@ export default {
{path: 'personal', name: '个人设置'},
{path: 'password', name: '密码设置'},
{path: 'email', name: '修改邮箱'},
{path: 'checkin', name: '签到设置', desc: ' (Beta)'},
{path: 'language', name: '语言设置', divided: true},
{path: 'theme', name: '主题设置'},
]
@ -93,7 +93,6 @@ export default {
if (this.userIsAdmin) {
menu.push(...[
{path: 'system', name: '系统设置', divided: true},
{path: 'approve', name: '审批设置', desc: ' (Beta)'},
{path: 'license', name: 'License Key'},
])
}

View File

@ -10,24 +10,6 @@
<TabPane :label="$L('项目模板')" name="columnTemplate">
<SystemColumnTemplate/>
</TabPane>
<TabPane :label="$L('AI机器人')" name="aibot">
<SystemAibot/>
</TabPane>
<TabPane :label="$L('会议功能')" name="meeting">
<SystemMeeting/>
</TabPane>
<TabPane :label="$L('签到功能')" name="checkin">
<SystemCheckin/>
</TabPane>
<TabPane :label="$L('邮件设置')" name="emailSetting">
<SystemEmailSetting/>
</TabPane>
<TabPane :label="$L('认证设置')" name="thirdAccess">
<SystemThirdAccess/>
</TabPane>
<TabPane v-if="$A.isDooServer()" :label="$L('APP推送')" name="appPush">
<SystemAppPush/>
</TabPane>
</Tabs>
</div>
</template>
@ -36,20 +18,9 @@
import SystemSetting from "./components/SystemSetting";
import SystemTaskPriority from "./components/SystemTaskPriority";
import SystemColumnTemplate from "./components/SystemColumnTemplate";
import SystemEmailSetting from "./components/SystemEmailSetting";
import SystemAppPush from "./components/SystemAppPush";
import SystemMeeting from "./components/SystemMeeting";
import SystemCheckin from "./components/SystemCheckin";
import SystemThirdAccess from "./components/SystemThirdAccess";
import SystemAibot from "./components/SystemAibot.vue";
export default {
components: {
SystemAibot,
SystemThirdAccess,
SystemCheckin,
SystemMeeting,
SystemAppPush, SystemColumnTemplate, SystemTaskPriority, SystemSetting, SystemEmailSetting},
components: {SystemColumnTemplate, SystemTaskPriority, SystemSetting},
data() {
return {
tabAction: 'setting',

View File

@ -54,11 +54,6 @@ export default [
path: 'checkin',
component: () => import('./pages/manage/setting/checkin.vue'),
},
{
name: 'manage-setting-approve',
path: 'approve',
component: () => import('./pages/manage/setting/approve.vue'),
},
{
name: 'manage-setting-language',
path: 'language',
@ -116,6 +111,11 @@ export default [
path: 'file/:folderId?/:fileId?',
component: () => import('./pages/manage/file.vue'),
},
{
name: 'manage-apply',
path: 'apply',
component: () => import('./pages/manage/apply.vue'),
},
]
},
{

View File

@ -28,6 +28,7 @@
max-width: 100%;
max-height: 100%;
z-index: 2;
position: relative;
.overlay-close {
flex-shrink: 0;

View File

@ -69,6 +69,9 @@
margin-bottom: 12px;
padding: 20px 24px;
border-bottom: 1px solid #eeeeee;
@media (max-width: 500px) {
padding-right: 50px;
}
}
.report-detail-context {

View File

@ -8,4 +8,5 @@
@import "page-project";
@import "page-setting";
@import "page-approve";
@import "page-apply";
@import "components/_";

View File

@ -776,3 +776,20 @@ body {
transform: translate(100%, 0);
opacity: 0;
}
// 全局返回按钮
.common-nav-back{
cursor: pointer;
padding-right: 5px;
&.portrait{
display: none;
}
.taskfont{
font-size: 26px;
}
}
body.window-portrait {
.common-nav-back{
display: block;
}
}

View File

@ -0,0 +1,328 @@
.page-apply {
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
.apply-wrapper {
flex: 1;
height: 0;
display: flex;
flex-direction: column;
position: relative;
background-color: #fafafa;
.apply-head {
display: flex;
align-items: center;
padding-bottom: 16px;
margin: 32px 32px 0 32px;
border-bottom: 1px solid #F4F4F5;
.apply-nav {
flex: 1;
display: flex;
align-items: center;
>h1 {
color: $primary-title-color;
font-size: 28px;
font-weight: 600;
}
}
}
.apply-row {
flex: 1;
padding: 16px 30px;
.apply-col {
margin-bottom: 16px;
>div {
font-size: 12px;
font-weight: bold;
background: #ffffff;
color: #282828;
border-radius: 8px;
padding: 14px;
display: flex;
align-items: center;
gap: 10px;
cursor: pointer;
position: relative;
border: 1px solid #f1f1f1;
@media (max-width: 510px) {
display: block;
text-align: center;
}
>img {
width: 40px;
height: 40px;
@media (max-width: 510px) {
margin-bottom: 5px;
}
}
.manage-box-top-report {
position: absolute;
right: -6px;
top: -6px;
}
}
}
}
}
}
.ivu-modal-wrap-apply {
position: relative;
overflow: auto;
height: 100%;
display: flex;
flex-direction: column;
// max-width: calc(100vw - 40px);
max-width: 100vw;
overflow: auto;
.ivu-modal-wrap-apply-title {
line-height: 40px;
font-size: 20px;
font-weight: 500;
padding: 12px 30px;
>p {
float: right;
cursor: pointer;
color: #2b85e4;
font-size: 14px;
}
@media (max-width: 500px) {
margin-right: 28px;
}
}
.ivu-modal-wrap-apply-body {
position: relative;
flex: 1;
padding: 8px 30px;
//
.setting-component-item,
.setting-item {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
flex: 1;
display: flex;
flex-direction: column;
>.ivu-form {
padding: 8px 30px;
overflow: auto;
flex: 1;
.ivu-form-item {
padding: 12px 0 0 0;
.ivu-form-item .ivu-form-item-content {
display: flex;
>.ivu-form {
margin-bottom: 8px;
}
}
}
}
.block-setting-box {
position: relative;
padding: 24px 24px 4px;
margin: 24px 0 12px;
border-radius: 8px;
border: 1px solid #eeeeee;
transition: box-shadow 0.3s;
@media (max-width: 420px) {
.block-setting-advance{
>.ivu-form-item{
display: flex;
flex-direction: column;
.ivu-form-item-label{
text-align: left;
}
}
}
}
@media (max-width: 460px) {
.block-setting-msg-unread{
>.ivu-form-item{
display: flex;
flex-direction: column;
.ivu-form-item-label{
text-align: left;
}
}
}
}
h3 {
position: absolute;
top: 0;
left: 24px;
padding: 4px 10px;
border-radius: 4px;
display: inline-block;
background-color: #ffffff;
border: 1px solid #eeeeee;
font-size: 15px;
font-weight: 500;
transform: translateY(-50%)
}
}
.setting-template {
margin-bottom: 12px;
>div {
padding-right: 12px;
}
}
.export-data>p {
cursor: pointer;
color: #2b85e4;
}
.setting-footer {
flex-shrink: 0;
position: static;
padding: 16px;
border-top: 1px solid #F4F4F5;
display: flex;
align-items: center;
justify-content: flex-end;
}
}
//
.ivu-tabs {
display: flex;
flex-direction: column;
height: 100%;
.ivu-tabs-content {
height: 100%;
flex: 1;
}
}
//
.ivu-modal-wrap-ul {
list-style-type: none;
overflow: hidden;
border-radius: 3px;
margin-right: -10px;
li {
float: left;
width: calc(50% - 10px);
border: 1px solid #eeeeee;
box-sizing: border-box;
padding: 28px 20px;
position: relative;
text-align: center;
margin-right: 10px;
margin-bottom: 10px;
border-radius: 5px;
cursor: pointer;
img {
display: block;
width: 50px;
height: 50px;
border-radius: 16px;
margin: 0 auto 12px;
}
h4 {
word-break: break-all;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
font-style: normal;
max-width: 100%;
font-size: 16px;
font-weight: 500;
color: #1b1b1b;
line-height: 24px;
text-align: center;
padding: 0 12px;
margin-bottom: 6px;
}
p {
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 4;
@media (max-width: 510px) {
-webkit-line-clamp: 2;
}
}
.btn {
color: #2b85e4;
margin: 26px auto 0;
cursor: pointer;
}
.load {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: #9797971c;
line-height: 300px;
}
}
}
// 机器人
.aibot-warp {
position: relative;
height: 100%;
.ivu-form {
padding: 0;
overflow: hidden;
}
}
}
}
body.window-portrait {
.page-apply {
.apply-head{
margin: 24px 24px 0 24px;
}
.apply-row{
padding: 16px 24px;
}
}
}

View File

@ -18,6 +18,7 @@
margin: 32px 20px 16px;
margin-bottom: 5px;
border-bottom: 1px solid #F4F4F5;
gap: 10px;
.approve-nav {
flex: 1;
@ -177,6 +178,25 @@
border: 1px solid #eeeeee;
background: #fff;
.approve-details-nav{
height: 52px;
padding:0 8px;
text-align: center;
line-height: 52px;
background-color: #f8f8f8;
display: none;
@media (max-width: 425px) {
display: block;
}
.common-nav-back{
float: left;
}
h2{
font-size: 17px;
font-weight: 600;
}
}
.approve-details-box {
flex: 1 1 auto;
padding: 24px;
@ -374,3 +394,93 @@
}
}
}
.page-approve-setting{
.approve-row {
padding: 24px;
overflow: auto;
margin: 0 !important;
.ivu-col {
margin-bottom: 16px;
.approve-col-box {
border-radius: 8px;
border: 1px solid #eeeeee;
transition: box-shadow 0.3s;
cursor: pointer;
&:hover {
box-shadow: 0 0 10px #e6ecfa;
}
}
.approve-col-add {
height: 100%;
font-size: 48px;
display: flex;
justify-content: center;
align-items: center;
color: #ededed;
min-height: 95px;
}
.approve-col-for {
padding: 16px;
padding-bottom: 13px;
display: flex;
flex-direction: column;
.approve-name{
font-weight: 500;
color: #135de6;
}
.divider{
margin: 12px 0;
margin-bottom: 9px;
}
.icon-warp{
position: relative;
}
> p {
display: flex;
align-items: center;
}
.approve-button-box {
display: flex;
justify-content: space-between;
align-items: center;
> p {
display: flex;
align-items: center;
> i {
font-size: 16px;
margin-left: 8px;
color: rgb(96, 98, 102);
}
}
}
}
}
}
}
//
body.window-portrait {
.page-approve{
.approve-head {
margin: 20px 14px 16px;
}
.approve-mains {
height: calc(100vh - 250px);
}
}
}

View File

@ -194,6 +194,7 @@
body.window-portrait {
.page-calendar {
.calendar-head {
margin: 24px 24px 16px;
.calendar-titbox {
.calendar-title {
flex: 1;

View File

@ -349,65 +349,6 @@
.setting-button {
margin-left: 8px;
}
.approve-row {
padding: 24px 40px;
overflow: auto;
.ivu-col {
margin-bottom: 8px;
.approve-col-box {
border-radius: 8px;
border: 1px solid #eeeeee;
transition: box-shadow 0.3s;
cursor: pointer;
&:hover {
box-shadow: 0 0 10px #e6ecfa;
}
}
.approve-col-add {
height: 100%;
font-size: 48px;
display: flex;
justify-content: center;
align-items: center;
color: #ededed;
min-height: 95px;
}
.approve-col-for {
padding: 16px;
padding-bottom: 13px;
display: flex;
flex-direction: column;
> p {
display: flex;
align-items: center;
}
.approve-button-box {
display: flex;
justify-content: space-between;
align-items: center;
> p {
display: flex;
align-items: center;
> i {
font-size: 16px;
margin-left: 8px;
color: rgb(96, 98, 102);
}
}
}
}
}
}
}
}
}
@ -434,7 +375,7 @@
body.window-portrait {
.page-setting {
.setting-head {
margin: 32px 32px 0;
margin: 24px 24px 16px;
.setting-titbox {
.setting-title {
.setting-more {

View File

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 26.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill:#87D068;}
.st1{fill:#FFFFFF;}
</style>
<path class="st0" d="M36,48H12C5.4,48,0,42.6,0,36V12C0,5.4,5.4,0,12,0h24c6.6,0,12,5.4,12,12v24C48,42.6,42.6,48,36,48z"/>
<g>
<g>
<path class="st1" d="M35.7,20.1c0-0.8-0.4-1.5-1.1-1.9l-8.9-5.1c-1-0.6-2.2-0.6-3.1,0l-9.1,5.2c-0.6,0.4-1,1-1,1.8s0.4,1.4,1,1.8
l9.1,5.2c0.5,0.3,1,0.4,1.6,0.4c0.5,0,1.1-0.1,1.6-0.4l8.9-5.1C35.3,21.6,35.7,20.9,35.7,20.1z"/>
<path class="st1" d="M24,29.7c-0.4,0-0.8-0.1-1.2-0.3l-9-5.1c-0.4-0.2-0.9-0.1-1.2,0.3c-0.2,0.4-0.1,0.9,0.3,1.2l9,5.1
c0.6,0.4,1.3,0.6,2,0.6c0,0,0,0,0,0c0.5,0,0.9-0.4,0.9-0.9C24.9,30.1,24.5,29.7,24,29.7z"/>
<path class="st1" d="M24,33.5c-0.6,0-1.3-0.2-1.8-0.5l-8.4-4.8c-0.4-0.2-0.9-0.1-1.2,0.3c-0.2,0.4-0.1,0.9,0.3,1.2l8.4,4.8
c0.8,0.5,1.7,0.7,2.6,0.7c0,0,0,0,0,0c0.5,0,0.9-0.4,0.9-0.9C24.9,33.9,24.5,33.5,24,33.5z"/>
<path class="st1" d="M34.8,30h-2.6v-2.6c0-0.5-0.4-0.9-0.9-0.9c-0.5,0-0.9,0.4-0.9,0.9V30h-2.6c-0.5,0-0.9,0.4-0.9,0.9
s0.4,0.9,0.9,0.9h2.6v2.6c0,0.5,0.4,0.9,0.9,0.9c0.5,0,0.9-0.4,0.9-0.9v-2.6h2.6c0.5,0,0.9-0.4,0.9-0.9S35.3,30,34.8,30z"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1,29 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 26.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill:#87D068;}
.st1{fill:#FFFFFF;}
</style>
<path class="st0" d="M36,48H12C5.4,48,0,42.6,0,36V12C0,5.4,5.4,0,12,0h24c6.6,0,12,5.4,12,12v24C48,42.6,42.6,48,36,48z"/>
<g>
<g>
<circle class="st1" cx="19.7" cy="26.6" r="0.9"/>
<g>
<path class="st1" d="M29,26.9c0.5,0,0.9,0.4,0.9,0.9l0,2.6l2.6,0c0.5,0,0.9,0.4,0.9,0.9c0,0.5-0.4,0.9-0.9,0.9l-2.6,0l0,2.6
c0,0.5-0.4,0.9-0.9,0.9c-0.5,0-0.9-0.4-0.9-0.9l0-2.6l-2.6,0c-0.5,0-0.9-0.4-0.9-0.9c0-0.5,0.4-0.9,0.9-0.9l2.6,0l0-2.6
C28.1,27.3,28.5,26.9,29,26.9"/>
</g>
<g>
<path class="st1" d="M26.6,34.8l0-1.2l-1.2,0c0,0,0,0,0,0c-0.6,0-1.2-0.2-1.6-0.7c-0.4-0.4-0.7-1-0.7-1.6c0-0.6,0.2-1.2,0.7-1.6
c0.4-0.4,1-0.7,1.6-0.7l1.2,0l0-1.2c0-1.3,1-2.3,2.3-2.3c0,0,0,0,0,0c1.3,0,2.3,1,2.3,2.3l0,1.2l1.2,0c0,0,0,0,0,0
c0.3,0,0.6,0.1,0.9,0.2V14.7c0-1.3-1.1-2.3-2.3-2.3H17c-1.3,0-2.3,1.1-2.3,2.3v18.7c0,1.3,1,2.3,2.3,2.3h9.8
C26.7,35.4,26.6,35.1,26.6,34.8z M19.7,29.3c-1.4,0-2.6-1.2-2.6-2.6s1.2-2.6,2.6-2.6s2.6,1.2,2.6,2.6S21.1,29.3,19.7,29.3z
M22.6,17.9l-2.9,2.9c-0.2,0.2-0.4,0.3-0.6,0.3s-0.4-0.1-0.6-0.3l-1.2-1.2c-0.3-0.3-0.3-0.9,0-1.2s0.9-0.3,1.2,0l0.5,0.5l2.3-2.3
c0.3-0.3,0.9-0.3,1.2,0S23,17.6,22.6,17.9z M24.9,17.6h4.7c0.5,0,0.9,0.4,0.9,0.9s-0.4,0.9-0.9,0.9h-4.7c-0.5,0-0.9-0.4-0.9-0.9
S24.4,17.6,24.9,17.6z"/>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@ -0,0 +1,27 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 26.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill:#F57775;}
.st1{fill:#FFFFFF;}
</style>
<path class="st0" d="M36,48H12C5.4,48,0,42.6,0,36V12C0,5.4,5.4,0,12,0h24c6.6,0,12,5.4,12,12v24C48,42.6,42.6,48,36,48z"/>
<g>
<g>
<path class="st1" d="M21.5,24.5c-3.3,0-6-2.7-6-6s2.7-6,6-6s6,2.7,6,6C27.6,21.8,24.9,24.5,21.5,24.5z"/>
</g>
<g>
<path class="st1" d="M28.8,35.5H14.3c-1.1,0-2-0.9-2-2v-4.1c0-1.7,1.4-3.1,3.1-3.1h12.2c1.7,0,3.1,1.4,3.1,3.1v4.1
C30.7,34.6,29.9,35.5,28.8,35.5z"/>
</g>
<g>
<path class="st1" d="M29.6,22.5c-0.3,0-0.5-0.1-0.7-0.3c-0.2-0.3-0.2-0.7,0-1c0.6-0.8,0.9-1.7,0.9-2.7s-0.3-1.9-0.9-2.7
c-0.2-0.3-0.2-0.7,0-1s0.6-0.4,0.9-0.3c1.7,0.6,2.9,2.2,2.9,4s-1.2,3.4-2.9,4C29.8,22.5,29.7,22.5,29.6,22.5z"/>
</g>
<g>
<path class="st1" d="M34,34.7h-0.7c-0.3,0-0.5-0.1-0.7-0.3s-0.2-0.5-0.1-0.7c0-0.1,0-0.1,0-0.1v-4c0-0.4-0.2-0.7-0.3-0.9
c-0.2-0.2-0.2-0.6-0.1-0.9c0.1-0.3,0.4-0.5,0.7-0.5H33c1.4,0,2.6,1.2,2.6,2.6V33C35.7,34,34.9,34.7,34,34.7z"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="48" height="48" viewBox="0 0 48 48"><defs><clipPath id="master_svg0_3054_25679"><rect x="12" y="12" width="24" height="24" rx="0"/></clipPath></defs><g><rect x="0" y="0" width="48" height="48" rx="12" fill="#9D95E5" fill-opacity="1"/><g clip-path="url(#master_svg0_3054_25679)"><g><path d="M35.6226,12.187076C35.9089,12.366451,36.0526,12.70563,35.9824,13.03611L32.5574,33.5856C32.4912,34.000299999999996,32.1282,34.3018,31.7084,34.290800000000004C31.599,34.289100000000005,31.4912,34.2646,31.3918,34.2188L25.333399999999997,31.7437L22.095599999999997,35.6866C21.9377,35.8896,21.69045,36.0025,21.43364,35.9888C21.33001,35.990700000000004,21.22712,35.9711,21.131439999999998,35.9313C20.96605,35.8728,20.82448,35.7615,20.72851,35.6147C20.62727,35.4715,20.57206,35.300799999999995,20.57021,35.1254L20.57021,30.4629L32.125699999999995,16.28835L17.821640000000002,28.6641L12.540347,26.4912C12.225567,26.3831,12.0117595,26.09,12.0050232,25.7573C11.9677587,25.428800000000003,12.140421,25.112299999999998,12.436736,24.9658L34.7016,12.115123C34.833200000000005,12.040216,34.981899999999996,12.000561138,35.1333,12C35.3072,12.0294109,35.4735,12.092995,35.6226,12.187076Z" fill="#FFFFFF" fill-opacity="1"/></g></g></g></svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="48" height="48" viewBox="0 0 48 48"><defs><clipPath id="master_svg0_3054_25613"><rect x="12" y="12" width="24" height="24" rx="0"/></clipPath></defs><g><rect x="0" y="0" width="48" height="48" rx="12" fill="#F57775" fill-opacity="1"/><g clip-path="url(#master_svg0_3054_25613)"><g><g><path d="M32.753299999999996,26.9593L30.357,26.9593C29.1345,26.957700000000003,28.1438,25.967100000000002,28.142200000000003,24.744500000000002C28.139499999999998,24.1851,28.3448,23.6446,28.7182,23.228099999999998C31.2206,20.597839999999998,31.1498,16.44632,28.5592,13.9029C25.9685,11.359486,21.816380000000002,11.365081,19.23258,13.91547C16.648789999999998,16.46586,16.58916,20.61755,19.09864,23.2411C19.45887,23.6577,19.65585,24.1909,19.65307,24.7416C19.65997,25.8988,18.7744,26.8659,17.62114,26.9608L15.40058,26.9608C14.07758,26.9608,13.00396661,28.0311,13,29.3541L13,31.5142C13,32.024,13.413276,32.4373,13.923077,32.4373L34.227900000000005,32.4373C34.737700000000004,32.4373,35.150999999999996,32.024,35.150999999999996,31.5142L35.150999999999996,29.3541C35.145399999999995,28.0327,34.0747,26.9633,32.753299999999996,26.9593Z" fill="#FFFFFF" fill-opacity="1"/></g><g><path d="M34.2308,35.999994833374025L13.923077,35.999994833374025C13.413276,35.999994833374025,13.000000054161,35.58672483337402,13.000000054161,35.07692183337402C13.000000054161,34.56712083337403,13.413276,34.15384483337402,13.923077,34.15384483337402L34.227900000000005,34.15384483337402C34.737700000000004,34.15384483337402,35.150999999999996,34.56712083337403,35.150999999999996,35.07692183337402C35.150999999999996,35.58672483337402,34.737700000000004,35.999994833374025,34.227900000000005,35.999994833374025L34.2308,35.999994833374025Z" fill="#FFFFFF" fill-opacity="1"/></g></g></g></g></svg>

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 26.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill:#FFAA64;}
.st1{fill:#FFFFFF;}
</style>
<path class="st0" d="M36,48H12C5.4,48,0,42.6,0,36V12C0,5.4,5.4,0,12,0h24c6.6,0,12,5.4,12,12v24C48,42.6,42.6,48,36,48z"/>
<path class="st1" d="M32.5,14.5h-4.3v-1c0-0.4-0.3-0.8-0.8-0.8s-0.8,0.3-0.8,0.8v1h-5.3v-1c0-0.4-0.3-0.8-0.8-0.8s-0.8,0.3-0.8,0.8
v1h-4.3c-1.5,0-2.8,1.2-2.8,2.8v15.3c0,1.5,1.2,2.8,2.8,2.8h17c1.5,0,2.8-1.2,2.8-2.8V17.2C35.2,15.7,34,14.5,32.5,14.5z M15.5,16
h4.3v1c0,0.4,0.3,0.8,0.8,0.8s0.8-0.3,0.8-0.8v-1h5.3v1c0,0.4,0.3,0.8,0.8,0.8s0.8-0.3,0.8-0.8v-1h4.3c0.7,0,1.2,0.6,1.2,1.2v2.9
H14.2v-2.9C14.2,16.5,14.8,16,15.5,16z M18.3,28.1L18.3,28.1c0.6,0,1.1,0.5,1.1,1.1c0,0.6-0.5,1-1,1c-0.6,0-1.1-0.5-1.1-1
C17.3,28.5,17.8,28.1,18.3,28.1z M17.3,25.1c0-0.6,0.5-1,1-1h0c0.6,0,1,0.5,1,1s-0.5,1-1,1C17.8,26.2,17.3,25.7,17.3,25.1z M24,28.1
L24,28.1c0.6,0,1.1,0.5,1.1,1.1c0,0.6-0.5,1-1,1c-0.6,0-1.1-0.5-1.1-1C23,28.5,23.4,28.1,24,28.1z M23,25.1c0-0.6,0.5-1,1-1h0
c0.6,0,1,0.5,1,1s-0.5,1-1,1C23.4,26.2,23,25.7,23,25.1z M29.7,28.1L29.7,28.1c0.6,0,1.1,0.5,1.1,1.1c0,0.6-0.5,1-1,1
c-0.6,0-1.1-0.5-1.1-1C28.6,28.5,29.1,28.1,29.7,28.1z M28.6,25.1c0-0.6,0.5-1,1-1h0c0.6,0,1,0.5,1,1s-0.5,1-1,1
C29.1,26.2,28.6,25.7,28.6,25.1z"/>
</svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="48" height="48" viewBox="0 0 48 48"><defs><clipPath id="master_svg0_3054_25658"><rect x="12" y="12" width="24" height="24" rx="0"/></clipPath></defs><g><rect x="0" y="0" width="48" height="48" rx="12" fill="#72A1F7" fill-opacity="1"/><g clip-path="url(#master_svg0_3054_25658)"><g><path d="M33.1767,19.46395L30.5723,21.34133L30.5723,19.01332C30.5723,17.34516,29.217,15.99442094,27.5489,16L15.01332,16C13.34911,15.999999801611,12,17.34911,12,19.01332L12,29.5822C12,31.2464,13.34911,32.595600000000005,15.01332,32.595600000000005L27.5489,32.595600000000005C29.217,32.6011,30.5723,31.2504,30.5723,29.5822L30.5723,27.2542L33.182500000000005,29.1259C33.7237,29.5146,34.436800000000005,29.5683,35.0302,29.2651C35.623599999999996,28.9619,35.9979,28.3525,36,27.6861L36,20.907980000000002C36.0011,20.23879,35.626599999999996,19.62559,35.0308,19.32086C34.4351,19.01614,33.7187,19.07142,33.1767,19.46395Z" fill="#FFFFFF" fill-opacity="1"/></g></g></g></svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 26.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill:#FFAA64;}
.st1{fill:#FFFFFF;}
</style>
<path class="st0" d="M36,48H12C5.4,48,0,42.6,0,36V12C0,5.4,5.4,0,12,0h24c6.6,0,12,5.4,12,12v24C48,42.6,42.6,48,36,48z"/>
<g>
<g>
<path class="st1" d="M28.7,18.4h3.8c0.5,0,0.8-0.6,0.4-1l-4.7-4.7c-0.4-0.4-1-0.1-1,0.4V17C27.3,17.8,27.9,18.4,28.7,18.4z"/>
<path class="st1" d="M28.7,20.2c-1.8,0-3.2-1.4-3.2-3.2v-4c0-0.3-0.3-0.6-0.6-0.6H17c-1.3,0-2.3,1.1-2.3,2.3v18.7
c0,1.3,1,2.3,2.3,2.3h14c1.3,0,2.3-1,2.3-2.3V20.7c0-0.3-0.3-0.6-0.6-0.6H28.7z"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 890 B

View File

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 26.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill:#53CBAE;}
.st1{fill:#FFFFFF;}
</style>
<path class="st0" d="M36,48H12C5.4,48,0,42.6,0,36V12C0,5.4,5.4,0,12,0h24c6.6,0,12,5.4,12,12v24C48,42.6,42.6,48,36,48z"/>
<g>
<g>
<path class="st1" d="M35.8,18.3l-2.6,2.2c-0.3,0.3-0.5,0.6-0.5,1v4.8c0,0.4,0.2,0.8,0.5,1l2.6,2.2c0.9,0.8,2.2,0.1,2.2-1v-9.3
C38,18.2,36.6,17.6,35.8,18.3z"/>
<path class="st1" d="M28.8,14.6H12c-1.1,0-2,0.9-2,2v14.8c0,1.1,0.9,2,2,2h16.8c1.1,0,2-0.9,2-2V16.6
C30.8,15.5,29.9,14.6,28.8,14.6z M23.4,24.7h-2.2V27c0,0.4-0.3,0.7-0.7,0.7c-0.4,0-0.7-0.3-0.7-0.7v-2.2h-2.2
c-0.4,0-0.7-0.3-0.7-0.7s0.3-0.7,0.7-0.7h2.2V21c0-0.4,0.3-0.7,0.7-0.7c0.4,0,0.7,0.3,0.7,0.7v2.2h2.2c0.4,0,0.7,0.3,0.7,0.7
S23.8,24.7,23.4,24.7z"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="48" height="48" viewBox="0 0 48 48"><defs><clipPath id="master_svg0_3054_25667"><rect x="12" y="12" width="24" height="24" rx="0"/></clipPath></defs><g><rect x="0" y="0" width="48" height="48" rx="12" fill="#FFC835" fill-opacity="1"/><g clip-path="url(#master_svg0_3054_25667)"><g><path d="M33.400099999999995,12C34.0625,12,34.599599999999995,12.537033,34.599599999999995,13.1995L34.599599999999995,34.799099999999996C34.6004,35.4621,34.0631,36,33.400099999999995,36L16.59993,36C14.61174,36,13,34.3883,13,32.400099999999995L13,15.59993C13,13.61174,14.61174,12,16.59993,12L33.400099999999995,12ZM32.1991,31.1991L16.59993,31.1991C15.953240000000001,31.2215,15.440570000000001,31.7523,15.440570000000001,32.3994C15.440570000000001,33.0464,15.953240000000001,33.577200000000005,16.59993,33.599599999999995L32.1991,33.599599999999995L32.1991,31.1991ZM23.799799999999998,22.799799999999998C21.8116,22.799799999999998,20.19986,24.4115,20.19986,26.3997L27.3997,26.3997C27.3997,24.4115,25.788,22.799799999999998,23.799799999999998,22.799799999999998ZM23.799799999999998,16.799419999999998C22.47406,16.799419999999998,21.39935,17.87413,21.39935,19.19986C21.39935,20.525579999999998,22.47406,21.60029,23.799799999999998,21.60029C25.125500000000002,21.60029,26.200200000000002,20.525579999999998,26.200200000000002,19.19986C26.1994,17.87446,25.1252,16.80022,23.799799999999998,16.799419999999998Z" fill="#FFFFFF" fill-opacity="1"/></g></g></g></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="48" height="48" viewBox="0 0 48 48"><defs><clipPath id="master_svg0_3054_25401"><rect x="12" y="12" width="24" height="24" rx="0"/></clipPath></defs><g><rect x="0" y="0" width="48" height="48" rx="12" fill="#F57775" fill-opacity="1"/><g clip-path="url(#master_svg0_3054_25401)"><g><path d="M36,19.35553L36,31.6471C36,32.8166,35.0519,33.764700000000005,33.882400000000004,33.764700000000005L14.11765,33.764700000000005C12.948108,33.764700000000005,12.00000549316,32.8166,12.00000549316,31.6471L12.00000549316,19.35553L20.804470000000002,26.8202C22.6481,28.3834,25.3519,28.3834,27.1955,26.8202L36,19.35553ZM33.882400000000004,14.000000646254C34.1404,14.000286291,34.3963,14.0471559,34.6376,14.138353C34.984700000000004,14.270521,35.2905,14.492136,35.5242,14.780706C35.6509,14.935896,35.7549,15.10818,35.8334,15.29247C35.925200000000004,15.50988,35.9816,15.74565,35.9958,15.99341L36,16.11765L36,16.823529999999998L25.3744,25.8871C24.6211,26.5295,23.5233,26.5644,22.730800000000002,25.9711L22.625700000000002,25.886400000000002L12.00000517004,16.823529999999998L12.00000517004,16.11765C11.9982451,15.318200000000001,12.448325,14.586376,13.16259,14.227294C13.45869,14.0776132,13.78587,13.999747961,14.11765,14.000000646254L33.882400000000004,14.000000646254Z" fill="#FFFFFF" fill-opacity="1"/></g></g></g></svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="48" height="48" viewBox="0 0 48 48"><defs><clipPath id="master_svg0_3054_25658"><rect x="12" y="12" width="24" height="24" rx="0"/></clipPath></defs><g><rect x="0" y="0" width="48" height="48" rx="12" fill="#72A1F7" fill-opacity="1"/><g clip-path="url(#master_svg0_3054_25658)"><g><path d="M33.1767,19.46395L30.5723,21.34133L30.5723,19.01332C30.5723,17.34516,29.217,15.99442094,27.5489,16L15.01332,16C13.34911,15.999999801611,12,17.34911,12,19.01332L12,29.5822C12,31.2464,13.34911,32.595600000000005,15.01332,32.595600000000005L27.5489,32.595600000000005C29.217,32.6011,30.5723,31.2504,30.5723,29.5822L30.5723,27.2542L33.182500000000005,29.1259C33.7237,29.5146,34.436800000000005,29.5683,35.0302,29.2651C35.623599999999996,28.9619,35.9979,28.3525,36,27.6861L36,20.907980000000002C36.0011,20.23879,35.626599999999996,19.62559,35.0308,19.32086C34.4351,19.01614,33.7187,19.07142,33.1767,19.46395Z" fill="#FFFFFF" fill-opacity="1"/></g></g></g></svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="48" height="48" viewBox="0 0 48 48"><defs><clipPath id="master_svg0_3054_25545"><rect x="12" y="12" width="24" height="24" rx="0"/></clipPath></defs><g><rect x="0" y="0" width="48" height="48" rx="12" fill="#9D95E5" fill-opacity="1"/><g clip-path="url(#master_svg0_3054_25545)"><g><g><path d="M27.3699,31.3292C26.4274,32.2528,24.9169,32.2452,23.983800000000002,31.3121C23.0507,30.379,23.043100000000003,28.8686,23.9667,27.926099999999998L32.3201,19.578400000000002L32.3201,15.27301C32.3201,13.46482,30.8539,11.999210349,29.0457,12L15.27301,12C13.46538,11.999999784513,12,13.46538,12,15.27301L12,32.6318C11.999209911,34.44,13.46482,35.9063,15.27301,35.9063L29.0457,35.9063C30.8541,35.9063,32.3201,34.4403,32.3201,32.6318L32.3201,26.3789L27.3699,31.3292ZM17.74958,20.06886C17.25443,20.06886,16.85304,19.66746,16.85304,19.17232C16.85304,18.67717,17.25443,18.27578,17.74958,18.27578L23.1288,18.27578C23.624000000000002,18.27578,24.025399999999998,18.67717,24.025399999999998,19.17232C24.025399999999998,19.66746,23.624000000000002,20.06886,23.1288,20.06886L17.74958,20.06886Z" fill="#FFFFFF" fill-opacity="1"/></g><g transform="matrix(0.7071067690849304,0.7071067690849304,-0.7071067690849304,0.7071067690849304,23.826460884525744,-18.843463462634503)"><rect x="34.65930366516113" y="19.33935022354126" width="1.8960309028625488" height="14.49763011932373" rx="0.9480154514312744" fill="#FFFFFF" fill-opacity="1"/></g></g></g></g></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="48" height="48" viewBox="0 0 48 48"><defs><clipPath id="master_svg0_3054_25405"><rect x="12" y="12" width="24" height="24" rx="0"/></clipPath></defs><g><rect x="0" y="0" width="48" height="48" rx="12" fill="#FFC835" fill-opacity="1"/><g clip-path="url(#master_svg0_3054_25405)"><g><g><rect x="12" y="26.31494140625" width="1.8119423389434814" height="7.173644542694092" rx="0.9059711694717407" fill="#FFFFFF" fill-opacity="1"/></g><g><rect x="34.18804931640625" y="26.31494140625" width="1.8119423389434814" height="7.173644542694092" rx="0.9059711694717407" fill="#FFFFFF" fill-opacity="1"/></g><g><path d="M29.53465,20.54139L31.35485,17.38422C31.41525,17.38422,31.47695,17.39383,31.53875,17.39383C32.931349999999995,17.39648,33.97485,16.118949999999998,33.69415,14.75489C33.41345,13.390835,31.95045,12.629057,30.67195,13.181321C29.393549999999998,13.733585,28.94525,15.32101,29.74605,16.4604L27.76795,19.89211C25.287950000000002,19.2077,22.669629999999998,19.20201,20.18666,19.87564L18.21274,16.46315C19.0135,15.32376,18.56525,13.73633,17.28679,13.184066C16.00834,12.631803,14.545278,13.393581,14.2646052,14.75764C13.983932,16.1217,15.02738,17.39923,16.42001,17.39657C16.48179,17.39657,16.542180000000002,17.39657,16.60258,17.386960000000002L18.417270000000002,20.529040000000002C16.05625,21.62718,14.483158,23.3979,14.36648,25.4172L14.356871,25.4172L14.356871,33.289500000000004C14.356871,34.7254,15.52087,35.889399999999995,16.95673,35.889399999999995L30.96905,35.889399999999995C32.40495,35.889399999999995,33.56895,34.7254,33.56895,33.289500000000004L33.56895,25.4172L33.559349999999995,25.4172C33.444050000000004,23.4048,31.88195,21.636789999999998,29.53465,20.54139ZM27.063850000000002,29.5105L20.86888,29.5105C19.89243,29.5105,19.10087,28.718899999999998,19.10087,27.7425C19.10087,26.766,19.89243,25.9745,20.86888,25.9745L27.05695,25.9745C28.03335,25.9745,28.82495,26.766,28.82495,27.7425C28.82495,28.718899999999998,28.03335,29.5105,27.05695,29.5105L27.063850000000002,29.5105Z" fill="#FFFFFF" fill-opacity="1"/></g></g></g></g></svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -0,0 +1,41 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 26.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill:#72A1F7;}
.st1{fill:#FFFFFF;}
</style>
<path class="st0" d="M36,48H12C5.4,48,0,42.6,0,36V12C0,5.4,5.4,0,12,0h24c6.6,0,12,5.4,12,12v24C48,42.6,42.6,48,36,48z"/>
<g>
<g>
<g>
<g>
<g>
<path class="st1" d="M20.3,35.8h-4.7c-1.9,0-3.4-1.5-3.4-3.4v-4.7c0-0.4,0.3-0.8,0.8-0.8s0.8,0.3,0.8,0.8v4.7
c0,1.1,0.9,1.9,1.9,1.9h4.7c0.4,0,0.8,0.3,0.8,0.8S20.7,35.8,20.3,35.8z"/>
</g>
<g>
<path class="st1" d="M13,21.1c-0.4,0-0.8-0.3-0.8-0.8v-4.7c0-1.9,1.5-3.4,3.4-3.4h4.7c0.4,0,0.8,0.3,0.8,0.8s-0.3,0.8-0.8,0.8
h-4.7c-1.1,0-1.9,0.9-1.9,1.9v4.7C13.8,20.7,13.4,21.1,13,21.1z"/>
</g>
</g>
<g>
<g>
<path class="st1" d="M35,21.1c-0.4,0-0.8-0.3-0.8-0.8v-4.7c0-1.1-0.9-1.9-1.9-1.9h-4.7c-0.4,0-0.8-0.3-0.8-0.8s0.3-0.8,0.8-0.8
h4.7c1.9,0,3.4,1.5,3.4,3.4v4.7C35.8,20.7,35.4,21.1,35,21.1z"/>
</g>
<g>
<path class="st1" d="M32.3,35.8h-4.7c-0.4,0-0.8-0.3-0.8-0.8s0.3-0.8,0.8-0.8h4.7c1.1,0,1.9-0.9,1.9-1.9v-4.7
c0-0.4,0.3-0.8,0.8-0.8s0.8,0.3,0.8,0.8v4.7C35.8,34.2,34.2,35.8,32.3,35.8z"/>
</g>
</g>
</g>
<g>
<path class="st1" d="M29.5,16.5H18.5c-1.1,0-1.9,0.9-1.9,1.9v11.1c0,1.1,0.9,1.9,1.9,1.9h11.1c1.1,0,1.9-0.9,1.9-1.9V18.5
C31.5,17.4,30.6,16.5,29.5,16.5z M27.7,24.8h-7.3c-0.4,0-0.8-0.3-0.8-0.8s0.3-0.8,0.8-0.8h7.3c0.4,0,0.8,0.3,0.8,0.8
S28.1,24.8,27.7,24.8z"/>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 26.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
<style type="text/css">
.st0{fill:#72A1F7;}
.st1{fill:#FFFFFF;}
</style>
<path class="st0" d="M36,48H12C5.4,48,0,42.6,0,36V12C0,5.4,5.4,0,12,0h24c6.6,0,12,5.4,12,12v24C48,42.6,42.6,48,36,48z"/>
<g>
<path class="st1" d="M34.6,26.5c-1.9-1.1-1.9-3.8,0-4.9c0.6-0.3,0.8-1.1,0.5-1.7l-1.9-3.3c-0.3-0.6-1.1-0.8-1.7-0.5
c-1.9,1.1-4.3-0.3-4.3-2.5c0-0.7-0.6-1.3-1.3-1.3h-3.8c-0.7,0-1.3,0.6-1.3,1.3c0,2.2-2.4,3.6-4.3,2.5l0,0c-0.6-0.3-1.4-0.1-1.7,0.5
L13,19.8c-0.3,0.6-0.1,1.4,0.5,1.7l0,0c1.9,1.1,1.9,3.8,0,4.9c-0.6,0.3-0.8,1.1-0.5,1.7l1.9,3.3c0.3,0.6,1.1,0.8,1.7,0.5
c1.9-1.1,4.3,0.3,4.3,2.5v0c0,0.7,0.6,1.3,1.3,1.3h3.8c0.7,0,1.3-0.6,1.3-1.3v0c0-2.2,2.4-3.6,4.3-2.5h0c0.6,0.3,1.4,0.1,1.7-0.5
l1.9-3.3C35.4,27.6,35.2,26.8,34.6,26.5z M24,26.6c-1.4,0-2.6-1.2-2.6-2.6c0-1.4,1.2-2.6,2.6-2.6c1.4,0,2.6,1.2,2.6,2.6
C26.6,25.4,25.4,26.6,24,26.6z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="48" height="48" viewBox="0 0 48 48"><defs><clipPath id="master_svg0_3054_25526"><rect x="12" y="12" width="24" height="24" rx="0"/></clipPath></defs><g><rect x="0" y="0" width="48" height="48" rx="12" fill="#72A1F7" fill-opacity="1"/><g clip-path="url(#master_svg0_3054_25526)"><g><g><path d="M34.0464,21.911920000000002C34.0464,16.439700000000002,29.336,12,23.523899999999998,12C17.71187,12,13,16.43682,13,21.911920000000002C13,24.689799999999998,14.21541,27.1998,16.16813,28.9999L23.5211,36L30.7962,29.0676C30.9402,28.9365,31.0842,28.8026,31.2196,28.6643C33.0192,26.8769,34.0359,24.4483,34.0464,21.911920000000002ZM23.397199999999998,26.7015C20.95156,26.6984,18.97124,24.7138,18.97336,22.2681C18.97548,19.82244,20.959229999999998,17.84126,23.404899999999998,17.84232C25.8506,17.84338,27.8326,19.82627,27.8326,22.271900000000002C27.8326,24.720599999999997,25.8459,26.704700000000003,23.397199999999998,26.7015Z" fill="#FFFFFF" fill-opacity="1"/></g><g><ellipse cx="23.397215843200684" cy="22.271930694580078" rx="2.733229160308838" ry="2.733229160308838" fill="#FFFFFF" fill-opacity="1"/></g></g></g></g></svg>

After

Width:  |  Height:  |  Size: 1.2 KiB