37 lines
821 B
C
37 lines
821 B
C
/* @tier easy @module vl @transform validation-util */
|
|
/*
|
|
* vl_cu_0003.c - 정합성 공통 유틸리티 (plain C) [tier=easy]
|
|
*/
|
|
#include "vl_cu_0003.h"
|
|
|
|
#include <string.h>
|
|
|
|
/* 수수료 계산: rate_bp 는 basis point(1bp=0.01%) */
|
|
long vl_cu_0003_fee(long amount, int rate_bp)
|
|
{
|
|
long fee;
|
|
if (amount <= 0 || rate_bp < 0)
|
|
return 0;
|
|
fee = (amount * (long)rate_bp) / 10000L;
|
|
if (fee < 0)
|
|
fee = 0;
|
|
return fee;
|
|
}
|
|
|
|
/* 절사(내림) 단위 정규화 */
|
|
long vl_cu_0003_round_unit(long amount, long unit)
|
|
{
|
|
if (unit <= 0)
|
|
return amount;
|
|
return (amount / unit) * unit;
|
|
}
|
|
|
|
/* 금액 구간 분류: 0=소액 1=일반 2=고액 */
|
|
int vl_cu_0003_classify(long amount)
|
|
{
|
|
if (amount < 10000L)
|
|
return 0;
|
|
if (amount < 1000000L)
|
|
return 1;
|
|
return 2;
|
|
}
|