Compare commits
No commits in common. "bb7399df076d7fcc75e17f8f0390839a04f276e3" and "19efe4ada5b11309ea52cebdc3b26344f55255ad" have entirely different histories.
bb7399df07
...
19efe4ada5
|
|
@ -3,10 +3,9 @@
|
||||||
* 품목별 라우팅/공정에 대한 작업 항목 및 상세 관리
|
* 품목별 라우팅/공정에 대한 작업 항목 및 상세 관리
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { Response } from "express";
|
import { Request, Response } from "express";
|
||||||
import { getPool } from "../database/db";
|
import { getPool } from "../database/db";
|
||||||
import { logger } from "../utils/logger";
|
import { logger } from "../utils/logger";
|
||||||
import { AuthenticatedRequest } from "../types/auth";
|
|
||||||
|
|
||||||
// ============================================================
|
// ============================================================
|
||||||
// 품목/라우팅/공정 조회 (좌측 트리 데이터)
|
// 품목/라우팅/공정 조회 (좌측 트리 데이터)
|
||||||
|
|
@ -16,7 +15,7 @@ import { AuthenticatedRequest } from "../types/auth";
|
||||||
* 라우팅이 있는 품목 목록 조회
|
* 라우팅이 있는 품목 목록 조회
|
||||||
* 요청 쿼리: tableName(품목테이블), nameColumn, codeColumn
|
* 요청 쿼리: tableName(품목테이블), nameColumn, codeColumn
|
||||||
*/
|
*/
|
||||||
export async function getItemsWithRouting(req: AuthenticatedRequest, res: Response) {
|
export async function getItemsWithRouting(req: Request, res: Response) {
|
||||||
try {
|
try {
|
||||||
const companyCode = req.user?.companyCode;
|
const companyCode = req.user?.companyCode;
|
||||||
if (!companyCode) {
|
if (!companyCode) {
|
||||||
|
|
@ -63,7 +62,7 @@ export async function getItemsWithRouting(req: AuthenticatedRequest, res: Respon
|
||||||
/**
|
/**
|
||||||
* 품목별 라우팅 버전 + 공정 목록 조회 (트리 하위 데이터)
|
* 품목별 라우팅 버전 + 공정 목록 조회 (트리 하위 데이터)
|
||||||
*/
|
*/
|
||||||
export async function getRoutingsWithProcesses(req: AuthenticatedRequest, res: Response) {
|
export async function getRoutingsWithProcesses(req: Request, res: Response) {
|
||||||
try {
|
try {
|
||||||
const companyCode = req.user?.companyCode;
|
const companyCode = req.user?.companyCode;
|
||||||
if (!companyCode) {
|
if (!companyCode) {
|
||||||
|
|
@ -134,7 +133,7 @@ export async function getRoutingsWithProcesses(req: AuthenticatedRequest, res: R
|
||||||
/**
|
/**
|
||||||
* 공정별 작업 항목 목록 조회 (phase별 그룹)
|
* 공정별 작업 항목 목록 조회 (phase별 그룹)
|
||||||
*/
|
*/
|
||||||
export async function getWorkItems(req: AuthenticatedRequest, res: Response) {
|
export async function getWorkItems(req: Request, res: Response) {
|
||||||
try {
|
try {
|
||||||
const companyCode = req.user?.companyCode;
|
const companyCode = req.user?.companyCode;
|
||||||
if (!companyCode) {
|
if (!companyCode) {
|
||||||
|
|
@ -181,7 +180,7 @@ export async function getWorkItems(req: AuthenticatedRequest, res: Response) {
|
||||||
/**
|
/**
|
||||||
* 작업 항목 추가
|
* 작업 항목 추가
|
||||||
*/
|
*/
|
||||||
export async function createWorkItem(req: AuthenticatedRequest, res: Response) {
|
export async function createWorkItem(req: Request, res: Response) {
|
||||||
try {
|
try {
|
||||||
const companyCode = req.user?.companyCode;
|
const companyCode = req.user?.companyCode;
|
||||||
const writer = req.user?.userId;
|
const writer = req.user?.userId;
|
||||||
|
|
@ -227,7 +226,7 @@ export async function createWorkItem(req: AuthenticatedRequest, res: Response) {
|
||||||
/**
|
/**
|
||||||
* 작업 항목 수정
|
* 작업 항목 수정
|
||||||
*/
|
*/
|
||||||
export async function updateWorkItem(req: AuthenticatedRequest, res: Response) {
|
export async function updateWorkItem(req: Request, res: Response) {
|
||||||
try {
|
try {
|
||||||
const companyCode = req.user?.companyCode;
|
const companyCode = req.user?.companyCode;
|
||||||
if (!companyCode) {
|
if (!companyCode) {
|
||||||
|
|
@ -272,7 +271,7 @@ export async function updateWorkItem(req: AuthenticatedRequest, res: Response) {
|
||||||
/**
|
/**
|
||||||
* 작업 항목 삭제 (상세도 함께 삭제)
|
* 작업 항목 삭제 (상세도 함께 삭제)
|
||||||
*/
|
*/
|
||||||
export async function deleteWorkItem(req: AuthenticatedRequest, res: Response) {
|
export async function deleteWorkItem(req: Request, res: Response) {
|
||||||
const client = await getPool().connect();
|
const client = await getPool().connect();
|
||||||
try {
|
try {
|
||||||
const companyCode = req.user?.companyCode;
|
const companyCode = req.user?.companyCode;
|
||||||
|
|
@ -320,7 +319,7 @@ export async function deleteWorkItem(req: AuthenticatedRequest, res: Response) {
|
||||||
/**
|
/**
|
||||||
* 작업 항목 상세 목록 조회
|
* 작업 항목 상세 목록 조회
|
||||||
*/
|
*/
|
||||||
export async function getWorkItemDetails(req: AuthenticatedRequest, res: Response) {
|
export async function getWorkItemDetails(req: Request, res: Response) {
|
||||||
try {
|
try {
|
||||||
const companyCode = req.user?.companyCode;
|
const companyCode = req.user?.companyCode;
|
||||||
if (!companyCode) {
|
if (!companyCode) {
|
||||||
|
|
@ -347,7 +346,7 @@ export async function getWorkItemDetails(req: AuthenticatedRequest, res: Respons
|
||||||
/**
|
/**
|
||||||
* 작업 항목 상세 추가
|
* 작업 항목 상세 추가
|
||||||
*/
|
*/
|
||||||
export async function createWorkItemDetail(req: AuthenticatedRequest, res: Response) {
|
export async function createWorkItemDetail(req: Request, res: Response) {
|
||||||
try {
|
try {
|
||||||
const companyCode = req.user?.companyCode;
|
const companyCode = req.user?.companyCode;
|
||||||
const writer = req.user?.userId;
|
const writer = req.user?.userId;
|
||||||
|
|
@ -402,7 +401,7 @@ export async function createWorkItemDetail(req: AuthenticatedRequest, res: Respo
|
||||||
/**
|
/**
|
||||||
* 작업 항목 상세 수정
|
* 작업 항목 상세 수정
|
||||||
*/
|
*/
|
||||||
export async function updateWorkItemDetail(req: AuthenticatedRequest, res: Response) {
|
export async function updateWorkItemDetail(req: Request, res: Response) {
|
||||||
try {
|
try {
|
||||||
const companyCode = req.user?.companyCode;
|
const companyCode = req.user?.companyCode;
|
||||||
if (!companyCode) {
|
if (!companyCode) {
|
||||||
|
|
@ -449,7 +448,7 @@ export async function updateWorkItemDetail(req: AuthenticatedRequest, res: Respo
|
||||||
/**
|
/**
|
||||||
* 작업 항목 상세 삭제
|
* 작업 항목 상세 삭제
|
||||||
*/
|
*/
|
||||||
export async function deleteWorkItemDetail(req: AuthenticatedRequest, res: Response) {
|
export async function deleteWorkItemDetail(req: Request, res: Response) {
|
||||||
try {
|
try {
|
||||||
const companyCode = req.user?.companyCode;
|
const companyCode = req.user?.companyCode;
|
||||||
if (!companyCode) {
|
if (!companyCode) {
|
||||||
|
|
@ -483,7 +482,7 @@ export async function deleteWorkItemDetail(req: AuthenticatedRequest, res: Respo
|
||||||
* 전체 저장: 작업 항목 + 상세를 일괄 저장
|
* 전체 저장: 작업 항목 + 상세를 일괄 저장
|
||||||
* 기존 데이터를 삭제하고 새로 삽입하는 replace 방식
|
* 기존 데이터를 삭제하고 새로 삽입하는 replace 방식
|
||||||
*/
|
*/
|
||||||
export async function saveAll(req: AuthenticatedRequest, res: Response) {
|
export async function saveAll(req: Request, res: Response) {
|
||||||
const client = await getPool().connect();
|
const client = await getPool().connect();
|
||||||
try {
|
try {
|
||||||
const companyCode = req.user?.companyCode;
|
const companyCode = req.user?.companyCode;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue