/* * @(#)SysDictPos.java * * @Copyright(c) 2015 Beijing Sinova Technologies team. All rights reserved. * */ package com.gustz.dove.dev.data.sys.pos; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.concurrent.CopyOnWriteArrayList; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlElements; import javax.xml.bind.annotation.XmlRootElement; import org.apache.commons.lang3.StringUtils; import com.sinovatech.fw.setup.pack.data.BasePos; import com.sinovatech.rd.wcsb.repo.dict.po.DictGroupPo; import com.sinovatech.rd.wcsb.repo.dict.po.DictPo; /** * TODO: SysDictPo array * * @author ZHENFENG ZHANG * @since [Jan 3, 2015] */ @XmlRootElement public class DictPos extends BasePos<DictPo, String> { private static final long serialVersionUID = 1L; private List<DictPo> poList = new ArrayList<DictPo>(); // @Override // public Map<String, String> getFkSqlWhereMap() { // Map<String, String> _map = new HashMap<String, String>(); // _map.put("groupCode", " IS_DELETE='N' "); // return _map; // } @Override protected Map<FkPoInfo, Class<?>> getFkPoInfoMap() { // FK PO info map Map<FkPoInfo, Class<?>> _map = new HashMap<FkPoInfo, Class<?>>(); _map.put(new FkPoInfo("groupCode", "groupCode"), DictGroupPo.class); return _map; } @XmlElements({ @XmlElement(name = "sysDictPo", type = DictPo.class) }) @Override public List<DictPo> getPoList() { return poList; } @Override public void setPoList(List<DictPo> poList) { if (poList != null && poList.size() > 0) { // delete sub data List<DictPo> _list = new CopyOnWriteArrayList<DictPo>(poList); for (DictPo _po : _list) { if (_po != null && (StringUtils.isEmpty(_po.getGroupCode()) || StringUtils.isEmpty(_po.getDataKey()) || StringUtils .isEmpty(_po.getDataValue()))) { _list.remove(_po); } } poList = _list; } this.poList = poList; } }