diff --git a/api/.vscode/launch.json b/api/.vscode/launch.json
index 3b6039f..e0d3400 100644
--- a/api/.vscode/launch.json
+++ b/api/.vscode/launch.json
@@ -16,8 +16,8 @@
"-p 4600",
"-f http://localhost:4600",
// 研发
- // "-g postgres://postgres:123@10.8.30.32:5432/orational_service",
- "-g postgres://postgres:123@10.8.30.166:5432/POMS_2306",
+ "-g postgres://postgres:123@10.8.30.32:5432/orational_service",
+ // "-g postgres://postgres:123@10.8.30.166:5432/POMS_2306",
// 测试
// "-g postgres://FashionAdmin:123456@10.8.30.156:5432/POMS",
"-k 10.8.30.72:29092,10.8.30.73:29092,10.8.30.74:29092",
@@ -26,9 +26,9 @@
"--redisPort 6379",
"--apMergeDeVeAnxinProjectId 1,2,3",
"--axyApiUrl http://127.0.0.1:4100",
- // "--apiEmisUrl http://10.8.30.112:14000",
+ "--apiEmisUrl http://10.8.30.112:14000",
// 测试
- "--apiEmisUrl http://10.8.30.161:1111",
+ // "--apiEmisUrl http://10.8.30.161:1111",
"--apiVcmpUrl http://localhost:4000",
"--apiIotAuth http://localhost:4200",
"--godUrl https://restapi.amap.com/v3",
@@ -48,8 +48,8 @@
// "--clickHousePort 30123",
// "--clickHouseUrl https://clickhouse01.anxinyun.cn/play",
// click 测试
- "--clickHouseUrl http://10.8.30.156",
- "--clickHousePort 8123",
+ "--clickHouseUrl http://10.8.30.161",
+ "--clickHousePort 30123",
// 似乎不能传空 先注释 * 2
// "--clickHouseUser ",
// "--clickHousePassword ",
@@ -61,8 +61,8 @@
// "--clickHouseDataAlarm default",
// "--clickHouseIot iot",
// 测试
- "--clickHouseAnxincloud Anxinyun101",
- "--clickHousePepEmis pepca10",
+ "--clickHouseAnxincloud anxinyun1",
+ "--clickHousePepEmis pepca9",
"--clickHouseProjectManage peppm8",
"--clickHouseVcmp video_access_dev",
"--clickHouseDataAlarm default",
diff --git a/api/app/lib/controllers/means/index.js b/api/app/lib/controllers/means/index.js
index b01692e..9a96528 100644
--- a/api/app/lib/controllers/means/index.js
+++ b/api/app/lib/controllers/means/index.js
@@ -48,9 +48,9 @@ async function fileList (ctx, next) {
const { projectId, type } = ctx.query;
let options = { where: {}, }
- if (projectId) {
- options.where.projectId = projectId
- }
+
+ options.where.projectId = projectId || null
+
if (type) {
options.where.type = type
}
diff --git a/api/app/lib/models/project_folder.js b/api/app/lib/models/project_folder.js
index 000cf4a..8a18f6f 100644
--- a/api/app/lib/models/project_folder.js
+++ b/api/app/lib/models/project_folder.js
@@ -17,7 +17,7 @@ module.exports = dc => {
},
projectId: {
type: DataTypes.INTEGER,
- allowNull: false,
+ allowNull: true,
defaultValue: null,
comment: null,
primaryKey: false,
diff --git a/script/0.26/schema/updata_project_folder.sql b/script/0.26/schema/updata_project_folder.sql
new file mode 100644
index 0000000..8cd1c15
--- /dev/null
+++ b/script/0.26/schema/updata_project_folder.sql
@@ -0,0 +1 @@
+alter table project_folder alter column project_id drop not null;
\ No newline at end of file
diff --git a/web/client/src/sections/means/containers/devOpsStandard.jsx b/web/client/src/sections/means/containers/devOpsStandard.jsx
index 8dc6966..29c79e4 100644
--- a/web/client/src/sections/means/containers/devOpsStandard.jsx
+++ b/web/client/src/sections/means/containers/devOpsStandard.jsx
@@ -39,11 +39,11 @@ const Rest = (props) => {
let data = res.payload.data?.rows?.filter(v => v.pepProjectIsDelete !== 1)?.map(v => ({ pepProjectId: v.id, pepProjectName: v.pepProjectName || v.name }))
setPomsList(data)
setShowPomsList(data)
- setPepProjectId(data[0]?.pepProjectId)
- fileList(data[0]?.pepProjectId)
+
}
}))
-
+ // setPepProjectId(data[0]?.pepProjectId)
+ fileList(null)
}, [])
useEffect(() => {
@@ -54,8 +54,8 @@ const Rest = (props) => {
data = pomsList?.filter(v => v.pepProjectName?.indexOf(projectSearch) != -1)
}
setShowPomsList(data)
- setPepProjectId(data[0]?.pepProjectId)
- fileList(data[0]?.pepProjectId)
+ setPepProjectId(data[0]?.pepProjectId || null)
+ fileList(data[0]?.pepProjectId || null)
setDataSource([])
setFileId('')
setFileSearch('')
@@ -70,8 +70,8 @@ const Rest = (props) => {
data = pomsList
}
setShowPomsList(data)
- setPepProjectId(data[0]?.pepProjectId)
- fileList(data[0]?.pepProjectId)
+ setPepProjectId(data[0]?.pepProjectId || null)
+ fileList(data[0]?.pepProjectId || null)
setDataSource([])
setFileId('')
setFileSearch('')
@@ -152,7 +152,7 @@ const Rest = (props) => {
if (!fileData && !list?.children?.length) {
dispatch(means.delFile(v.id)).then((res => {
if (res.success) {
- fileList(v.projectId)
+ fileList(v.projectId || null)
}
}))
}
@@ -279,6 +279,16 @@ const Rest = (props) => {
setProjectSearch(v)} />
+ {
+ setPepProjectId(null)
+ fileList(null)
+ setDataSource([])
+ setFileId('')
+ }}>
+

+
项目通用
+
{showPomsList?.map(v => {
return {
@@ -309,14 +319,14 @@ const Rest = (props) => {
{
setIsFileModal(false)
setEditData({})
}}
success={() => {
- fileList(pepProjectId)
+ fileList(pepProjectId || null)
}}
/> : ""
}
diff --git a/web/client/src/sections/means/containers/faultInformation.jsx b/web/client/src/sections/means/containers/faultInformation.jsx
index be45dee..d628805 100644
--- a/web/client/src/sections/means/containers/faultInformation.jsx
+++ b/web/client/src/sections/means/containers/faultInformation.jsx
@@ -10,7 +10,7 @@ import './style.less'
const Rest = (props) => {
- const { dispatch, actions, user, qiniu, loading, clientHeight, overallProjectId ,apiRoot} = props
+ const { dispatch, actions, user, qiniu, loading, clientHeight, overallProjectId, apiRoot } = props
const { install, means } = actions
const [pomsList, setPomsList] = useState([]); //项目
const [showPomsList, setShowPomsList] = useState([]); //项目
@@ -39,11 +39,10 @@ const Rest = (props) => {
let data = res.payload.data?.rows?.filter(v => v.pepProjectIsDelete !== 1)?.map(v => ({ pepProjectId: v.id, pepProjectName: v.pepProjectName || v.name }))
setPomsList(data)
setShowPomsList(data)
- setPepProjectId(data[0]?.pepProjectId)
- fileList(data[0]?.pepProjectId)
}
}))
-
+ // setPepProjectId(data[0]?.pepProjectId)
+ fileList(null)
}, [])
useEffect(() => {
@@ -54,8 +53,8 @@ const Rest = (props) => {
data = pomsList?.filter(v => v.pepProjectName?.indexOf(projectSearch) != -1)
}
setShowPomsList(data)
- setPepProjectId(data[0]?.pepProjectId)
- fileList(data[0]?.pepProjectId)
+ setPepProjectId(data[0]?.pepProjectId || null)
+ fileList(data[0]?.pepProjectId || null)
setDataSource([])
setFileId('')
setFileSearch('')
@@ -70,8 +69,8 @@ const Rest = (props) => {
data = pomsList
}
setShowPomsList(data)
- setPepProjectId(data[0]?.pepProjectId)
- fileList(data[0]?.pepProjectId)
+ setPepProjectId(data[0]?.pepProjectId || null)
+ fileList(data[0]?.pepProjectId || null)
setDataSource([])
setFileId('')
setFileSearch('')
@@ -152,7 +151,7 @@ const Rest = (props) => {
if (!fileData && !list?.children?.length) {
dispatch(means.delFile(v.id)).then((res => {
if (res.success) {
- fileList(v.projectId)
+ fileList(v.projectId || null)
}
}))
}
@@ -279,6 +278,16 @@ const Rest = (props) => {
setProjectSearch(v)} />
+ {
+ setPepProjectId(null)
+ fileList(null)
+ setDataSource([])
+ setFileId('')
+ }}>
+

+
项目通用
+
{showPomsList?.map(v => {
return {
@@ -309,14 +318,14 @@ const Rest = (props) => {
{
setIsFileModal(false)
setEditData({})
}}
success={() => {
- fileList(pepProjectId)
+ fileList(pepProjectId || null)
}}
/> : ""
}
@@ -559,7 +568,7 @@ function mapStateToProps (state) {
// socket: webSocket.socket
clientHeight: global.clientHeight,
qiniu: global.qiniu?.domain,
- apiRoot:global.apiRoot
+ apiRoot: global.apiRoot
};
}
diff --git a/web/client/src/sections/means/containers/repairFQA.jsx b/web/client/src/sections/means/containers/repairFQA.jsx
index b58816e..076caa4 100644
--- a/web/client/src/sections/means/containers/repairFQA.jsx
+++ b/web/client/src/sections/means/containers/repairFQA.jsx
@@ -10,11 +10,11 @@ import './style.less'
const Rest = (props) => {
- const { dispatch, actions, user, qiniu, loading, clientHeight, overallProjectId ,apiRoot} = props
+ const { dispatch, actions, user, qiniu, loading, clientHeight, overallProjectId, apiRoot } = props
const { install, means } = actions
const [pomsList, setPomsList] = useState([]); //项目
const [showPomsList, setShowPomsList] = useState([]); //项目
- const [pepProjectId, setPepProjectId] = useState() //项目id
+ const [pepProjectId, setPepProjectId] = useState(null) //项目id
const [projectSearch, setProjectSearch] = useState() //项目搜索
const [isFileModal, setIsFileModal] = useState(false) //添加文件弹窗
const [editData, setEditData] = useState({}) //编辑参数
@@ -39,11 +39,10 @@ const Rest = (props) => {
let data = res.payload.data?.rows?.filter(v => v.pepProjectIsDelete !== 1)?.map(v => ({ pepProjectId: v.id, pepProjectName: v.pepProjectName || v.name }))
setPomsList(data)
setShowPomsList(data)
- setPepProjectId(data[0]?.pepProjectId)
- fileList(data[0]?.pepProjectId)
}
}))
-
+ // setPepProjectId(data[0]?.pepProjectId)
+ fileList(null)
}, [])
useEffect(() => {
@@ -54,8 +53,8 @@ const Rest = (props) => {
data = pomsList?.filter(v => v.pepProjectName?.indexOf(projectSearch) != -1)
}
setShowPomsList(data)
- setPepProjectId(data[0]?.pepProjectId)
- fileList(data[0]?.pepProjectId)
+ setPepProjectId(data[0]?.pepProjectId || null)
+ fileList(data[0]?.pepProjectId || null)
setDataSource([])
setFileId('')
setFileSearch('')
@@ -70,8 +69,8 @@ const Rest = (props) => {
data = pomsList
}
setShowPomsList(data)
- setPepProjectId(data[0]?.pepProjectId)
- fileList(data[0]?.pepProjectId)
+ setPepProjectId(data[0]?.pepProjectId || null)
+ fileList(data[0]?.pepProjectId || null)
setDataSource([])
setFileId('')
setFileSearch('')
@@ -152,7 +151,7 @@ const Rest = (props) => {
if (!fileData && !list?.children?.length) {
dispatch(means.delFile(v.id)).then((res => {
if (res.success) {
- fileList(v.projectId)
+ fileList(v.projectId || null)
}
}))
}
@@ -279,6 +278,17 @@ const Rest = (props) => {
setProjectSearch(v)} />
+ {
+ setPepProjectId(null)
+ fileList(null)
+ setDataSource([])
+ setFileId('')
+ }}>
+

+
项目通用
+
+
{showPomsList?.map(v => {
return {
@@ -309,14 +319,14 @@ const Rest = (props) => {
{
setIsFileModal(false)
setEditData({})
}}
success={() => {
- fileList(pepProjectId)
+ fileList(pepProjectId || null)
}}
/> : ""
}
@@ -559,7 +569,7 @@ function mapStateToProps (state) {
// socket: webSocket.socket
clientHeight: global.clientHeight,
qiniu: global.qiniu?.domain,
- apiRoot:global.apiRoot
+ apiRoot: global.apiRoot
};
}