package com.ese.beans; import com.ese.model.db.*; import com.ese.model.view.IssuingView; import com.ese.model.view.SearchItemView; import com.ese.model.view.ShowSNView; import com.ese.model.view.StockMovementOutView; import com.ese.service.IssuingService; import com.ese.service.StockMovementShowItemService; import com.ese.utils.FacesUtil; import com.ese.utils.MessageDialog; import com.ese.utils.Utils; import com.sun.istack.internal.NotNull; import lombok.Getter; import lombok.Setter; import javax.annotation.PostConstruct; import javax.faces.bean.ManagedBean; import javax.faces.bean.ManagedProperty; import javax.faces.bean.ViewScoped; import javax.servlet.http.HttpSession; import java.util.ArrayList; import java.util.List; @Getter @Setter @ViewScoped @ManagedBean(name = "stockMoveItemBean") public class StockMovementShowItemBean extends Bean{ private static final long serialVersionUID = 4112578634263333840L; @ManagedProperty("#{stockMovementShowItemService}") private StockMovementShowItemService stockMovementShowItemService; @NotNull private StockInOutModel stockInOutModel; // @NotNull private StockInOutLineModel stockInOutLineModel; @NotNull private ShowSNView showSNView; @NotNull private SearchItemView searchItemView; @NotNull private StockMovementOutView stockMovementOutView; private List<StockInOutLineModel> stockInOutLineModelList; private List<ShowSNView> showSNViewList; private List<MSLocationModel> msLocationModelList; private List<MSWarehouseModel> msWarehouseModelList; private List<ShowSNView> searchItemViewList; private List<ShowSNView> selectSearchItemViewList; private List<StockMovementOutView> stockMovementOutViewList; private Boolean flagBtnShowSN; private Boolean flagBtnSearchItem; private Boolean flagBtnDelete; //ShowSN Dialog private Boolean flagBtnRemove; //SearchItem Dialog private Boolean flagBtnSelect; @PostConstruct private void onCreation(){ log.debug("onCreation()"); HttpSession session = FacesUtil.getSession(false); stockInOutModel = (StockInOutModel) session.getAttribute("stockInOutModel"); if(preLoad()) {//&& isAuthorize(key)){ init(); } } private void init(){ // stockInOutLineModel = new StockInOutLineModel(); stockMovementOutView = new StockMovementOutView(); showSNView = new ShowSNView(); searchItemView = new SearchItemView(); flagBtnShowSN = Boolean.TRUE; if (stockInOutModel.getStatus().getStatusSeq() == 1 || stockInOutModel.getStatus().getStatusSeq() == 2){ flagBtnSearchItem = Boolean.FALSE; } else { flagBtnSearchItem = Boolean.TRUE; } flagBtnDelete = Boolean.TRUE; onLoadTable(); } private void onLoadTable(){ // stockInOutLineModelList = stockMovementShowItemService.getByStockInOutId(stockInOutModel.getId()); stockMovementOutViewList = stockMovementShowItemService.getStockMovementOutByStockInOutId(stockInOutModel.getId()); } public void onClickTable(){ // flagBtnShowSN = Boolean.FALSE; // if (stockInOutModel.getStatus().getId() < 19){ //Status 19 = status_seq 3(Close) // flagBtnSearchItem = Boolean.FALSE; // } // = Boolean.TRUE;//jow if (!Utils.isNull(stockInOutModel)){ // if (stockMovementOutView.getStatus() == 1){ // flagBtnDelete = Boolean.FALSE; // } if (stockInOutModel.getStatus().getStatusSeq() == 4){ flagBtnDelete = Boolean.TRUE; }else flagBtnDelete = Boolean.FALSE; }else flagBtnDelete = Boolean.TRUE; } // public void onClickShowSN(){ // flagBtnRemove = Boolean.TRUE; // showSNViewList = stockMovementShowItemService.getInvOnhandByStockInOutLineId(stockInOutLineModel.getId()); // // } public void onDelete(){ if (!Utils.isNull(stockMovementOutView)){ stockMovementShowItemService.delete(stockMovementOutView.getId()); showDialog("Delete", "Delete success.", "msgBoxSystemMessageDlg"); onLoadTable(); flagBtnDelete = Boolean.TRUE; } } public void onClickRemove(){ stockMovementShowItemService.remove(showSNView); showDialogEdited(); // onLoadShowSN(); } // private void onLoadShowSN(){ // showSNView = new ShowSNView(); // flagBtnRemove = Boolean.TRUE; // showSNViewList = stockMovementShowItemService.getInvOnhandByStockInOutLineId(stockInOutLineModel.getId()); // } public void onClickTableShowSNDialg(){ flagBtnRemove = Boolean.FALSE; } public void onLoadSearchItem(){ // searchItemView = new SearchItemView(); flagBtnSelect = Boolean.TRUE; searchItemViewList = new ArrayList<ShowSNView>(); msWarehouseModelList = stockMovementShowItemService.findWarehouseAll(); msLocationModelList = stockMovementShowItemService.findLocationAll(); } public void onChangeWarehouse(){ if (!Utils.isZero(searchItemView.getWarehouseId())){ msLocationModelList = stockMovementShowItemService.getByWarehouseId(searchItemView.getWarehouseId()); } else { msLocationModelList = stockMovementShowItemService.findLocationAll(); } } public void onSearchItemDialog(){ searchItemViewList = stockMovementShowItemService.getBySearch(searchItemView); } public void onClickTabkeSearchItemDailog(){ if (!Utils.isZero(selectSearchItemViewList.size())){ flagBtnSelect = Boolean.FALSE; } else { flagBtnSelect = Boolean.TRUE; } } public void onSelect(){ stockMovementShowItemService.select(selectSearchItemViewList, stockInOutModel.getId()); showDialogEdited(); onSearchItemDialog(); } public void onClose(){ HttpSession session = FacesUtil.getSession(false); session.removeAttribute("stockInOutModel"); FacesUtil.redirect("/site/issuing.xhtml"); } public void onCloseDialog(){ stockMovementOutView = new StockMovementOutView(); showSNView = new ShowSNView(); searchItemView = new SearchItemView(); flagBtnShowSN = Boolean.TRUE; if (stockInOutModel.getStatus().getStatusSeq() == 1 || stockInOutModel.getStatus().getStatusSeq() == 2){ flagBtnSearchItem = Boolean.FALSE; } else { flagBtnSearchItem = Boolean.TRUE; } flagBtnDelete = Boolean.TRUE; onLoadTable(); } }