合伙人运营小程序
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308
  1. page {
  2. width: 100%;
  3. height: 100%;
  4. background-color: #F7F8FA;
  5. font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Helvetica Neue", sans-serif;
  6. box-sizing: border-box;
  7. }
  8. .container {
  9. width: 100%;
  10. min-height: 100%;
  11. padding: 20rpx;
  12. padding-bottom: 120rpx;
  13. box-sizing: border-box;
  14. }
  15. .filter_top{
  16. position: fixed;
  17. top: 0;
  18. left: 0;
  19. right: 0;
  20. z-index: 99;
  21. padding: 20rpx;
  22. box-sizing: border-box;
  23. background-color: #FFFFFF;
  24. }
  25. /* 告警分类筛选栏 */
  26. .filter-bar {
  27. width: 100%;
  28. display: flex;
  29. background: #FFFFFF;
  30. padding: 8rpx 0rpx;
  31. margin-bottom: 16rpx;
  32. box-shadow: 0 2rpx 8rpx rgba(0, 0, 0, 0.04);
  33. overflow-x: auto;
  34. white-space: nowrap;
  35. box-sizing: border-box;
  36. }
  37. .filter-bar::-webkit-scrollbar {
  38. display: none;
  39. }
  40. .filter-item {
  41. display: inline-flex;
  42. align-items: center;
  43. padding: 16rpx 24rpx;
  44. margin: 0 8rpx;
  45. border-radius: 8rpx;
  46. font-size: 28rpx;
  47. color: #4E5969;
  48. position: relative;
  49. }
  50. .filter-active {
  51. background: linear-gradient(135deg, #007545 0%, #007545 100%);
  52. color: #FFFFFF;
  53. }
  54. .filter-badge {
  55. display: inline-flex;
  56. align-items: center;
  57. justify-content: center;
  58. min-width: 32rpx;
  59. height: 32rpx;
  60. background: #F53F3F;
  61. color: #FFFFFF;
  62. font-size: 20rpx;
  63. border-radius: 16rpx;
  64. margin-left: 8rpx;
  65. padding: 0 6rpx;
  66. }
  67. .filter-active .filter-badge {
  68. background: #FFFFFF;
  69. color: #007545;
  70. }
  71. /* 状态筛选栏 */
  72. .status-filter {
  73. width: 100%;
  74. display: flex;
  75. background: #FFFFFF;
  76. padding: 12rpx 16rpx;
  77. margin:16rpx 0rpx;
  78. border-radius: 8rpx;
  79. box-shadow: 0 2rpx 8rpx rgba(0, 0, 0, 0.04);
  80. box-sizing: border-box;
  81. }
  82. .status-item {
  83. flex: 1;
  84. text-align: center;
  85. font-size: 28rpx;
  86. color: #86909C;
  87. padding: 12rpx 0;
  88. border-radius: 6rpx;
  89. }
  90. .status-active {
  91. color: #007545;
  92. font-weight: 600;
  93. background: #EEF7FF;
  94. }
  95. /* 告警列表 */
  96. .alert-list {
  97. width: 100%;
  98. overflow: hidden;
  99. overflow: auto;
  100. box-sizing: border-box;
  101. }
  102. .empty-wrap {
  103. padding: 100rpx 0;
  104. text-align: center;
  105. }
  106. .empty-icon {
  107. font-size: 80rpx;
  108. color: #C9CDD4;
  109. margin-bottom: 20rpx;
  110. }
  111. .empty-text {
  112. font-size: 28rpx;
  113. color: #86909C;
  114. margin-bottom: 8rpx;
  115. }
  116. .empty-subtext {
  117. font-size: 24rpx;
  118. color: #C9CDD4;
  119. }
  120. /* 告警卡片 */
  121. .alert-card {
  122. width: 100%;
  123. display: flex;
  124. align-items: flex-start;
  125. background: #FFFFFF;
  126. border-radius: 12rpx;
  127. padding: 24rpx;
  128. margin-bottom: 16rpx;
  129. box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.04);
  130. position: relative;
  131. box-sizing: border-box;
  132. }
  133. /* 未读角标 */
  134. .unread-tag {
  135. position: absolute;
  136. top: 24rpx;
  137. right: 24rpx;
  138. width: 16rpx;
  139. height: 16rpx;
  140. background: #F53F3F;
  141. border-radius: 50%;
  142. }
  143. /* 左侧图标+类型 */
  144. .alert-left {
  145. flex-shrink: 0;
  146. display: flex;
  147. flex-direction: column;
  148. align-items: center;
  149. margin-right: 20rpx;
  150. }
  151. .alert-icon {
  152. width: 64rpx;
  153. height: 64rpx;
  154. border-radius: 50%;
  155. display: flex;
  156. align-items: center;
  157. justify-content: center;
  158. font-size: 28rpx;
  159. font-weight: 600;
  160. color: #FFFFFF;
  161. margin-bottom: 18rpx;
  162. }
  163. .icon-critical {
  164. background: linear-gradient(135deg, #F53F3F 0%, #D92D2D 100%);
  165. }
  166. .icon-warning {
  167. background: linear-gradient(135deg, #FF7D00 0%, #E66A00 100%);
  168. }
  169. .icon-info {
  170. background: linear-gradient(135deg, #007545 0%, #007545 100%);
  171. }
  172. .alert-type {
  173. font-size: 24rpx;
  174. color: #86909C;
  175. }
  176. /* 中间核心信息 */
  177. .alert-middle {
  178. flex: 1;
  179. display: flex;
  180. flex-direction: column;
  181. gap: 8rpx;
  182. }
  183. .alert-title {
  184. font-size: 30rpx;
  185. font-weight: 600;
  186. color: #1D2129;
  187. line-height: 1.4;
  188. display: -webkit-box;
  189. -webkit-line-clamp: 1;
  190. -webkit-box-orient: vertical;
  191. overflow: hidden;
  192. }
  193. .alert-desc {
  194. font-size: 26rpx;
  195. color: #4E5969;
  196. line-height: 1.4;
  197. display: -webkit-box;
  198. -webkit-line-clamp: 1;
  199. -webkit-box-orient: vertical;
  200. overflow: hidden;
  201. }
  202. .alert-info {
  203. display: flex;
  204. justify-content: space-between;
  205. font-size: 22rpx;
  206. color: #86909C;
  207. margin-top: 8rpx;
  208. }
  209. /* 右侧操作按钮 */
  210. .alert-right {
  211. flex-shrink: 0;
  212. margin-left: 16rpx;
  213. }
  214. .handle-btn {
  215. width: 120rpx;
  216. height: 64rpx;
  217. line-height: 64rpx;
  218. padding: 0;
  219. background: #00B42A;
  220. color: #FFFFFF;
  221. font-size: 26rpx;
  222. border-radius: 8rpx;
  223. border: none;
  224. }
  225. .handle-btn::after {
  226. border: none;
  227. }
  228. .handled-tag {
  229. font-size: 24rpx;
  230. color: #00B42A;
  231. background: #E8FFF3;
  232. padding: 8rpx 16rpx;
  233. border-radius: 6rpx;
  234. }
  235. /* 底部批量操作栏 */
  236. .batch-bar {
  237. position: fixed;
  238. bottom: 0;
  239. left: 0;
  240. right: 0;
  241. display: flex;
  242. gap: 16rpx;
  243. padding: 20rpx 24rpx;
  244. background: #FFFFFF;
  245. box-shadow: 0 -2rpx 12rpx rgba(0, 0, 0, 0.06);
  246. z-index: 99;
  247. }
  248. .batch-read, .batch-handle {
  249. flex: 1;
  250. height: 88rpx;
  251. line-height: 88rpx;
  252. padding: 0;
  253. border-radius: 12rpx;
  254. font-size: 30rpx;
  255. font-weight: 500;
  256. border: none;
  257. }
  258. .batch-read {
  259. background: #EEF7FF;
  260. color: #007545;
  261. }
  262. .batch-read::after {
  263. border: none;
  264. }
  265. .batch-handle {
  266. background: linear-gradient(135deg, #007545 0%, #007545 100%);
  267. color: #FFFFFF;
  268. }
  269. .batch-handle::after {
  270. border: none;
  271. }
  272. /* 深色模式适配 */
  273. @media (prefers-color-scheme: dark) {
  274. page {
  275. background-color: #1D1D1F;
  276. }
  277. .filter-bar, .status-filter, .alert-card, .batch-bar {
  278. background: #2C2C2E;
  279. color: #FFFFFF;
  280. }
  281. .alert-title {
  282. color: #FFFFFF;
  283. }
  284. .alert-desc {
  285. color: #C9CDD4;
  286. }
  287. .alert-info, .alert-type {
  288. color: #8E8E93;
  289. }
  290. .status-active {
  291. background: #007545;
  292. color: #FFFFFF;
  293. }
  294. .batch-read {
  295. background: #007545;
  296. color: #FFFFFF;
  297. }
  298. }
  299. /* */