Package com.vst.webapp.action

Source Code of com.vst.webapp.action.CompanyLicenseListController

package com.vst.webapp.action;

import java.io.IOException;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.web.servlet.ModelAndView;

import com.vst.model.CompanyLicense;
import com.vst.model.Photo;
import com.vst.service.CompanyLicenseManager;
import com.vst.service.PhotoManager;
import com.vst.util.FileHelper;

/**
* Created by IntelliJ IDEA.
* User: Администратор
* Date: 06.07.2009
* Time: 17:29:46
* To change this template use File | Settings | File Templates.
*/
public class CompanyLicenseListController extends AbstractVstController {

    CompanyLicenseManager companyLicenseManager;
    PhotoManager photoManager;

    public void setPhotoManager(PhotoManager photoManager) {
        this.photoManager = photoManager;
    }

    public void setCompanyLicenseManager(CompanyLicenseManager companyLicenseManager) {
        this.companyLicenseManager = companyLicenseManager;
    }

    private void doDeleteLicenceInfo(HttpServletRequest request, HttpServletResponse response){
        Integer id = Integer.valueOf(request.getParameter("delete"));
        CompanyLicense companyLicense = companyLicenseManager.getById(id);
        Integer photoId = companyLicense.getPhoto().getPhotoId();
        companyLicenseManager.delete(companyLicense);
        photoManager.delete(photoManager.getByIdPhoto(photoId));
    }

    private Integer calcViewPagesCount(int rows){
      int rowsPerPage = 15;
      Integer pageCount = rows;
        if ((pageCount.intValue() % rowsPerPage) > 0) {
            pageCount = (Integer) (1 + (pageCount.intValue() / rowsPerPage));
        } else {
            pageCount = (Integer) (pageCount.intValue() / rowsPerPage);
        }
        if (pageCount.intValue() == 0) {
            pageCount = new Integer(1);
        }
        return pageCount;
    }

    private Integer processPageParam(HttpServletRequest request){
      Integer page = new Integer(0);
        if (request.getParameter("page") != null) {
            page = (Integer) Integer.parseInt(request.getParameter("page"));
        }
        return page;
    }

    private List<?> prepareLicenceViewList(HttpServletRequest request) throws IOException, SQLException{
      List list = new ArrayList();
      Integer page = processPageParam(request);

      if (companyLicenseManager.getList(page) != null) {
            list = companyLicenseManager.getList(page);
            for (int i = 0; i < list.size(); i++) {
                CompanyLicense companyLicense = (CompanyLicense) list.get(i);

                Photo photo = photoManager.getByIdPhoto(companyLicense.getPhoto().getPhotoId());
                photoManager.prepareForOpen(photo, FileHelper.getCurrentPath(request));
                companyLicense.setPhoto(photo);
            }
        }
      return list;
    }

    public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception {
        ModelAndView modelAndView = new ModelAndView("companyLicenseList");

        if (isDeleteParamPresent(request)) {
          doDeleteLicenceInfo(request,response);
        }


        Integer page = processPageParam(request);

        List list = prepareLicenceViewList(request);


        modelAndView.addObject("companyList", list);

        Integer pageCount = calcViewPagesCount(companyLicenseManager.getList().size());
        modelAndView.addObject("page", page);
        modelAndView.addObject("pageCount", pageCount);

        return modelAndView;
    }
}
TOP

Related Classes of com.vst.webapp.action.CompanyLicenseListController

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.