기준정보관리의 일반거래처 관리

This commit is contained in:
leeheejin
2025-11-24 14:17:03 +09:00
parent 63e07e03d0
commit 52c089ffc5
17 changed files with 67331 additions and 1170 deletions

View File

@@ -8778,14 +8778,14 @@ SELECT
<select id="getClientMngList" parameterType="map" resultType="map">
SELECT
ROW_NUMBER() OVER (ORDER BY CLIENT_CD) AS RNUM,
OBJID, COMP_CODE, CLIENT_CD, CLIENT_NM, CLIENT_NMK, CLIENT_TYPE,
BUS_REG_NO, RESIDENT_NO, CEO_NM, BUS_TYPE, BUS_ITEM,
POST_NO, ADDR1, ADDR2, TEL_NO, FAX_NO, HOMEPAGE, EMAIL,
OBJID, COMP_CODE, CLIENT_CD, CLIENT_NM, TR_NMK, CLIENT_NMK, ATTR_NMK, CLIENT_TYPE,
BUS_REG_NO, RESIDENT_NO, CEO_NM, CEO_NMK, BUS_TYPE, BUS_ITEM,
POST_NO, ADDR1, ADDR2, ADDR_FG, TEL_NO, FAX_NO, HOMEPAGE, EMAIL, LIQ_RS, TR_FG,
COUNTRY_NM, CLASS_CD, CLASS_NM, GRADE_CD, GRADE_NM,
COLLECT_CLIENT_CD, COLLECT_CLIENT_NM, REGION_CD, REGION_NM,
TRADE_START_DT, TRADE_END_DT, USE_YN,
CONTRACT_START_DT, CONTRACT_END_DT, TRADE_TYPE,
DISCOUNT_RATE, CONTRACT_AMT, MONTHLY_FEE, PAYMENT_TERM,
DISCOUNT_RATE, CONTRACT_AMT, MONTHLY_FEE, PAYMENT_TERM, RCP_TP,
CREDIT_LIMIT, LIMIT_RETURN_DAY,
PUR_BANK_CD, PUR_BANK_NM, PUR_BRANCH_NM, PUR_ACCOUNT_NO,
PUR_ACCOUNT_HOLDER, PUR_PAY_PLAN, PUR_SLIP_TYPE, PUR_TAX_TYPE,
@@ -8795,12 +8795,13 @@ SELECT
VENDOR_TEL, VENDOR_EXT, VENDOR_MOBILE, VENDOR_EMAIL,
MGR_DEPT_CD, MGR_DEPT_NM, MGR_POSITION, MGR_DUTY,
MGR_EMP_CD, MGR_EMP_NM, MGR_TEL, MGR_EXT, MGR_MOBILE, MGR_EMAIL, MGR_REMARK,
REC_REMARK, REC_POST_NO, REC_ADDR1, REC_ADDR2, REC_TEL, REC_FAX,
PROJECT_CD, PROJECT_NM, EXT_DATA_CD, E_TAX_YN,
REC_REMARK, REC_POST_NO, REC_ADDR1, REC_ADDR2, REC_ADDR_FG, REC_TEL, REC_FAX,
PROJECT_CD, PROJECT_NM, PJT_NMK, EXT_DATA_CD, E_TAX_YN,
UNIT_REPORT_CLIENT, SUB_BUS_NO, PROCUREMENT_YN,
PLAN_DAY_TYPE, PLAN_DAY, PURPOSE_TYPE, FOR_YN,
USER_DEF_DC1, USER_DEF_DC2, USE_FG, USE_NM,
USER_DEF_DC1, USER_DEF_DC2,
REGION_CD, REGION_NM, USE_FG, USE_NM,
BIZCON_FG, BIZCON_NM, SHIP_TP, SHIP_NM,
PLAN_DAY_TYPE, PLAN_DAY, PURPOSE_TYPE, FOR_YN,
CHECK_DATA, CHECK_STATE, CHECK_ORDER, FIXED_ORDER,
INSERT_ID, INSERT_IP, TO_CHAR(INSERT_DT, 'YYYY-MM-DD HH24:MI:SS') AS INSERT_DT,
MODIFY_ID, MODIFY_IP, TO_CHAR(MODIFY_DT, 'YYYY-MM-DD HH24:MI:SS') AS MODIFY_DT
@@ -8827,14 +8828,14 @@ SELECT
<!-- 2. 일반거래처 상세 조회 -->
<select id="getClientMngListInfo" parameterType="map" resultType="map">
SELECT
OBJID, COMP_CODE, CLIENT_CD, CLIENT_NM, CLIENT_NMK, CLIENT_TYPE,
BUS_REG_NO, RESIDENT_NO, CEO_NM, BUS_TYPE, BUS_ITEM,
POST_NO, ADDR1, ADDR2, TEL_NO, FAX_NO, HOMEPAGE, EMAIL,
OBJID, COMP_CODE, CLIENT_CD, CLIENT_NM, TR_NMK, CLIENT_NMK, ATTR_NMK, CLIENT_TYPE,
BUS_REG_NO, RESIDENT_NO, CEO_NM, CEO_NMK, BUS_TYPE, BUS_ITEM,
POST_NO, ADDR1, ADDR2, ADDR_FG, TEL_NO, FAX_NO, HOMEPAGE, EMAIL, LIQ_RS, TR_FG,
COUNTRY_NM, CLASS_CD, CLASS_NM, GRADE_CD, GRADE_NM,
COLLECT_CLIENT_CD, COLLECT_CLIENT_NM, REGION_CD, REGION_NM,
TRADE_START_DT, TRADE_END_DT, USE_YN,
CONTRACT_START_DT, CONTRACT_END_DT, TRADE_TYPE,
DISCOUNT_RATE, CONTRACT_AMT, MONTHLY_FEE, PAYMENT_TERM,
DISCOUNT_RATE, CONTRACT_AMT, MONTHLY_FEE, PAYMENT_TERM, RCP_TP,
CREDIT_LIMIT, LIMIT_RETURN_DAY,
PUR_BANK_CD, PUR_BANK_NM, PUR_BRANCH_NM, PUR_ACCOUNT_NO,
PUR_ACCOUNT_HOLDER, PUR_PAY_PLAN, PUR_SLIP_TYPE, PUR_TAX_TYPE,
@@ -8844,12 +8845,13 @@ SELECT
VENDOR_TEL, VENDOR_EXT, VENDOR_MOBILE, VENDOR_EMAIL,
MGR_DEPT_CD, MGR_DEPT_NM, MGR_POSITION, MGR_DUTY,
MGR_EMP_CD, MGR_EMP_NM, MGR_TEL, MGR_EXT, MGR_MOBILE, MGR_EMAIL, MGR_REMARK,
REC_REMARK, REC_POST_NO, REC_ADDR1, REC_ADDR2, REC_TEL, REC_FAX,
PROJECT_CD, PROJECT_NM, EXT_DATA_CD, E_TAX_YN,
REC_REMARK, REC_POST_NO, REC_ADDR1, REC_ADDR2, REC_ADDR_FG, REC_TEL, REC_FAX,
PROJECT_CD, PROJECT_NM, PJT_NMK, EXT_DATA_CD, E_TAX_YN,
UNIT_REPORT_CLIENT, SUB_BUS_NO, PROCUREMENT_YN,
PLAN_DAY_TYPE, PLAN_DAY, PURPOSE_TYPE, FOR_YN,
USER_DEF_DC1, USER_DEF_DC2, USE_FG, USE_NM,
USER_DEF_DC1, USER_DEF_DC2,
REGION_CD, REGION_NM, USE_FG, USE_NM,
BIZCON_FG, BIZCON_NM, SHIP_TP, SHIP_NM,
PLAN_DAY_TYPE, PLAN_DAY, PURPOSE_TYPE, FOR_YN,
CHECK_DATA, CHECK_STATE, CHECK_ORDER, FIXED_ORDER,
INSERT_ID, INSERT_IP, TO_CHAR(INSERT_DT, 'YYYY-MM-DD HH24:MI:SS') AS INSERT_DT,
MODIFY_ID, MODIFY_IP, TO_CHAR(MODIFY_DT, 'YYYY-MM-DD HH24:MI:SS') AS MODIFY_DT
@@ -8862,25 +8864,25 @@ SELECT
SELECT *
FROM CLIENT_MNG
WHERE 1=1
<if test="objid != null and objid != ''">
AND OBJID != #{objid}::numeric
<if test="OBJID != null and OBJID != ''">
AND OBJID != #{OBJID}::numeric
</if>
<if test="client_cd != null and client_cd != ''">
AND TRIM(UPPER(CLIENT_CD)) = TRIM(UPPER(#{client_cd}))
<if test="CLIENT_CD != null and CLIENT_CD != ''">
AND TRIM(UPPER(CLIENT_CD)) = TRIM(UPPER(#{CLIENT_CD}))
</if>
</select>
<!-- 4. 일반거래처 저장 (INSERT/UPDATE) -->
<insert id="mergeClientMngInfo" parameterType="map">
INSERT INTO CLIENT_MNG (
OBJID, COMP_CODE, CLIENT_CD, CLIENT_NM, CLIENT_NMK, CLIENT_TYPE,
BUS_REG_NO, RESIDENT_NO, CEO_NM, BUS_TYPE, BUS_ITEM,
POST_NO, ADDR1, ADDR2, TEL_NO, FAX_NO, HOMEPAGE, EMAIL,
OBJID, COMP_CODE, CLIENT_CD, CLIENT_NM, TR_NMK, CLIENT_NMK, ATTR_NMK, CLIENT_TYPE,
BUS_REG_NO, RESIDENT_NO, CEO_NM, CEO_NMK, BUS_TYPE, BUS_ITEM,
POST_NO, ADDR1, ADDR2, ADDR_FG, TEL_NO, FAX_NO, HOMEPAGE, EMAIL, LIQ_RS, TR_FG,
COUNTRY_NM, CLASS_CD, CLASS_NM, GRADE_CD, GRADE_NM,
COLLECT_CLIENT_CD, COLLECT_CLIENT_NM, REGION_CD, REGION_NM,
TRADE_START_DT, TRADE_END_DT, USE_YN,
CONTRACT_START_DT, CONTRACT_END_DT, TRADE_TYPE,
DISCOUNT_RATE, CONTRACT_AMT, MONTHLY_FEE, PAYMENT_TERM,
DISCOUNT_RATE, CONTRACT_AMT, MONTHLY_FEE, PAYMENT_TERM, RCP_TP,
CREDIT_LIMIT, LIMIT_RETURN_DAY,
PUR_BANK_CD, PUR_BANK_NM, PUR_BRANCH_NM, PUR_ACCOUNT_NO,
PUR_ACCOUNT_HOLDER, PUR_PAY_PLAN, PUR_SLIP_TYPE, PUR_TAX_TYPE,
@@ -8890,149 +8892,166 @@ SELECT
VENDOR_TEL, VENDOR_EXT, VENDOR_MOBILE, VENDOR_EMAIL,
MGR_DEPT_CD, MGR_DEPT_NM, MGR_POSITION, MGR_DUTY,
MGR_EMP_CD, MGR_EMP_NM, MGR_TEL, MGR_EXT, MGR_MOBILE, MGR_EMAIL, MGR_REMARK,
REC_REMARK, REC_POST_NO, REC_ADDR1, REC_ADDR2, REC_TEL, REC_FAX,
PROJECT_CD, PROJECT_NM, EXT_DATA_CD, E_TAX_YN,
REC_REMARK, REC_POST_NO, REC_ADDR1, REC_ADDR2, REC_ADDR_FG, REC_TEL, REC_FAX,
PROJECT_CD, PROJECT_NM, PJT_NMK, EXT_DATA_CD, E_TAX_YN,
UNIT_REPORT_CLIENT, SUB_BUS_NO, PROCUREMENT_YN,
PLAN_DAY_TYPE, PLAN_DAY, PURPOSE_TYPE, FOR_YN,
USER_DEF_DC1, USER_DEF_DC2, USE_FG, USE_NM,
USER_DEF_DC1, USER_DEF_DC2,
USE_FG, USE_NM,
BIZCON_FG, BIZCON_NM, SHIP_TP, SHIP_NM,
PLAN_DAY_TYPE, PLAN_DAY, PURPOSE_TYPE, FOR_YN,
CHECK_DATA, CHECK_STATE, CHECK_ORDER, FIXED_ORDER,
INSERT_ID, INSERT_IP, INSERT_DT, MODIFY_ID, MODIFY_IP, MODIFY_DT
) VALUES (
#{objid}::numeric,
#{comp_code}, #{client_cd}, #{client_nm}, #{client_nmk}, #{client_type},
#{bus_reg_no}, #{resident_no}, #{ceo_nm}, #{bus_type}, #{bus_item},
#{post_no}, #{addr1}, #{addr2}, #{tel_no}, #{fax_no}, #{homepage}, #{email},
#{country_nm}, #{class_cd}, #{class_nm}, #{grade_cd}, #{grade_nm},
#{collect_client_cd}, #{collect_client_nm}, #{region_cd}, #{region_nm},
#{trade_start_dt}, #{trade_end_dt}, COALESCE(#{use_yn}, 'Y'),
#{contract_start_dt}, #{contract_end_dt}, #{trade_type},
#{discount_rate}, #{contract_amt}, #{monthly_fee}, #{payment_term},
#{credit_limit}, #{limit_return_day},
#{pur_bank_cd}, #{pur_bank_nm}, #{pur_branch_nm}, #{pur_account_no},
#{pur_account_holder}, #{pur_pay_plan}, #{pur_slip_type}, #{pur_tax_type},
#{sale_bank_cd}, #{sale_bank_nm}, #{sale_branch_nm}, #{sale_account_no},
#{sale_collect_plan}, #{sale_slip_type}, #{sale_tax_type},
#{vendor_dept_nm}, #{vendor_position}, #{vendor_duty}, #{vendor_manager_nm},
#{vendor_tel}, #{vendor_ext}, #{vendor_mobile}, #{vendor_email},
#{mgr_dept_cd}, #{mgr_dept_nm}, #{mgr_position}, #{mgr_duty},
#{mgr_emp_cd}, #{mgr_emp_nm}, #{mgr_tel}, #{mgr_ext}, #{mgr_mobile}, #{mgr_email}, #{mgr_remark},
#{rec_remark}, #{rec_post_no}, #{rec_addr1}, #{rec_addr2}, #{rec_tel}, #{rec_fax},
#{project_cd}, #{project_nm}, #{ext_data_cd}, #{e_tax_yn},
#{unit_report_client}, #{sub_bus_no}, #{procurement_yn},
#{plan_day_type}, #{plan_day}, #{purpose_type}, #{for_yn},
#{user_def_dc1}, #{user_def_dc2}, #{use_fg}, #{use_nm},
#{bizcon_fg}, #{bizcon_nm}, #{ship_tp}, #{ship_nm},
#{check_data}, #{check_state}, #{check_order}, #{fixed_order},
#{insert_id}, #{insert_ip},
CASE WHEN #{insert_dt} = '' THEN NOW() ELSE COALESCE(#{insert_dt}::timestamp, NOW()) END,
#{modify_id}, #{modify_ip},
CASE WHEN #{modify_dt} = '' THEN NULL ELSE #{modify_dt}::timestamp END
#{COMP_CODE}, #{CLIENT_CD}, #{CLIENT_NM}, #{TR_NMK}, #{CLIENT_NMK}, #{ATTR_NMK}, #{CLIENT_TYPE},
#{BUS_REG_NO}, #{RESIDENT_NO}, #{CEO_NM}, #{CEO_NMK}, #{BUS_TYPE}, #{BUS_ITEM},
#{POST_NO}, #{ADDR1}, #{ADDR2}, #{ADDR_FG}, #{TEL_NO}, #{FAX_NO}, #{HOMEPAGE}, #{EMAIL}, #{LIQ_RS}, #{TR_FG},
#{COUNTRY_NM}, #{CLASS_CD}, #{CLASS_NM}, #{GRADE_CD}, #{GRADE_NM},
#{COLLECT_CLIENT_CD}, #{COLLECT_CLIENT_NM}, #{REGION_CD}, #{REGION_NM},
#{TRADE_START_DT}, #{TRADE_END_DT}, COALESCE(#{USE_YN}, 'Y'),
#{CONTRACT_START_DT}, #{CONTRACT_END_DT}, #{TRADE_TYPE},
CASE WHEN #{DISCOUNT_RATE} = '' THEN NULL ELSE #{DISCOUNT_RATE}::numeric END,
CASE WHEN #{CONTRACT_AMT} = '' THEN NULL ELSE #{CONTRACT_AMT}::numeric END,
CASE WHEN #{MONTHLY_FEE} = '' THEN NULL ELSE #{MONTHLY_FEE}::numeric END,
#{PAYMENT_TERM}, #{RCP_TP},
CASE WHEN #{CREDIT_LIMIT} = '' THEN NULL ELSE #{CREDIT_LIMIT}::numeric END,
#{LIMIT_RETURN_DAY},
#{PUR_BANK_CD}, #{PUR_BANK_NM}, #{PUR_BRANCH_NM}, #{PUR_ACCOUNT_NO},
#{PUR_ACCOUNT_HOLDER}, #{PUR_PAY_PLAN}, #{PUR_SLIP_TYPE}, #{PUR_TAX_TYPE},
#{SALE_BANK_CD}, #{SALE_BANK_NM}, #{SALE_BRANCH_NM}, #{SALE_ACCOUNT_NO},
#{SALE_COLLECT_PLAN}, #{SALE_SLIP_TYPE}, #{SALE_TAX_TYPE},
#{VENDOR_DEPT_NM}, #{VENDOR_POSITION}, #{VENDOR_DUTY}, #{VENDOR_MANAGER_NM},
#{VENDOR_TEL}, #{VENDOR_EXT}, #{VENDOR_MOBILE}, #{VENDOR_EMAIL},
#{MGR_DEPT_CD}, #{MGR_DEPT_NM}, #{MGR_POSITION}, #{MGR_DUTY},
#{MGR_EMP_CD}, #{MGR_EMP_NM}, #{MGR_TEL}, #{MGR_EXT}, #{MGR_MOBILE}, #{MGR_EMAIL}, #{MGR_REMARK},
#{REC_REMARK}, #{REC_POST_NO}, #{REC_ADDR1}, #{REC_ADDR2}, #{REC_ADDR_FG}, #{REC_TEL}, #{REC_FAX},
#{PROJECT_CD}, #{PROJECT_NM}, #{PJT_NMK}, #{EXT_DATA_CD}, #{E_TAX_YN},
#{UNIT_REPORT_CLIENT}, #{SUB_BUS_NO}, #{PROCUREMENT_YN},
#{USER_DEF_DC1}, #{USER_DEF_DC2},
#{USE_FG}, #{USE_NM},
#{BIZCON_FG}, #{BIZCON_NM}, #{SHIP_TP}, #{SHIP_NM},
#{PLAN_DAY_TYPE}, #{PLAN_DAY}, #{PURPOSE_TYPE}, #{FOR_YN},
#{CHECK_DATA}, #{CHECK_STATE},
CASE WHEN #{CHECK_ORDER} = '' THEN NULL ELSE #{CHECK_ORDER}::numeric END,
#{FIXED_ORDER},
#{INSERT_ID}, #{INSERT_IP},
CASE WHEN #{INSERT_DT} = '' THEN NOW() ELSE COALESCE(#{INSERT_DT}::timestamp, NOW()) END,
#{MODIFY_ID}, #{MODIFY_IP},
CASE WHEN #{MODIFY_DT} = '' THEN NULL ELSE #{MODIFY_DT}::timestamp END
)
ON CONFLICT (OBJID) DO UPDATE SET
COMP_CODE = #{comp_code},
CLIENT_CD = #{client_cd},
CLIENT_NM = #{client_nm},
CLIENT_NMK = #{client_nmk},
CLIENT_TYPE = #{client_type},
BUS_REG_NO = #{bus_reg_no},
RESIDENT_NO = #{resident_no},
CEO_NM = #{ceo_nm},
BUS_TYPE = #{bus_type},
BUS_ITEM = #{bus_item},
POST_NO = #{post_no},
ADDR1 = #{addr1},
ADDR2 = #{addr2},
TEL_NO = #{tel_no},
FAX_NO = #{fax_no},
HOMEPAGE = #{homepage},
EMAIL = #{email},
COUNTRY_NM = #{country_nm},
CLASS_CD = #{class_cd},
CLASS_NM = #{class_nm},
GRADE_CD = #{grade_cd},
GRADE_NM = #{grade_nm},
COLLECT_CLIENT_CD = #{collect_client_cd},
COLLECT_CLIENT_NM = #{collect_client_nm},
REGION_CD = #{region_cd},
REGION_NM = #{region_nm},
TRADE_START_DT = #{trade_start_dt},
TRADE_END_DT = #{trade_end_dt},
USE_YN = #{use_yn},
CONTRACT_START_DT = #{contract_start_dt},
CONTRACT_END_DT = #{contract_end_dt},
TRADE_TYPE = #{trade_type},
DISCOUNT_RATE = #{discount_rate},
CONTRACT_AMT = #{contract_amt},
MONTHLY_FEE = #{monthly_fee},
PAYMENT_TERM = #{payment_term},
CREDIT_LIMIT = #{credit_limit},
LIMIT_RETURN_DAY = #{limit_return_day},
PUR_BANK_CD = #{pur_bank_cd},
PUR_BANK_NM = #{pur_bank_nm},
PUR_BRANCH_NM = #{pur_branch_nm},
PUR_ACCOUNT_NO = #{pur_account_no},
PUR_ACCOUNT_HOLDER = #{pur_account_holder},
PUR_PAY_PLAN = #{pur_pay_plan},
PUR_SLIP_TYPE = #{pur_slip_type},
PUR_TAX_TYPE = #{pur_tax_type},
SALE_BANK_CD = #{sale_bank_cd},
SALE_BANK_NM = #{sale_bank_nm},
SALE_BRANCH_NM = #{sale_branch_nm},
SALE_ACCOUNT_NO = #{sale_account_no},
SALE_COLLECT_PLAN = #{sale_collect_plan},
SALE_SLIP_TYPE = #{sale_slip_type},
SALE_TAX_TYPE = #{sale_tax_type},
VENDOR_DEPT_NM = #{vendor_dept_nm},
VENDOR_POSITION = #{vendor_position},
VENDOR_DUTY = #{vendor_duty},
VENDOR_MANAGER_NM = #{vendor_manager_nm},
VENDOR_TEL = #{vendor_tel},
VENDOR_EXT = #{vendor_ext},
VENDOR_MOBILE = #{vendor_mobile},
VENDOR_EMAIL = #{vendor_email},
MGR_DEPT_CD = #{mgr_dept_cd},
MGR_DEPT_NM = #{mgr_dept_nm},
MGR_POSITION = #{mgr_position},
MGR_DUTY = #{mgr_duty},
MGR_EMP_CD = #{mgr_emp_cd},
MGR_EMP_NM = #{mgr_emp_nm},
MGR_TEL = #{mgr_tel},
MGR_EXT = #{mgr_ext},
MGR_MOBILE = #{mgr_mobile},
MGR_EMAIL = #{mgr_email},
MGR_REMARK = #{mgr_remark},
REC_REMARK = #{rec_remark},
REC_POST_NO = #{rec_post_no},
REC_ADDR1 = #{rec_addr1},
REC_ADDR2 = #{rec_addr2},
REC_TEL = #{rec_tel},
REC_FAX = #{rec_fax},
PROJECT_CD = #{project_cd},
PROJECT_NM = #{project_nm},
EXT_DATA_CD = #{ext_data_cd},
E_TAX_YN = #{e_tax_yn},
UNIT_REPORT_CLIENT = #{unit_report_client},
SUB_BUS_NO = #{sub_bus_no},
PROCUREMENT_YN = #{procurement_yn},
PLAN_DAY_TYPE = #{plan_day_type},
PLAN_DAY = #{plan_day},
PURPOSE_TYPE = #{purpose_type},
FOR_YN = #{for_yn},
USER_DEF_DC1 = #{user_def_dc1},
USER_DEF_DC2 = #{user_def_dc2},
USE_FG = #{use_fg},
USE_NM = #{use_nm},
BIZCON_FG = #{bizcon_fg},
BIZCON_NM = #{bizcon_nm},
SHIP_TP = #{ship_tp},
SHIP_NM = #{ship_nm},
CHECK_DATA = #{check_data},
CHECK_STATE = #{check_state},
CHECK_ORDER = #{check_order},
FIXED_ORDER = #{fixed_order},
MODIFY_ID = #{modify_id},
MODIFY_IP = #{modify_ip},
COMP_CODE = #{COMP_CODE},
CLIENT_CD = #{CLIENT_CD},
CLIENT_NM = #{CLIENT_NM},
TR_NMK = #{TR_NMK},
CLIENT_NMK = #{CLIENT_NMK},
ATTR_NMK = #{ATTR_NMK},
CLIENT_TYPE = #{CLIENT_TYPE},
BUS_REG_NO = #{BUS_REG_NO},
RESIDENT_NO = #{RESIDENT_NO},
CEO_NM = #{CEO_NM},
CEO_NMK = #{CEO_NMK},
BUS_TYPE = #{BUS_TYPE},
BUS_ITEM = #{BUS_ITEM},
POST_NO = #{POST_NO},
ADDR1 = #{ADDR1},
ADDR2 = #{ADDR2},
ADDR_FG = #{ADDR_FG},
TEL_NO = #{TEL_NO},
FAX_NO = #{FAX_NO},
HOMEPAGE = #{HOMEPAGE},
EMAIL = #{EMAIL},
LIQ_RS = #{LIQ_RS},
TR_FG = #{TR_FG},
COUNTRY_NM = #{COUNTRY_NM},
CLASS_CD = #{CLASS_CD},
CLASS_NM = #{CLASS_NM},
GRADE_CD = #{GRADE_CD},
GRADE_NM = #{GRADE_NM},
COLLECT_CLIENT_CD = #{COLLECT_CLIENT_CD},
COLLECT_CLIENT_NM = #{COLLECT_CLIENT_NM},
REGION_CD = #{REGION_CD},
REGION_NM = #{REGION_NM},
TRADE_START_DT = #{TRADE_START_DT},
TRADE_END_DT = #{TRADE_END_DT},
USE_YN = #{USE_YN},
CONTRACT_START_DT = #{CONTRACT_START_DT},
CONTRACT_END_DT = #{CONTRACT_END_DT},
TRADE_TYPE = #{TRADE_TYPE},
DISCOUNT_RATE = CASE WHEN #{DISCOUNT_RATE} = '' THEN NULL ELSE #{DISCOUNT_RATE}::numeric END,
CONTRACT_AMT = CASE WHEN #{CONTRACT_AMT} = '' THEN NULL ELSE #{CONTRACT_AMT}::numeric END,
MONTHLY_FEE = CASE WHEN #{MONTHLY_FEE} = '' THEN NULL ELSE #{MONTHLY_FEE}::numeric END,
PAYMENT_TERM = #{PAYMENT_TERM},
RCP_TP = #{RCP_TP},
CREDIT_LIMIT = CASE WHEN #{CREDIT_LIMIT} = '' THEN NULL ELSE #{CREDIT_LIMIT}::numeric END,
LIMIT_RETURN_DAY = #{LIMIT_RETURN_DAY},
PUR_BANK_CD = #{PUR_BANK_CD},
PUR_BANK_NM = #{PUR_BANK_NM},
PUR_BRANCH_NM = #{PUR_BRANCH_NM},
PUR_ACCOUNT_NO = #{PUR_ACCOUNT_NO},
PUR_ACCOUNT_HOLDER = #{PUR_ACCOUNT_HOLDER},
PUR_PAY_PLAN = #{PUR_PAY_PLAN},
PUR_SLIP_TYPE = #{PUR_SLIP_TYPE},
PUR_TAX_TYPE = #{PUR_TAX_TYPE},
SALE_BANK_CD = #{SALE_BANK_CD},
SALE_BANK_NM = #{SALE_BANK_NM},
SALE_BRANCH_NM = #{SALE_BRANCH_NM},
SALE_ACCOUNT_NO = #{SALE_ACCOUNT_NO},
SALE_COLLECT_PLAN = #{SALE_COLLECT_PLAN},
SALE_SLIP_TYPE = #{SALE_SLIP_TYPE},
SALE_TAX_TYPE = #{SALE_TAX_TYPE},
VENDOR_DEPT_NM = #{VENDOR_DEPT_NM},
VENDOR_POSITION = #{VENDOR_POSITION},
VENDOR_DUTY = #{VENDOR_DUTY},
VENDOR_MANAGER_NM = #{VENDOR_MANAGER_NM},
VENDOR_TEL = #{VENDOR_TEL},
VENDOR_EXT = #{VENDOR_EXT},
VENDOR_MOBILE = #{VENDOR_MOBILE},
VENDOR_EMAIL = #{VENDOR_EMAIL},
MGR_DEPT_CD = #{MGR_DEPT_CD},
MGR_DEPT_NM = #{MGR_DEPT_NM},
MGR_POSITION = #{MGR_POSITION},
MGR_DUTY = #{MGR_DUTY},
MGR_EMP_CD = #{MGR_EMP_CD},
MGR_EMP_NM = #{MGR_EMP_NM},
MGR_TEL = #{MGR_TEL},
MGR_EXT = #{MGR_EXT},
MGR_MOBILE = #{MGR_MOBILE},
MGR_EMAIL = #{MGR_EMAIL},
MGR_REMARK = #{MGR_REMARK},
REC_REMARK = #{REC_REMARK},
REC_POST_NO = #{REC_POST_NO},
REC_ADDR1 = #{REC_ADDR1},
REC_ADDR2 = #{REC_ADDR2},
REC_ADDR_FG = #{REC_ADDR_FG},
REC_TEL = #{REC_TEL},
REC_FAX = #{REC_FAX},
PROJECT_CD = #{PROJECT_CD},
PROJECT_NM = #{PROJECT_NM},
PJT_NMK = #{PJT_NMK},
EXT_DATA_CD = #{EXT_DATA_CD},
E_TAX_YN = #{E_TAX_YN},
UNIT_REPORT_CLIENT = #{UNIT_REPORT_CLIENT},
SUB_BUS_NO = #{SUB_BUS_NO},
PROCUREMENT_YN = #{PROCUREMENT_YN},
USER_DEF_DC1 = #{USER_DEF_DC1},
USER_DEF_DC2 = #{USER_DEF_DC2},
USE_FG = #{USE_FG},
USE_NM = #{USE_NM},
BIZCON_FG = #{BIZCON_FG},
BIZCON_NM = #{BIZCON_NM},
SHIP_TP = #{SHIP_TP},
SHIP_NM = #{SHIP_NM},
PLAN_DAY_TYPE = #{PLAN_DAY_TYPE},
PLAN_DAY = #{PLAN_DAY},
PURPOSE_TYPE = #{PURPOSE_TYPE},
FOR_YN = #{FOR_YN},
CHECK_DATA = #{CHECK_DATA},
CHECK_STATE = #{CHECK_STATE},
CHECK_ORDER = CASE WHEN #{CHECK_ORDER} = '' THEN NULL ELSE #{CHECK_ORDER}::numeric END,
FIXED_ORDER = #{FIXED_ORDER},
MODIFY_ID = #{MODIFY_ID},
MODIFY_IP = #{MODIFY_IP},
MODIFY_DT = NOW()
</insert>
@@ -9042,5 +9061,269 @@ SELECT
WHERE OBJID = #{OBJID}::numeric
</delete>
<!-- 6. Excel 업로드 - 중복 체크 -->
<select id="getDuplicateClientExcel" parameterType="map" resultType="map">
SELECT OBJID, CLIENT_CD, CLIENT_NM
FROM CLIENT_MNG
WHERE UPPER(CLIENT_CD) = UPPER(#{CLIENT_CD})
LIMIT 1
</select>
<!-- 7. Excel 업로드 - 일괄 INSERT -->
<insert id="insertClientExcel" parameterType="map">
INSERT INTO CLIENT_MNG (
OBJID,
COMP_CODE,
CLIENT_CD,
CLIENT_NM,
TR_NMK,
CLIENT_NMK,
ATTR_NMK,
CLIENT_TYPE,
BUS_REG_NO,
RESIDENT_NO,
CEO_NM,
CEO_NMK,
BUS_TYPE,
BUS_ITEM,
POST_NO,
ADDR1,
ADDR2,
ADDR_FG,
TEL_NO,
FAX_NO,
HOMEPAGE,
EMAIL,
LIQ_RS,
TR_FG,
COUNTRY_NM,
CLASS_CD,
CLASS_NM,
GRADE_CD,
GRADE_NM,
COLLECT_CLIENT_CD,
COLLECT_CLIENT_NM,
REGION_CD,
REGION_NM,
TRADE_START_DT,
TRADE_END_DT,
USE_YN,
CONTRACT_START_DT,
CONTRACT_END_DT,
TRADE_TYPE,
DISCOUNT_RATE,
CONTRACT_AMT,
MONTHLY_FEE,
PAYMENT_TERM,
RCP_TP,
CREDIT_LIMIT,
LIMIT_RETURN_DAY,
PUR_BANK_CD,
PUR_BANK_NM,
PUR_BRANCH_NM,
PUR_ACCOUNT_NO,
PUR_ACCOUNT_HOLDER,
PUR_PAY_PLAN,
PUR_SLIP_TYPE,
PUR_TAX_TYPE,
SALE_BANK_CD,
SALE_BANK_NM,
SALE_BRANCH_NM,
SALE_ACCOUNT_NO,
SALE_COLLECT_PLAN,
SALE_SLIP_TYPE,
SALE_TAX_TYPE,
VENDOR_DEPT_NM,
VENDOR_POSITION,
VENDOR_DUTY,
VENDOR_MANAGER_NM,
VENDOR_TEL,
VENDOR_EXT,
VENDOR_MOBILE,
VENDOR_EMAIL,
MGR_DEPT_CD,
MGR_DEPT_NM,
MGR_POSITION,
MGR_DUTY,
MGR_EMP_CD,
MGR_EMP_NM,
MGR_TEL,
MGR_EXT,
MGR_MOBILE,
MGR_EMAIL,
MGR_REMARK,
REC_REMARK,
REC_POST_NO,
REC_ADDR1,
REC_ADDR2,
REC_ADDR_FG,
REC_TEL,
REC_FAX,
PROJECT_CD,
PROJECT_NM,
PJT_NMK,
EXT_DATA_CD,
E_TAX_YN,
UNIT_REPORT_CLIENT,
SUB_BUS_NO,
PROCUREMENT_YN,
USER_DEF_DC1,
USER_DEF_DC2,
USE_FG,
USE_NM,
BIZCON_FG,
BIZCON_NM,
SHIP_TP,
SHIP_NM,
PLAN_DAY_TYPE,
PLAN_DAY,
PURPOSE_TYPE,
FOR_YN,
CHECK_DATA,
CHECK_STATE,
CHECK_ORDER,
INSERT_ID,
INSERT_IP,
INSERT_DT
) VALUES (
#{OBJID}::numeric,
NULLIF(#{COMP_CODE}, ''),
NULLIF(#{CLIENT_CD}, ''),
NULLIF(#{CLIENT_NM}, ''),
NULLIF(#{TR_NMK}, ''),
NULLIF(#{CLIENT_NMK}, ''),
NULLIF(#{ATTR_NMK}, ''),
NULLIF(#{CLIENT_TYPE}, ''),
NULLIF(#{BUS_REG_NO}, ''),
NULLIF(#{RESIDENT_NO}, ''),
NULLIF(#{CEO_NM}, ''),
NULLIF(#{CEO_NMK}, ''),
NULLIF(#{BUS_TYPE}, ''),
NULLIF(#{BUS_ITEM}, ''),
NULLIF(#{POST_NO}, ''),
NULLIF(#{ADDR1}, ''),
NULLIF(#{ADDR2}, ''),
NULLIF(#{ADDR_FG}, ''),
NULLIF(#{TEL_NO}, ''),
NULLIF(#{FAX_NO}, ''),
NULLIF(#{HOMEPAGE}, ''),
NULLIF(#{EMAIL}, ''),
NULLIF(#{LIQ_RS}, ''),
NULLIF(#{TR_FG}, ''),
NULLIF(#{COUNTRY_NM}, ''),
NULLIF(#{CLASS_CD}, ''),
NULLIF(#{CLASS_NM}, ''),
NULLIF(#{GRADE_CD}, ''),
NULLIF(#{GRADE_NM}, ''),
NULLIF(#{COLLECT_CLIENT_CD}, ''),
NULLIF(#{COLLECT_CLIENT_NM}, ''),
NULLIF(#{REGION_CD}, ''),
NULLIF(#{REGION_NM}, ''),
NULLIF(#{TRADE_START_DT}, ''),
NULLIF(#{TRADE_END_DT}, ''),
COALESCE(NULLIF(#{USE_YN}, ''), 'Y'),
NULLIF(#{CONTRACT_START_DT}, ''),
NULLIF(#{CONTRACT_END_DT}, ''),
NULLIF(#{TRADE_TYPE}, ''),
CASE WHEN #{DISCOUNT_RATE} = '' THEN NULL ELSE #{DISCOUNT_RATE}::numeric END,
CASE WHEN #{CONTRACT_AMT} = '' THEN NULL ELSE #{CONTRACT_AMT}::numeric END,
CASE WHEN #{MONTHLY_FEE} = '' THEN NULL ELSE #{MONTHLY_FEE}::numeric END,
NULLIF(#{PAYMENT_TERM}, ''),
NULLIF(#{RCP_TP}, ''),
CASE WHEN #{CREDIT_LIMIT} = '' THEN NULL ELSE #{CREDIT_LIMIT}::numeric END,
NULLIF(#{LIMIT_RETURN_DAY}, ''),
NULLIF(#{PUR_BANK_CD}, ''),
NULLIF(#{PUR_BANK_NM}, ''),
NULLIF(#{PUR_BRANCH_NM}, ''),
NULLIF(#{PUR_ACCOUNT_NO}, ''),
NULLIF(#{PUR_ACCOUNT_HOLDER}, ''),
NULLIF(#{PUR_PAY_PLAN}, ''),
NULLIF(#{PUR_SLIP_TYPE}, ''),
NULLIF(#{PUR_TAX_TYPE}, ''),
NULLIF(#{SALE_BANK_CD}, ''),
NULLIF(#{SALE_BANK_NM}, ''),
NULLIF(#{SALE_BRANCH_NM}, ''),
NULLIF(#{SALE_ACCOUNT_NO}, ''),
NULLIF(#{SALE_COLLECT_PLAN}, ''),
NULLIF(#{SALE_SLIP_TYPE}, ''),
NULLIF(#{SALE_TAX_TYPE}, ''),
NULLIF(#{VENDOR_DEPT_NM}, ''),
NULLIF(#{VENDOR_POSITION}, ''),
NULLIF(#{VENDOR_DUTY}, ''),
NULLIF(#{VENDOR_MANAGER_NM}, ''),
NULLIF(#{VENDOR_TEL}, ''),
NULLIF(#{VENDOR_EXT}, ''),
NULLIF(#{VENDOR_MOBILE}, ''),
NULLIF(#{VENDOR_EMAIL}, ''),
NULLIF(#{MGR_DEPT_CD}, ''),
NULLIF(#{MGR_DEPT_NM}, ''),
NULLIF(#{MGR_POSITION}, ''),
NULLIF(#{MGR_DUTY}, ''),
NULLIF(#{MGR_EMP_CD}, ''),
NULLIF(#{MGR_EMP_NM}, ''),
NULLIF(#{MGR_TEL}, ''),
NULLIF(#{MGR_EXT}, ''),
NULLIF(#{MGR_MOBILE}, ''),
NULLIF(#{MGR_EMAIL}, ''),
NULLIF(#{MGR_REMARK}, ''),
NULLIF(#{REC_REMARK}, ''),
NULLIF(#{REC_POST_NO}, ''),
NULLIF(#{REC_ADDR1}, ''),
NULLIF(#{REC_ADDR2}, ''),
NULLIF(#{REC_ADDR_FG}, ''),
NULLIF(#{REC_TEL}, ''),
NULLIF(#{REC_FAX}, ''),
NULLIF(#{PROJECT_CD}, ''),
NULLIF(#{PROJECT_NM}, ''),
NULLIF(#{PJT_NMK}, ''),
NULLIF(#{EXT_DATA_CD}, ''),
NULLIF(#{E_TAX_YN}, ''),
NULLIF(#{UNIT_REPORT_CLIENT}, ''),
NULLIF(#{SUB_BUS_NO}, ''),
NULLIF(#{PROCUREMENT_YN}, ''),
NULLIF(#{USER_DEF_DC1}, ''),
NULLIF(#{USER_DEF_DC2}, ''),
NULLIF(#{USE_FG}, ''),
NULLIF(#{USE_NM}, ''),
NULLIF(#{BIZCON_FG}, ''),
NULLIF(#{BIZCON_NM}, ''),
NULLIF(#{SHIP_TP}, ''),
NULLIF(#{SHIP_NM}, ''),
NULLIF(#{PLAN_DAY_TYPE}, ''),
NULLIF(#{PLAN_DAY}, ''),
NULLIF(#{PURPOSE_TYPE}, ''),
NULLIF(#{FOR_YN}, ''),
NULLIF(#{CHECK_DATA}, ''),
NULLIF(#{CHECK_STATE}, ''),
CASE WHEN #{CHECK_ORDER} = '' THEN NULL ELSE #{CHECK_ORDER}::numeric END,
#{CONNECTUSERID},
#{insert_ip},
NOW()
)
</insert>
<!-- 8. Excel 업로드 - 중복/신규 건수 조회 -->
<select id="countExcelclient" parameterType="map" resultType="map">
SELECT
COUNT(CASE WHEN DUP_YN = 'Y' THEN 1 END) AS DUP_CNT,
COUNT(CASE WHEN DUP_YN = 'N' THEN 1 END) AS NOW_CNT
FROM (
SELECT
CASE
WHEN EXISTS (
SELECT 1 FROM CLIENT_MNG
WHERE CLIENT_CD = T.CLIENT_CD
) THEN 'Y'
ELSE 'N'
END AS DUP_YN
FROM (
SELECT CLIENT_CD
FROM ATTACH_FILE_INFO
WHERE TARGET_OBJID = #{targetObjId}
AND DOC_TYPE = 'CLIENT_EXCEL_IMPORT'
) T
) RESULT
</select>
</mapper>

View File

@@ -15,342 +15,460 @@
var grid;
$(document).ready(function(){
var client_type = $.parseJSON($("#client_type").val()); // 거래처 구분 코드
// 거래처 구분 코드 (안전하게 파싱)
var client_type_value = $("textarea#client_type").val();
var client_type = {};
try {
if (client_type_value && client_type_value.trim() !== "") {
client_type = $.parseJSON(client_type_value);
}
} catch(e) {
console.warn("client_type JSON 파싱 실패, 빈 객체 사용:", e);
client_type = {};
}
//fnc_datepick();
console.log("=== 엑셀 업로드 초기화 시작 ===");
console.log("objid:", "${objid}");
console.log("excelImportDropZone 존재:", $("#excelImportDropZone").length);
// 드래그앤드롭 기본 동작 완전 차단
window.addEventListener('dragover', function(e) {
e.preventDefault();
}, false);
window.addEventListener('drop', function(e) {
e.preventDefault();
}, false);
// 드롭존 설정
fnc_setFileDropZone("excelImportDropZone", "${objid}", "CLIENT_EXCEL_IMPORT", "Client Excel Import Template", "setExcelFileArea",true,"fileDelete","/admin/excelImportFileProc.do");
fnc_setFileDropZone("partAttachFileDropZone", "${objid}", "CLIENT_IMPORT_ATTACH", "Import Client Attach File", "setPartFileArea",false,null,"/admin/partImportFileProc.do");
// 파일 input의 클릭 이벤트가 부모로 전파되지 않게 막기
$("#excelFileInput").on("click", function(e) {
e.stopPropagation();
});
// 드롭존 클릭 시 파일 선택 창 열기
$("#excelImportDropZone").on("click", function(e) {
// input 자체를 클릭한 경우는 무시
if ($(e.target).is("#excelFileInput")) {
return;
}
console.log("드롭존 클릭됨!");
e.preventDefault();
e.stopPropagation();
$("#excelFileInput")[0].click(); // jQuery trigger 대신 native click 사용
});
// 파일 선택 시 업로드
$("#excelFileInput").on("change", function(e) {
console.log("파일 input change 이벤트 발생!");
var files = e.target.files;
if (files && files.length > 0) {
console.log("선택된 파일:", files[0].name, "크기:", files[0].size);
// 확인 창 표시
if(confirm(files.length + "개의 파일을 업로드 하시겠습니까?")) {
var data = new FormData();
for (var i = 0; i < files.length; i++) {
data.append('file', files[i]);
}
data.append("targetObjId", "${objid}");
data.append("docType", "CLIENT_EXCEL_IMPORT");
data.append("docTypeName", "Client Excel Import Template");
$.ajax({
url: "/admin/excelImportFileProc.do",
method: 'post',
data: data,
dataType: 'text',
processData: false,
contentType: false,
beforeSend: function() {
console.log("업로드 시작...");
},
success: function(res) {
console.log("업로드 성공!", res);
alert("업로드 완료!");
setExcelFileArea(); // 파일 목록 새로고침
},
error: function(jqxhr, status, error) {
console.error("업로드 실패:", status, error);
alert("업로드 실패: " + error);
}
});
}
// input 초기화 (같은 파일 재선택 가능하게)
$(this).val('');
} else {
console.log("파일이 선택되지 않음");
}
});
console.log("=== 드롭존 설정 완료 ===");
grid = $("#clientDetailGrid").jqGrid({
url: ""
,datatype: "local"
,colNames: ["거래처코드","거래처명","거래처약칭","구분","사업자등록번호","주민등록번호","대표자명","업태","업종","우편번호","주소1","주소2","전화번호","팩스번호","홈페이지","이메일",
"국가명","분류코드","분류명","등급코드","등급명","수금거래처코드","수금거래처명","지역코드","지역명","거래시작일","거래종료일","사용여부",
"계약시작일","계약종료일","거래형태","할인율","계약금액","월용역비","결제조건","여신한도금액","한도회귀일",
,colNames: ["","회사코드","거래처코드","거래처명","TR_NMK","거래처약칭","ATTR_NMK","구분","사업자등록번호","주민등록번호","대표자명","CEO_NMK",
"업태","종목","우편번호","주소1","주소2","ADDR_FG","전화번호","팩스번호","홈페이지","메일주소","LIQ_RS","주류여부",
"국가명","분류코드","분류명","등급코드","등급명","수금거래처코드","수금거래처명","지역코드명","지역명",
"거래시작일","거래종료일","사용여부",
"계약시작일","계약종료일","거래형태","할인율","계약금액","월용역비","결제조건","RCP_TP","여신한도금액","한도회귀일",
"매입_금융기관코드","매입_금융기관명","매입_지점명","매입_결제계좌","매입_예금주명","매입_지급예정","매입_전표유형","매입_세무구분",
"매출_은행코드","매출_은행명","매출_계좌개설점","매출_계좌번호","매출_수금예정","매출_전표유형","매출_세무구분",
"업체담당_부서명","업체담당_직급","업체담당_담당업무","업체담당_담당자명","업체담당_전화번호","업체담당_내선번호","업체담당_핸드폰","업체담당_메일",
"관리담당_부서코드","관리담당_부서명","관리담당_직급명","관리담당_담당업무","관리담당_사원코드","관리담당_사원명","관리담당_전화번호","관리담당_내선번호","관리담당_핸드폰","관리담당_메일","관리담당_비고",
"수신처_비고","수신처_우편번호","수신처_주소1","수신처_주소2","수신처_전화번호","수신처_팩스번호",
"프로젝트코드","프로젝트명","외부데이터코드","전자세금계산서여부","단위신고거래처","종사업장번호","조달청다수공급자",
"예정일구분","예정일","용도구분","해외여부","사용자정의1","사용자정의2","사용구분","사용명",
"거래조건구분","거래조건명","배송유형","배송명","체크데이터","체크상태","체크순서","고정순서","비고"]
"매출_은행코드","매출_수금은행명","매출_계좌개설점","매출_계좌번호","매출_수금예정","매출_전표유형","매출_세무구분",
"업체담당_부서명","업체담당_직급","업체담당_담당업무","업체담당_담당자명","업체담당_전화번호","업체담당_내선번호","업체담당_핸드폰번호","업체담당_메일주소",
"관리담당_부서코드","관리담당_부서명","관리담당_직급명","관리담당_담당업무","관리담당_사원코드","관리담당_사원명","관리담당_전화번호","관리담당_내선번호","관리담당_핸드폰번호","관리담당_메일주소","관리담당_비고",
"수신처_비고","수신처_우편번호","수신처_주소1","수신처_주소2","REC_ADDR_FG","수신처_전화번호","수신처_팩스번호",
"프로젝트코드","프로젝트명","PJT_NMK","외부데이터코드","전자세금계산서여부","단위신고거래처","종사업장번호","조달청다수공급자",
"USER_DEF_DC1","USER_DEF_DC2",
"USE_FG","USE_NM","BIZCON_FG","BIZCON_NM","SHIP_TP","SHIP_NM",
"예정일구분","예정일","용도구분","FOR_YN","CHECK_DATA",
"CHECK_STATE","CHECK_ORDER","FIXED_ORDER"]
,colModel: [
{name:"CLIENT_CD",index:"CLIENT_CD", width: 200, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{
dataInit : function(e){
e.style.fontSize = 13;
}
}
}
,{name:"CLIENT_NM",index:"CLIENT_NM", width: 200, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{
dataInit : function(e){
e.style.fontSize = 13;
}
}
}
,{name:"CLIENT_NMK",index:"CLIENT_NMK", width: 200, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{
dataInit : function(e){
e.style.fontSize = 13;
}
}
}
,{name:"CLIENT_TYPE" ,index:"CLIENT_TYPE" , width:100, align:"center", hidden:false, sortable:false, editable: true
,edittype :"select"
,formatter :"select"
,editoptions:{
value: client_type
,dataInit : function(e){
e.style.width = "92%";
e.style.fontSize = 13;
}
}
}
,{name:"BUS_REG_NO",index:"BUS_REG_NO", width: 50, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{
dataInit : function(e){
e.style.fontSize = 13;
}
}
}
,{name:"RESIDENT_NO",index:"RESIDENT_NO", width: 150, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{
dataInit : function(e){
e.style.fontSize = 13;
}
}
}
,{name:"BUS_TYPE",index:"BUS_TYPE", width: 150, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{
dataInit : function(e){
e.style.fontSize = 13;
}
}
}
,{name:"BUS_ITEM",index:"BUS_ITEM", width: 150, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{
dataInit : function(e){
e.style.fontSize = 13;
}
}
{name:"rn",index:"rn", width: 25, align:"center", hidden: false, sortable:false, editable:false}
,{name:"COMP_CODE",index:"COMP_CODE", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"CLIENT_CD",index:"CLIENT_CD", width: 200, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"CLIENT_NM",index:"CLIENT_NM", width: 200, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"TR_NMK",index:"TR_NMK", width: 200, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"CLIENT_NMK",index:"CLIENT_NMK", width: 200, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"ATTR_NMK",index:"ATTR_NMK", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"CLIENT_TYPE",index:"CLIENT_TYPE", width: 100, align:"center", hidden: false, sortable:false, editable:true
,edittype:"select"
,formatter:"select"
,editoptions:{
value: client_type
,dataInit : function(e){
e.style.width = "92%";
e.style.fontSize = 13;
}
,{name:"CEO_NM",index:"CEO_NM", width: 150, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{
dataInit : function(e){
e.style.fontSize = 13;
}
}
}
,{name:"POST_NO",index:"POST_NO", width: 100, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{
dataInit : function(e){
e.style.fontSize = 13;
}
}
}
,{name:"ADDR1",index:"ADDR1", width: 300, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{
dataInit : function(e){
e.style.fontSize = 13;
}
}
}
,{name:"ADDR2",index:"ADDR2", width: 300, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{
dataInit : function(e){
e.style.fontSize = 13;
}
}
}
,{name:"TEL_NO",index:"TEL_NO", width: 150, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{
dataInit : function(e){
e.style.fontSize = 13;
}
}
}
,{name:"FAX_NO",index:"FAX_NO", width: 150, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{
dataInit : function(e){
e.style.fontSize = 13;
}
}
}
,{name:"HOMEPAGE",index:"HOMEPAGE", width: 200, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{
dataInit : function(e){
e.style.fontSize = 13;
}
}
}
,{name:"EMAIL",index:"EMAIL", width: 200, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{
dataInit : function(e){
e.style.fontSize = 13;
}
}
}
// 기본 정보 (17개 완료)
// 분류/등급 정보 (11개)
,{name:"COUNTRY_NM",index:"COUNTRY_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"CLASS_CD",index:"CLASS_CD", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"CLASS_NM",index:"CLASS_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"GRADE_CD",index:"GRADE_CD", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"GRADE_NM",index:"GRADE_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"COLLECT_CLIENT_CD",index:"COLLECT_CLIENT_CD", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"COLLECT_CLIENT_NM",index:"COLLECT_CLIENT_NM", width: 200, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"REGION_CD",index:"REGION_CD", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"REGION_NM",index:"REGION_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"TRADE_START_DT",index:"TRADE_START_DT", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"TRADE_END_DT",index:"TRADE_END_DT", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"USE_YN",index:"USE_YN", width: 80, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
// 거래 정보 (9개)
,{name:"CONTRACT_START_DT",index:"CONTRACT_START_DT", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"CONTRACT_END_DT",index:"CONTRACT_END_DT", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"TRADE_TYPE",index:"TRADE_TYPE", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"DISCOUNT_RATE",index:"DISCOUNT_RATE", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"CONTRACT_AMT",index:"CONTRACT_AMT", width: 120, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"MONTHLY_FEE",index:"MONTHLY_FEE", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"PAYMENT_TERM",index:"PAYMENT_TERM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"CREDIT_LIMIT",index:"CREDIT_LIMIT", width: 120, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"LIMIT_RETURN_DAY",index:"LIMIT_RETURN_DAY", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
// 매입 은행 정보 (8개)
,{name:"PUR_BANK_CD",index:"PUR_BANK_CD", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"PUR_BANK_NM",index:"PUR_BANK_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"PUR_BRANCH_NM",index:"PUR_BRANCH_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"PUR_ACCOUNT_NO",index:"PUR_ACCOUNT_NO", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"PUR_ACCOUNT_HOLDER",index:"PUR_ACCOUNT_HOLDER", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"PUR_PAY_PLAN",index:"PUR_PAY_PLAN", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"PUR_SLIP_TYPE",index:"PUR_SLIP_TYPE", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"PUR_TAX_TYPE",index:"PUR_TAX_TYPE", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
// 매출 은행 정보 (7개)
,{name:"SALE_BANK_CD",index:"SALE_BANK_CD", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"SALE_BANK_NM",index:"SALE_BANK_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"SALE_BRANCH_NM",index:"SALE_BRANCH_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"SALE_ACCOUNT_NO",index:"SALE_ACCOUNT_NO", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"SALE_COLLECT_PLAN",index:"SALE_COLLECT_PLAN", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"SALE_SLIP_TYPE",index:"SALE_SLIP_TYPE", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"SALE_TAX_TYPE",index:"SALE_TAX_TYPE", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
// 업체 담당자 (8개)
,{name:"VENDOR_DEPT_NM",index:"VENDOR_DEPT_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"VENDOR_POSITION",index:"VENDOR_POSITION", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"VENDOR_DUTY",index:"VENDOR_DUTY", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"VENDOR_MANAGER_NM",index:"VENDOR_MANAGER_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"VENDOR_TEL",index:"VENDOR_TEL", width: 120, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"VENDOR_EXT",index:"VENDOR_EXT", width: 80, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"VENDOR_MOBILE",index:"VENDOR_MOBILE", width: 120, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"VENDOR_EMAIL",index:"VENDOR_EMAIL", width: 200, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
// 관리 담당자 (11개)
,{name:"MGR_DEPT_CD",index:"MGR_DEPT_CD", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"MGR_DEPT_NM",index:"MGR_DEPT_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"MGR_POSITION",index:"MGR_POSITION", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"MGR_DUTY",index:"MGR_DUTY", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"MGR_EMP_CD",index:"MGR_EMP_CD", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"MGR_EMP_NM",index:"MGR_EMP_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"MGR_TEL",index:"MGR_TEL", width: 120, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"MGR_EXT",index:"MGR_EXT", width: 80, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"MGR_MOBILE",index:"MGR_MOBILE", width: 120, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"MGR_EMAIL",index:"MGR_EMAIL", width: 200, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"MGR_REMARK",index:"MGR_REMARK", width: 200, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
// 수신처 정보 (6개)
,{name:"REC_REMARK",index:"REC_REMARK", width: 200, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"REC_POST_NO",index:"REC_POST_NO", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"REC_ADDR1",index:"REC_ADDR1", width: 300, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"REC_ADDR2",index:"REC_ADDR2", width: 300, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"REC_TEL",index:"REC_TEL", width: 120, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"REC_FAX",index:"REC_FAX", width: 120, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
// 프로젝트/기타 (7개)
,{name:"PROJECT_CD",index:"PROJECT_CD", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"PROJECT_NM",index:"PROJECT_NM", width: 200, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"EXT_DATA_CD",index:"EXT_DATA_CD", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"E_TAX_YN",index:"E_TAX_YN", width: 80, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"UNIT_REPORT_CLIENT",index:"UNIT_REPORT_CLIENT", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"SUB_BUS_NO",index:"SUB_BUS_NO", width: 120, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"PROCUREMENT_YN",index:"PROCUREMENT_YN", width: 80, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
// 예정일/용도 (4개)
,{name:"PLAN_DAY_TYPE",index:"PLAN_DAY_TYPE", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"PLAN_DAY",index:"PLAN_DAY", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"PURPOSE_TYPE",index:"PURPOSE_TYPE", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"FOR_YN",index:"FOR_YN", width: 80, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
// 사용자정의/배송 (8개)
,{name:"USER_DEF_DC1",index:"USER_DEF_DC1", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"USER_DEF_DC2",index:"USER_DEF_DC2", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"USE_FG",index:"USE_FG", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"USE_NM",index:"USE_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"BIZCON_FG",index:"BIZCON_FG", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"BIZCON_NM",index:"BIZCON_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"SHIP_TP",index:"SHIP_TP", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"SHIP_NM",index:"SHIP_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
// 체크 (4개)
,{name:"CHECK_DATA",index:"CHECK_DATA", width: 200, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"CHECK_STATE",index:"CHECK_STATE", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"CHECK_ORDER",index:"CHECK_ORDER", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
,{name:"FIXED_ORDER",index:"FIXED_ORDER", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
// 비고
,{name:"REMARK",index:"REMARK", width: 200, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}}
}
}
,{name:"BUS_REG_NO",index:"BUS_REG_NO", width: 150, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"RESIDENT_NO",index:"RESIDENT_NO", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"CEO_NM",index:"CEO_NM", width: 150, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"CEO_NMK",index:"CEO_NMK", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"BUS_TYPE",index:"BUS_TYPE", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"BUS_ITEM",index:"BUS_ITEM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"POST_NO",index:"POST_NO", width: 100, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"ADDR1",index:"ADDR1", width: 300, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"ADDR2",index:"ADDR2", width: 300, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"ADDR_FG",index:"ADDR_FG", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"TEL_NO",index:"TEL_NO", width: 150, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"FAX_NO",index:"FAX_NO", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"HOMEPAGE",index:"HOMEPAGE", width: 200, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"EMAIL",index:"EMAIL", width: 200, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"LIQ_RS",index:"LIQ_RS", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"TR_FG",index:"TR_FG", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"COUNTRY_NM",index:"COUNTRY_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"CLASS_CD",index:"CLASS_CD", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"CLASS_NM",index:"CLASS_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"GRADE_CD",index:"GRADE_CD", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"GRADE_NM",index:"GRADE_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"COLLECT_CLIENT_CD",index:"COLLECT_CLIENT_CD", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"COLLECT_CLIENT_NM",index:"COLLECT_CLIENT_NM", width: 200, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"REGION_CD",index:"REGION_CD", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"REGION_NM",index:"REGION_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"TRADE_START_DT",index:"TRADE_START_DT", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"TRADE_END_DT",index:"TRADE_END_DT", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"USE_YN",index:"USE_YN", width: 80, align:"center", hidden: false, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"CONTRACT_START_DT",index:"CONTRACT_START_DT", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"CONTRACT_END_DT",index:"CONTRACT_END_DT", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"TRADE_TYPE",index:"TRADE_TYPE", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"DISCOUNT_RATE",index:"DISCOUNT_RATE", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"CONTRACT_AMT",index:"CONTRACT_AMT", width: 120, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"MONTHLY_FEE",index:"MONTHLY_FEE", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"PAYMENT_TERM",index:"PAYMENT_TERM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"RCP_TP",index:"RCP_TP", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"CREDIT_LIMIT",index:"CREDIT_LIMIT", width: 120, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"LIMIT_RETURN_DAY",index:"LIMIT_RETURN_DAY", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"PUR_BANK_CD",index:"PUR_BANK_CD", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"PUR_BANK_NM",index:"PUR_BANK_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"PUR_BRANCH_NM",index:"PUR_BRANCH_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"PUR_ACCOUNT_NO",index:"PUR_ACCOUNT_NO", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"PUR_ACCOUNT_HOLDER",index:"PUR_ACCOUNT_HOLDER", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"PUR_PAY_PLAN",index:"PUR_PAY_PLAN", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"PUR_SLIP_TYPE",index:"PUR_SLIP_TYPE", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"PUR_TAX_TYPE",index:"PUR_TAX_TYPE", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"SALE_BANK_CD",index:"SALE_BANK_CD", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"SALE_BANK_NM",index:"SALE_BANK_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"SALE_BRANCH_NM",index:"SALE_BRANCH_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"SALE_ACCOUNT_NO",index:"SALE_ACCOUNT_NO", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"SALE_COLLECT_PLAN",index:"SALE_COLLECT_PLAN", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"SALE_SLIP_TYPE",index:"SALE_SLIP_TYPE", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"SALE_TAX_TYPE",index:"SALE_TAX_TYPE", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"VENDOR_DEPT_NM",index:"VENDOR_DEPT_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"VENDOR_POSITION",index:"VENDOR_POSITION", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"VENDOR_DUTY",index:"VENDOR_DUTY", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"VENDOR_MANAGER_NM",index:"VENDOR_MANAGER_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"VENDOR_TEL",index:"VENDOR_TEL", width: 120, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"VENDOR_EXT",index:"VENDOR_EXT", width: 80, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"VENDOR_MOBILE",index:"VENDOR_MOBILE", width: 120, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"VENDOR_EMAIL",index:"VENDOR_EMAIL", width: 200, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"MGR_DEPT_CD",index:"MGR_DEPT_CD", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"MGR_DEPT_NM",index:"MGR_DEPT_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"MGR_POSITION",index:"MGR_POSITION", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"MGR_DUTY",index:"MGR_DUTY", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"MGR_EMP_CD",index:"MGR_EMP_CD", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"MGR_EMP_NM",index:"MGR_EMP_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"MGR_TEL",index:"MGR_TEL", width: 120, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"MGR_EXT",index:"MGR_EXT", width: 80, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"MGR_MOBILE",index:"MGR_MOBILE", width: 120, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"MGR_EMAIL",index:"MGR_EMAIL", width: 200, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"MGR_REMARK",index:"MGR_REMARK", width: 200, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"REC_REMARK",index:"REC_REMARK", width: 200, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"REC_POST_NO",index:"REC_POST_NO", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"REC_ADDR1",index:"REC_ADDR1", width: 300, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"REC_ADDR2",index:"REC_ADDR2", width: 300, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"REC_ADDR_FG",index:"REC_ADDR_FG", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"REC_TEL",index:"REC_TEL", width: 120, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"REC_FAX",index:"REC_FAX", width: 120, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"PROJECT_CD",index:"PROJECT_CD", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"PROJECT_NM",index:"PROJECT_NM", width: 200, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"PJT_NMK",index:"PJT_NMK", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"EXT_DATA_CD",index:"EXT_DATA_CD", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"E_TAX_YN",index:"E_TAX_YN", width: 80, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"UNIT_REPORT_CLIENT",index:"UNIT_REPORT_CLIENT", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"SUB_BUS_NO",index:"SUB_BUS_NO", width: 120, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"PROCUREMENT_YN",index:"PROCUREMENT_YN", width: 80, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"USER_DEF_DC1",index:"USER_DEF_DC1", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"USER_DEF_DC2",index:"USER_DEF_DC2", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"USE_FG",index:"USE_FG", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"USE_NM",index:"USE_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"BIZCON_FG",index:"BIZCON_FG", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"BIZCON_NM",index:"BIZCON_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"SHIP_TP",index:"SHIP_TP", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"SHIP_NM",index:"SHIP_NM", width: 150, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"PLAN_DAY_TYPE",index:"PLAN_DAY_TYPE", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"PLAN_DAY",index:"PLAN_DAY", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"PURPOSE_TYPE",index:"PURPOSE_TYPE", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"FOR_YN",index:"FOR_YN", width: 80, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"CHECK_DATA",index:"CHECK_DATA", width: 200, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"CHECK_STATE",index:"CHECK_STATE", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"CHECK_ORDER",index:"CHECK_ORDER", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
,{name:"FIXED_ORDER",index:"FIXED_ORDER", width: 100, align:"center", hidden: true, sortable:false, editable:true
,editoptions:{dataInit : function(e){e.style.fontSize = 13;}}
}
]
,rownumbers : true
,viewrecords : true
@@ -385,22 +503,38 @@ $(document).ready(function(){
//gridFn.search();
});
function fn_count(){
$.ajax({
url:"/admin/countExcelclient.do",
type:"POST",
data:{"targetObjId":"${objid}"},
dataType:"json",
async: false,
success:function(data){
// Swal.fire("now_cnt :: " +data.RESULT.NOW_CNT);
$("#dup_cnt").text(data.RESULT.DUP_CNT);
$("#now_cnt").text(data.RESULT.NOW_CNT);
},
error: function(jqxhr, status, error){
}
});
// jqGrid 데이터로 중복 체크 (DB 조회 대신 JavaScript로 처리)
var gridData = grid.getRowData();
var dupCnt = 0;
var nowCnt = 0;
// 각 행의 CLIENT_CD로 DB에 이미 존재하는지 체크
for(var i = 0; i < gridData.length; i++){
var clientCd = gridData[i].CLIENT_CD;
if(clientCd && clientCd.trim() !== ""){
// AJAX로 중복 체크
$.ajax({
url:"/admin/checkDuplicateClientMngList.do",
type:"POST",
data:{"CLIENT_CD": clientCd},
dataType:"json",
async: false,
success:function(data){
if(data.result == "true"){
dupCnt++; // 중복
} else {
nowCnt++; // 신규
}
},
error: function(jqxhr, status, error){
nowCnt++; // 에러 시 신규로 간주
}
});
}
}
$("#dup_cnt").text(dupCnt);
$("#now_cnt").text(nowCnt);
}
//SR자료등록 팝업
function fn_ClientDetail(objId){
@@ -501,8 +635,8 @@ var gridFn = {
,footerSummary: function(){ //자동합계
$("select[id*=_CLIENT_TYPE]").each(function(){
$(this).select2();
} );
$(this).select2();
} );
}
}
@@ -757,7 +891,10 @@ function fn_save(){
<div class="form_popup_title" style="position:relative;">&nbsp;&nbsp;&nbsp;Excel upload<img src="/images/btnExcel.png" style="position:absolute; top:9px; right:135px;"/><span style="position:absolute; top:0px; right:10px; cursor:pointer;" id="templateDownload">Template Download</span></div>
<div id="clientExcelUploadPopupForm">
<div class="fileDnDWrap">
<div id="excelImportDropZone" class="dropzone" style="height:50px;">Drag & Drop 엑셀 템플릿</div>
<div id="excelImportDropZone" class="dropzone" style="height:80px; line-height:80px; text-align:center; border:2px dotted #8296C2; background:#f9f9f9; cursor:pointer;">
<span style="color:#666;">📁 엑셀 파일을 드래그 & 드롭 또는 클릭하여 선택하세요</span>
<input type="file" id="excelFileInput" accept=".xlsx,.xls" style="display:none;">
</div>
<div id="excelImportList">
<table id="excelImportTable" class="excelUploadPopupForm">
<thead>
@@ -776,6 +913,7 @@ function fn_save(){
<div class="btn_wrap">
<div class="plm_btn_wrap" style="padding:0 8 0 8; text-align: right;">
<input type="button" class="plm_btns" value="조회" onclick="gridFn.search();">
<input type="button" class="plm_btns" value="저장" onclick="fn_save();">
<input type="button" class="plm_btns" value="닫기" onclick="window.close();" >

View File

@@ -50,8 +50,8 @@
<script type="text/javascript">
var columns = [
{title:'OBJID', field:'OBJID', visible:false},
{headerHozAlign:'center', hozAlign:'center', width:'50', title:'NO', field:'RNUM'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'기본등록사항[회사코드]', field:'COMP_CODE',
// {headerHozAlign:'center', hozAlign:'center', width:'50', title:'NO', field:'RNUM'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'회사코드', field:'COMP_CODE',
formatter: fnc_createGridAnchorTag,
cellClick: function(e, cell) {
var objid = fnc_checkNull(cell.getData().OBJID);
@@ -60,20 +60,26 @@ var columns = [
},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'거래처코드', field:'CLIENT_CD'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'거래처명', field:'CLIENT_NM'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'TR_NMK', field:'TR_NMK'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'거래처약칭', field:'CLIENT_NMK'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'ATTR_NMK', field:'ATTR_NMK'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'구분', field:'CLIENT_TYPE'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'사업자등록번호', field:'BUS_REG_NO'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'주민등록번호', field:'RESIDENT_NO'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'대표자명', field:'CEO_NM'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'CEO_NMK', field:'CEO_NMK'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'업태', field:'BUS_TYPE'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'종목', field:'BUS_ITEM'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'우편번호', field:'POST_NO'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'주소1', field:'ADDR1'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'주소2', field:'ADDR2'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'ADDR_FG', field:'ADDR_FG'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'전화번호', field:'TEL_NO'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'팩스번호', field:'FAX_NO'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'홈페이지', field:'HOMEPAGE'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'메일주소', field:'EMAIL'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'LIQ_RS', field:'LIQ_RS'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'주류명', field:'TR_FG'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'국가명', field:'COUNTRY_NM'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'분류코드', field:'CLASS_CD'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'분류명', field:'CLASS_NM'},
@@ -82,7 +88,7 @@ var columns = [
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'수금거래처코드', field:'COLLECT_CLIENT_CD'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'수금거래처명', field:'COLLECT_CLIENT_NM'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'지역코드', field:'REGION_CD'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'지역명', field:'REGION_NM'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'지역코드명', field:'REGION_NM'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'거래시작일', field:'TRADE_START_DT'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'거래종료일', field:'TRADE_END_DT'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'사용여부', field:'USE_YN'},
@@ -95,6 +101,7 @@ var columns = [
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'계약금액', field:'CONTRACT_AMT'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'월용역비', field:'MONTHLY_FEE'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'결제조건', field:'PAYMENT_TERM'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'RCP_TP', field:'RCP_TP'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'여신한도금액', field:'CREDIT_LIMIT'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'한도회귀일', field:'LIMIT_RETURN_DAY'},
@@ -110,7 +117,7 @@ var columns = [
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'매출_은행코드', field:'SALE_BANK_CD'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'매출_은행명', field:'SALE_BANK_NM'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'매출_수금은행명', field:'SALE_BANK_NM'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'매출_계좌개설점', field:'SALE_BRANCH_NM'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'매출_계좌번호', field:'SALE_ACCOUNT_NO'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'매출_수금예정', field:'SALE_COLLECT_PLAN'},
@@ -123,8 +130,8 @@ var columns = [
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'업체담당_담당자명', field:'VENDOR_MANAGER_NM'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'업체담당_전화번호', field:'VENDOR_TEL'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'업체담당_내선번호', field:'VENDOR_EXT'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'업체담당_핸드폰', field:'VENDOR_MOBILE'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'업체담당_메일', field:'VENDOR_EMAIL'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'업체담당_핸드폰번호', field:'VENDOR_MOBILE'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'업체담당_메일주소', field:'VENDOR_EMAIL'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'관리담당_부서코드', field:'MGR_DEPT_CD'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'관리담당_부서명', field:'MGR_DEPT_NM'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'관리담당_직급명', field:'MGR_POSITION'},
@@ -133,8 +140,8 @@ var columns = [
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'관리담당_사원명', field:'MGR_EMP_NM'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'관리담당_전화번호', field:'MGR_TEL'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'관리담당_내선번호', field:'MGR_EXT'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'관리담당_핸드폰', field:'MGR_MOBILE'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'관리담당_메일', field:'MGR_EMAIL'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'관리담당_핸드폰번호', field:'MGR_MOBILE'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'관리담당_메일주소', field:'MGR_EMAIL'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'관리담당_비고', field:'MGR_REMARK'},
@@ -142,35 +149,43 @@ var columns = [
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'수신처_우편번호', field:'REC_POST_NO'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'수신처_주소1', field:'REC_ADDR1'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'수신처_주소2', field:'REC_ADDR2'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'REC_ADDR_FG', field:'REC_ADDR_FG'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'수신처_전화번호', field:'REC_TEL'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'수신처_팩스번호', field:'REC_FAX'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'프로젝트코드', field:'PROJECT_CD'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'프로젝트명', field:'PROJECT_NM'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'프로젝트명', field:'PROJECT_NM'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'PJT_NMK', field:'PJT_NMK'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'외부데이터코드', field:'EXT_DATA_CD'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'전자세금계산서여부', field:'E_TAX_YN'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'단위신고거래처', field:'UNIT_REPORT_CLIENT'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'종사업장번호', field:'SUB_BUS_NO'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'조달청다수공급자', field:'PROCUREMENT_YN'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'USER_DEF_DC1', field:'USER_DEF_DC1'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'USER_DEF_DC2', field:'USER_DEF_DC2'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'REGION_CD', field:'REGION_CD'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'REGION_NM', field:'REGION_NM'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'USE_FG', field:'USE_FG'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'USE_NM', field:'USE_NM'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'BIZCON_FG', field:'BIZCON_FG'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'BIZCON_NM', field:'BIZCON_NM'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'SHIP_TP', field:'SHIP_TP'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'SHIP_NM', field:'SHIP_NM'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'예정일구분', field:'PLAN_DAY_TYPE'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'예정일', field:'PLAN_DAY'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'용도구분', field:'PURPOSE_TYPE'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'해외여부', field:'FOR_YN'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'사용자정의1', field:'USER_DEF_DC1'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'사용자정의2', field:'USER_DEF_DC2'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'사용구분', field:'USE_FG'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'사용명', field:'USE_NM'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'거래조건구분', field:'BIZCON_FG'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'거래조건명', field:'BIZCON_NM'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'배송유형', field:'SHIP_TP'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'배송명', field:'SHIP_NM'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'체크데이터', field:'CHECK_DATA'},
{headerHozAlign:'center', hozAlign:'left', width:'120', title:'체크상태', field:'CHECK_STATE'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'체크순서', field:'CHECK_ORDER'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'고정순서', field:'FIXED_ORDER'}
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'FOR_YN', field:'FOR_YN'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'CHECK_DATA', field:'CHECK_DATA'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'CHECK_STATE', field:'CHECK_STATE'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'CHECK_ORDER', field:'CHECK_ORDER'},
{headerHozAlign:'center', hozAlign:'center', width:'120', title:'FIXED_ORDER', field:'FIXED_ORDER'}
];
@@ -246,9 +261,9 @@ function openclientMngListInfoPopUp(objid){
</h2>
<div class="btnArea">
<input type="button" value="조회" class="plm_btns" id="btnSearch">
<input type="button" value="일반거래처등록" class="plm_btns" onclick="javascript:openclientMngListInfoPopUp('');">
<input type="button" value="삭제" class="plm_btns" id="btnDelete">
<!-- <input type="button" value="Excel Upload" class="plm_btns" onclick="saveexcelpop();"> -->
<input type="button" value="일반거래처등록" class="plm_btns" onclick="javascript:openclientMngListInfoPopUp('');">
<input type="button" value="삭제" class="plm_btns" id="btnDelete">
<!-- <input type="button" value="Excel Upload" class="plm_btns" onclick="saveexcelpop();"> -->
</div>
</div>
<div id="plmSearchZon">
@@ -277,8 +292,8 @@ function openclientMngListInfoPopUp(objid){
<td class="label"><label>사용여부</label></td>
<td>
<select name="searchUseStatus" id="searchUseStatus">
<option value="">전체</option>
<option value="Y" selected>사용</option>
<option value="" selected>전체</option>
<option value="Y">사용</option>
<option value="N">미사용</option>
</select>
</td>

View File

@@ -16,11 +16,19 @@ function saveClient(){
data: $(form).serialize(),
dataType: "json",
success: function(result){
alert(result.message);
if(result.resultFlag == "true"){
opener.fn_search();
console.log("result:", result);
alert(result.MESSAGE || result.message);
if(result.RESULTFLAG == "true" || result.resultFlag == "true"){
if(opener && opener.fn_search){
opener.fn_search();
}
self.close();
}
},
error: function(xhr, status, error){
console.error("Error:", error);
console.error("Response:", xhr.responseText);
alert("저장 중 오류가 발생했습니다: " + error);
}
});
}
@@ -38,445 +46,129 @@ function saveClient(){
<input type="hidden" name="writer" value="<%=session.getAttribute("USER_ID")%>">
<table class="pmsPopupForm">
<tr>
<td class="input_title"><label>회사코드</label></td>
<td><input type="text" name="comp_code" value="${info.COMP_CODE}"></td>
</tr>
<tr>
<td class="input_title"><label>거래처코드</label></td>
<td><input type="text" name="client_cd" value="${info.CLIENT_CD}" required></td>
</tr>
<tr>
<td class="input_title"><label>거래처</label></td>
<td><input type="text" name="client_nm" value="${info.CLIENT_NM}" required></td>
</tr>
<tr>
<td class="input_title"><label>거래처약칭</label></td>
<td><input type="text" name="client_nmk" value="${info.CLIENT_NMK}"></td>
</tr>
<tr>
<td class="input_title"><label>구분</label></td>
<td><input type="text" name="client_type" value="${info.CLIENT_TYPE}"></td>
</tr>
<tr>
<td class="input_title"><label>사업자등록번호</label></td>
<td><input type="text" name="bus_reg_no" value="${info.BUS_REG_NO}"></td>
</tr>
<tr>
<td class="input_title"><label>주민등록번호</label></td>
<td><input type="text" name="resident_no" value="${info.RESIDENT_NO}"></td>
</tr>
<tr>
<td class="input_title"><label>대표자명</label></td>
<td><input type="text" name="ceo_nm" value="${info.CEO_NM}"></td>
</tr>
<tr>
<td class="input_title"><label>업태</label></td>
<td><input type="text" name="bus_type" value="${info.BUS_TYPE}"></td>
</tr>
<tr>
<td class="input_title"><label>종목</label></td>
<td><input type="text" name="bus_item" value="${info.BUS_ITEM}"></td>
</tr>
<tr>
<td class="input_title"><label>우편번호</label></td>
<td><input type="text" name="post_no" value="${info.POST_NO}"></td>
</tr>
<tr>
<td class="input_title"><label>주소1</label></td>
<td><input type="text" name="addr1" value="${info.ADDR1}"></td>
</tr>
<tr>
<td class="input_title"><label>주소2</label></td>
<td><input type="text" name="addr2" value="${info.ADDR2}"></td>
</tr>
<tr>
<td class="input_title"><label>전화번호</label></td>
<td><input type="text" name="tel_no" value="${info.TEL_NO}"></td>
</tr>
<tr>
<td class="input_title"><label>팩스번호</label></td>
<td><input type="text" name="fax_no" value="${info.FAX_NO}"></td>
</tr>
<tr>
<td class="input_title"><label>홈페이지</label></td>
<td><input type="text" name="homepage" value="${info.HOMEPAGE}"></td>
</tr>
<tr>
<td class="input_title"><label>메일주소</label></td>
<td><input type="text" name="email" value="${info.EMAIL}"></td>
</tr>
<tr>
<td class="input_title"><label>국가명</label></td>
<td><input type="text" name="country_nm" value="${info.COUNTRY_NM}"></td>
</tr>
<tr>
<td class="input_title"><label>분류코드</label></td>
<td><input type="text" name="class_cd" value="${info.CLASS_CD}"></td>
</tr>
<tr>
<td class="input_title"><label>분류명</label></td>
<td><input type="text" name="class_nm" value="${info.CLASS_NM}"></td>
</tr>
<tr>
<td class="input_title"><label>등급코드</label></td>
<td><input type="text" name="grade_cd" value="${info.GRADE_CD}"></td>
</tr>
<tr>
<td class="input_title"><label>등급명</label></td>
<td><input type="text" name="grade_nm" value="${info.GRADE_NM}"></td>
</tr>
<tr>
<td class="input_title"><label>수금거래처코드</label></td>
<td><input type="text" name="collect_client_cd" value="${info.COLLECT_CLIENT_CD}"></td>
</tr>
<tr>
<td class="input_title"><label>수금거래처명</label></td>
<td><input type="text" name="collect_client_nm" value="${info.COLLECT_CLIENT_NM}"></td>
</tr>
<tr>
<td class="input_title"><label>지역코드</label></td>
<td><input type="text" name="region_cd" value="${info.REGION_CD}"></td>
</tr>
<tr>
<td class="input_title"><label>지역명</label></td>
<td><input type="text" name="region_nm" value="${info.REGION_NM}"></td>
</tr>
<tr>
<td class="input_title"><label>거래시작일</label></td>
<td><input type="text" name="trade_start_dt" value="${info.TRADE_START_DT}"></td>
</tr>
<tr>
<td class="input_title"><label>거래종료일</label></td>
<td><input type="text" name="trade_end_dt" value="${info.TRADE_END_DT}"></td>
</tr>
<tr>
<td class="input_title"><label>사용여부</label></td>
<td>
<select name="use_yn">
<option value="Y" ${empty info.USE_YN or info.USE_YN eq 'Y' ? 'selected' : ''}>사용</option>
<option value="N" ${info.USE_YN eq 'N' ? 'selected' : ''}>미사용</option>
</select>
</td>
</tr>
<tr>
<td class="input_title"><label>계약시작일</label></td>
<td><input type="text" name="contract_start_dt" value="${info.CONTRACT_START_DT}"></td>
</tr>
<tr>
<td class="input_title"><label>계약종료일</label></td>
<td><input type="text" name="contract_end_dt" value="${info.CONTRACT_END_DT}"></td>
</tr>
<tr>
<td class="input_title"><label>거래형태</label></td>
<td><input type="text" name="trade_type" value="${info.TRADE_TYPE}"></td>
</tr>
<tr>
<td class="input_title"><label>할인율</label></td>
<td><input type="text" name="discount_rate" value="${info.DISCOUNT_RATE}"></td>
</tr>
<tr>
<td class="input_title"><label>계약금액</label></td>
<td><input type="text" name="contract_amt" value="${info.CONTRACT_AMT}"></td>
</tr>
<tr>
<td class="input_title"><label>월용역비</label></td>
<td><input type="text" name="monthly_fee" value="${info.MONTHLY_FEE}"></td>
</tr>
<tr>
<td class="input_title"><label>결제조건</label></td>
<td><input type="text" name="payment_term" value="${info.PAYMENT_TERM}"></td>
</tr>
<tr>
<td class="input_title"><label>여신한도금액</label></td>
<td><input type="text" name="credit_limit" value="${info.CREDIT_LIMIT}"></td>
</tr>
<tr>
<td class="input_title"><label>한도회귀일</label></td>
<td><input type="text" name="limit_return_day" value="${info.LIMIT_RETURN_DAY}"></td>
</tr>
<tr>
<td class="input_title"><label>매입_금융기관코드</label></td>
<td><input type="text" name="pur_bank_cd" value="${info.PUR_BANK_CD}"></td>
</tr>
<tr>
<td class="input_title"><label>매입_금융기관명</label></td>
<td><input type="text" name="pur_bank_nm" value="${info.PUR_BANK_NM}"></td>
</tr>
<tr>
<td class="input_title"><label>매입_지점명</label></td>
<td><input type="text" name="pur_branch_nm" value="${info.PUR_BRANCH_NM}"></td>
</tr>
<tr>
<td class="input_title"><label>매입_결제계좌</label></td>
<td><input type="text" name="pur_account_no" value="${info.PUR_ACCOUNT_NO}"></td>
</tr>
<tr>
<td class="input_title"><label>매입_예금주명</label></td>
<td><input type="text" name="pur_account_holder" value="${info.PUR_ACCOUNT_HOLDER}"></td>
</tr>
<tr>
<td class="input_title"><label>매입_지급예정</label></td>
<td><input type="text" name="pur_pay_plan" value="${info.PUR_PAY_PLAN}"></td>
</tr>
<tr>
<td class="input_title"><label>매입_전표유형</label></td>
<td><input type="text" name="pur_slip_type" value="${info.PUR_SLIP_TYPE}"></td>
</tr>
<tr>
<td class="input_title"><label>매입_세무구분</label></td>
<td><input type="text" name="pur_tax_type" value="${info.PUR_TAX_TYPE}"></td>
</tr>
<tr>
<td class="input_title"><label>매출_은행코드</label></td>
<td><input type="text" name="sale_bank_cd" value="${info.SALE_BANK_CD}"></td>
</tr>
<tr>
<td class="input_title"><label>매출_은행명</label></td>
<td><input type="text" name="sale_bank_nm" value="${info.SALE_BANK_NM}"></td>
</tr>
<tr>
<td class="input_title"><label>매출_계좌개설점</label></td>
<td><input type="text" name="sale_branch_nm" value="${info.SALE_BRANCH_NM}"></td>
</tr>
<tr>
<td class="input_title"><label>매출_계좌번호</label></td>
<td><input type="text" name="sale_account_no" value="${info.SALE_ACCOUNT_NO}"></td>
</tr>
<tr>
<td class="input_title"><label>매출_수금예정</label></td>
<td><input type="text" name="sale_collect_plan" value="${info.SALE_COLLECT_PLAN}"></td>
</tr>
<tr>
<td class="input_title"><label>매출_전표유형</label></td>
<td><input type="text" name="sale_slip_type" value="${info.SALE_SLIP_TYPE}"></td>
</tr>
<tr>
<td class="input_title"><label>매출_세무구분</label></td>
<td><input type="text" name="sale_tax_type" value="${info.SALE_TAX_TYPE}"></td>
</tr>
<tr>
<td class="input_title"><label>업체담당_부서명</label></td>
<td><input type="text" name="vendor_dept_nm" value="${info.VENDOR_DEPT_NM}"></td>
</tr>
<tr>
<td class="input_title"><label>업체담당_직급</label></td>
<td><input type="text" name="vendor_position" value="${info.VENDOR_POSITION}"></td>
</tr>
<tr>
<td class="input_title"><label>업체담당_담당업무</label></td>
<td><input type="text" name="vendor_duty" value="${info.VENDOR_DUTY}"></td>
</tr>
<tr>
<td class="input_title"><label>업체담당_담당자명</label></td>
<td><input type="text" name="vendor_manager_nm" value="${info.VENDOR_MANAGER_NM}"></td>
</tr>
<tr>
<td class="input_title"><label>업체담당_전화번호</label></td>
<td><input type="text" name="vendor_tel" value="${info.VENDOR_TEL}"></td>
</tr>
<tr>
<td class="input_title"><label>업체담당_내선번호</label></td>
<td><input type="text" name="vendor_ext" value="${info.VENDOR_EXT}"></td>
</tr>
<tr>
<td class="input_title"><label>업체담당_핸드폰</label></td>
<td><input type="text" name="vendor_mobile" value="${info.VENDOR_MOBILE}"></td>
</tr>
<tr>
<td class="input_title"><label>업체담당_메일</label></td>
<td><input type="text" name="vendor_email" value="${info.VENDOR_EMAIL}"></td>
</tr>
<tr>
<td class="input_title"><label>관리담당_부서코드</label></td>
<td><input type="text" name="mgr_dept_cd" value="${info.MGR_DEPT_CD}"></td>
</tr>
<tr>
<td class="input_title"><label>관리담당_부서명</label></td>
<td><input type="text" name="mgr_dept_nm" value="${info.MGR_DEPT_NM}"></td>
</tr>
<tr>
<td class="input_title"><label>관리담당_직급명</label></td>
<td><input type="text" name="mgr_position" value="${info.MGR_POSITION}"></td>
</tr>
<tr>
<td class="input_title"><label>관리담당_담당업무</label></td>
<td><input type="text" name="mgr_duty" value="${info.MGR_DUTY}"></td>
</tr>
<tr>
<td class="input_title"><label>관리담당_사원코드</label></td>
<td><input type="text" name="mgr_emp_cd" value="${info.MGR_EMP_CD}"></td>
</tr>
<tr>
<td class="input_title"><label>관리담당_사원명</label></td>
<td><input type="text" name="mgr_emp_nm" value="${info.MGR_EMP_NM}"></td>
</tr>
<tr>
<td class="input_title"><label>관리담당_전화번호</label></td>
<td><input type="text" name="mgr_tel" value="${info.MGR_TEL}"></td>
</tr>
<tr>
<td class="input_title"><label>관리담당_내선번호</label></td>
<td><input type="text" name="mgr_ext" value="${info.MGR_EXT}"></td>
</tr>
<tr>
<td class="input_title"><label>관리담당_핸드폰</label></td>
<td><input type="text" name="mgr_mobile" value="${info.MGR_MOBILE}"></td>
</tr>
<tr>
<td class="input_title"><label>관리담당_메일</label></td>
<td><input type="text" name="mgr_email" value="${info.MGR_EMAIL}"></td>
</tr>
<tr>
<td class="input_title"><label>관리담당_비고</label></td>
<td><input type="text" name="mgr_remark" value="${info.MGR_REMARK}"></td>
</tr>
<tr>
<td class="input_title"><label>수신처_비고</label></td>
<td><input type="text" name="rec_remark" value="${info.REC_REMARK}"></td>
</tr>
<tr>
<td class="input_title"><label>수신처_우편번호</label></td>
<td><input type="text" name="rec_post_no" value="${info.REC_POST_NO}"></td>
</tr>
<tr>
<td class="input_title"><label>수신처_주소1</label></td>
<td><input type="text" name="rec_addr1" value="${info.REC_ADDR1}"></td>
</tr>
<tr>
<td class="input_title"><label>수신처_주소2</label></td>
<td><input type="text" name="rec_addr2" value="${info.REC_ADDR2}"></td>
</tr>
<tr>
<td class="input_title"><label>수신처_전화번호</label></td>
<td><input type="text" name="rec_tel" value="${info.REC_TEL}"></td>
</tr>
<tr>
<td class="input_title"><label>수신처_팩스번호</label></td>
<td><input type="text" name="rec_fax" value="${info.REC_FAX}"></td>
</tr>
<tr>
<td class="input_title"><label>프로젝트코드</label></td>
<td><input type="text" name="project_cd" value="${info.PROJECT_CD}"></td>
</tr>
<tr>
<td class="input_title"><label>프로젝트명</label></td>
<td><input type="text" name="project_nm" value="${info.PROJECT_NM}"></td>
</tr>
<tr>
<td class="input_title"><label>외부데이터코드</label></td>
<td><input type="text" name="ext_data_cd" value="${info.EXT_DATA_CD}"></td>
</tr>
<tr>
<td class="input_title"><label>전자세금계산서여부</label></td>
<td><input type="text" name="e_tax_yn" value="${info.E_TAX_YN}"></td>
</tr>
<tr>
<td class="input_title"><label>단위신고거래처</label></td>
<td><input type="text" name="unit_report_client" value="${info.UNIT_REPORT_CLIENT}"></td>
</tr>
<tr>
<td class="input_title"><label>종사업장번호</label></td>
<td><input type="text" name="sub_bus_no" value="${info.SUB_BUS_NO}"></td>
</tr>
<tr>
<td class="input_title"><label>조달청다수공급자</label></td>
<td><input type="text" name="procurement_yn" value="${info.PROCUREMENT_YN}"></td>
</tr>
<tr>
<td class="input_title"><label>예정일구분</label></td>
<td><input type="text" name="plan_day_type" value="${info.PLAN_DAY_TYPE}"></td>
</tr>
<tr>
<td class="input_title"><label>예정일</label></td>
<td><input type="text" name="plan_day" value="${info.PLAN_DAY}"></td>
</tr>
<tr>
<td class="input_title"><label>용도구분</label></td>
<td><input type="text" name="purpose_type" value="${info.PURPOSE_TYPE}"></td>
</tr>
<tr>
<td class="input_title"><label>해외여부</label></td>
<td><input type="text" name="for_yn" value="${info.FOR_YN}"></td>
</tr>
<tr>
<td class="input_title"><label>사용자정의1</label></td>
<td><input type="text" name="user_def_dc1" value="${info.USER_DEF_DC1}"></td>
</tr>
<tr>
<td class="input_title"><label>사용자정의2</label></td>
<td><input type="text" name="user_def_dc2" value="${info.USER_DEF_DC2}"></td>
</tr>
<tr>
<td class="input_title"><label>사용구분</label></td>
<td><input type="text" name="use_fg" value="${info.USE_FG}"></td>
</tr>
<tr>
<td class="input_title"><label>사용명</label></td>
<td><input type="text" name="use_nm" value="${info.USE_NM}"></td>
</tr>
<tr>
<td class="input_title"><label>거래조건구분</label></td>
<td><input type="text" name="bizcon_fg" value="${info.BIZCON_FG}"></td>
</tr>
<tr>
<td class="input_title"><label>거래조건명</label></td>
<td><input type="text" name="bizcon_nm" value="${info.BIZCON_NM}"></td>
</tr>
<tr>
<td class="input_title"><label>배송유형</label></td>
<td><input type="text" name="ship_tp" value="${info.SHIP_TP}"></td>
</tr>
<tr>
<td class="input_title"><label>배송명</label></td>
<td><input type="text" name="ship_nm" value="${info.SHIP_NM}"></td>
</tr>
<tr>
<td class="input_title"><label>체크데이터</label></td>
<td><input type="text" name="check_data" value="${info.CHECK_DATA}"></td>
</tr>
<tr>
<td class="input_title"><label>체크상태</label></td>
<td><input type="text" name="check_state" value="${info.CHECK_STATE}"></td>
</tr>
<tr>
<td class="input_title"><label>체크순서</label></td>
<td><input type="text" name="check_order" value="${info.CHECK_ORDER}"></td>
</tr>
<tr>
<td class="input_title"><label>고정순서</label></td>
<td><input type="text" name="fixed_order" value="${info.FIXED_ORDER}"></td>
</tr>
<tr>
<td class="input_title"><label>INSERT_ID</label></td>
<td><input type="text" name="insert_id" value="${info.INSERT_ID}"></td>
</tr>
<tr>
<td class="input_title"><label>INSERT_IP</label></td>
<td><input type="text" name="insert_ip" value="${info.INSERT_IP}"></td>
</tr>
<tr>
<td class="input_title"><label>INSERT_DT</label></td>
<td><input type="text" name="insert_dt" value="${info.INSERT_DT}" placeholder="YYYY-MM-DD HH:MM:SS"></td>
</tr>
<tr>
<td class="input_title"><label>MODIFY_ID</label></td>
<td><input type="text" name="modify_id" value="${info.MODIFY_ID}"></td>
</tr>
<tr>
<td class="input_title"><label>MODIFY_IP</label></td>
<td><input type="text" name="modify_ip" value="${info.MODIFY_IP}"></td>
</tr>
<tr>
<td class="input_title"><label>MODIFY_DT</label></td>
<td><input type="text" name="modify_dt" value="${info.MODIFY_DT}" placeholder="YYYY-MM-DD HH:MM:SS"></td>
</tr>
<colgroup>
<col width="15%">
<col width="85%">
</colgroup>
<tr><td class="input_title"><label>회사코드</label></td><td><input type="text" name="COMP_CODE" value="${info.COMP_CODE}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>거래처코드</label></td><td><input type="text" name="CLIENT_CD" value="${info.CLIENT_CD}" required style="width:95%;"></td></tr>
<tr><td class="input_title"><label>거래처명</label></td><td><input type="text" name="CLIENT_NM" value="${info.CLIENT_NM}" required style="width:95%;"></td></tr>
<tr><td class="input_title"><label>TR_NMK</label></td><td><input type="text" name="TR_NMK" value="${info.TR_NMK}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>거래처약칭</label></td><td><input type="text" name="CLIENT_NMK" value="${info.CLIENT_NMK}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>ATTR_NMK</label></td><td><input type="text" name="ATTR_NMK" value="${info.ATTR_NMK}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>구분</label></td><td><input type="text" name="CLIENT_TYPE" value="${info.CLIENT_TYPE}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>사업자등록번호</label></td><td><input type="text" name="BUS_REG_NO" value="${info.BUS_REG_NO}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>주민등록번호</label></td><td><input type="text" name="RESIDENT_NO" value="${info.RESIDENT_NO}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>대표자명</label></td><td><input type="text" name="CEO_NM" value="${info.CEO_NM}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>CEO_NMK</label></td><td><input type="text" name="CEO_NMK" value="${info.CEO_NMK}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>업태</label></td><td><input type="text" name="BUS_TYPE" value="${info.BUS_TYPE}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>종목</label></td><td><input type="text" name="BUS_ITEM" value="${info.BUS_ITEM}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>우편번호</label></td><td><input type="text" name="POST_NO" value="${info.POST_NO}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>주소1</label></td><td><input type="text" name="ADDR1" value="${info.ADDR1}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>주소2</label></td><td><input type="text" name="ADDR2" value="${info.ADDR2}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>ADDR_FG</label></td><td><input type="text" name="ADDR_FG" value="${info.ADDR_FG}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>전화번호</label></td><td><input type="text" name="TEL_NO" value="${info.TEL_NO}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>팩스번호</label></td><td><input type="text" name="FAX_NO" value="${info.FAX_NO}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>홈페이지</label></td><td><input type="text" name="HOMEPAGE" value="${info.HOMEPAGE}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>메일주소</label></td><td><input type="text" name="EMAIL" value="${info.EMAIL}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>LIQ_RS</label></td><td><input type="text" name="LIQ_RS" value="${info.LIQ_RS}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>주류명</label></td><td><input type="text" name="TR_FG" value="${info.TR_FG}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>국가명</label></td><td><input type="text" name="COUNTRY_NM" value="${info.COUNTRY_NM}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>분류코드</label></td><td><input type="text" name="CLASS_CD" value="${info.CLASS_CD}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>분류명</label></td><td><input type="text" name="CLASS_NM" value="${info.CLASS_NM}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>등급코드</label></td><td><input type="text" name="GRADE_CD" value="${info.GRADE_CD}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>등급명</label></td><td><input type="text" name="GRADE_NM" value="${info.GRADE_NM}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>수금거래처코드</label></td><td><input type="text" name="COLLECT_CLIENT_CD" value="${info.COLLECT_CLIENT_CD}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>수금거래처명</label></td><td><input type="text" name="COLLECT_CLIENT_NM" value="${info.COLLECT_CLIENT_NM}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>지역코드명</label></td><td><input type="text" name="REGION_CD" value="${info.REGION_CD}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>지역명</label></td><td><input type="text" name="REGION_NM" value="${info.REGION_NM}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>거래시작일</label></td><td><input type="text" name="TRADE_START_DT" value="${info.TRADE_START_DT}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>거래종료일</label></td><td><input type="text" name="TRADE_END_DT" value="${info.TRADE_END_DT}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>사용여부</label></td><td><input type="text" name="USE_YN" value="${info.USE_YN}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>계약시작일</label></td><td><input type="text" name="CONTRACT_START_DT" value="${info.CONTRACT_START_DT}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>계약종료일</label></td><td><input type="text" name="CONTRACT_END_DT" value="${info.CONTRACT_END_DT}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>거래형태</label></td><td><input type="text" name="TRADE_TYPE" value="${info.TRADE_TYPE}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>할인율</label></td><td><input type="text" name="DISCOUNT_RATE" value="${info.DISCOUNT_RATE}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>계약금액</label></td><td><input type="text" name="CONTRACT_AMT" value="${info.CONTRACT_AMT}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>월용역비</label></td><td><input type="text" name="MONTHLY_FEE" value="${info.MONTHLY_FEE}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>결제조건</label></td><td><input type="text" name="PAYMENT_TERM" value="${info.PAYMENT_TERM}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>RCP_TP</label></td><td><input type="text" name="RCP_TP" value="${info.RCP_TP}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>여신한도금액</label></td><td><input type="text" name="CREDIT_LIMIT" value="${info.CREDIT_LIMIT}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>한도회귀일</label></td><td><input type="text" name="LIMIT_RETURN_DAY" value="${info.LIMIT_RETURN_DAY}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>매입_금융기관코드</label></td><td><input type="text" name="PUR_BANK_CD" value="${info.PUR_BANK_CD}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>매입_금융기관명</label></td><td><input type="text" name="PUR_BANK_NM" value="${info.PUR_BANK_NM}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>매입_지점명</label></td><td><input type="text" name="PUR_BRANCH_NM" value="${info.PUR_BRANCH_NM}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>매입_결제계좌</label></td><td><input type="text" name="PUR_ACCOUNT_NO" value="${info.PUR_ACCOUNT_NO}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>매입_예금주명</label></td><td><input type="text" name="PUR_ACCOUNT_HOLDER" value="${info.PUR_ACCOUNT_HOLDER}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>매입_지급예정</label></td><td><input type="text" name="PUR_PAY_PLAN" value="${info.PUR_PAY_PLAN}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>매입_전표유형</label></td><td><input type="text" name="PUR_SLIP_TYPE" value="${info.PUR_SLIP_TYPE}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>매입_세무구분</label></td><td><input type="text" name="PUR_TAX_TYPE" value="${info.PUR_TAX_TYPE}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>매출_은행코드</label></td><td><input type="text" name="SALE_BANK_CD" value="${info.SALE_BANK_CD}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>매출_수금은행명</label></td><td><input type="text" name="SALE_BANK_NM" value="${info.SALE_BANK_NM}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>매출_계좌개설점</label></td><td><input type="text" name="SALE_BRANCH_NM" value="${info.SALE_BRANCH_NM}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>매출_계좌번호</label></td><td><input type="text" name="SALE_ACCOUNT_NO" value="${info.SALE_ACCOUNT_NO}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>매출_수금예정</label></td><td><input type="text" name="SALE_COLLECT_PLAN" value="${info.SALE_COLLECT_PLAN}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>매출_전표유형</label></td><td><input type="text" name="SALE_SLIP_TYPE" value="${info.SALE_SLIP_TYPE}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>매출_세무구분</label></td><td><input type="text" name="SALE_TAX_TYPE" value="${info.SALE_TAX_TYPE}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>업체담당_부서명</label></td><td><input type="text" name="VENDOR_DEPT_NM" value="${info.VENDOR_DEPT_NM}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>업체담당_직급</label></td><td><input type="text" name="VENDOR_POSITION" value="${info.VENDOR_POSITION}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>업체담당_담당업무</label></td><td><input type="text" name="VENDOR_DUTY" value="${info.VENDOR_DUTY}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>업체담당_담당자명</label></td><td><input type="text" name="VENDOR_MANAGER_NM" value="${info.VENDOR_MANAGER_NM}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>업체담당_전화번호</label></td><td><input type="text" name="VENDOR_TEL" value="${info.VENDOR_TEL}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>업체담당_내선번호</label></td><td><input type="text" name="VENDOR_EXT" value="${info.VENDOR_EXT}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>업체담당_핸드폰번호</label></td><td><input type="text" name="VENDOR_MOBILE" value="${info.VENDOR_MOBILE}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>업체담당_메일주소</label></td><td><input type="text" name="VENDOR_EMAIL" value="${info.VENDOR_EMAIL}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>관리담당_부서코드</label></td><td><input type="text" name="MGR_DEPT_CD" value="${info.MGR_DEPT_CD}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>관리담당_부서명</label></td><td><input type="text" name="MGR_DEPT_NM" value="${info.MGR_DEPT_NM}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>관리담당_직급명</label></td><td><input type="text" name="MGR_POSITION" value="${info.MGR_POSITION}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>관리담당_담당업무</label></td><td><input type="text" name="MGR_DUTY" value="${info.MGR_DUTY}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>관리담당_사원코드</label></td><td><input type="text" name="MGR_EMP_CD" value="${info.MGR_EMP_CD}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>관리담당_사원명</label></td><td><input type="text" name="MGR_EMP_NM" value="${info.MGR_EMP_NM}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>관리담당_전화번호</label></td><td><input type="text" name="MGR_TEL" value="${info.MGR_TEL}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>관리담당_내선번호</label></td><td><input type="text" name="MGR_EXT" value="${info.MGR_EXT}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>관리담당_핸드폰번호</label></td><td><input type="text" name="MGR_MOBILE" value="${info.MGR_MOBILE}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>관리담당_메일주소</label></td><td><input type="text" name="MGR_EMAIL" value="${info.MGR_EMAIL}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>관리담당_비고</label></td><td><input type="text" name="MGR_REMARK" value="${info.MGR_REMARK}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>수신처_비고</label></td><td><input type="text" name="REC_REMARK" value="${info.REC_REMARK}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>수신처_우편번호</label></td><td><input type="text" name="REC_POST_NO" value="${info.REC_POST_NO}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>수신처_주소1</label></td><td><input type="text" name="REC_ADDR1" value="${info.REC_ADDR1}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>수신처_주소2</label></td><td><input type="text" name="REC_ADDR2" value="${info.REC_ADDR2}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>REC_ADDR_FG</label></td><td><input type="text" name="REC_ADDR_FG" value="${info.REC_ADDR_FG}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>수신처_전화번호</label></td><td><input type="text" name="REC_TEL" value="${info.REC_TEL}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>수신처_팩스번호</label></td><td><input type="text" name="REC_FAX" value="${info.REC_FAX}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>프로젝트코드</label></td><td><input type="text" name="PROJECT_CD" value="${info.PROJECT_CD}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>프로젝트명</label></td><td><input type="text" name="PROJECT_NM" value="${info.PROJECT_NM}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>PJT_NMK</label></td><td><input type="text" name="PJT_NMK" value="${info.PJT_NMK}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>외부데이터코드</label></td><td><input type="text" name="EXT_DATA_CD" value="${info.EXT_DATA_CD}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>전자세금계산서여부</label></td><td><input type="text" name="E_TAX_YN" value="${info.E_TAX_YN}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>단위신고거래처</label></td><td><input type="text" name="UNIT_REPORT_CLIENT" value="${info.UNIT_REPORT_CLIENT}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>종사업장번호</label></td><td><input type="text" name="SUB_BUS_NO" value="${info.SUB_BUS_NO}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>조달청다수공급자</label></td><td><input type="text" name="PROCUREMENT_YN" value="${info.PROCUREMENT_YN}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>USER_DEF_DC1</label></td><td><input type="text" name="USER_DEF_DC1" value="${info.USER_DEF_DC1}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>USER_DEF_DC2</label></td><td><input type="text" name="USER_DEF_DC2" value="${info.USER_DEF_DC2}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>USE_FG</label></td><td><input type="text" name="USE_FG" value="${info.USE_FG}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>USE_NM</label></td><td><input type="text" name="USE_NM" value="${info.USE_NM}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>BIZCON_FG</label></td><td><input type="text" name="BIZCON_FG" value="${info.BIZCON_FG}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>BIZCON_NM</label></td><td><input type="text" name="BIZCON_NM" value="${info.BIZCON_NM}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>SHIP_TP</label></td><td><input type="text" name="SHIP_TP" value="${info.SHIP_TP}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>SHIP_NM</label></td><td><input type="text" name="SHIP_NM" value="${info.SHIP_NM}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>예정일구분</label></td><td><input type="text" name="PLAN_DAY_TYPE" value="${info.PLAN_DAY_TYPE}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>예정일</label></td><td><input type="text" name="PLAN_DAY" value="${info.PLAN_DAY}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>용도구분</label></td><td><input type="text" name="PURPOSE_TYPE" value="${info.PURPOSE_TYPE}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>FOR_YN</label></td><td><input type="text" name="FOR_YN" value="${info.FOR_YN}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>CHECK_DATA</label></td><td><input type="text" name="CHECK_DATA" value="${info.CHECK_DATA}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>CHECK_STATE</label></td><td><input type="text" name="CHECK_STATE" value="${info.CHECK_STATE}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>CHECK_ORDER</label></td><td><input type="text" name="CHECK_ORDER" value="${info.CHECK_ORDER}" style="width:95%;"></td></tr>
<tr><td class="input_title"><label>FIXED_ORDER</label></td><td><input type="text" name="FIXED_ORDER" value="${info.FIXED_ORDER}" style="width:95%;"></td></tr>
</table>
<div class="btn_area" style="text-align:center; margin-top:20px;">
<input type="button" value="저장" class="plm_btns" onclick="saveClient();">
<input type="button" value="닫기" class="plm_btns" onclick="window.close();">
</div>
</form>
</div>
<div id="adminPopupBtnWrap">
<button type="button" class="btns" onclick="saveClient()">저장</button>
</div>
</section>
</body>
</html>

View File

@@ -3,8 +3,8 @@
<%@ page import="java.util.*" %>
<%@include file= "/init.jsp" %>
<%
String searchLocationCode = CommonUtils.checkNull(request.getParameter("searchLocationCode"));
String searchLocationName = CommonUtils.checkNull(request.getParameter("searchLocationName"));
String searchLocationCode = CommonUtils.checkNull(request.getParameter("searchLocationCode"));
String searchLocationName = CommonUtils.checkNull(request.getParameter("searchLocationName"));
%>
<!DOCTYPE html>
<html>
@@ -101,7 +101,7 @@ function fn_delete(){
}
},
error: function(jqxhr, status, error){
}
}
});
}
});
@@ -125,13 +125,13 @@ function openwarehouseListInfoPopUp(objid){
hiddenForm.submit();
}
</script>
</head>
</head>
<body style="overflow-y: hidden;">
<form name="hiddenForm" id="hiddenForm">
<input type="hidden" name="objid">
</form>
<form name="form1" id="form1" method="post">
<input type="hidden" name="status" id="status">
<input type="hidden" name="status" id="status">
<div class="content-box">
<div class="content-box-s">
<div class="plm_menu_name_gdnsi">
@@ -143,19 +143,19 @@ function openwarehouseListInfoPopUp(objid){
<input type="button" value="창고등록" class="plm_btns" onclick="javascript:openwarehouseListInfoPopUp('');">
<input type="button" value="삭제" class="plm_btns" id="btnDelete">
</div>
</div>
</div>
<div id="plmSearchZon">
<table>
<tbody>
<tr>
<tbody>
<tr>
<td class="label"><label>위치코드</label></td>
<td><input type="text" name="searchLocationCode" id="searchLocationCode" value="<%=searchLocationCode%>"></td>
<td class="label"><label>위치명</label></td>
<td><input type="text" name="searchLocationName" id="searchLocationName" value="<%=searchLocationName%>"></td>
</tr>
</tbody>
</table>
</div>
</tr>
</tbody>
</table>
</div>
<%@include file="/WEB-INF/view/common/common_gridArea.jsp" %>

Binary file not shown.

View File

@@ -41,6 +41,12 @@ public class Constants {
//PART Import 템플릿 업로드 디렉토리
public static final String PART_ATTACH_FILE_PAKEGE = FILE_STORAGE + "/PART_ATTACH_FILE_PACKAGE";
//CLIENT Import 템플릿 업로드 디렉토리
public static final String CLIENT_EXCEL_IMPORT_UPLOAD = FILE_STORAGE + "/CLIENT_EXCEL_IMPORT";
//CLIENT Import 첨부파일 업로드 디렉토리
public static final String CLIENT_IMPORT_ATTACH_UPLOAD = FILE_STORAGE + "/CLIENT_IMPORT_ATTACH";
public static final String SYSTEM_CHARSET = "UTF-8";

View File

@@ -1,5 +1,6 @@
package com.pms.controller;
import java.io.File;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -8,6 +9,8 @@ import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import com.oreilly.servlet.MultipartRequest;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
@@ -15,7 +18,9 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import com.pms.common.FileRenameClass;
import com.pms.common.Message;
import com.pms.common.bean.PersonBean;
import com.pms.common.service.BaseService;
import com.pms.common.utils.CommonUtils;
import com.pms.common.utils.Constants;
@@ -1527,6 +1532,10 @@ public String deleteWarehouse(HttpServletRequest request, @RequestParam Map<Stri
@ResponseBody
public Map getclientMngListPagingGrid(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
commonService.selectListPagingNew("admin.getClientMngList", request, paramMap);
System.out.println("========== clientMngListPagingGridList ==========");
System.out.println("RESULTLIST size: " + ((java.util.List)paramMap.get("RESULTLIST")).size());
System.out.println("TOTAL_CNT: " + paramMap.get("TOTAL_CNT"));
System.out.println("================================================");
return paramMap;
}
@@ -1579,26 +1588,35 @@ public String deleteWarehouse(HttpServletRequest request, @RequestParam Map<Stri
* @param paramMap
* @return
*/
@RequestMapping("/admin/saveClientMngInfo.do")
public String saveClientMngInfo(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
HashMap resultMap = new HashMap();
try{
ArrayList existList = adminService.getDuplicateClientMngListInfo(request, paramMap);
if(null != existList && 0 < existList.size()){
resultMap = CommonUtils.setReqAttrResultMsg(request, "중복된 일반거래처명이 존재 합니다.", "false", null,null);
}else{
adminService.saveClientMngInfo(request, paramMap);
resultMap = CommonUtils.setReqAttrResultMsg(request, "저장하였습니다.", "true", null,null);
}
}catch(Exception e){
e.printStackTrace();
resultMap = CommonUtils.setReqAttrResultMsg(request, "오류가 발생하였습니다.", "false", e,null);
}
request.setAttribute("RESULT", CommonUtils.getJsonMap(resultMap));
@RequestMapping("/admin/saveClientMngInfo.do")
@ResponseBody
public Map<String, Object> saveClientMngInfo(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
Map<String, Object> resultMap = new HashMap<String, Object>();
try{
System.out.println("========== saveClientMngInfo paramMap ==========");
System.out.println("COMP_CODE: " + paramMap.get("COMP_CODE"));
System.out.println("CLIENT_CD: " + paramMap.get("CLIENT_CD"));
System.out.println("CLIENT_NM: " + paramMap.get("CLIENT_NM"));
System.out.println("OBJID: " + paramMap.get("objid"));
System.out.println("===============================================");
return "/ajax/ajaxResult";
ArrayList existList = adminService.getDuplicateClientMngListInfo(request, paramMap);
if(null != existList && 0 < existList.size()){
resultMap.put("message", "중복된 일반거래처명이 존재 합니다.");
resultMap.put("resultFlag", "false");
}else{
adminService.saveClientMngInfo(request, paramMap);
resultMap.put("message", "저장하였습니다.");
resultMap.put("resultFlag", "true");
}
}catch(Exception e){
e.printStackTrace();
resultMap.put("message", "오류가 발생하였습니다: " + e.getMessage());
resultMap.put("resultFlag", "false");
}
return resultMap;
}
/**
* 일반거래처 관리 삭제 11월 20일 이희진
@@ -1622,8 +1640,170 @@ public String deleteClient(HttpServletRequest request, @RequestParam Map<String,
return "/ajax/ajaxResult";
}
/**
* Excel을 이용한 Client 등록 팝업을 호출한다.
* @param request
* @param paramMap
* @return
*/
@RequestMapping("/admin/clientExcelImportPopUp.do")
public String clientExcelImportPopUp(HttpSession session, HttpServletRequest request, @RequestParam Map paramMap){
Map code_map = new HashMap();
String objid="";
try{
objid = CommonUtils.createObjId();
//jqGrid내에서 사용할 코드
Map param = new HashMap();
//client_type (거래처 구분)
param.put("parentCodeId", "0000059");
code_map.put("client_type", commonService.getJqGridSelectBoxJsonData("common.getCodeList2", param, "선택"));
// TODO: comp_code 쿼리 추가 필요
// code_map.put("comp_code",commonService.bizMakeOptionList("", (String)paramMap.get("comp_code"),"common.getCompCodeselect"));
code_map.put("comp_code", ""); // 임시로 빈 값
request.setAttribute("code_map",code_map);
request.setAttribute("objid",objid);
request.setAttribute("client_mgmt_objid",(String)paramMap.get("client_mgmt_objid"));
}catch(Exception e){
e.printStackTrace();
}
return "/admin/clientMng/clientExcelImportPopUp";
}
/**
* 업로드된 Excel File을 통해서 데이터를 Parsing하여 목록으로 return.
* @param request
* @param paramMap
* @return
*/
@RequestMapping("/admin/parsingExcelClient.do")
public String parsingExcelClient(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
ArrayList parsingClientList = new ArrayList();
try{
parsingClientList = (ArrayList)adminService.parsingExcelClient(request, paramMap);
}catch(Exception e){
e.printStackTrace();
}
request.setAttribute("RESULT", CommonUtils.getJsonArray(parsingClientList));
return "/ajax/ajaxResult";
}
/**
* 거래처 저장
*/
@RequestMapping("/admin/clientApplySave.do")
@ResponseBody
public String clientApplySave(HttpSession session, HttpServletRequest request, @RequestParam Map paramMap){
String result = "";
try{
PersonBean person = (PersonBean)session.getAttribute(Constants.PERSON_BEAN);
paramMap.put("CONNECTUSERID", CommonUtils.checkNull(person.getUserId()));
adminService.saveClientMaster(request, paramMap);
result = "SUCCESS";
}catch(Exception e){
e.printStackTrace();
result = "FAIL";
}
return result;
}
/**
* Excel 업로드 시 중복/신규 건수 조회
* @param request
* @param paramMap
* @return
*/
@ResponseBody
@RequestMapping("/admin/countExcelclient.do")
public Map<String, Object> countExcelclient(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
Map<String, Object> resultMap = new HashMap<String, Object>();
try{
// CLIENT 조회
resultMap.put("RESULT", CommonUtils.keyChangeUpperMap(adminService.countExcelclient(paramMap)));
System.out.println("resultMap :: " + resultMap);
}catch(Exception e){
e.printStackTrace();
}
return resultMap;
}
/**
* Excel 파일 업로드 처리(ajax)
* @param request
* @param paramMap
* @return
*/
@RequestMapping("/admin/excelImportFileProc.do")
public String excelImportFileProc(HttpServletRequest request, HttpSession session, @RequestParam Map<String, Object> paramMap){
System.out.println("excelImportFileProc()..");
System.out.println("paramMap : "+paramMap);
MultipartRequest multi = null;
try{
//default 경로
String storagePath = Constants.CLIENT_EXCEL_IMPORT_UPLOAD;
int maxSize = 1500*1024*1024;
File storage = new File(storagePath);
if(!storage.exists()) storage.mkdirs();
FileRenameClass frc = new FileRenameClass();
multi = new MultipartRequest(request, storagePath, maxSize, "UTF-8", frc);
java.util.List fileList = frc.getFileList();
commonService.insertUploadFileInfo(session, fileList, multi);
frc.clear();
System.out.println("upload complete");
}catch(Exception e){
e.printStackTrace();
}
return "/ajax/ajaxResult";
}
/**
* Client 첨부파일 업로드 처리(ajax)
* @param request
* @param paramMap
* @return
*/
@RequestMapping("/admin/clientImportFileProc.do")
public String clientImportFileProc(HttpServletRequest request, HttpSession session, @RequestParam Map<String, Object> paramMap){
System.out.println("clientImportFileProc()..");
System.out.println("paramMap : "+paramMap);
MultipartRequest multi = null;
try{
//default 경로
String storagePath = Constants.CLIENT_IMPORT_ATTACH_UPLOAD;
int maxSize = 1500*1024*1024;
File storage = new File(storagePath);
if(!storage.exists()) storage.mkdirs();
FileRenameClass frc = new FileRenameClass();
multi = new MultipartRequest(request, storagePath, maxSize, "UTF-8", frc);
java.util.List fileList = frc.getFileList();
commonService.insertUploadFileInfo(session, fileList, multi);
frc.clear();
System.out.println("upload complete");
}catch(Exception e){
e.printStackTrace();
}
return "/ajax/ajaxResult";
}
// 일반거래처 11월 20일 이희진

View File

@@ -8778,14 +8778,14 @@ SELECT
<select id="getClientMngList" parameterType="map" resultType="map">
SELECT
ROW_NUMBER() OVER (ORDER BY CLIENT_CD) AS RNUM,
OBJID, COMP_CODE, CLIENT_CD, CLIENT_NM, CLIENT_NMK, CLIENT_TYPE,
BUS_REG_NO, RESIDENT_NO, CEO_NM, BUS_TYPE, BUS_ITEM,
POST_NO, ADDR1, ADDR2, TEL_NO, FAX_NO, HOMEPAGE, EMAIL,
OBJID, COMP_CODE, CLIENT_CD, CLIENT_NM, TR_NMK, CLIENT_NMK, ATTR_NMK, CLIENT_TYPE,
BUS_REG_NO, RESIDENT_NO, CEO_NM, CEO_NMK, BUS_TYPE, BUS_ITEM,
POST_NO, ADDR1, ADDR2, ADDR_FG, TEL_NO, FAX_NO, HOMEPAGE, EMAIL, LIQ_RS, TR_FG,
COUNTRY_NM, CLASS_CD, CLASS_NM, GRADE_CD, GRADE_NM,
COLLECT_CLIENT_CD, COLLECT_CLIENT_NM, REGION_CD, REGION_NM,
TRADE_START_DT, TRADE_END_DT, USE_YN,
CONTRACT_START_DT, CONTRACT_END_DT, TRADE_TYPE,
DISCOUNT_RATE, CONTRACT_AMT, MONTHLY_FEE, PAYMENT_TERM,
DISCOUNT_RATE, CONTRACT_AMT, MONTHLY_FEE, PAYMENT_TERM, RCP_TP,
CREDIT_LIMIT, LIMIT_RETURN_DAY,
PUR_BANK_CD, PUR_BANK_NM, PUR_BRANCH_NM, PUR_ACCOUNT_NO,
PUR_ACCOUNT_HOLDER, PUR_PAY_PLAN, PUR_SLIP_TYPE, PUR_TAX_TYPE,
@@ -8795,12 +8795,13 @@ SELECT
VENDOR_TEL, VENDOR_EXT, VENDOR_MOBILE, VENDOR_EMAIL,
MGR_DEPT_CD, MGR_DEPT_NM, MGR_POSITION, MGR_DUTY,
MGR_EMP_CD, MGR_EMP_NM, MGR_TEL, MGR_EXT, MGR_MOBILE, MGR_EMAIL, MGR_REMARK,
REC_REMARK, REC_POST_NO, REC_ADDR1, REC_ADDR2, REC_TEL, REC_FAX,
PROJECT_CD, PROJECT_NM, EXT_DATA_CD, E_TAX_YN,
REC_REMARK, REC_POST_NO, REC_ADDR1, REC_ADDR2, REC_ADDR_FG, REC_TEL, REC_FAX,
PROJECT_CD, PROJECT_NM, PJT_NMK, EXT_DATA_CD, E_TAX_YN,
UNIT_REPORT_CLIENT, SUB_BUS_NO, PROCUREMENT_YN,
PLAN_DAY_TYPE, PLAN_DAY, PURPOSE_TYPE, FOR_YN,
USER_DEF_DC1, USER_DEF_DC2, USE_FG, USE_NM,
USER_DEF_DC1, USER_DEF_DC2,
REGION_CD, REGION_NM, USE_FG, USE_NM,
BIZCON_FG, BIZCON_NM, SHIP_TP, SHIP_NM,
PLAN_DAY_TYPE, PLAN_DAY, PURPOSE_TYPE, FOR_YN,
CHECK_DATA, CHECK_STATE, CHECK_ORDER, FIXED_ORDER,
INSERT_ID, INSERT_IP, TO_CHAR(INSERT_DT, 'YYYY-MM-DD HH24:MI:SS') AS INSERT_DT,
MODIFY_ID, MODIFY_IP, TO_CHAR(MODIFY_DT, 'YYYY-MM-DD HH24:MI:SS') AS MODIFY_DT
@@ -8827,14 +8828,14 @@ SELECT
<!-- 2. 일반거래처 상세 조회 -->
<select id="getClientMngListInfo" parameterType="map" resultType="map">
SELECT
OBJID, COMP_CODE, CLIENT_CD, CLIENT_NM, CLIENT_NMK, CLIENT_TYPE,
BUS_REG_NO, RESIDENT_NO, CEO_NM, BUS_TYPE, BUS_ITEM,
POST_NO, ADDR1, ADDR2, TEL_NO, FAX_NO, HOMEPAGE, EMAIL,
OBJID, COMP_CODE, CLIENT_CD, CLIENT_NM, TR_NMK, CLIENT_NMK, ATTR_NMK, CLIENT_TYPE,
BUS_REG_NO, RESIDENT_NO, CEO_NM, CEO_NMK, BUS_TYPE, BUS_ITEM,
POST_NO, ADDR1, ADDR2, ADDR_FG, TEL_NO, FAX_NO, HOMEPAGE, EMAIL, LIQ_RS, TR_FG,
COUNTRY_NM, CLASS_CD, CLASS_NM, GRADE_CD, GRADE_NM,
COLLECT_CLIENT_CD, COLLECT_CLIENT_NM, REGION_CD, REGION_NM,
TRADE_START_DT, TRADE_END_DT, USE_YN,
CONTRACT_START_DT, CONTRACT_END_DT, TRADE_TYPE,
DISCOUNT_RATE, CONTRACT_AMT, MONTHLY_FEE, PAYMENT_TERM,
DISCOUNT_RATE, CONTRACT_AMT, MONTHLY_FEE, PAYMENT_TERM, RCP_TP,
CREDIT_LIMIT, LIMIT_RETURN_DAY,
PUR_BANK_CD, PUR_BANK_NM, PUR_BRANCH_NM, PUR_ACCOUNT_NO,
PUR_ACCOUNT_HOLDER, PUR_PAY_PLAN, PUR_SLIP_TYPE, PUR_TAX_TYPE,
@@ -8844,12 +8845,13 @@ SELECT
VENDOR_TEL, VENDOR_EXT, VENDOR_MOBILE, VENDOR_EMAIL,
MGR_DEPT_CD, MGR_DEPT_NM, MGR_POSITION, MGR_DUTY,
MGR_EMP_CD, MGR_EMP_NM, MGR_TEL, MGR_EXT, MGR_MOBILE, MGR_EMAIL, MGR_REMARK,
REC_REMARK, REC_POST_NO, REC_ADDR1, REC_ADDR2, REC_TEL, REC_FAX,
PROJECT_CD, PROJECT_NM, EXT_DATA_CD, E_TAX_YN,
REC_REMARK, REC_POST_NO, REC_ADDR1, REC_ADDR2, REC_ADDR_FG, REC_TEL, REC_FAX,
PROJECT_CD, PROJECT_NM, PJT_NMK, EXT_DATA_CD, E_TAX_YN,
UNIT_REPORT_CLIENT, SUB_BUS_NO, PROCUREMENT_YN,
PLAN_DAY_TYPE, PLAN_DAY, PURPOSE_TYPE, FOR_YN,
USER_DEF_DC1, USER_DEF_DC2, USE_FG, USE_NM,
USER_DEF_DC1, USER_DEF_DC2,
REGION_CD, REGION_NM, USE_FG, USE_NM,
BIZCON_FG, BIZCON_NM, SHIP_TP, SHIP_NM,
PLAN_DAY_TYPE, PLAN_DAY, PURPOSE_TYPE, FOR_YN,
CHECK_DATA, CHECK_STATE, CHECK_ORDER, FIXED_ORDER,
INSERT_ID, INSERT_IP, TO_CHAR(INSERT_DT, 'YYYY-MM-DD HH24:MI:SS') AS INSERT_DT,
MODIFY_ID, MODIFY_IP, TO_CHAR(MODIFY_DT, 'YYYY-MM-DD HH24:MI:SS') AS MODIFY_DT
@@ -8862,25 +8864,25 @@ SELECT
SELECT *
FROM CLIENT_MNG
WHERE 1=1
<if test="objid != null and objid != ''">
AND OBJID != #{objid}::numeric
<if test="OBJID != null and OBJID != ''">
AND OBJID != #{OBJID}::numeric
</if>
<if test="client_cd != null and client_cd != ''">
AND TRIM(UPPER(CLIENT_CD)) = TRIM(UPPER(#{client_cd}))
<if test="CLIENT_CD != null and CLIENT_CD != ''">
AND TRIM(UPPER(CLIENT_CD)) = TRIM(UPPER(#{CLIENT_CD}))
</if>
</select>
<!-- 4. 일반거래처 저장 (INSERT/UPDATE) -->
<insert id="mergeClientMngInfo" parameterType="map">
INSERT INTO CLIENT_MNG (
OBJID, COMP_CODE, CLIENT_CD, CLIENT_NM, CLIENT_NMK, CLIENT_TYPE,
BUS_REG_NO, RESIDENT_NO, CEO_NM, BUS_TYPE, BUS_ITEM,
POST_NO, ADDR1, ADDR2, TEL_NO, FAX_NO, HOMEPAGE, EMAIL,
OBJID, COMP_CODE, CLIENT_CD, CLIENT_NM, TR_NMK, CLIENT_NMK, ATTR_NMK, CLIENT_TYPE,
BUS_REG_NO, RESIDENT_NO, CEO_NM, CEO_NMK, BUS_TYPE, BUS_ITEM,
POST_NO, ADDR1, ADDR2, ADDR_FG, TEL_NO, FAX_NO, HOMEPAGE, EMAIL, LIQ_RS, TR_FG,
COUNTRY_NM, CLASS_CD, CLASS_NM, GRADE_CD, GRADE_NM,
COLLECT_CLIENT_CD, COLLECT_CLIENT_NM, REGION_CD, REGION_NM,
TRADE_START_DT, TRADE_END_DT, USE_YN,
CONTRACT_START_DT, CONTRACT_END_DT, TRADE_TYPE,
DISCOUNT_RATE, CONTRACT_AMT, MONTHLY_FEE, PAYMENT_TERM,
DISCOUNT_RATE, CONTRACT_AMT, MONTHLY_FEE, PAYMENT_TERM, RCP_TP,
CREDIT_LIMIT, LIMIT_RETURN_DAY,
PUR_BANK_CD, PUR_BANK_NM, PUR_BRANCH_NM, PUR_ACCOUNT_NO,
PUR_ACCOUNT_HOLDER, PUR_PAY_PLAN, PUR_SLIP_TYPE, PUR_TAX_TYPE,
@@ -8890,149 +8892,166 @@ SELECT
VENDOR_TEL, VENDOR_EXT, VENDOR_MOBILE, VENDOR_EMAIL,
MGR_DEPT_CD, MGR_DEPT_NM, MGR_POSITION, MGR_DUTY,
MGR_EMP_CD, MGR_EMP_NM, MGR_TEL, MGR_EXT, MGR_MOBILE, MGR_EMAIL, MGR_REMARK,
REC_REMARK, REC_POST_NO, REC_ADDR1, REC_ADDR2, REC_TEL, REC_FAX,
PROJECT_CD, PROJECT_NM, EXT_DATA_CD, E_TAX_YN,
REC_REMARK, REC_POST_NO, REC_ADDR1, REC_ADDR2, REC_ADDR_FG, REC_TEL, REC_FAX,
PROJECT_CD, PROJECT_NM, PJT_NMK, EXT_DATA_CD, E_TAX_YN,
UNIT_REPORT_CLIENT, SUB_BUS_NO, PROCUREMENT_YN,
PLAN_DAY_TYPE, PLAN_DAY, PURPOSE_TYPE, FOR_YN,
USER_DEF_DC1, USER_DEF_DC2, USE_FG, USE_NM,
USER_DEF_DC1, USER_DEF_DC2,
USE_FG, USE_NM,
BIZCON_FG, BIZCON_NM, SHIP_TP, SHIP_NM,
PLAN_DAY_TYPE, PLAN_DAY, PURPOSE_TYPE, FOR_YN,
CHECK_DATA, CHECK_STATE, CHECK_ORDER, FIXED_ORDER,
INSERT_ID, INSERT_IP, INSERT_DT, MODIFY_ID, MODIFY_IP, MODIFY_DT
) VALUES (
#{objid}::numeric,
#{comp_code}, #{client_cd}, #{client_nm}, #{client_nmk}, #{client_type},
#{bus_reg_no}, #{resident_no}, #{ceo_nm}, #{bus_type}, #{bus_item},
#{post_no}, #{addr1}, #{addr2}, #{tel_no}, #{fax_no}, #{homepage}, #{email},
#{country_nm}, #{class_cd}, #{class_nm}, #{grade_cd}, #{grade_nm},
#{collect_client_cd}, #{collect_client_nm}, #{region_cd}, #{region_nm},
#{trade_start_dt}, #{trade_end_dt}, COALESCE(#{use_yn}, 'Y'),
#{contract_start_dt}, #{contract_end_dt}, #{trade_type},
#{discount_rate}, #{contract_amt}, #{monthly_fee}, #{payment_term},
#{credit_limit}, #{limit_return_day},
#{pur_bank_cd}, #{pur_bank_nm}, #{pur_branch_nm}, #{pur_account_no},
#{pur_account_holder}, #{pur_pay_plan}, #{pur_slip_type}, #{pur_tax_type},
#{sale_bank_cd}, #{sale_bank_nm}, #{sale_branch_nm}, #{sale_account_no},
#{sale_collect_plan}, #{sale_slip_type}, #{sale_tax_type},
#{vendor_dept_nm}, #{vendor_position}, #{vendor_duty}, #{vendor_manager_nm},
#{vendor_tel}, #{vendor_ext}, #{vendor_mobile}, #{vendor_email},
#{mgr_dept_cd}, #{mgr_dept_nm}, #{mgr_position}, #{mgr_duty},
#{mgr_emp_cd}, #{mgr_emp_nm}, #{mgr_tel}, #{mgr_ext}, #{mgr_mobile}, #{mgr_email}, #{mgr_remark},
#{rec_remark}, #{rec_post_no}, #{rec_addr1}, #{rec_addr2}, #{rec_tel}, #{rec_fax},
#{project_cd}, #{project_nm}, #{ext_data_cd}, #{e_tax_yn},
#{unit_report_client}, #{sub_bus_no}, #{procurement_yn},
#{plan_day_type}, #{plan_day}, #{purpose_type}, #{for_yn},
#{user_def_dc1}, #{user_def_dc2}, #{use_fg}, #{use_nm},
#{bizcon_fg}, #{bizcon_nm}, #{ship_tp}, #{ship_nm},
#{check_data}, #{check_state}, #{check_order}, #{fixed_order},
#{insert_id}, #{insert_ip},
CASE WHEN #{insert_dt} = '' THEN NOW() ELSE COALESCE(#{insert_dt}::timestamp, NOW()) END,
#{modify_id}, #{modify_ip},
CASE WHEN #{modify_dt} = '' THEN NULL ELSE #{modify_dt}::timestamp END
#{COMP_CODE}, #{CLIENT_CD}, #{CLIENT_NM}, #{TR_NMK}, #{CLIENT_NMK}, #{ATTR_NMK}, #{CLIENT_TYPE},
#{BUS_REG_NO}, #{RESIDENT_NO}, #{CEO_NM}, #{CEO_NMK}, #{BUS_TYPE}, #{BUS_ITEM},
#{POST_NO}, #{ADDR1}, #{ADDR2}, #{ADDR_FG}, #{TEL_NO}, #{FAX_NO}, #{HOMEPAGE}, #{EMAIL}, #{LIQ_RS}, #{TR_FG},
#{COUNTRY_NM}, #{CLASS_CD}, #{CLASS_NM}, #{GRADE_CD}, #{GRADE_NM},
#{COLLECT_CLIENT_CD}, #{COLLECT_CLIENT_NM}, #{REGION_CD}, #{REGION_NM},
#{TRADE_START_DT}, #{TRADE_END_DT}, COALESCE(#{USE_YN}, 'Y'),
#{CONTRACT_START_DT}, #{CONTRACT_END_DT}, #{TRADE_TYPE},
CASE WHEN #{DISCOUNT_RATE} = '' THEN NULL ELSE #{DISCOUNT_RATE}::numeric END,
CASE WHEN #{CONTRACT_AMT} = '' THEN NULL ELSE #{CONTRACT_AMT}::numeric END,
CASE WHEN #{MONTHLY_FEE} = '' THEN NULL ELSE #{MONTHLY_FEE}::numeric END,
#{PAYMENT_TERM}, #{RCP_TP},
CASE WHEN #{CREDIT_LIMIT} = '' THEN NULL ELSE #{CREDIT_LIMIT}::numeric END,
#{LIMIT_RETURN_DAY},
#{PUR_BANK_CD}, #{PUR_BANK_NM}, #{PUR_BRANCH_NM}, #{PUR_ACCOUNT_NO},
#{PUR_ACCOUNT_HOLDER}, #{PUR_PAY_PLAN}, #{PUR_SLIP_TYPE}, #{PUR_TAX_TYPE},
#{SALE_BANK_CD}, #{SALE_BANK_NM}, #{SALE_BRANCH_NM}, #{SALE_ACCOUNT_NO},
#{SALE_COLLECT_PLAN}, #{SALE_SLIP_TYPE}, #{SALE_TAX_TYPE},
#{VENDOR_DEPT_NM}, #{VENDOR_POSITION}, #{VENDOR_DUTY}, #{VENDOR_MANAGER_NM},
#{VENDOR_TEL}, #{VENDOR_EXT}, #{VENDOR_MOBILE}, #{VENDOR_EMAIL},
#{MGR_DEPT_CD}, #{MGR_DEPT_NM}, #{MGR_POSITION}, #{MGR_DUTY},
#{MGR_EMP_CD}, #{MGR_EMP_NM}, #{MGR_TEL}, #{MGR_EXT}, #{MGR_MOBILE}, #{MGR_EMAIL}, #{MGR_REMARK},
#{REC_REMARK}, #{REC_POST_NO}, #{REC_ADDR1}, #{REC_ADDR2}, #{REC_ADDR_FG}, #{REC_TEL}, #{REC_FAX},
#{PROJECT_CD}, #{PROJECT_NM}, #{PJT_NMK}, #{EXT_DATA_CD}, #{E_TAX_YN},
#{UNIT_REPORT_CLIENT}, #{SUB_BUS_NO}, #{PROCUREMENT_YN},
#{USER_DEF_DC1}, #{USER_DEF_DC2},
#{USE_FG}, #{USE_NM},
#{BIZCON_FG}, #{BIZCON_NM}, #{SHIP_TP}, #{SHIP_NM},
#{PLAN_DAY_TYPE}, #{PLAN_DAY}, #{PURPOSE_TYPE}, #{FOR_YN},
#{CHECK_DATA}, #{CHECK_STATE},
CASE WHEN #{CHECK_ORDER} = '' THEN NULL ELSE #{CHECK_ORDER}::numeric END,
#{FIXED_ORDER},
#{INSERT_ID}, #{INSERT_IP},
CASE WHEN #{INSERT_DT} = '' THEN NOW() ELSE COALESCE(#{INSERT_DT}::timestamp, NOW()) END,
#{MODIFY_ID}, #{MODIFY_IP},
CASE WHEN #{MODIFY_DT} = '' THEN NULL ELSE #{MODIFY_DT}::timestamp END
)
ON CONFLICT (OBJID) DO UPDATE SET
COMP_CODE = #{comp_code},
CLIENT_CD = #{client_cd},
CLIENT_NM = #{client_nm},
CLIENT_NMK = #{client_nmk},
CLIENT_TYPE = #{client_type},
BUS_REG_NO = #{bus_reg_no},
RESIDENT_NO = #{resident_no},
CEO_NM = #{ceo_nm},
BUS_TYPE = #{bus_type},
BUS_ITEM = #{bus_item},
POST_NO = #{post_no},
ADDR1 = #{addr1},
ADDR2 = #{addr2},
TEL_NO = #{tel_no},
FAX_NO = #{fax_no},
HOMEPAGE = #{homepage},
EMAIL = #{email},
COUNTRY_NM = #{country_nm},
CLASS_CD = #{class_cd},
CLASS_NM = #{class_nm},
GRADE_CD = #{grade_cd},
GRADE_NM = #{grade_nm},
COLLECT_CLIENT_CD = #{collect_client_cd},
COLLECT_CLIENT_NM = #{collect_client_nm},
REGION_CD = #{region_cd},
REGION_NM = #{region_nm},
TRADE_START_DT = #{trade_start_dt},
TRADE_END_DT = #{trade_end_dt},
USE_YN = #{use_yn},
CONTRACT_START_DT = #{contract_start_dt},
CONTRACT_END_DT = #{contract_end_dt},
TRADE_TYPE = #{trade_type},
DISCOUNT_RATE = #{discount_rate},
CONTRACT_AMT = #{contract_amt},
MONTHLY_FEE = #{monthly_fee},
PAYMENT_TERM = #{payment_term},
CREDIT_LIMIT = #{credit_limit},
LIMIT_RETURN_DAY = #{limit_return_day},
PUR_BANK_CD = #{pur_bank_cd},
PUR_BANK_NM = #{pur_bank_nm},
PUR_BRANCH_NM = #{pur_branch_nm},
PUR_ACCOUNT_NO = #{pur_account_no},
PUR_ACCOUNT_HOLDER = #{pur_account_holder},
PUR_PAY_PLAN = #{pur_pay_plan},
PUR_SLIP_TYPE = #{pur_slip_type},
PUR_TAX_TYPE = #{pur_tax_type},
SALE_BANK_CD = #{sale_bank_cd},
SALE_BANK_NM = #{sale_bank_nm},
SALE_BRANCH_NM = #{sale_branch_nm},
SALE_ACCOUNT_NO = #{sale_account_no},
SALE_COLLECT_PLAN = #{sale_collect_plan},
SALE_SLIP_TYPE = #{sale_slip_type},
SALE_TAX_TYPE = #{sale_tax_type},
VENDOR_DEPT_NM = #{vendor_dept_nm},
VENDOR_POSITION = #{vendor_position},
VENDOR_DUTY = #{vendor_duty},
VENDOR_MANAGER_NM = #{vendor_manager_nm},
VENDOR_TEL = #{vendor_tel},
VENDOR_EXT = #{vendor_ext},
VENDOR_MOBILE = #{vendor_mobile},
VENDOR_EMAIL = #{vendor_email},
MGR_DEPT_CD = #{mgr_dept_cd},
MGR_DEPT_NM = #{mgr_dept_nm},
MGR_POSITION = #{mgr_position},
MGR_DUTY = #{mgr_duty},
MGR_EMP_CD = #{mgr_emp_cd},
MGR_EMP_NM = #{mgr_emp_nm},
MGR_TEL = #{mgr_tel},
MGR_EXT = #{mgr_ext},
MGR_MOBILE = #{mgr_mobile},
MGR_EMAIL = #{mgr_email},
MGR_REMARK = #{mgr_remark},
REC_REMARK = #{rec_remark},
REC_POST_NO = #{rec_post_no},
REC_ADDR1 = #{rec_addr1},
REC_ADDR2 = #{rec_addr2},
REC_TEL = #{rec_tel},
REC_FAX = #{rec_fax},
PROJECT_CD = #{project_cd},
PROJECT_NM = #{project_nm},
EXT_DATA_CD = #{ext_data_cd},
E_TAX_YN = #{e_tax_yn},
UNIT_REPORT_CLIENT = #{unit_report_client},
SUB_BUS_NO = #{sub_bus_no},
PROCUREMENT_YN = #{procurement_yn},
PLAN_DAY_TYPE = #{plan_day_type},
PLAN_DAY = #{plan_day},
PURPOSE_TYPE = #{purpose_type},
FOR_YN = #{for_yn},
USER_DEF_DC1 = #{user_def_dc1},
USER_DEF_DC2 = #{user_def_dc2},
USE_FG = #{use_fg},
USE_NM = #{use_nm},
BIZCON_FG = #{bizcon_fg},
BIZCON_NM = #{bizcon_nm},
SHIP_TP = #{ship_tp},
SHIP_NM = #{ship_nm},
CHECK_DATA = #{check_data},
CHECK_STATE = #{check_state},
CHECK_ORDER = #{check_order},
FIXED_ORDER = #{fixed_order},
MODIFY_ID = #{modify_id},
MODIFY_IP = #{modify_ip},
COMP_CODE = #{COMP_CODE},
CLIENT_CD = #{CLIENT_CD},
CLIENT_NM = #{CLIENT_NM},
TR_NMK = #{TR_NMK},
CLIENT_NMK = #{CLIENT_NMK},
ATTR_NMK = #{ATTR_NMK},
CLIENT_TYPE = #{CLIENT_TYPE},
BUS_REG_NO = #{BUS_REG_NO},
RESIDENT_NO = #{RESIDENT_NO},
CEO_NM = #{CEO_NM},
CEO_NMK = #{CEO_NMK},
BUS_TYPE = #{BUS_TYPE},
BUS_ITEM = #{BUS_ITEM},
POST_NO = #{POST_NO},
ADDR1 = #{ADDR1},
ADDR2 = #{ADDR2},
ADDR_FG = #{ADDR_FG},
TEL_NO = #{TEL_NO},
FAX_NO = #{FAX_NO},
HOMEPAGE = #{HOMEPAGE},
EMAIL = #{EMAIL},
LIQ_RS = #{LIQ_RS},
TR_FG = #{TR_FG},
COUNTRY_NM = #{COUNTRY_NM},
CLASS_CD = #{CLASS_CD},
CLASS_NM = #{CLASS_NM},
GRADE_CD = #{GRADE_CD},
GRADE_NM = #{GRADE_NM},
COLLECT_CLIENT_CD = #{COLLECT_CLIENT_CD},
COLLECT_CLIENT_NM = #{COLLECT_CLIENT_NM},
REGION_CD = #{REGION_CD},
REGION_NM = #{REGION_NM},
TRADE_START_DT = #{TRADE_START_DT},
TRADE_END_DT = #{TRADE_END_DT},
USE_YN = #{USE_YN},
CONTRACT_START_DT = #{CONTRACT_START_DT},
CONTRACT_END_DT = #{CONTRACT_END_DT},
TRADE_TYPE = #{TRADE_TYPE},
DISCOUNT_RATE = CASE WHEN #{DISCOUNT_RATE} = '' THEN NULL ELSE #{DISCOUNT_RATE}::numeric END,
CONTRACT_AMT = CASE WHEN #{CONTRACT_AMT} = '' THEN NULL ELSE #{CONTRACT_AMT}::numeric END,
MONTHLY_FEE = CASE WHEN #{MONTHLY_FEE} = '' THEN NULL ELSE #{MONTHLY_FEE}::numeric END,
PAYMENT_TERM = #{PAYMENT_TERM},
RCP_TP = #{RCP_TP},
CREDIT_LIMIT = CASE WHEN #{CREDIT_LIMIT} = '' THEN NULL ELSE #{CREDIT_LIMIT}::numeric END,
LIMIT_RETURN_DAY = #{LIMIT_RETURN_DAY},
PUR_BANK_CD = #{PUR_BANK_CD},
PUR_BANK_NM = #{PUR_BANK_NM},
PUR_BRANCH_NM = #{PUR_BRANCH_NM},
PUR_ACCOUNT_NO = #{PUR_ACCOUNT_NO},
PUR_ACCOUNT_HOLDER = #{PUR_ACCOUNT_HOLDER},
PUR_PAY_PLAN = #{PUR_PAY_PLAN},
PUR_SLIP_TYPE = #{PUR_SLIP_TYPE},
PUR_TAX_TYPE = #{PUR_TAX_TYPE},
SALE_BANK_CD = #{SALE_BANK_CD},
SALE_BANK_NM = #{SALE_BANK_NM},
SALE_BRANCH_NM = #{SALE_BRANCH_NM},
SALE_ACCOUNT_NO = #{SALE_ACCOUNT_NO},
SALE_COLLECT_PLAN = #{SALE_COLLECT_PLAN},
SALE_SLIP_TYPE = #{SALE_SLIP_TYPE},
SALE_TAX_TYPE = #{SALE_TAX_TYPE},
VENDOR_DEPT_NM = #{VENDOR_DEPT_NM},
VENDOR_POSITION = #{VENDOR_POSITION},
VENDOR_DUTY = #{VENDOR_DUTY},
VENDOR_MANAGER_NM = #{VENDOR_MANAGER_NM},
VENDOR_TEL = #{VENDOR_TEL},
VENDOR_EXT = #{VENDOR_EXT},
VENDOR_MOBILE = #{VENDOR_MOBILE},
VENDOR_EMAIL = #{VENDOR_EMAIL},
MGR_DEPT_CD = #{MGR_DEPT_CD},
MGR_DEPT_NM = #{MGR_DEPT_NM},
MGR_POSITION = #{MGR_POSITION},
MGR_DUTY = #{MGR_DUTY},
MGR_EMP_CD = #{MGR_EMP_CD},
MGR_EMP_NM = #{MGR_EMP_NM},
MGR_TEL = #{MGR_TEL},
MGR_EXT = #{MGR_EXT},
MGR_MOBILE = #{MGR_MOBILE},
MGR_EMAIL = #{MGR_EMAIL},
MGR_REMARK = #{MGR_REMARK},
REC_REMARK = #{REC_REMARK},
REC_POST_NO = #{REC_POST_NO},
REC_ADDR1 = #{REC_ADDR1},
REC_ADDR2 = #{REC_ADDR2},
REC_ADDR_FG = #{REC_ADDR_FG},
REC_TEL = #{REC_TEL},
REC_FAX = #{REC_FAX},
PROJECT_CD = #{PROJECT_CD},
PROJECT_NM = #{PROJECT_NM},
PJT_NMK = #{PJT_NMK},
EXT_DATA_CD = #{EXT_DATA_CD},
E_TAX_YN = #{E_TAX_YN},
UNIT_REPORT_CLIENT = #{UNIT_REPORT_CLIENT},
SUB_BUS_NO = #{SUB_BUS_NO},
PROCUREMENT_YN = #{PROCUREMENT_YN},
USER_DEF_DC1 = #{USER_DEF_DC1},
USER_DEF_DC2 = #{USER_DEF_DC2},
USE_FG = #{USE_FG},
USE_NM = #{USE_NM},
BIZCON_FG = #{BIZCON_FG},
BIZCON_NM = #{BIZCON_NM},
SHIP_TP = #{SHIP_TP},
SHIP_NM = #{SHIP_NM},
PLAN_DAY_TYPE = #{PLAN_DAY_TYPE},
PLAN_DAY = #{PLAN_DAY},
PURPOSE_TYPE = #{PURPOSE_TYPE},
FOR_YN = #{FOR_YN},
CHECK_DATA = #{CHECK_DATA},
CHECK_STATE = #{CHECK_STATE},
CHECK_ORDER = CASE WHEN #{CHECK_ORDER} = '' THEN NULL ELSE #{CHECK_ORDER}::numeric END,
FIXED_ORDER = #{FIXED_ORDER},
MODIFY_ID = #{MODIFY_ID},
MODIFY_IP = #{MODIFY_IP},
MODIFY_DT = NOW()
</insert>
@@ -9042,5 +9061,269 @@ SELECT
WHERE OBJID = #{OBJID}::numeric
</delete>
<!-- 6. Excel 업로드 - 중복 체크 -->
<select id="getDuplicateClientExcel" parameterType="map" resultType="map">
SELECT OBJID, CLIENT_CD, CLIENT_NM
FROM CLIENT_MNG
WHERE UPPER(CLIENT_CD) = UPPER(#{CLIENT_CD})
LIMIT 1
</select>
<!-- 7. Excel 업로드 - 일괄 INSERT -->
<insert id="insertClientExcel" parameterType="map">
INSERT INTO CLIENT_MNG (
OBJID,
COMP_CODE,
CLIENT_CD,
CLIENT_NM,
TR_NMK,
CLIENT_NMK,
ATTR_NMK,
CLIENT_TYPE,
BUS_REG_NO,
RESIDENT_NO,
CEO_NM,
CEO_NMK,
BUS_TYPE,
BUS_ITEM,
POST_NO,
ADDR1,
ADDR2,
ADDR_FG,
TEL_NO,
FAX_NO,
HOMEPAGE,
EMAIL,
LIQ_RS,
TR_FG,
COUNTRY_NM,
CLASS_CD,
CLASS_NM,
GRADE_CD,
GRADE_NM,
COLLECT_CLIENT_CD,
COLLECT_CLIENT_NM,
REGION_CD,
REGION_NM,
TRADE_START_DT,
TRADE_END_DT,
USE_YN,
CONTRACT_START_DT,
CONTRACT_END_DT,
TRADE_TYPE,
DISCOUNT_RATE,
CONTRACT_AMT,
MONTHLY_FEE,
PAYMENT_TERM,
RCP_TP,
CREDIT_LIMIT,
LIMIT_RETURN_DAY,
PUR_BANK_CD,
PUR_BANK_NM,
PUR_BRANCH_NM,
PUR_ACCOUNT_NO,
PUR_ACCOUNT_HOLDER,
PUR_PAY_PLAN,
PUR_SLIP_TYPE,
PUR_TAX_TYPE,
SALE_BANK_CD,
SALE_BANK_NM,
SALE_BRANCH_NM,
SALE_ACCOUNT_NO,
SALE_COLLECT_PLAN,
SALE_SLIP_TYPE,
SALE_TAX_TYPE,
VENDOR_DEPT_NM,
VENDOR_POSITION,
VENDOR_DUTY,
VENDOR_MANAGER_NM,
VENDOR_TEL,
VENDOR_EXT,
VENDOR_MOBILE,
VENDOR_EMAIL,
MGR_DEPT_CD,
MGR_DEPT_NM,
MGR_POSITION,
MGR_DUTY,
MGR_EMP_CD,
MGR_EMP_NM,
MGR_TEL,
MGR_EXT,
MGR_MOBILE,
MGR_EMAIL,
MGR_REMARK,
REC_REMARK,
REC_POST_NO,
REC_ADDR1,
REC_ADDR2,
REC_ADDR_FG,
REC_TEL,
REC_FAX,
PROJECT_CD,
PROJECT_NM,
PJT_NMK,
EXT_DATA_CD,
E_TAX_YN,
UNIT_REPORT_CLIENT,
SUB_BUS_NO,
PROCUREMENT_YN,
USER_DEF_DC1,
USER_DEF_DC2,
USE_FG,
USE_NM,
BIZCON_FG,
BIZCON_NM,
SHIP_TP,
SHIP_NM,
PLAN_DAY_TYPE,
PLAN_DAY,
PURPOSE_TYPE,
FOR_YN,
CHECK_DATA,
CHECK_STATE,
CHECK_ORDER,
INSERT_ID,
INSERT_IP,
INSERT_DT
) VALUES (
#{OBJID}::numeric,
NULLIF(#{COMP_CODE}, ''),
NULLIF(#{CLIENT_CD}, ''),
NULLIF(#{CLIENT_NM}, ''),
NULLIF(#{TR_NMK}, ''),
NULLIF(#{CLIENT_NMK}, ''),
NULLIF(#{ATTR_NMK}, ''),
NULLIF(#{CLIENT_TYPE}, ''),
NULLIF(#{BUS_REG_NO}, ''),
NULLIF(#{RESIDENT_NO}, ''),
NULLIF(#{CEO_NM}, ''),
NULLIF(#{CEO_NMK}, ''),
NULLIF(#{BUS_TYPE}, ''),
NULLIF(#{BUS_ITEM}, ''),
NULLIF(#{POST_NO}, ''),
NULLIF(#{ADDR1}, ''),
NULLIF(#{ADDR2}, ''),
NULLIF(#{ADDR_FG}, ''),
NULLIF(#{TEL_NO}, ''),
NULLIF(#{FAX_NO}, ''),
NULLIF(#{HOMEPAGE}, ''),
NULLIF(#{EMAIL}, ''),
NULLIF(#{LIQ_RS}, ''),
NULLIF(#{TR_FG}, ''),
NULLIF(#{COUNTRY_NM}, ''),
NULLIF(#{CLASS_CD}, ''),
NULLIF(#{CLASS_NM}, ''),
NULLIF(#{GRADE_CD}, ''),
NULLIF(#{GRADE_NM}, ''),
NULLIF(#{COLLECT_CLIENT_CD}, ''),
NULLIF(#{COLLECT_CLIENT_NM}, ''),
NULLIF(#{REGION_CD}, ''),
NULLIF(#{REGION_NM}, ''),
NULLIF(#{TRADE_START_DT}, ''),
NULLIF(#{TRADE_END_DT}, ''),
COALESCE(NULLIF(#{USE_YN}, ''), 'Y'),
NULLIF(#{CONTRACT_START_DT}, ''),
NULLIF(#{CONTRACT_END_DT}, ''),
NULLIF(#{TRADE_TYPE}, ''),
CASE WHEN #{DISCOUNT_RATE} = '' THEN NULL ELSE #{DISCOUNT_RATE}::numeric END,
CASE WHEN #{CONTRACT_AMT} = '' THEN NULL ELSE #{CONTRACT_AMT}::numeric END,
CASE WHEN #{MONTHLY_FEE} = '' THEN NULL ELSE #{MONTHLY_FEE}::numeric END,
NULLIF(#{PAYMENT_TERM}, ''),
NULLIF(#{RCP_TP}, ''),
CASE WHEN #{CREDIT_LIMIT} = '' THEN NULL ELSE #{CREDIT_LIMIT}::numeric END,
NULLIF(#{LIMIT_RETURN_DAY}, ''),
NULLIF(#{PUR_BANK_CD}, ''),
NULLIF(#{PUR_BANK_NM}, ''),
NULLIF(#{PUR_BRANCH_NM}, ''),
NULLIF(#{PUR_ACCOUNT_NO}, ''),
NULLIF(#{PUR_ACCOUNT_HOLDER}, ''),
NULLIF(#{PUR_PAY_PLAN}, ''),
NULLIF(#{PUR_SLIP_TYPE}, ''),
NULLIF(#{PUR_TAX_TYPE}, ''),
NULLIF(#{SALE_BANK_CD}, ''),
NULLIF(#{SALE_BANK_NM}, ''),
NULLIF(#{SALE_BRANCH_NM}, ''),
NULLIF(#{SALE_ACCOUNT_NO}, ''),
NULLIF(#{SALE_COLLECT_PLAN}, ''),
NULLIF(#{SALE_SLIP_TYPE}, ''),
NULLIF(#{SALE_TAX_TYPE}, ''),
NULLIF(#{VENDOR_DEPT_NM}, ''),
NULLIF(#{VENDOR_POSITION}, ''),
NULLIF(#{VENDOR_DUTY}, ''),
NULLIF(#{VENDOR_MANAGER_NM}, ''),
NULLIF(#{VENDOR_TEL}, ''),
NULLIF(#{VENDOR_EXT}, ''),
NULLIF(#{VENDOR_MOBILE}, ''),
NULLIF(#{VENDOR_EMAIL}, ''),
NULLIF(#{MGR_DEPT_CD}, ''),
NULLIF(#{MGR_DEPT_NM}, ''),
NULLIF(#{MGR_POSITION}, ''),
NULLIF(#{MGR_DUTY}, ''),
NULLIF(#{MGR_EMP_CD}, ''),
NULLIF(#{MGR_EMP_NM}, ''),
NULLIF(#{MGR_TEL}, ''),
NULLIF(#{MGR_EXT}, ''),
NULLIF(#{MGR_MOBILE}, ''),
NULLIF(#{MGR_EMAIL}, ''),
NULLIF(#{MGR_REMARK}, ''),
NULLIF(#{REC_REMARK}, ''),
NULLIF(#{REC_POST_NO}, ''),
NULLIF(#{REC_ADDR1}, ''),
NULLIF(#{REC_ADDR2}, ''),
NULLIF(#{REC_ADDR_FG}, ''),
NULLIF(#{REC_TEL}, ''),
NULLIF(#{REC_FAX}, ''),
NULLIF(#{PROJECT_CD}, ''),
NULLIF(#{PROJECT_NM}, ''),
NULLIF(#{PJT_NMK}, ''),
NULLIF(#{EXT_DATA_CD}, ''),
NULLIF(#{E_TAX_YN}, ''),
NULLIF(#{UNIT_REPORT_CLIENT}, ''),
NULLIF(#{SUB_BUS_NO}, ''),
NULLIF(#{PROCUREMENT_YN}, ''),
NULLIF(#{USER_DEF_DC1}, ''),
NULLIF(#{USER_DEF_DC2}, ''),
NULLIF(#{USE_FG}, ''),
NULLIF(#{USE_NM}, ''),
NULLIF(#{BIZCON_FG}, ''),
NULLIF(#{BIZCON_NM}, ''),
NULLIF(#{SHIP_TP}, ''),
NULLIF(#{SHIP_NM}, ''),
NULLIF(#{PLAN_DAY_TYPE}, ''),
NULLIF(#{PLAN_DAY}, ''),
NULLIF(#{PURPOSE_TYPE}, ''),
NULLIF(#{FOR_YN}, ''),
NULLIF(#{CHECK_DATA}, ''),
NULLIF(#{CHECK_STATE}, ''),
CASE WHEN #{CHECK_ORDER} = '' THEN NULL ELSE #{CHECK_ORDER}::numeric END,
#{CONNECTUSERID},
#{insert_ip},
NOW()
)
</insert>
<!-- 8. Excel 업로드 - 중복/신규 건수 조회 -->
<select id="countExcelclient" parameterType="map" resultType="map">
SELECT
COUNT(CASE WHEN DUP_YN = 'Y' THEN 1 END) AS DUP_CNT,
COUNT(CASE WHEN DUP_YN = 'N' THEN 1 END) AS NOW_CNT
FROM (
SELECT
CASE
WHEN EXISTS (
SELECT 1 FROM CLIENT_MNG
WHERE CLIENT_CD = T.CLIENT_CD
) THEN 'Y'
ELSE 'N'
END AS DUP_YN
FROM (
SELECT CLIENT_CD
FROM ATTACH_FILE_INFO
WHERE TARGET_OBJID = #{targetObjId}
AND DOC_TYPE = 'CLIENT_EXCEL_IMPORT'
) T
) RESULT
</select>
</mapper>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,9 @@
package com.pms.service;
import java.io.File;
import java.io.FileInputStream;
import java.sql.Clob;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
@@ -12,9 +15,18 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import org.apache.ibatis.session.SqlSession;
import org.apache.poi.ss.usermodel.DataFormatter;
import org.apache.poi.ss.usermodel.DateUtil;
import org.apache.poi.ss.usermodel.FormulaEvaluator;
import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.RequestParam;
import com.pms.common.JsonUtil;
import com.pms.common.Message;
import com.pms.common.SqlMapConfig;
import com.pms.common.bean.PersonBean;
@@ -22,9 +34,17 @@ import com.pms.common.service.BaseService;
import com.pms.common.utils.CommonUtils;
import com.pms.common.utils.Constants;
import com.pms.common.utils.EncryptUtil;
import com.pms.service.CommonService;
@Service
public class AdminService extends BaseService {
CommonService commonService = null;
@Autowired
public void setCommonService(CommonService commonService){
this.commonService = commonService;
}
/**
* 관리자 메뉴 조회
@@ -2523,15 +2543,14 @@ public class AdminService extends BaseService {
paramMap.put("objid", objid);
}
if(!"".equals(objid)){
sqlSession.update("admin.mergeClientMngInfo",paramMap);
//이력
paramMap.put("objid", CommonUtils.createObjId());
paramMap.put("targetObjid", objid);
sqlSession.insert("admin.insertClientMngHistory",paramMap);
}
if(!"".equals(objid)){
sqlSession.update("admin.mergeClientMngInfo",paramMap);
//이력 (TODO: CLIENT_MNG_HISTORY 테이블 생성 후 활성화)
// paramMap.put("objid", CommonUtils.createObjId());
// paramMap.put("targetObjid", objid);
// sqlSession.insert("admin.insertClientMngHistory",paramMap);
}
}catch(Exception e){
throw e;
}finally{
@@ -2641,6 +2660,269 @@ public class AdminService extends BaseService {
}
}
/**
* 업로드된 Excel File을 통해 데이터를 Parsing 한다.
* @param request
* @param paramMap
* @return
*/
public ArrayList parsingExcelClient(HttpServletRequest request,Map paramMap)throws Exception{
ArrayList resultList = new ArrayList();
ArrayList fileList = commonService.getFileList(paramMap);
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
if(null != fileList && 1 == fileList.size()){
HashMap fileMap = (HashMap)fileList.get(0);
String path = CommonUtils.checkNull(fileMap.get("FILE_PATH"));
String fileName = CommonUtils.checkNull(fileMap.get("SAVED_FILE_NAME"));
// OS에 관계없이 올바른 경로 생성 (Linux/Windows 호환)
File excelFile = new File(path, fileName);
FileInputStream fis = new FileInputStream(excelFile);
// .xls와 .xlsx 둘 다 지원
org.apache.poi.ss.usermodel.Workbook workBook = null;
if (fileName.endsWith(".xls") || fileName.endsWith(".XLS")) {
workBook = new org.apache.poi.hssf.usermodel.HSSFWorkbook(fis);
} else if (fileName.endsWith(".xlsx") || fileName.endsWith(".XLSX")) {
workBook = new XSSFWorkbook(fis);
}
FormulaEvaluator formulaEval = workBook.getCreationHelper().createFormulaEvaluator();
org.apache.poi.ss.usermodel.Sheet sheet = workBook.getSheetAt(0);
// 데이터 포멧터
DataFormatter formatter = new DataFormatter();
int rows = sheet.getPhysicalNumberOfRows();
for(int rowIndex= 1 ; rowIndex < rows ; rowIndex++){ // 2번째 행부터 읽기 (헤더 1행 + 데이터)
org.apache.poi.ss.usermodel.Row row = sheet.getRow(rowIndex);
if(null != row){
HashMap clientMap = new HashMap();
HashMap sqlMap = new HashMap();
for(int columnIndex = 0 ; columnIndex < 110 ; columnIndex++){ // 110개 컬럼
org.apache.poi.ss.usermodel.Cell cell = row.getCell(columnIndex);
//데이터 유형별 get data
String cellValue = "";
if(null != cell){
if(cell.getCellType() == org.apache.poi.ss.usermodel.Cell.CELL_TYPE_FORMULA){
cellValue = formatter.formatCellValue(cell, formulaEval);
}else if(cell.getCellType() == org.apache.poi.ss.usermodel.Cell.CELL_TYPE_NUMERIC){
if(DateUtil.isCellDateFormatted(cell)){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
cellValue = sdf.format(cell.getDateCellValue());
}else{
cellValue = formatter.formatCellValue(cell);
}
}else{
cellValue = formatter.formatCellValue(cell);
}
}
switch(columnIndex){
case 0 : clientMap.put("COMP_CODE", cellValue); break;
case 1 : clientMap.put("CLIENT_CD", cellValue); break;
case 2 : clientMap.put("CLIENT_NM", cellValue); break;
case 3 : clientMap.put("TR_NMK", cellValue); break;
case 4 : clientMap.put("CLIENT_NMK", cellValue); break;
case 5 : clientMap.put("ATTR_NMK", cellValue); break;
case 6 : clientMap.put("CLIENT_TYPE", cellValue); break;
case 7 : clientMap.put("BUS_REG_NO", cellValue); break;
case 8 : clientMap.put("RESIDENT_NO", cellValue); break;
case 9 : clientMap.put("CEO_NM", cellValue); break;
case 10 : clientMap.put("CEO_NMK", cellValue); break;
case 11 : clientMap.put("BUS_TYPE", cellValue); break;
case 12 : clientMap.put("BUS_ITEM", cellValue); break;
case 13 : clientMap.put("POST_NO", cellValue); break;
case 14 : clientMap.put("ADDR1", cellValue); break;
case 15 : clientMap.put("ADDR2", cellValue); break;
case 16 : clientMap.put("ADDR_FG", cellValue); break;
case 17 : clientMap.put("TEL_NO", cellValue); break;
case 18 : clientMap.put("FAX_NO", cellValue); break;
case 19 : clientMap.put("HOMEPAGE", cellValue); break;
case 20 : clientMap.put("EMAIL", cellValue); break;
case 21 : clientMap.put("LIQ_RS", cellValue); break;
case 22 : clientMap.put("TR_FG", cellValue); break;
case 23 : clientMap.put("COUNTRY_NM", cellValue); break;
case 24 : clientMap.put("CLASS_CD", cellValue); break;
case 25 : clientMap.put("CLASS_NM", cellValue); break;
case 26 : clientMap.put("GRADE_CD", cellValue); break;
case 27 : clientMap.put("GRADE_NM", cellValue); break;
case 28 : clientMap.put("COLLECT_CLIENT_CD", cellValue); break;
case 29 : clientMap.put("COLLECT_CLIENT_NM", cellValue); break;
case 30 : clientMap.put("REGION_CD", cellValue); break;
case 31 : clientMap.put("REGION_NM", cellValue); break;
case 32 : clientMap.put("TRADE_START_DT", cellValue); break;
case 33 : clientMap.put("TRADE_END_DT", cellValue); break;
case 34 : clientMap.put("USE_YN", cellValue); break;
case 35 : clientMap.put("CONTRACT_START_DT", cellValue); break;
case 36 : clientMap.put("CONTRACT_END_DT", cellValue); break;
case 37 : clientMap.put("TRADE_TYPE", cellValue); break;
case 38 : clientMap.put("DISCOUNT_RATE", cellValue); break;
case 39 : clientMap.put("CONTRACT_AMT", cellValue); break;
case 40 : clientMap.put("MONTHLY_FEE", cellValue); break;
case 41 : clientMap.put("PAYMENT_TERM", cellValue); break;
case 42 : clientMap.put("RCP_TP", cellValue); break;
case 43 : clientMap.put("CREDIT_LIMIT", cellValue); break;
case 44 : clientMap.put("LIMIT_RETURN_DAY", cellValue); break;
case 45 : clientMap.put("PUR_BANK_CD", cellValue); break;
case 46 : clientMap.put("PUR_BANK_NM", cellValue); break;
case 47 : clientMap.put("PUR_BRANCH_NM", cellValue); break;
case 48 : clientMap.put("PUR_ACCOUNT_NO", cellValue); break;
case 49 : clientMap.put("PUR_ACCOUNT_HOLDER", cellValue); break;
case 50 : clientMap.put("PUR_PAY_PLAN", cellValue); break;
case 51 : clientMap.put("PUR_SLIP_TYPE", cellValue); break;
case 52 : clientMap.put("PUR_TAX_TYPE", cellValue); break;
case 53 : clientMap.put("SALE_BANK_CD", cellValue); break;
case 54 : clientMap.put("SALE_BANK_NM", cellValue); break;
case 55 : clientMap.put("SALE_BRANCH_NM", cellValue); break;
case 56 : clientMap.put("SALE_ACCOUNT_NO", cellValue); break;
case 57 : clientMap.put("SALE_COLLECT_PLAN", cellValue); break;
case 58 : clientMap.put("SALE_SLIP_TYPE", cellValue); break;
case 59 : clientMap.put("SALE_TAX_TYPE", cellValue); break;
case 60 : clientMap.put("VENDOR_DEPT_NM", cellValue); break;
case 61 : clientMap.put("VENDOR_POSITION", cellValue); break;
case 62 : clientMap.put("VENDOR_DUTY", cellValue); break;
case 63 : clientMap.put("VENDOR_MANAGER_NM", cellValue); break;
case 64 : clientMap.put("VENDOR_TEL", cellValue); break;
case 65 : clientMap.put("VENDOR_EXT", cellValue); break;
case 66 : clientMap.put("VENDOR_MOBILE", cellValue); break;
case 67 : clientMap.put("VENDOR_EMAIL", cellValue); break;
case 68 : clientMap.put("MGR_DEPT_CD", cellValue); break;
case 69 : clientMap.put("MGR_DEPT_NM", cellValue); break;
case 70 : clientMap.put("MGR_POSITION", cellValue); break;
case 71 : clientMap.put("MGR_DUTY", cellValue); break;
case 72 : clientMap.put("MGR_EMP_CD", cellValue); break;
case 73 : clientMap.put("MGR_EMP_NM", cellValue); break;
case 74 : clientMap.put("MGR_TEL", cellValue); break;
case 75 : clientMap.put("MGR_EXT", cellValue); break;
case 76 : clientMap.put("MGR_MOBILE", cellValue); break;
case 77 : clientMap.put("MGR_EMAIL", cellValue); break;
case 78 : clientMap.put("MGR_REMARK", cellValue); break;
case 79 : clientMap.put("REC_REMARK", cellValue); break;
case 80 : clientMap.put("REC_POST_NO", cellValue); break;
case 81 : clientMap.put("REC_ADDR1", cellValue); break;
case 82 : clientMap.put("REC_ADDR2", cellValue); break;
case 83 : clientMap.put("REC_ADDR_FG", cellValue); break;
case 84 : clientMap.put("REC_TEL", cellValue); break;
case 85 : clientMap.put("REC_FAX", cellValue); break;
case 86 : clientMap.put("PROJECT_CD", cellValue); break;
case 87 : clientMap.put("PROJECT_NM", cellValue); break;
case 88 : clientMap.put("PJT_NMK", cellValue); break;
case 89 : clientMap.put("EXT_DATA_CD", cellValue); break;
case 90 : clientMap.put("E_TAX_YN", cellValue); break;
case 91 : clientMap.put("UNIT_REPORT_CLIENT", cellValue); break;
case 92 : clientMap.put("SUB_BUS_NO", cellValue); break;
case 93 : clientMap.put("PROCUREMENT_YN", cellValue); break;
case 94 : clientMap.put("USER_DEF_DC1", cellValue); break;
case 95 : clientMap.put("USER_DEF_DC2", cellValue); break;
case 96 : clientMap.put("USE_FG", cellValue); break;
case 97 : clientMap.put("USE_NM", cellValue); break;
case 98 : clientMap.put("BIZCON_FG", cellValue); break;
case 99 : clientMap.put("BIZCON_NM", cellValue); break;
case 100 : clientMap.put("SHIP_TP", cellValue); break;
case 101 : clientMap.put("SHIP_NM", cellValue); break;
case 102 : clientMap.put("PLAN_DAY_TYPE", cellValue); break;
case 103 : clientMap.put("PLAN_DAY", cellValue); break;
case 104 : clientMap.put("PURPOSE_TYPE", cellValue); break;
case 105 : clientMap.put("FOR_YN", cellValue); break;
case 106 : clientMap.put("CHECK_DATA", cellValue); break;
case 107 : clientMap.put("CHECK_STATE", cellValue); break;
case 108 : clientMap.put("CHECK_ORDER", cellValue); break;
case 109 : clientMap.put("FIXED_ORDER", cellValue); break; // 110번째 컬럼
}
}
sqlMap.put("CLIENT_CD", clientMap.get("CLIENT_CD"));
Map dupClientMap = sqlSession.selectOne("admin.getDuplicateClientExcel", sqlMap);
if(null != dupClientMap){
clientMap.put("DUP_YN", "Y");
}else{
clientMap.put("DUP_YN", "N");
}
resultList.add(clientMap);
}
}
fis.close();
}
sqlSession.close();
return resultList;
}
/**
* 거래처 일괄 저장
* @param request
* @param paramMap
*/
public void saveClientMaster(HttpServletRequest request,Map paramMap){
SqlSession sqlSession = null;
Map tempMap = new HashMap();
try{
String GridData = CommonUtils.checkNull(paramMap.get("jqGrid"));
System.out.println("GridData -------------------------->"+GridData);
System.out.println("CommonUtils.checkNull(paramMap.get(jqGrid)) -------------------------->"+CommonUtils.checkNull(paramMap.get("jqGrid")));
List<Map<String, Object>> gridDataList = JsonUtil.JsonToList(GridData);
sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
byte[] buf = new byte[1024];
System.out.println("gridDataSIZE : " + gridDataList.size());
for(int i=0; i<gridDataList.size(); i++){
Map insertMap = gridDataList.get(i);
Map fileMap = new HashMap();
String CLIENT_MGMT_OBJID = CommonUtils.createObjId();
insertMap.put("OBJID", CLIENT_MGMT_OBJID);
insertMap.put("CONNECTUSERID", (String)paramMap.get("CONNECTUSERID"));
String CLIENT_CD = CommonUtils.checkNull((String)insertMap.get("CLIENT_CD"));
String CLIENT_NM = CommonUtils.checkNull((String)insertMap.get("CLIENT_NM"));
insertMap.put("CLIENT_CD", CLIENT_CD.replace("§", "&"));
insertMap.put("CLIENT_NM", CLIENT_NM.replace("§", "&"));
insertMap.put("CLIENT_CD", CLIENT_CD.replace("", "%"));
insertMap.put("CLIENT_NM", CLIENT_NM.replace("", "%"));
String DUP_YN = CommonUtils.checkNull((String)insertMap.get("DUP_YN"));
if("N".equals(DUP_YN)){
sqlSession.insert("admin.insertClientExcel", insertMap);
}
}
sqlSession.commit();
}catch(Exception e){
e.printStackTrace();
sqlSession.rollback();
}finally{
sqlSession.close();
}
}
/**
* CLIENT 중복/신규 건수 조회
* @param paramMap
* @return
*/
public Map countExcelclient(Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
resultMap = sqlSession.selectOne("admin.countExcelclient", paramMap);
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
//-------------11월 20일 이희진-------------