tangjie 2026-08-04 16:13:57 +08:00
parent 3bb99e7e74
commit 3dd838130e
7 changed files with 54 additions and 35 deletions

View File

@ -10,9 +10,9 @@ module.exports = {
javaGitBranch: "dev",
// 本地联调 safetyEval-servicecontext-path: /safetyEval默认端口 8095
// 可通过环境变量覆盖: SAFETY_EVAL_API_HOST=http://192.168.x.x:8095
API_HOST: "https://gbs-gateway.qhdsafety.com",
// API_HOST: "https://gbs-gateway.qhdsafety.com",
// API_HOST: "http://192.168.0.134",
API_HOST: "http://192.168.0.134",
//API_HOST: "http://192.168.0.150", //太浅
// API_HOST: "http://192.168.0.152",
//API_HOST: "http://192.168.0.103", //huwei

View File

@ -502,6 +502,18 @@ function EquipFormModal({
/>
</Form.Item>
</Col>
<Col span={12}>
<Form.Item name="equipmentValue" label="设备价值" rules={[{ required: true, message: "请输入设备价值" }]}>
<InputNumber
style={{ width: "100%" }}
min={0}
max={99999999}
precision={2}
placeholder="请输入设备价值"
addonAfter="元"
/>
</Form.Item>
</Col>
</Row>
</Form>
</Modal>
@ -576,6 +588,9 @@ function EquipViewModal({ open, currentId, equipInfoGet, onCancel }) {
<Descriptions.Item label="是否双路">
{DUAL_CHANNEL_MAP[info.dualChannelFlag] ?? "-"}
</Descriptions.Item>
<Descriptions.Item label="设备价值">
{info.equipmentValue ? `${info.equipmentValue}` : "-"}
</Descriptions.Item>
</Descriptions>
</Modal>
);

View File

@ -1,4 +1,4 @@
import { DatePicker, Form, Input, Row, Col, Select } from "antd";
import { DatePicker, Form, Input, Row, Col, Select, Image } from "antd";
import { COMMITMENT_PARAGRAPHS } from "../../filingCommitment";
import FilingUpload, { resolveFilingUploadUrl } from "./FilingUpload";
import AttachmentUpload from "~/components/AttachmentUpload";
@ -49,9 +49,8 @@ export default function CommitmentStep({
form,
disabled,
personnelOptions = [],
onSignatureChange,
commitment,
}) {
const legalRepName = Form.useWatch("legalRepName", form);
const filingUnitName = Form.useWatch("filingUnitName", form);
@ -99,7 +98,7 @@ export default function CommitmentStep({
<Row gutter={24}>
<Col xs={24} sm={12} md={8}>
<Form.Item name="signDate" label="签署日期">
<Form.Item name="signDate" label="签署日期" rules={[{ required: !disabled, message: "请选择签署日期" }]}>
<DatePicker style={{ width: "100%" }} placeholder="请选择日期" />
</Form.Item>
</Col>
@ -120,15 +119,16 @@ export default function CommitmentStep({
</Form.Item>
</Col>
</Row>
<AttachmentUpload
extra="请上传一张电子签名图片"
name="legalRepSignatureUrl"
label="电子签名"
disabled={disabled}
maxCount={1}
accept=".png,.jpg,.jpeg,.bmp,.webp"
/>
</Form>
{commitment?.legalRepSignatureUrl&&<>
<h3>电子签名</h3>
<Image
src={commitment?.legalRepSignatureUrl}
alt="电子签名"
style={{ width: 120, height: 120 }}
hidden
/>
</>}
</div>
);
}

View File

@ -43,7 +43,15 @@ export default function EquipmentStep({
marginBottom: 12,
}}
>
<span style={{ fontWeight: 600 }}>申请单位装备清单</span>
<Space>
<span style={{ fontWeight: 600 }}>申请单位装备清单</span>
<span style={{ color: "#666" }}>
设备总价值{(equipmentList || [])
.reduce((sum, item) => sum + (item.equipmentValue || 0), 0)
.toLocaleString()}{" "}
</span>
</Space>
{!disabled && (
<Space size="small">
<Button size="small" onClick={() => setSelectOpen(true)}>
@ -75,6 +83,7 @@ export default function EquipmentStep({
{ title: "装备名称", dataIndex: "deviceName", ellipsis: true },
{ title: "规格型号", dataIndex: "deviceModel", ellipsis: true },
{ title: "生产厂家", dataIndex: "manufacturer" },
{ title: "设备价值(元)", dataIndex: "equipmentValue", width: 150 },
{
title: "计量检定情况",
width: 180,

View File

@ -60,7 +60,7 @@ function OrgEquipmentSelectModalInner(props) {
<Modal
open={open}
title="添加备案装备"
width={800}
width={900}
destroyOnHidden
onCancel={onCancel}
onOk={handleOk}
@ -96,7 +96,8 @@ function OrgEquipmentSelectModalInner(props) {
columns={[
{ title: "装备名称", dataIndex: "deviceName", ellipsis: true },
{ title: "规格型号", dataIndex: "deviceModel",ellipsis: true },
{ title: "生产厂家", dataIndex: "manufacturer" },
{ title: "生产厂家", dataIndex: "manufacturer",ellipsis: true },
{ title: "设备价值", dataIndex: "equipmentValue" },
]}
/>
</Modal>

View File

@ -162,18 +162,7 @@ function FilingFormPage(props) {
setSubmitting(true);
const currentDetail = collectCurrentDetail();
if (!currentDetail?.personnelList?.length) {
message.warning("请至少添加一位备案人员");
setActiveStep("personnel");
setSubmitting(false);
return;
}
if (!currentDetail?.equipmentList?.length) {
message.warning("请至少添加一条装备清单");
setActiveStep("equipment");
setSubmitting(false);
return;
}
const word = mode === "change" ? "Change" : "";
const body = {
[`qualFiling${word}AddCmd`]: {
@ -203,7 +192,13 @@ function FilingFormPage(props) {
delete params.equipmentList;
}
if (params.commitment) {
body[`qualFilingCommitment${word}AddCmd`] = params.commitment;
body[`qualFilingCommitment${word}AddCmd`] = {
...params.commitment,
commitmentContent: JSON.stringify({
filingUnitName: params.filingUnitName || "",
legalRepName: params.commitment.legalRepName || "",
}),
};
delete params.commitment;
}
@ -360,6 +355,7 @@ function FilingFormPage(props) {
<CommitmentStep
form={commitmentForm}
disabled={readOnly}
commitment={detail?.commitment}
personnelOptions={personnelOptions}
/>
),
@ -432,7 +428,7 @@ function FilingFormPage(props) {
)}
{!readOnly && isLastStep && (
<>
{mode !== FILING_FORM_MODE.FILED && mode !== FILING_FORM_MODE.CHANGE && (
{ mode !== FILING_FORM_MODE.CHANGE && (
<Button loading={submitting} onClick={()=>handleVerifyConfirm({isSaveDraft:true})}>
暂存
</Button>

View File

@ -1,10 +1,9 @@
import { fromPageResponse, toPageQuery } from "~/utils/enterpriseInfo/adapter";
import { fromPageResponse } from "~/utils/enterpriseInfo/adapter";
import { apiGet } from "~/utils/enterpriseInfo/http";
import { asId } from "~/utils/enterpriseInfo/idUtil";
export async function fetchOrgPersonnelOptions() {
const query = toPageQuery({ current: 1, size: 500 }, { likeStaffName: "userName" });
const res = await apiGet("/safetyEval/org-personnel/page", query);
const res = await apiGet("/safetyEval/org-personnel/getOrgPersonnel");
const page = fromPageResponse(res);
return (page?.data || []).map((data) => ({
label: data.userName,
@ -42,7 +41,6 @@ export function mergeDetailFromForms(detail, { basicValues, commitmentValues })
commitment: {
...detail.commitment,
...commitmentValues,
legalRepSignatureUrl: Array.isArray(commitmentValues?.legalRepSignatureUrl) ? commitmentValues?.legalRepSignatureUrl[0]?.url : commitmentValues?.legalRepSignatureUrl,
},
};
}