feat: pop-card-list 업그레이드 — cart-outbound 삭제 + 프리셋 + 검사 연동 + UI 수정
- pop-cart-outbound 컴포넌트 완전 삭제 (4개 화면 pop-card-list로 교체 완료) - 레지스트리/팔레트/타입에서 cart-outbound 참조 제거 - PopRenderer 뷰모드 label prop 제거 (컴포넌트 라벨 노출 버그 수정) - dataFetcher SUM/AVG varchar CAST 처리 (Dashboard 500 수정) - PopCardListConfig 장바구니 목록모드 섹션 프리셋 사용 시 숨김 - types.ts에 CardListPresetMode, CardListInspectionConfig 타입 추가
This commit is contained in:
@@ -148,12 +148,17 @@ export function buildAggregationSQL(config: DataSourceConfig): string {
|
||||
: "";
|
||||
|
||||
// COUNT는 컬럼 없으면 COUNT(*), 나머지는 컬럼 필수
|
||||
// SUM/AVG 등 숫자 집계 시 varchar 컬럼 대응: CAST AS NUMERIC 적용
|
||||
const needsCast = ["SUM", "AVG"].includes(aggType);
|
||||
if (!aggCol) {
|
||||
selectClause = aggType === "COUNT"
|
||||
? "COUNT(*) as value"
|
||||
: `${aggType}(${tableName}.*) as value`;
|
||||
} else {
|
||||
selectClause = `${aggType}(${aggCol}) as value`;
|
||||
const colExpr = needsCast
|
||||
? `CAST(NULLIF(${aggCol}, '') AS NUMERIC)`
|
||||
: aggCol;
|
||||
selectClause = `${aggType}(${colExpr}) as value`;
|
||||
}
|
||||
|
||||
// GROUP BY가 있으면 해당 컬럼도 SELECT에 포함
|
||||
|
||||
Reference in New Issue
Block a user