com.ba.masters.stock.BAStockAction.java Source code

Java tutorial

Introduction

Here is the source code for com.ba.masters.stock.BAStockAction.java

Source

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package com.ba.masters.stock;

import com.ba.masters.configuration.BAConfigurationAction;
import com.ba.util.BAHandleAllException;
import java.util.HashMap;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.beanutils.BeanUtils;
import org.apache.log4j.Logger;

import org.apache.struts.actions.DispatchAction;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionForward;
import org.json.simple.JSONObject;

/**
 *
 * @author ramesh
 */
public class BAStockAction extends DispatchAction {

    /* forward name="success" path="" */
    private final static String SUCCESS = "success";
    private int objPageCount = 0;
    private static Logger logger = Logger.getLogger(BAStockAction.class);

    /**
     * This is the Struts action method called on
     * http://.../actionPath?method=myAction1, where "method" is the value
     * specified in <action> element : ( <action parameter="method" .../> )
     */
    public ActionForward loadStock(ActionMapping mapping, ActionForm form, HttpServletRequest request,
            HttpServletResponse response) throws Exception {
        logger.info(" loadStock method starts here");
        return mapping.findForward(SUCCESS);
    }

    public ActionForward baSave(ActionMapping mapping, ActionForm form, HttpServletRequest request,
            HttpServletResponse response) throws Exception {
        try {
            logger.info(" save method starts here");
            BAStockActionForm formBean = (BAStockActionForm) form;
            BAStockDTO dto = new BAStockDTO();
            BeanUtils.copyProperties(dto, formBean);
            int userId = (Integer) request.getSession().getAttribute("UserId");
            int result = BaStockFactory.getInstanceOfBaStockFactory().insertStockData(dto, userId);
            if (result == 0) {
                request.setAttribute("response", "Record Insertion failed.");
            }
            if (result > 0) {
                request.setAttribute("response", "Record Inserted successfully.");
            }
            if (result < 0) {
                request.setAttribute("response", "Database Connection failed. Please check.");
            }
        } catch (Exception ex) {
            logger.error("The Exception is  :" + ex);
            if (ex.toString().contains("com.mysql.jdbc.MysqlDataTruncation")) {
                request.setAttribute("ErrorMessage",
                        "Data is not correctly inserted into Database.Insertion Failed");
            } else if (ex.toString().contains("MySQLIntegrityConstraintViolationException")) {
                request.setAttribute("ErrorMessage", "Record already Exists");
            } else {
                String errorMessage = BAHandleAllException.exceptionHandler(ex);
                request.setAttribute("ErrorMessage", errorMessage);
            }
        }
        return mapping.findForward(SUCCESS);
    }

    public ActionForward baUpdate(ActionMapping mapping, ActionForm form, HttpServletRequest request,
            HttpServletResponse response) throws Exception {
        try {
            logger.info("update method starts here");

            BAStockActionForm formBean = (BAStockActionForm) form;
            BAStockDTO dto = new BAStockDTO();
            BeanUtils.copyProperties(dto, formBean);
            int userId = (Integer) request.getSession().getAttribute("UserId");
            int result = BaStockFactory.getInstanceOfBaStockFactory().updateStockData(dto, userId);
            if (result == 0) {
                request.setAttribute("response", "Record Updation failed.");
            }
            if (result > 0) {
                request.setAttribute("response", "Record Updated successfully.");
            }
            if (result < 0) {
                request.setAttribute("response", "Database Connection failed. Please check.");
            }
            logger.info("This is also printed" + result);
        } catch (Exception ex) {
            logger.error("The Exception is  :" + ex);
            if (ex.toString().contains("com.mysql.jdbc.MysqlDataTruncation")) {
                request.setAttribute("ErrorMessage",
                        "Data is not correctly inserted into Database.Insertion Failed");
            } else if (ex.toString().contains("MySQLIntegrityConstraintViolationException")) {
                request.setAttribute("ErrorMessage", "Record already Exists");
            } else {
                String errorMessage = BAHandleAllException.exceptionHandler(ex);
                request.setAttribute("ErrorMessage", errorMessage);
            }
        }
        logger.info("This is also printedkkkkk2");
        return mapping.findForward(SUCCESS);
    }

    public ActionForward baDelete(ActionMapping mapping, ActionForm form, HttpServletRequest request,
            HttpServletResponse response) throws Exception {
        try {
            logger.info("delete method starts here");
            BAStockActionForm formBean = (BAStockActionForm) form;
            BAStockDTO dto = new BAStockDTO();
            BeanUtils.copyProperties(dto, formBean);
            int result = BaStockFactory.getInstanceOfBaStockFactory().deleteStockData(dto);
            if (result == 0) {
                request.setAttribute("response", "Record Deletion failed.");
            }
            if (result > 0) {
                request.setAttribute("response", "Record Deleted successfully.");
            }
            if (result < 0) {
                request.setAttribute("response", "Database Connection failed. Please check.");
            }
        } catch (Exception ex) {
            logger.error("The Exception is  :" + ex);
            if (ex.toString().contains("com.mysql.jdbc.MysqlDataTruncation")) {
                request.setAttribute("ErrorMessage",
                        "Data is not correctly inserted into Database.Insertion Failed");
            } else if (ex.toString().contains("MySQLIntegrityConstraintViolationException")) {
                request.setAttribute("ErrorMessage", "Record already Exists");
            } else {
                String errorMessage = BAHandleAllException.exceptionHandler(ex);
                request.setAttribute("ErrorMessage", errorMessage);
            }
        }
        return mapping.findForward(SUCCESS);
    }

    public ActionForward baView(ActionMapping mapping, ActionForm form, HttpServletRequest request,
            HttpServletResponse response) throws Exception {
        JSONObject json = new JSONObject();
        BAStockDTO vo = new BAStockDTO();
        try {
            logger.info(" view method starts here");
            vo.setStockId((request.getParameter("stockId")));
            vo.setStockName(request.getParameter("stockName"));
            vo.setTypeGroup(request.getParameter("typeGroup"));
            vo.setUnits(request.getParameter("units"));
            vo.setMrp((request.getParameter("mrp")));
            List hashMpStockItemDet = BaStockFactory.getInstanceOfBaStockFactory().getStockDtls(1, vo);

            objPageCount = BaStockFactory.getInstanceOfBaStockFactory().getPageCount(vo);
            json.put("exception", "");
            json.put("StockItemDets", hashMpStockItemDet);
            json.put("StockItemExit", hashMpStockItemDet.size());
            json.put("objPageCount", objPageCount);
            //                 logger.warn("strCurrent PageNo ------------->"+objPageCount);

        } catch (Exception ex) {
            logger.error("The Exception is  :" + ex);
            ex.printStackTrace();
            json.put("exception", BAHandleAllException.exceptionHandler(ex));
        }
        response.getWriter().write(json.toString());
        return null;

    }

    public ActionForward baGet(ActionMapping mapping, ActionForm form, HttpServletRequest request,
            HttpServletResponse response) throws Exception {
        JSONObject json = new JSONObject();
        BAStockDTO vo = new BAStockDTO();
        try {
            logger.info(" get method starts here");
            String stockId = request.getParameter("search");
            HashMap hashMpStockItemDet = BaStockFactory.getInstanceOfBaStockFactory().getStockItemDtls(stockId);
            json.put("exception", "");
            json.put("StockItemDets", hashMpStockItemDet);
            json.put("StockItemExit", hashMpStockItemDet.size());

            logger.warn("strCurrent PageNo ------------->" + objPageCount);

        } catch (Exception ex) {
            logger.error("The Exception is  :" + ex);
            ex.printStackTrace();
            json.put("exception", BAHandleAllException.exceptionHandler(ex));
        }
        response.getWriter().write(json.toString());
        return null;

    }

    public ActionForward getPageRecords(ActionMapping mapping, ActionForm form, HttpServletRequest request,
            HttpServletResponse response) throws Exception {
        JSONObject json = new JSONObject();
        BAStockDTO vo = new BAStockDTO();
        logger.info(" getPageRecords method starts here");
        try {
            logger.error("strCurrent PageNo ------------->" + objPageCount);
            vo.setStockId((request.getParameter("stockId")));
            vo.setStockName(request.getParameter("stockName"));
            vo.setTypeGroup(request.getParameter("typeGroup"));
            vo.setUnits(request.getParameter("units"));
            vo.setMrp((request.getParameter("mrp")));

            String strNavigation = request.getParameter("navigation");
            int strCurrentPageNo = Integer.parseInt(request.getParameter("currentPageNo"));

            if (strNavigation != null && !strNavigation.equals("")) {
                if (strNavigation.equals("pre")) {
                    strCurrentPageNo = strCurrentPageNo - 1;
                    if (strCurrentPageNo <= 0)
                        strCurrentPageNo = 1;
                } else if (strNavigation.equals("next")) {
                    strCurrentPageNo = strCurrentPageNo + 1;
                    if (strCurrentPageNo > objPageCount)
                        strCurrentPageNo = objPageCount;
                }
            }
            logger.info("strCurrent PageNo ------------->" + strCurrentPageNo);
            List hashMpStockItemDet = BaStockFactory.getInstanceOfBaStockFactory().getStockDtls(strCurrentPageNo,
                    vo);
            json.put("exception", "");
            json.put("StockItemDets", hashMpStockItemDet);
            json.put("StockItemExit", hashMpStockItemDet.size());

        } catch (Exception ex) {
            logger.error("The Exception is  :" + ex);
            ex.printStackTrace();
            json.put("exception", BAHandleAllException.exceptionHandler(ex));
        }
        response.getWriter().write(json.toString());
        return null;
    }

}