JSFiddle - React, Tailwind, and code Playground

TempleGen JSON 생성기

by Ukjin Yang

HTML

<textarea name="" id="out" cols="80" rows="30">
push.Push.getDeviceDataOfMember
push.Push.getMoblDeviceId
push.Push.getPushInfoRecvYn
push.Push.registMoblDeviceToken
push.Push.updatePushInfoRcvAgreeYn
push.Push.insertEtlPushData
push.Push.insertMbrAgrHist
push.Push.updateMemReceiveAgree
</textarea>
<button id="run">Run!</button>

JavaScript

document.getElementById('run').onclick = function(){
	var out = document.getElementById('out'),
      txt = out.value.trim(),
      buf = txt.split('\n'),
      rot = "com.lotteimall.api",
      tmp = {"com.lotteimall.api":{}};
      
  for(var i=0,len=buf.length; i<len; i++){
    var t = buf[i].trim(),
        a = t.split('.'),
        v = a.pop(),
        k = a.join('.');
    if(a.length != 2 || !v) continue;

    if(!(k in tmp[rot])) tmp[rot][k] = {
      "name": a[1], "var": a[1].charAt(0).toLowerCase() + a[1].substring(1), "filter": ["!$name$VO.java"],
      "methods": {}
    };
    
		var u = !['insert','update','delete'].indexOf(v.substring(0,6));

    tmp[rot][k].methods[v] = {
    	"method": ['GET', 'PUT'][+u],"comment":"",
      "db": "ecDS", "return": ['String', 'int'][+u]
    };

  }
      
  out.value = JSON.stringify(tmp, null, '\t');
  
};