Merge branch 'shiy-point' into shiy

This commit is contained in:
2025-05-30 23:13:34 +08:00
5 changed files with 2412 additions and 385 deletions
+250 -33
View File
@@ -33,6 +33,10 @@ interface EvaluationResult {
data?: string;
[key: string]: unknown;
};
evaluated_point_results_log?: {
rules?: unknown[];
[key: string]: unknown;
};
[key: string]: unknown;
}
@@ -73,6 +77,8 @@ interface ReviewPointResult {
suggestion: string;
result?: boolean;
score: number;
// evaluatedPointResultsLog: Record<string, Array<Record<string, unknown>>>;
evaluatedPointResultsLog: Record<string, unknown>;
}
// 定义统计数据类型
@@ -241,6 +247,11 @@ export async function getReviewPoints(fileId: string) {
const point = pointsMap.get(result.evaluation_point_id) || {} as EvaluationPoint;
const group = groupsMap.get(point.evaluation_point_groups_id || 0) || {} as EvaluationPointGroup;
const editAuditStatus = editAuditStatusMap.get(result.evaluation_point_id) || {id: '', status: 0};
// 评查结果内容改成由evaluated_point_results_log中获取
const evaluatedPointResultsLog = result.evaluated_point_results_log || {};
// console.log('evaluatedPointResultsLog-------', evaluatedPointResultsLog);
// 从 evaluated_results 中提取数据
let message = '';
@@ -287,48 +298,254 @@ export async function getReviewPoints(fileId: string) {
}
return {
id: result.id,
documentId: fileId,
pointId: point.id,
editAuditStatusId: editAuditStatus.id,
editAuditStatus: editAuditStatus.status,
title: message,
pointName: point.name || '',
groupName: group.name || '',
id: result.id,
documentId: fileId,
pointId: point.id,
editAuditStatusId: editAuditStatus.id,
editAuditStatus: editAuditStatus.status,
title: message,
pointName: point.name || '',
groupName: group.name || '',
status: point.suggestion_message_type || '', //评查点的评查结果状态
// status: 'error', //评查点的评查结果状态
status: point.suggestion_message_type || '', //评查点的评查结果状态
// status: 'error', //评查点的评查结果状态
content: data,
content: data,
contentPage: contentPage,
contentPage: contentPage,
suggestion: point.suggestion_message || '',
// suggestion: '只是给建议的修改内容',
suggestion: point.suggestion_message || '',
// suggestion: '只是给建议的修改内容',
result: result.evaluated_results?.result, // 记录评查结果,用于统计
score: point.score || 0,
result: result.evaluated_results?.result, // 记录评查结果,用于统计
score: point.score || 0,
postAction: point.post_action || '',
// postAction: 'manual',
postAction: point.post_action || '',
// postAction: 'manual',
actionContent: point.action_config || '',
// actionContent: '用户提前在评查点输入过的修改内容',
actionContent: point.action_config || '',
// actionContent: '用户提前在评查点输入过的修改内容',
legalBasis: point.references_laws || {},
// legalBasis: {
// name: '中华人民共和国食品安全法',
// content: '中华人民共和国食品安全法',
// article: [
// {
// name: '中华人民共和国食品安全法',
// content: '中华人民共和国食品安全法'
// }
// ]
// }
legalBasis: point.references_laws || {},
// legalBasis: {
// name: '中华人民共和国食品安全法',
// content: '中华人民共和国食品安全法',
// article: [
// {
// name: '中华人民共和国食品安全法',
// content: '中华人民共和国食品安全法'
// }
// ]
// }
// 评查配置: point.evaluation_config
evaluationConfig: point.evaluation_config || {}
// 评查配置: point.evaluation_config
evaluationConfig: point.evaluation_config || {},
evaluatedPointResultsLog: evaluatedPointResultsLog || {}
// evaluatedPointResultsLog: {
// rules:[
// {
// "id": "1",
// "type": "consistency",
// "config": {
// "logic": "and",
// "pairs": [
// {
// "sourceField": {"a":{page: 1,value: '张三拉萨看得见佛i啊是觉得离开房间啊善良的是的链接发了上帝就发垃圾袋的时间佛爱上立刻就阿拉山口大家分厘卡即使灯笼裤飞机啊顺利打开解放拉萨酱豆腐立刻阿萨到了经历多空双方叫阿里的肌肤垃圾收到了看见螺丝钉解放了啊撒旦解放垃圾的等级分类教师劳动纠纷爱丽丝的开发教师的肌肤啊撒旦解放考虑进来阿斯兰的看法骄傲'}},
// "targetField": {"b":{page: 1,value: '张三'}},
// "compareMethod": "exact",
// "res": true
// },
// {
// "sourceField": {"b":{page: 1,value: '张三'}},
// "targetField": {"c":{page: 1,value: '张三拉萨看得见佛i啊是觉得离开房间啊善良的是的链接发了上帝就发垃圾袋的时间佛爱上立刻就阿拉山口大家分厘卡即使灯笼裤飞机啊顺利打开解放拉萨酱豆腐立刻阿萨到了经历多空双方叫阿里的肌肤垃圾收到了看见螺丝钉解放了啊撒旦解放垃圾的等级分类教师劳动纠纷爱丽丝的开发教师的肌肤啊撒旦解放考虑进来阿斯兰的看法骄傲'}},
// "compareMethod": "exact",
// "res": false
// },
// {
// "sourceField": {"c":{page: 1,value: '张三'}},
// "targetField": {"d":{page: 1,value: '张三'}},
// "compareMethod": "contains",
// "res": true
// },
// {
// "sourceField": {"d":{page: 1,value: '张三'}},
// "targetField": {"e":{page: 1,value: '张三'}},
// "compareMethod": "exact",
// "res": true
// },
// {
// "sourceField": {"现场笔录-被检查人名称":{page: 1,value: '张三'}},
// "targetField": {"证据复制(提取)单-营业执照-名称":{page: 1,value: '张三'}},
// "compareMethod": "exact",
// "res": true
// },
// {
// "sourceField": {"证据复制(提取)单-营业执照-名称":{page: 1,value: '张三'}},
// "targetField": {"证据复制(提取)单-营业执照-目录-名称":{page: 1,value: '张三'}},
// "compareMethod": "exact",
// "res": true
// },
// {
// "sourceField": {"现场笔录-法定代表人(负责人)":{page: 1,value: '张三'}},
// "targetField": {"证据复制(提取)单-营业执照-法定代表人":{page: 1,value: '张三'}},
// "compareMethod": "exact",
// "res": true
// },
// {
// "sourceField": {"现场笔录-烟草专卖许可证号码":{page: 1,value: '张三'}},
// "targetField": {"证据复制(提取)单-烟草专卖零售许可证-许可证号":{page: 1,value: '张三'}},
// "compareMethod": "exact",
// "res": true
// },
// {
// "sourceField": {"证据复制(提取)单-烟草专卖零售许可证-企业名称":{page: 1,value: '张三'}},
// "targetField": {"证据复制(提取)单-营业执照-名称":{page: 1,value: '张三拉萨看得见佛i啊是觉得离开房间啊善良的是的链接发了上帝就发垃圾袋的时间佛爱上立刻就阿拉山口大家分厘卡即使灯笼裤飞机啊顺利打开解放拉萨酱豆腐立刻阿萨到了经历多空双方叫阿里的肌肤垃圾收到了看见螺丝钉解放了啊撒旦解放垃圾的等级分类教师劳动纠纷爱丽丝的开发教师的肌肤啊撒旦解放考虑进来阿斯兰的看法骄傲'}},
// "compareMethod": "exact",
// "res": false
// },
// {
// "sourceField": {"证据复制(提取)单-烟草专卖零售许可证-负责人姓名":{page: 1,value: '张三'}},
// "targetField": {"证据复制(提取)单-营业执照-法定代表人":{page: 1,value: '张三'}},
// "compareMethod": "exact",
// "res": true
// },
// {
// "sourceField": {"立案报告表-当事人-单位-名称":{page: 1,value: '张三'}},
// "targetField": {"证据复制(提取)单-营业执照-名称":{page: 1,value: '张三'}},
// "compareMethod": "exact",
// "res": true
// },
// {
// "sourceField": {"立案报告表-当事人-单位-法定代表人(负责人)":{page: 1,value: '张三拉萨看得见佛i啊是觉得离开房间啊善良的是的链接发了上帝就发垃圾袋的时间佛爱上立刻就阿拉山口大家分厘卡即使灯笼裤飞机啊顺利打开解放拉萨酱豆腐立刻阿萨到了经历多空双方叫阿里的肌肤垃圾收到了看见螺丝钉解放了啊撒旦解放垃圾的等级分类教师劳动纠纷爱丽丝的开发教师的肌肤啊撒旦解放考虑进来阿斯兰的看法骄傲'}},
// "targetField": {"证据复制(提取)单-营业执照-法定代表人":{page: 1,value: '张三'}},
// "compareMethod": "exact",
// "res": true
// },
// {
// "sourceField": {"立案报告表-当事人-单位-地址":{page: 1,value: '张三'}},
// "targetField": {"证据复制(提取)单-营业执照-住所":{page: 1,value: '张三'}},
// "compareMethod": "exact",
// "res": true
// }
// ],
// "selectedFields": []
// }
// },
// {
// "id": "2",
// "type": "exists",
// "config": {
// "logic": "all",
// "res": true,
// "fields": {
// "证据先行登记保存批准书-负责人意见并签名-时间": {page: 1,value: ''},
// "证据先行登记保存批准书-负责人意见并签名-签名": {page: 2,value: '有无判断类型'}
// },
// }
// },
// {
// "id": "3",
// "type": "exists",
// "config": {
// "logic": "all",
// "res": false,
// "fields": {
// "证据先行登记-负责人意见并签名-时间": {page: 1,value: ''},
// "证据先行登记-负责人意见并签名-签名": {page: 2,value: '有无判断类型'}
// },
// }
// },
// {
// "id": "4",
// "type": "logic",
// "config": {
// "logic": "all",
// "conditions": [
// {
// "field": {
// "送达回证-送达方式": {
// "page": 5,
// "value": "逻辑判断"
// }
// },
// "value": "直接送达",
// "operator": "eq",
// "res": true
// },
// {
// "field": {
// "犯罪证据-犯罪方式": {
// "page": 6,
// "value": "逻辑判断"
// }
// },
// "value": "直接送达",
// "operator": "eq",
// "res": false
// }
// ],
// "selectedFields": []
// }
// },
// {
// "id": "5",
// "type": "regex",
// "config": {
// "res": true,
// "field": {
// "广东省没收、收缴、追缴财务收据-标题":{
// page: 1,value: 'asdasdasd'
// }
// },
// "pattern": "^(.*广东省没收.*财务收据.*)",
// "matchType": "match",
// "selectedFields": []
// }
// },
// {
// "id": "6",
// "type": "format",
// "config": {
// "field": {
// "广东省没收、收缴、追缴财务收据-标题": {
// "value": "",
// "page": 8
// }
// },
// "formatType": "date",
// "parameters": "YYYY-MM-DD",
// "selectedFields": [],
// "res": false
// }
// },
// {
// "id": "7",
// "type": "ai",
// "config": {
// "res": false,
// "model": "qwen14b",
// "fields": {
// "涉案物件核价表-涉案物品价格-品种规格、单价": {
// "page": 1,
// "value": "规则和单价你都无法想象"
// },
// "涉案物件核价表-涉案物品种": {
// "page": 1,
// "value": "什么都有"
// },
// "涉案物件核价表-涉案": {
// "page": 19,
// "value": ""
// }
// },
// "prompt": "请判断以下{涉案物件核价表-涉案物品价格-品种规格、单价}各品种规格的数量、单价计算的合计金额是否正确,各品种规格合计金额计算总计金额是否正确,仅回答\"符合\"或\"不符合\",并简要说明理由。",
// "message": "缺少字段: 涉案物件核价表-涉案物品价格-品种规格、单价",
// "temperature": 0.1,
// "selectedFields": []
// }
// }
// ]}
};
});
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -593,7 +593,7 @@ export default function ReviewDetails() {
{activeTab === 'preview' && (
<div className="flex flex-col lg:flex-row space-y-4 lg:space-y-0 lg:space-x-4">
{/* 左侧:文件预览 */}
<div className="w-full lg:w-2/3">
<div className="w-full lg:w-[65%]">
<FilePreview
fileContent={document}
reviewPoints={reviewData.reviewPoints}
@@ -603,7 +603,7 @@ export default function ReviewDetails() {
</div>
{/* 右侧:评查结果 */}
<div className="w-full lg:w-1/3">
<div className="w-full lg:w-[35%]">
<ReviewPointsList
reviewPoints={reviewData.reviewPoints}
statistics={reviewData.statistics}
+14 -7
View File
@@ -209,23 +209,30 @@
.review-points-list {
flex: 1;
overflow-y: auto;
padding: 0;
padding: 2px;
}
.review-point-item {
padding: 20px;
border-bottom: 1px solid var(--border-color);
/* box-sizing: border-box; */
/* margin: 10px; */
padding: 5px 10px 10px 10px;
/* border-bottom: 1px solid var(--border-color); */
cursor: pointer;
transition: background-color 0.3s;
width: 100%;
/* border-radius: 6px; */
}
.review-point-item:hover {
background-color: #f5f5f5;
/* background-color: #f5f5f5; */
/* box-shadow: 10px 10px 10px 3px rgba(250, 173, 20, 0.6); */
transform: translateX(-2px);
box-shadow: 1px 4px 10px rgba(0, 0, 0, 0.08);
}
.review-point-item.active {
background-color: var(--primary-light);
/* background-color: var(--primary-light); */
/* border: 1px solid var(--primary-color); */
}
.review-point-header {
@@ -249,7 +256,7 @@
font-weight: 500;
font-size: 13px;
line-height: 1.3;
margin-right: 8px;
/* margin-right: 8px; */
margin-bottom: 3px;
}