package com.ese.service; import com.ese.model.db.MSWarehouseModel; import com.ese.model.dao.WarehouseDAO; import com.ese.model.view.WarehouseView; import com.ese.transform.WarehouseTransform; import com.ese.utils.Utils; import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.util.ArrayList; import java.util.List; @Component @Transactional public class WarehouseService extends Service{ private static final long serialVersionUID = 4112578634029874740L; @Resource private WarehouseDAO warehouseDAO; @Resource private WarehouseTransform warehouseTransform; public List<MSWarehouseModel> getWarehouseAll(){ log.debug("getALl()."); List<MSWarehouseModel> msWarehouseModels = Utils.getEmptyList(); try { msWarehouseModels = warehouseDAO.getWarehouseOrderByUpdateDate(); } catch (Exception e){ log.debug("Exception getAll Warehouse : ", e); } return msWarehouseModels; } public WarehouseView converToView(MSWarehouseModel model){ log.debug("converToView(). {}", model); WarehouseView view = null; if (!Utils.isNull(model)){ view = warehouseTransform.transformToView(model); } return view; } public void onSaveOrUpdateWarehouse(WarehouseView warehouseView){ log.debug("onSaveWarehouse()."); try { if (Utils.isZero(warehouseView.getId())){ warehouseDAO.persist(warehouseTransform.transformToModel(warehouseView)); } else if (!Utils.isZero(warehouseView.getId())){ warehouseDAO.update(warehouseTransform.transformToModel(warehouseView)); } } catch (Exception e){ log.debug("Exception onSave Warehouse :", e); } } public void delete(MSWarehouseModel model){ log.debug("-- delete(id : {})", model.getId()); try { warehouseDAO.deleteByUpdate(model); } catch (Exception e) { log.error("{}",e); } } public boolean isDuplicate(String warehouseCode, int id){ List<MSWarehouseModel> msWarehouseModels = warehouseDAO.findByWarehouseCode(warehouseCode); return !Utils.isSafetyList(msWarehouseModels) || msWarehouseModels.size() == 1 && !Utils.isZero(id)?true:false; } }