Merge remote-tracking branch 'origin/dev-tmp1' into dev-tmp1

dev-tmp1
huwei 2026-08-11 18:04:27 +08:00
commit b34ea35abd
9 changed files with 37 additions and 17 deletions

View File

@ -116,6 +116,11 @@ export const qualFilingReviewGet = declareRequest(
"Get > /safetyEval/qual-filing-review/page",
);
export const qualFilingCheckNewQual = declareRequest(
"qualFilingLoading",
"Get > /safetyEval/qual-filing/checkNewQual",
);
export const submitQualFiling = declareRequest(
"qualFilingSubmitLoading",
"Post > @/safetyEval/qual-filing/aggregationSaveOrEdit",

View File

@ -418,9 +418,13 @@ function EquipFormModal({
disabled={!industryCode}
allowClear
showSearch
onChange={(value, option)=>{
form.setFieldValue('deviceTypeName', option.label)
}}
filterOption={(input, option) => (option?.label ?? "").toLowerCase().includes(input.toLowerCase())}
/>
</Form.Item>
<Form.Item name='deviceTypeName' />
</Col>
<Col span={12}>
<Form.Item

View File

@ -134,9 +134,7 @@ const RiskCenter = (props) => {
render: (sources) => (
<div style={{ display: "flex", flexWrap: "wrap", gap: 4 }}>
{(sources || []).map((s, i) => (
<span key={i} className="source-pill">
{s}
</span>
<Tag key={i}>{s}</Tag>
))}
</div>
),

View File

@ -18,12 +18,11 @@
.stat-info {
.stat-label {
font-size: 0.82rem;
color: #64748b;
}
.stat-value {
font-size: 1.75rem;
font-size: 28px;
font-weight: 700;
line-height: 1.15;
margin-top: 6px;
@ -42,7 +41,7 @@
}
.stat-hint {
font-size: 0.75rem;
font-size: 12px;
color: #64748b;
margin-top: 4px;
}
@ -55,7 +54,7 @@
display: flex;
align-items: center;
justify-content: center;
font-size: 1.1rem;
font-size: 18px;
flex-shrink: 0;
}
}
@ -66,7 +65,7 @@
border: 1px solid #e2e8f0;
border-radius: 8px;
padding: 8px 14px;
font-size: 0.82rem;
font-size: 13px;
color: #64748b;
margin-bottom: 10px;
display: flex;
@ -88,7 +87,7 @@
border-radius: 999px;
background: #f1f5f9;
color: #475569;
font-size: 0.68rem;
font-size: 11px;
white-space: nowrap;
}
@ -101,7 +100,7 @@
.risk-toolbar-left {
.risk-toolbar-desc {
font-size: 0.85rem;
font-size: 14px;
color: #64748b;
}
}

View File

@ -1,4 +1,4 @@
import { Button, Form, Tag, Table, Typography, Select, Modal, Empty } from "antd";
import { Button, Form, Tag, Table, Typography, Select, Modal, Empty, message } from "antd";
import SearchForm from "@cqsjjb/jjb-react-admin-component/SearchForm";
import ControlWrapper from "@cqsjjb/jjb-react-admin-component/ControlWrapper";
import TableAction from "@cqsjjb/jjb-react-admin-component/TableAction";
@ -37,6 +37,7 @@ export default function FilingListTable({
history,
qualFiling,
qualFilingReviewGet,
qualFilingCheckNewQual,
}) {
const statusOptions = getFilingStatusOptions(mode);
@ -84,6 +85,19 @@ export default function FilingListTable({
setReviewList([]);
};
const handleCreateCheck = async () => {
try {
const res = await qualFilingCheckNewQual();
if (res?.data === true) {
onCreate();
} else {
message.warning(res?.message || "已经申请或备案了资质,请勿重复操作");
}
} catch {
// ignore
}
};
const columns = [
{
title: "备案属地",
@ -214,7 +228,7 @@ export default function FilingListTable({
}
extra={
onCreate && (
<Button type="primary" onClick={onCreate}>
<Button type="primary" loading={qualFilingLoading} onClick={handleCreateCheck}>
{createLabel}
</Button>
)

View File

@ -340,7 +340,7 @@ const FilingTabs = ({
<ReadonlyField label="信息公开网址 *" value={detail.infoDisclosureUrl} />
<div style={fieldStyle}>
<label style={labelStyle}>资质证书编号 *</label>
<Input readOnly value={detail.qualCertNo || "-"} style={inputStyle} />
<Input readOnly value={detail.filingNo || "-"} style={inputStyle} />
<span style={{ color: "#8b95a5", fontSize: "0.72rem" }}>
初次申请无需填写已有资质备案时填写
</span>

View File

@ -92,7 +92,7 @@ const QualConfirm = (props) => {
},
{ title: "机构名称", dataIndex: "filingUnitName", width: 220, ellipsis: true },
{ title: "机构类型", dataIndex: "filingUnitTypeName", width: 100 },
{ title: "证书编号", dataIndex: "qualCertNo", width: 140, ellipsis: true },
{ title: "证书编号", dataIndex: "filingNo", width: 140, ellipsis: true },
{
title: "安全评价业务范围",
dataIndex: "businessScope",

View File

@ -115,7 +115,7 @@ const QualReview = (props) => {
},
{ title: "机构名称", dataIndex: "filingUnitName", width: 220, ellipsis: true },
{ title: "机构类型", dataIndex: "filingUnitTypeName", width: 100 },
{ title: "证书编号", dataIndex: "qualCertNo", width: 140, ellipsis: true },
{ title: "证书编号", dataIndex: "filingNo", width: 140, ellipsis: true },
{
title: "安全评价业务范围",
dataIndex: "businessScope",

View File

@ -159,7 +159,7 @@ const ReviewModal = (props) => {
</div>
</div>
<div style={statStyle}>
<div style={statLabelStyle}>条件未满足</div>
<div style={statLabelStyle}>风险提醒</div>
<div style={{ fontSize: "1.1rem", fontWeight: 700, color: "#d97706" }}>
{legalWarnCount}
</div>
@ -198,7 +198,7 @@ const ReviewModal = (props) => {
name="reviewOpinion"
rules={[{ required: true, message: "请输入综合审核意见" }]}
>
<TextArea rows={3} placeholder="请输入综合审核意见..." />
<TextArea rows={3} placeholder="请输入综合审核意见..." maxLength={200} />
</Form.Item>
</Form>
</Modal>