diff --git a/jjb.config.js b/jjb.config.js
index 8e0617e..ee4de0f 100644
--- a/jjb.config.js
+++ b/jjb.config.js
@@ -10,9 +10,9 @@ module.exports = {
javaGitBranch: "dev",
// 本地联调 safetyEval-service(context-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
diff --git a/src/pages/Container/QualApplication/filingVerify.js b/src/pages/Container/QualApplication/filingVerify.js
index 4c22ba5..178420a 100644
--- a/src/pages/Container/QualApplication/filingVerify.js
+++ b/src/pages/Container/QualApplication/filingVerify.js
@@ -16,14 +16,7 @@ function includesSeniorTitle(titleName = "") {
return titleName === "SENIOR";
}
-function includesMidTitle(titleName = "") {
- return titleName === "MIDDLE" || titleName === "SENIOR";
-}
-function isRegisterEngineer(record = {}) {
- const flag = record.registerEngineerFlag;
- return flag === 1 || flag === true || flag === "1";
-}
export function verifyFilingPrerequisites(detail = {}) {
const items = [];
@@ -47,21 +40,17 @@ export function verifyFilingPrerequisites(detail = {}) {
const personnel = detail.personnelList || [];
const total = personnel.length;
- const regEngineerCount = personnel.filter(isRegisterEngineer).length;
- const midTitleCount = personnel.filter((p) =>
- includesMidTitle(p.titleName),
- ).length;
- const seniorTitleCount = personnel.filter((p) =>
- includesSeniorTitle(p.titleName),
- ).length;
+
+ const businessScopeCount = Array.isArray(detail.businessScope) ? detail.businessScope.length : 0;
+ const minPersonnel = 25 + Math.max(businessScopeCount - 1, 0) * 5;
items.push({
key: "personnelStructure",
label: "人员数量与结构",
- desc: "专职技术人员≥25人",
+ desc: `专职技术人员≥${minPersonnel}人`,
passed:
SKIP_PERSONNEL_VERIFY ||
- total >= 25 ,
+ total >= minPersonnel,
});
const twoYearsAgo = new Date();
@@ -79,7 +68,7 @@ export function verifyFilingPrerequisites(detail = {}) {
})
.map((p) => p.userName || p.personName || "");
- const personnelExpPassed = total >= 25 && ratio(withExperience, total) >= 1;
+ const personnelExpPassed = ratio(withExperience, total) >= 1;
items.push({
key: "personnelExp",
label: "人员资历",
diff --git a/src/pages/Container/SafetyEvalBusiness/Progress/index.js b/src/pages/Container/SafetyEvalBusiness/Progress/index.js
index 8135473..c426c0b 100644
--- a/src/pages/Container/SafetyEvalBusiness/Progress/index.js
+++ b/src/pages/Container/SafetyEvalBusiness/Progress/index.js
@@ -18,7 +18,11 @@ import PageLayout from "@cqsjjb/jjb-react-admin-component/PageLayout";
import SearchForm from "@cqsjjb/jjb-react-admin-component/SearchForm";
import ControlWrapper from "@cqsjjb/jjb-react-admin-component/ControlWrapper";
import { NS_SAFETY_EVAL_BUSINESS } from "~/enumerate/namespace";
-import { PROGRESS_STATUS_MAP, NODE_LABELS } from "~/enumerate/constant";
+import {
+ PROGRESS_STATUS_MAP,
+ NODE_LABELS,
+ EVAL_TYPE_MAP,
+} from "~/enumerate/constant";
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { tools } from "@cqsjjb/jjb-common-lib";
import "./index.less";
@@ -87,17 +91,24 @@ const ProjectProgress = (props) => {
};
const renderProgressDots = (nodes) => {
- if (!nodes || nodes.length === 0) return 暂无进度;
+ if (!nodes || nodes.length === 0)
+ return 暂无进度;
const total = nodes.length;
const done = nodes.filter((n) => n.state === 1).length;
return (
{nodes.map((node, idx) => {
- const dotClass = node.state === 1 ? "pp-progress-dot-done" : "pp-progress-dot-wait";
+ const dotClass =
+ node.state === 1
+ ? "pp-progress-dot-done"
+ : "pp-progress-dot-wait";
const name = NODE_LABELS[node.type] || node.type;
return (
-
+
);
@@ -122,8 +133,20 @@ const ProjectProgress = (props) => {
),
},
- { title: "评价类别", dataIndex: "evalTypeName", width: 110 },
- { title: "负责人", dataIndex: "projectLeaderName", width: 100, ellipsis: true },
+ {
+ title: "评价类别",
+ dataIndex: "evalTypeCode",
+ width: 110,
+ render: (_, record) => {
+ return EVAL_TYPE_MAP[record.evalTypeCode];
+ },
+ },
+ {
+ title: "负责人",
+ dataIndex: "projectLeaderName",
+ width: 100,
+ ellipsis: true,
+ },
{
title: "项目进度",
width: 240,
@@ -142,8 +165,15 @@ const ProjectProgress = (props) => {
: `超期${Math.abs(record.remainingDays)}天`;
return (
-
{cfg ? {cfg.text}-{daysText} : {code}}
-
+
+ {cfg ? (
+
+ {cfg.text}-{daysText}
+
+ ) : (
+ {code}
+ )}
+
);
},
@@ -162,14 +192,15 @@ const ProjectProgress = (props) => {
return (
-
当前机构名下评价项目}
+ suffix={
+ 当前机构名下评价项目
+ }
/>
@@ -179,7 +210,9 @@ const ProjectProgress = (props) => {
title="正常项目"
value={statData.normalCount ?? "-"}
valueStyle={{ color: "#52c41a" }}
- suffix={距项目结束日期超过3天}
+ suffix={
+ 距项目结束日期超过3天
+ }
/>
@@ -189,7 +222,9 @@ const ProjectProgress = (props) => {
title="项目临期"
value={statData.nearExpiryCount ?? "-"}
valueStyle={{ color: "#faad14" }}
- suffix={项目结束前3天自动提醒}
+ suffix={
+ 项目结束前3天自动提醒
+ }
/>
@@ -199,14 +234,14 @@ const ProjectProgress = (props) => {
title="项目延期"
value={statData.delayedCount ?? "-"}
valueStyle={{ color: "#ff4d4f" }}
- suffix={已超过项目结束日期}
+ suffix={
+ 已超过项目结束日期
+ }
/>
-
-
{
onReset={handleReset}
/>
-
-
{
>
{currentRecord && (
<>
-
- {currentRecord.projectNo}
- {currentRecord.projectName}
- {currentRecord.customerName}
- {currentRecord.customerContactName}
- {currentRecord.evalTypeName}
- {currentRecord.projectLeaderName}
- {currentRecord.planEndDate}
+
+
+ {currentRecord.projectNo}
+
+
+ {currentRecord.projectName}
+
+
+ {currentRecord.customerName}
+
+
+ {currentRecord.customerContactName}
+
+
+ {currentRecord.evalTypeName}
+
+
+ {currentRecord.projectLeaderName}
+
+
+ {currentRecord.planEndDate}
+
- {currentRecord.remainingDays >= 0 ? `${currentRecord.remainingDays}天` : `已超期${Math.abs(currentRecord.remainingDays)}天`}
+ {currentRecord.remainingDays >= 0
+ ? `${currentRecord.remainingDays}天`
+ : `已超期${Math.abs(currentRecord.remainingDays)}天`}
-
+
{currentRecord.progressStatusName}
@@ -320,4 +380,4 @@ const ProjectProgress = (props) => {
export default Connect(
[NS_SAFETY_EVAL_BUSINESS],
true,
-)(AntdTableFuncControl(ProjectProgress));
\ No newline at end of file
+)(AntdTableFuncControl(ProjectProgress));
diff --git a/src/pages/Container/SafetyEvalBusiness/ProjectFlow/RiskAnalysisContent.js b/src/pages/Container/SafetyEvalBusiness/ProjectFlow/RiskAnalysisContent.js
index 1c01d3d..1cf8b56 100644
--- a/src/pages/Container/SafetyEvalBusiness/ProjectFlow/RiskAnalysisContent.js
+++ b/src/pages/Container/SafetyEvalBusiness/ProjectFlow/RiskAnalysisContent.js
@@ -19,6 +19,7 @@ import {
import dayjs from "dayjs";
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { NS_SAFETY_EVAL_BUSINESS } from "~/enumerate/namespace";
+import {EVAL_TYPE_OPTIONS} from '~/enumerate/constant';
import { QUALIFICATION_INDUSTRY_OPTIONS } from "~/enumerate/enterpriseOptions";
import { tools } from "@cqsjjb/jjb-common-lib";
import AttachmentUpload from "~/components/AttachmentUpload";
@@ -26,11 +27,7 @@ import AttachmentUpload from "~/components/AttachmentUpload";
const { router } = tools;
const { TextArea } = Input;
-const EVAL_TYPE_OPTIONS = [
- { label: "安全预评价", value: "PRE" },
- { label: "安全验收评价", value: "ACCEPT" },
- { label: "安全现状评价", value: "STATUS" },
-];
+
const RiskAnalysisContent = ({ readOnly, ...props }) => {
const [form] = Form.useForm();