테이블 노드 위치정보 저장 구현
This commit is contained in:
@@ -17,9 +17,17 @@ export const getDataflowDiagrams = async (req: Request, res: Response) => {
|
||||
const page = parseInt(req.query.page as string) || 1;
|
||||
const size = parseInt(req.query.size as string) || 20;
|
||||
const searchTerm = req.query.searchTerm as string;
|
||||
const companyCode = (req.query.companyCode as string) || req.headers["x-company-code"] as string || "*";
|
||||
const companyCode =
|
||||
(req.query.companyCode as string) ||
|
||||
(req.headers["x-company-code"] as string) ||
|
||||
"*";
|
||||
|
||||
const result = await getDataflowDiagramsService(companyCode, page, size, searchTerm);
|
||||
const result = await getDataflowDiagramsService(
|
||||
companyCode,
|
||||
page,
|
||||
size,
|
||||
searchTerm
|
||||
);
|
||||
|
||||
res.json({
|
||||
success: true,
|
||||
@@ -41,7 +49,10 @@ export const getDataflowDiagrams = async (req: Request, res: Response) => {
|
||||
export const getDataflowDiagramById = async (req: Request, res: Response) => {
|
||||
try {
|
||||
const diagramId = parseInt(req.params.diagramId);
|
||||
const companyCode = (req.query.companyCode as string) || req.headers["x-company-code"] as string || "*";
|
||||
const companyCode =
|
||||
(req.query.companyCode as string) ||
|
||||
(req.headers["x-company-code"] as string) ||
|
||||
"*";
|
||||
|
||||
if (isNaN(diagramId)) {
|
||||
return res.status(400).json({
|
||||
@@ -78,9 +89,24 @@ export const getDataflowDiagramById = async (req: Request, res: Response) => {
|
||||
*/
|
||||
export const createDataflowDiagram = async (req: Request, res: Response) => {
|
||||
try {
|
||||
const { diagram_name, relationships, company_code, created_by, updated_by } = req.body;
|
||||
const companyCode = company_code || (req.query.companyCode as string) || req.headers["x-company-code"] as string || "*";
|
||||
const userId = created_by || updated_by || req.headers["x-user-id"] as string || "SYSTEM";
|
||||
const {
|
||||
diagram_name,
|
||||
relationships,
|
||||
node_positions,
|
||||
company_code,
|
||||
created_by,
|
||||
updated_by,
|
||||
} = req.body;
|
||||
const companyCode =
|
||||
company_code ||
|
||||
(req.query.companyCode as string) ||
|
||||
(req.headers["x-company-code"] as string) ||
|
||||
"*";
|
||||
const userId =
|
||||
created_by ||
|
||||
updated_by ||
|
||||
(req.headers["x-user-id"] as string) ||
|
||||
"SYSTEM";
|
||||
|
||||
if (!diagram_name || !relationships) {
|
||||
return res.status(400).json({
|
||||
@@ -92,6 +118,7 @@ export const createDataflowDiagram = async (req: Request, res: Response) => {
|
||||
const newDiagram = await createDataflowDiagramService({
|
||||
diagram_name,
|
||||
relationships,
|
||||
node_positions,
|
||||
company_code: companyCode,
|
||||
created_by: userId,
|
||||
updated_by: userId,
|
||||
@@ -104,7 +131,7 @@ export const createDataflowDiagram = async (req: Request, res: Response) => {
|
||||
});
|
||||
} catch (error) {
|
||||
logger.error("관계도 생성 실패:", error);
|
||||
|
||||
|
||||
// 중복 이름 에러 처리
|
||||
if (error instanceof Error && error.message.includes("unique constraint")) {
|
||||
return res.status(409).json({
|
||||
@@ -128,8 +155,12 @@ export const updateDataflowDiagram = async (req: Request, res: Response) => {
|
||||
try {
|
||||
const diagramId = parseInt(req.params.diagramId);
|
||||
const { updated_by } = req.body;
|
||||
const companyCode = (req.query.companyCode as string) || req.headers["x-company-code"] as string || "*";
|
||||
const userId = updated_by || req.headers["x-user-id"] as string || "SYSTEM";
|
||||
const companyCode =
|
||||
(req.query.companyCode as string) ||
|
||||
(req.headers["x-company-code"] as string) ||
|
||||
"*";
|
||||
const userId =
|
||||
updated_by || (req.headers["x-user-id"] as string) || "SYSTEM";
|
||||
|
||||
if (isNaN(diagramId)) {
|
||||
return res.status(400).json({
|
||||
@@ -143,7 +174,11 @@ export const updateDataflowDiagram = async (req: Request, res: Response) => {
|
||||
updated_by: userId,
|
||||
};
|
||||
|
||||
const updatedDiagram = await updateDataflowDiagramService(diagramId, updateData, companyCode);
|
||||
const updatedDiagram = await updateDataflowDiagramService(
|
||||
diagramId,
|
||||
updateData,
|
||||
companyCode
|
||||
);
|
||||
|
||||
if (!updatedDiagram) {
|
||||
return res.status(404).json({
|
||||
@@ -173,7 +208,10 @@ export const updateDataflowDiagram = async (req: Request, res: Response) => {
|
||||
export const deleteDataflowDiagram = async (req: Request, res: Response) => {
|
||||
try {
|
||||
const diagramId = parseInt(req.params.diagramId);
|
||||
const companyCode = (req.query.companyCode as string) || req.headers["x-company-code"] as string || "*";
|
||||
const companyCode =
|
||||
(req.query.companyCode as string) ||
|
||||
(req.headers["x-company-code"] as string) ||
|
||||
"*";
|
||||
|
||||
if (isNaN(diagramId)) {
|
||||
return res.status(400).json({
|
||||
@@ -211,9 +249,18 @@ export const deleteDataflowDiagram = async (req: Request, res: Response) => {
|
||||
export const copyDataflowDiagram = async (req: Request, res: Response) => {
|
||||
try {
|
||||
const diagramId = parseInt(req.params.diagramId);
|
||||
const { new_name, companyCode: bodyCompanyCode, userId: bodyUserId } = req.body;
|
||||
const companyCode = bodyCompanyCode || (req.query.companyCode as string) || req.headers["x-company-code"] as string || "*";
|
||||
const userId = bodyUserId || req.headers["x-user-id"] as string || "SYSTEM";
|
||||
const {
|
||||
new_name,
|
||||
companyCode: bodyCompanyCode,
|
||||
userId: bodyUserId,
|
||||
} = req.body;
|
||||
const companyCode =
|
||||
bodyCompanyCode ||
|
||||
(req.query.companyCode as string) ||
|
||||
(req.headers["x-company-code"] as string) ||
|
||||
"*";
|
||||
const userId =
|
||||
bodyUserId || (req.headers["x-user-id"] as string) || "SYSTEM";
|
||||
|
||||
if (isNaN(diagramId)) {
|
||||
return res.status(400).json({
|
||||
@@ -222,7 +269,12 @@ export const copyDataflowDiagram = async (req: Request, res: Response) => {
|
||||
});
|
||||
}
|
||||
|
||||
const copiedDiagram = await copyDataflowDiagramService(diagramId, companyCode, new_name, userId);
|
||||
const copiedDiagram = await copyDataflowDiagramService(
|
||||
diagramId,
|
||||
companyCode,
|
||||
new_name,
|
||||
userId
|
||||
);
|
||||
|
||||
if (!copiedDiagram) {
|
||||
return res.status(404).json({
|
||||
|
||||
Reference in New Issue
Block a user