xlcp-frontend/src/components/Icon/JusticeIcon.vue
tangweijie bbf4c64391 feat(prison): 新增评估报告等前端页面,优化问卷与罪犯管理
核心变更:
1. 新增页面模块
   - 快捷评语管理 (quick-comment)
   - 报告模板管理 (report-template)
   - 评估报告编辑 (report)
   - 风险分析页面 (risk)
   - 预警管理 (warning)
   - 服刑情况跟踪 (situation)

2. 功能优化
   - 罪犯管理: 新增Workbench工作台页面
   - 问卷模块: 完善QuestionForm组件
   - 计分考核: 优化ScoreForm支持多种评分方式
   - 危险评估: 完善RiskAssessmentForm

3. UI改进
   - 登录页面: 新增监狱特色Loading动画
   - 罪犯详情: 优化展示效果
   - 消费记录: 增强查询功能

4. 基础设施
   - 新增JusticeIcon图标组件
   - 优化字典格式化工具
   - 更新路由配置

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-16 20:15:17 +08:00

42 lines
1.7 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<template>
<svg :width="size" :height="size" :viewBox="viewBox || '0 0 100 100'" xmlns="http://www.w3.org/2000/svg">
<!-- 天平底座 -->
<rect x="35" y="75" width="30" height="6" rx="2" :fill="mainColor" />
<rect x="48" y="45" width="4" height="30" :fill="accentColor" />
<!-- 天平横杆 -->
<rect x="10" y="42" width="80" height="5" rx="2" :fill="accentColor" />
<!-- 天平左边盘子往中间移 -->
<path d="M28 47 L38 47 L35 58 L31 58 Z" :fill="accentColor" />
<path d="M25 58 Q33 65 41 58" fill="none" :stroke="accentColor" stroke-width="2" />
<!-- 天平右边盘子 -->
<path d="M62 47 L72 47 L69 58 L65 58 Z" :fill="accentColor" />
<path d="M59 58 Q67 65 75 58" fill="none" :stroke="accentColor" stroke-width="2" />
<!-- 天平顶装饰 -->
<circle cx="50" cy="38" r="5" :fill="mainColor" />
<polygon points="50,30 52,36 58,36 53,40 55,46 50,42 45,46 47,40 42,36 48,36" :fill="accentColor" />
<!-- 书本放在天平左侧 -->
<rect x="8" y="48" width="10" height="22" rx="1" :fill="mainColor" :stroke="accentColor" stroke-width="1.5" />
<line x1="13" y1="52" x2="13" y2="68" :stroke="accentColor" stroke-width="0.5" />
<line x1="9" y1="56" x2="17" y2="56" :stroke="accentColor" stroke-width="0.5" />
<line x1="9" y1="62" x2="17" y2="62" :stroke="accentColor" stroke-width="0.5" />
</svg>
</template>
<script lang="ts" setup>
defineOptions({ name: 'JusticeIcon' })
interface Props {
size?: number | string
viewBox?: string
mainColor?: string
accentColor?: string
}
withDefaults(defineProps<Props>(), {
size: 80,
viewBox: '0 0 100 100',
mainColor: '#c41e3a', // 红色
accentColor: '#ffd700' // 金色
})
</script>