| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120 |
- /**
- * 영업사원 관련 데이터 관리 Composable
- * 팀 리스트, 직책 리스트 및 관련 유틸리티 함수 제공
- */
- export const useSalesData = () => {
- const config = useRuntimeConfig()
- /**
- * 회사별 영업팀 리스트 반환
- */
- const getTeamsList = () => {
- switch (config.public.company) {
- case "g":
- return [
- { id: 0, name: "마스터팀" },
- { id: 1, name: "1팀" },
- { id: 2, name: "2팀" },
- { id: 3, name: "3팀" },
- { id: 4, name: "4팀" },
- { id: 5, name: "5팀" },
- { id: 6, name: "6팀" },
- { id: 7, name: "7팀" },
- { id: 8, name: "8팀" },
- { id: 9, name: "9팀" },
- { id: 10, name: "10팀" },
- ]
- case "w":
- return [
- { id: 0, name: "특판팀" },
- { id: 1, name: "1팀" },
- { id: 2, name: "2팀" },
- { id: 3, name: "3팀" },
- { id: 4, name: "4팀" },
- { id: 5, name: "5팀" },
- { id: 6, name: "6팀" },
- { id: 7, name: "7팀" },
- { id: 8, name: "8팀" },
- { id: 9, name: "9팀" },
- { id: 10, name: "10팀" },
- ]
- default:
- return [
- { id: 0, name: "마스터팀" },
- { id: 1, name: "1팀" },
- { id: 2, name: "2팀" },
- { id: 3, name: "3팀" },
- { id: 4, name: "4팀" },
- { id: 5, name: "5팀" },
- { id: 6, name: "6팀" },
- { id: 7, name: "7팀" },
- { id: 8, name: "8팀" },
- { id: 9, name: "9팀" },
- { id: 10, name: "10팀" },
- ]
- }
- }
- /**
- * 회사별 직책 리스트 반환
- */
- const getPositionsList = () => {
- switch (config.public.company) {
- case "g":
- return [
- { value: 10, label: "팀장" },
- { value: 15, label: "마스터" },
- { value: 20, label: "차장" },
- { value: 30, label: "과장" },
- { value: 40, label: "대리" },
- { value: 60, label: "사원" },
- ]
- case "w":
- return [
- { value: 0, label: "인턴" },
- { value: 1, label: "사원" },
- { value: 2, label: "주임" },
- { value: 3, label: "대리" },
- { value: 4, label: "과장" },
- { value: 5, label: "차장" },
- { value: 6, label: "부장" },
- { value: 7, label: "팀장" },
- { value: 8, label: "지점장" },
- { value: 9, label: "Expert" },
- { value: 10, label: "부지점장" },
- ]
- default:
- return []
- }
- }
- const teams = ref(getTeamsList())
- const positions = ref(getPositionsList())
- /**
- * 팀 ID로 팀 이름 조회
- * @param {number|string} teamId - 팀 ID
- * @returns {string} 팀 이름
- */
- const getTeamName = (teamId) => {
- const team = teams.value.find(t => t.id == teamId)
- return team ? team.name : "-"
- }
- /**
- * 직책 코드로 직책 이름 조회
- * @param {number|string} positionCode - 직책 코드
- * @returns {string} 직책 이름
- */
- const getPositionName = (positionCode) => {
- const position = positions.value.find(p => p.value == positionCode)
- return position ? position.label : "-"
- }
- return {
- teams,
- positions,
- getTeamName,
- getPositionName,
- }
- }
|