feat
parent
5da924adac
commit
6156138a55
|
|
@ -12,8 +12,8 @@ module.exports = {
|
||||||
// 可通过环境变量覆盖: SAFETY_EVAL_API_HOST=http://192.168.x.x: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.152",
|
//API_HOST: "http://192.168.0.152",
|
||||||
//API_HOST: "http://192.168.0.150", //太浅
|
API_HOST: "http://192.168.0.150", //太浅
|
||||||
// API_HOST: "http://192.168.0.152",
|
// API_HOST: "http://192.168.0.152",
|
||||||
//API_HOST: "http://192.168.0.103", //huwei
|
//API_HOST: "http://192.168.0.103", //huwei
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -22,6 +22,7 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime";
|
||||||
import { tools } from "@cqsjjb/jjb-common-lib";
|
import { tools } from "@cqsjjb/jjb-common-lib";
|
||||||
|
|
||||||
import AttachmentUpload from "~/components/AttachmentUpload";
|
import AttachmentUpload from "~/components/AttachmentUpload";
|
||||||
|
import PreviewUrlButton from "~/components/PreviewUrlButton";
|
||||||
|
|
||||||
const { router } = tools;
|
const { router } = tools;
|
||||||
|
|
||||||
|
|
@ -265,13 +266,7 @@ const ProjectDocLibrary = (props) => {
|
||||||
title: "操作",
|
title: "操作",
|
||||||
width: 100,
|
width: 100,
|
||||||
render: (_, record) => (
|
render: (_, record) => (
|
||||||
<Button
|
<PreviewUrlButton url={record.project_doc_url} />
|
||||||
type="link"
|
|
||||||
size="small"
|
|
||||||
onClick={() => window.open(record.project_doc_url)}
|
|
||||||
>
|
|
||||||
预览
|
|
||||||
</Button>
|
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
]}
|
]}
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,7 @@ const ControlContent = (props) => {
|
||||||
|
|
||||||
// 过程控制审核
|
// 过程控制审核
|
||||||
const [rows, setRows] = useState([]);
|
const [rows, setRows] = useState([]);
|
||||||
const [opinionContent, setOpinionContent] = useState("");
|
|
||||||
|
|
||||||
// 项目归档
|
// 项目归档
|
||||||
const [files, setFiles] = useState([]);
|
const [files, setFiles] = useState([]);
|
||||||
|
|
@ -34,7 +34,7 @@ const ControlContent = (props) => {
|
||||||
const fetchDetail = () => {
|
const fetchDetail = () => {
|
||||||
props.evalProcessControlDetail({ projectId }).then((res) => {
|
props.evalProcessControlDetail({ projectId }).then((res) => {
|
||||||
if (res?.success) {
|
if (res?.success) {
|
||||||
setOpinionContent(res?.data?.opinionContent);
|
|
||||||
if (res?.data?.signTaskPersonCo) {
|
if (res?.data?.signTaskPersonCo) {
|
||||||
setSelectPeople({
|
setSelectPeople({
|
||||||
value: res?.data?.signTaskPersonCo?.signerPersonnelId,
|
value: res?.data?.signTaskPersonCo?.signerPersonnelId,
|
||||||
|
|
@ -65,8 +65,10 @@ const ControlContent = (props) => {
|
||||||
})),
|
})),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (processControl?.opinionContent) {
|
if (processControl?.opinionContent) {
|
||||||
setOpinionContent(processControl.opinionContent);
|
setApprovalOpinion(processControl.opinionContent);
|
||||||
|
|
||||||
}
|
}
|
||||||
}, [processControlDetail]);
|
}, [processControlDetail]);
|
||||||
|
|
||||||
|
|
@ -93,11 +95,15 @@ const ControlContent = (props) => {
|
||||||
// 过程控制签字提交(confirm)
|
// 过程控制签字提交(confirm)
|
||||||
const handleConfirm = async (resultCode) => {
|
const handleConfirm = async (resultCode) => {
|
||||||
if (!projectId) return;
|
if (!projectId) return;
|
||||||
|
if(!rows.every((r) => r.reviewConclusion)){
|
||||||
|
message.error("请填写所有核查项的结果");
|
||||||
|
return;
|
||||||
|
}
|
||||||
const payload = {
|
const payload = {
|
||||||
id: processControl?.id,
|
id: processControl?.id,
|
||||||
projectId,
|
projectId,
|
||||||
resultCode,
|
resultCode,
|
||||||
opinionContent,
|
opinionContent: approvalOpinion,
|
||||||
reviewItems: rows.map((r) => ({
|
reviewItems: rows.map((r) => ({
|
||||||
bizType: "eval_process_control",
|
bizType: "eval_process_control",
|
||||||
bizId: processControl?.id,
|
bizId: processControl?.id,
|
||||||
|
|
@ -151,12 +157,14 @@ const ControlContent = (props) => {
|
||||||
{
|
{
|
||||||
title: "结果",
|
title: "结果",
|
||||||
dataIndex: "reviewConclusion",
|
dataIndex: "reviewConclusion",
|
||||||
width: 120,
|
width: 150,
|
||||||
render: (val, _, idx) => (
|
render: (val, _, idx) => (
|
||||||
<Select
|
<Select
|
||||||
value={val}
|
value={val}
|
||||||
size="small"
|
size="small"
|
||||||
style={{ width: 100 }}
|
style={{ width: 130 }}
|
||||||
|
allowClear
|
||||||
|
placeholder="请选择结果"
|
||||||
onChange={(v) => updateRow(idx, "reviewConclusion", v)}
|
onChange={(v) => updateRow(idx, "reviewConclusion", v)}
|
||||||
>
|
>
|
||||||
<Select.Option value="conform_to">符合</Select.Option>
|
<Select.Option value="conform_to">符合</Select.Option>
|
||||||
|
|
|
||||||
|
|
@ -79,7 +79,8 @@ const InternalReviewContent = (props) => {
|
||||||
|
|
||||||
const handleAssign = async () => {
|
const handleAssign = async () => {
|
||||||
if (!projectId) return;
|
if (!projectId) return;
|
||||||
await handleConfirm("not_passed");
|
const result= await handleConfirm("not_passed");
|
||||||
|
if(!result) return;
|
||||||
const res = await props.evalInternalReviewAssign({
|
const res = await props.evalInternalReviewAssign({
|
||||||
projectId,
|
projectId,
|
||||||
signTaskPersonCmd: {
|
signTaskPersonCmd: {
|
||||||
|
|
@ -91,10 +92,15 @@ const InternalReviewContent = (props) => {
|
||||||
});
|
});
|
||||||
if (res?.success !== false) {
|
if (res?.success !== false) {
|
||||||
message.success("已下发签字任务");
|
message.success("已下发签字任务");
|
||||||
|
fetchDetail()
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
const handleConfirm = async (resultCode) => {
|
const handleConfirm = async (resultCode) => {
|
||||||
|
if(!rows.every((r) => r.reviewConclusion)){
|
||||||
|
message.error("请填写审核结论");
|
||||||
|
return;
|
||||||
|
}
|
||||||
return new Promise(async (resolve, reject) => {
|
return new Promise(async (resolve, reject) => {
|
||||||
if (!projectId) return;
|
if (!projectId) return;
|
||||||
const payload = {
|
const payload = {
|
||||||
|
|
@ -121,7 +127,7 @@ const InternalReviewContent = (props) => {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
reject(res);
|
reject();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -76,7 +76,8 @@ const TechnicalReviewContent = (props) => {
|
||||||
|
|
||||||
const handleAssign = async () => {
|
const handleAssign = async () => {
|
||||||
if (!projectId) return;
|
if (!projectId) return;
|
||||||
await handleConfirm("2");
|
const result= await handleConfirm("not_passed");
|
||||||
|
if(!result) return;
|
||||||
const res = await props.evalTechReviewAssign({
|
const res = await props.evalTechReviewAssign({
|
||||||
projectId,
|
projectId,
|
||||||
signTaskPersonCmd: {
|
signTaskPersonCmd: {
|
||||||
|
|
@ -88,10 +89,15 @@ const TechnicalReviewContent = (props) => {
|
||||||
});
|
});
|
||||||
if (res?.success !== false) {
|
if (res?.success !== false) {
|
||||||
message.success("已下发签字任务");
|
message.success("已下发签字任务");
|
||||||
|
fetchDetail()
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
const handleConfirm = async (resultCode) => {
|
const handleConfirm = async (resultCode) => {
|
||||||
|
if (!rows.every((r) => r.reviewConclusion)) {
|
||||||
|
message.error("请填写审核结论");
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (!projectId) return;
|
if (!projectId) return;
|
||||||
return new Promise(async (resolve, reject) => {
|
return new Promise(async (resolve, reject) => {
|
||||||
const payload = {
|
const payload = {
|
||||||
|
|
@ -113,13 +119,13 @@ const TechnicalReviewContent = (props) => {
|
||||||
if (res?.success !== false) {
|
if (res?.success !== false) {
|
||||||
resolve(res);
|
resolve(res);
|
||||||
message.success(
|
message.success(
|
||||||
resultCode === "1" ? "已确认技审并提交过程控制" : "已保存",
|
resultCode === "passed" ? "已确认技审并提交过程控制" : "已保存",
|
||||||
);
|
);
|
||||||
if (resultCode === "1") {
|
if (resultCode === "passed") {
|
||||||
props.getDetail?.();
|
props.getDetail?.();
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
reject(res);
|
reject();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
@ -272,13 +278,13 @@ const TechnicalReviewContent = (props) => {
|
||||||
<Flex justify="flex-end" gap={8} style={{ marginTop: 16 }}>
|
<Flex justify="flex-end" gap={8} style={{ marginTop: 16 }}>
|
||||||
<Button
|
<Button
|
||||||
loading={props.safetyEvalBusiness?.techReviewConfirmLoading}
|
loading={props.safetyEvalBusiness?.techReviewConfirmLoading}
|
||||||
onClick={() => handleConfirm("2")}
|
onClick={() => handleConfirm("not_passed")}
|
||||||
>
|
>
|
||||||
保存意见
|
保存意见
|
||||||
</Button>
|
</Button>
|
||||||
<Button
|
<Button
|
||||||
type="primary"
|
type="primary"
|
||||||
onClick={() => handleConfirm("1")}
|
onClick={() => handleConfirm("passed")}
|
||||||
loading={props.safetyEvalBusiness?.techReviewConfirmLoading}
|
loading={props.safetyEvalBusiness?.techReviewConfirmLoading}
|
||||||
>
|
>
|
||||||
确认技审并提交过程控制
|
确认技审并提交过程控制
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue