서브도메인설정
Build & Deploy to K8s / build-and-deploy (push) Successful in 4m28s

This commit is contained in:
2026-04-24 04:56:40 +09:00
parent 94c9b4b602
commit 8be7e16e56
43 changed files with 6464 additions and 26 deletions
@@ -0,0 +1,93 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="provisioning">
<select id="existsCompanyCode" parameterType="map" resultType="int">
SELECT 1 FROM COMPANY_MNG WHERE COMPANY_CODE = #{company_code} LIMIT 1
</select>
<select id="existsSubdomain" parameterType="map" resultType="int">
SELECT 1 FROM COMPANY_MNG WHERE SUBDOMAIN = #{subdomain} LIMIT 1
</select>
<select id="existsDbName" parameterType="map" resultType="int">
SELECT 1 FROM COMPANY_MNG WHERE DB_NAME = #{db_name} LIMIT 1
</select>
<insert id="insertCompanyWithTenant" parameterType="map">
INSERT INTO COMPANY_MNG (
COMPANY_CODE
, COMPANY_NAME
, BUSINESS_REGISTRATION_NUMBER
, REPRESENTATIVE_NAME
, REPRESENTATIVE_PHONE
, EMAIL
, WEBSITE
, ADDRESS
, STATUS
, DB_NAME
, SUBDOMAIN
, DB_HOST
, DB_STATUS
, PLAN
, INDUSTRY
, TEMPLATES_COUNT
, WRITER
, CREATED_DATE
) VALUES (
#{company_code}
, #{company_name}
, #{business_registration_number}
, #{representative_name}
, #{representative_phone}
, #{email}
, #{website}
, #{address}
, COALESCE(#{status}, 'active')
, #{db_name}
, #{subdomain}
, #{db_host}
, COALESCE(#{db_status}, 'provisioning')
, COALESCE(#{plan}, 'Starter')
, #{industry}
, COALESCE(#{templates_count}, 0)
, #{writer}
, NOW()
)
</insert>
<!--
회사관리 UI (v9 accordion) 렌더용 전체 목록.
정적 필드만 반환. users / active30 / db_size / spark 등 derived 는 CompanyStatsService 가 덧붙임.
-->
<select id="listCompaniesForUi" resultType="map">
SELECT
COMPANY_CODE as company_code
, COMPANY_NAME as company_name
, SUBDOMAIN as subdomain
, DB_NAME as db_name
, DB_HOST as db_host
, DB_STATUS as db_status
, STATUS as status
, COALESCE(PLAN, 'Starter') as plan
, INDUSTRY as industry
, REPRESENTATIVE_NAME as owner
, BUSINESS_REGISTRATION_NUMBER as brn
, EMAIL as email
, COALESCE(TEMPLATES_COUNT, 0) as templates
, COALESCE(DB_QUOTA_GB, 20) as db_quota_gb
, CREATED_DATE as created
, WRITER as writer
FROM COMPANY_MNG
ORDER BY CREATED_DATE DESC NULLS LAST, COMPANY_CODE
</select>
<update id="updateDbStatus" parameterType="map">
UPDATE COMPANY_MNG
SET DB_STATUS = #{db_status}
WHERE COMPANY_CODE = #{company_code}
</update>
</mapper>