package com.jasamedika.medifirst2000.converter; import java.util.ArrayList; import java.util.List; import java.util.Map; import org.springframework.stereotype.Component; import com.google.gson.Gson; import com.jasamedika.medifirst2000.converter.base.BaseVoConverter; import com.jasamedika.medifirst2000.entities.Ruangan; import com.jasamedika.medifirst2000.vo.RuanganVO; @Component public class RuanganConverter implements BaseVoConverter { @Override public Ruangan transferVOToModel(RuanganVO vo, Ruangan model) { if (null == model) model = new Ruangan(); try { String[] fieldsToInclude = null; Map serialized = vo.serialize(fieldsToInclude,vo.getClass().getName()); Gson gson = new Gson(); serialized.put("unitKerja", model.getUnitKerja()); String json = gson.toJson(serialized); model = gson.fromJson(json, Ruangan.class); } catch (Exception e) { e.printStackTrace(); } return model; } @Override public List transferListOfModelToListOfVO(List models, List vos) { if (null == vos) vos = new ArrayList(); if (null == models) return vos; for (Ruangan ruangan : models) { RuanganVO vo = new RuanganVO(); vo=transferModelToVO(ruangan, vo); vos.add(vo); } return vos; } @Override public RuanganVO transferModelToVO(Ruangan model, RuanganVO vo) { if (null == vo) vo = new RuanganVO(); try { String[] fieldsToInclude = null; Map serialized = model.serialize(fieldsToInclude,model.getClass().getSimpleName()); Gson gson = new Gson(); String json = gson.toJson(serialized); vo = gson.fromJson(json, RuanganVO.class); } catch (Exception e) { e.printStackTrace(); } return vo; } public RuanganVO transferModelToVOCustom(Ruangan model, RuanganVO vo,String[] fieldsToInclude) { if (null == vo) vo = new RuanganVO(); try { Map serialized = model.serialize(fieldsToInclude,model.getClass().getSimpleName()); //edit by askur 23112016 //Gson gson = new GsonBuilder().excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd HH:mm:ss.SSS").create();; // //add by askur 23112016 Gson gson = new Gson(); // String json = gson.toJson(serialized); vo = gson.fromJson(json, RuanganVO.class); } catch (Exception e) { e.printStackTrace(); } return vo; } }