Package action

Source Code of action.CompresiuneActionBean

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package action;

import bo.Proba;
import dao.ProbaDao;
import daoI.IProbaDao;
import dao.CompresibilitateDao;
import daoI.ICompresibilitateDao;
import bo.Compresiune;
import dao.CompresiuneDao;
import daoI.ICompresiuneDao;
import dao.StantaDao;
import daoI.IStantaDao;
import bo.Stanta;
import auxiliar.CompresiuneTabel;
import bo.Compresibilitate;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import net.sourceforge.stripes.action.DefaultHandler;
import net.sourceforge.stripes.action.ForwardResolution;
import net.sourceforge.stripes.action.Resolution;

public class CompresiuneActionBean extends BaseActionBean {

    private List<Float> sarcini = null;
    private String sarcina1;
    private String sarcina2;

    @DefaultHandler
    public Resolution view() {

        IProbaDao probaDao = new ProbaDao();
        Proba proba = probaDao.geProbaByID(Integer.parseInt(getContext().getRequest().getSession().getAttribute("idProba").toString()));
        // trebuie modificat sa afiseze sarcinile in comboboxuri direct cu gettere, asta dupa ce se rezolva punerea pe sesiune al id-ului probei
        ICompresibilitateDao compresibilitateDao = new CompresibilitateDao();
        List<Float> sarciniL = compresibilitateDao.geSarciniByIDProba(proba.getIdProba());
        setSarcini(sarciniL);

        ICompresiuneDao compresiuneDao = new CompresiuneDao();
        List<Compresiune> compresiuni = compresiuneDao.geCompresiuneByIDProba(proba.getIdProba());
        CompresiuneTabel compTabel = new CompresiuneTabel();
        if (compresiuni.size() != 0) {
            List<String> sigmaList = new ArrayList<String>();
            Iterator it = compresiuni.iterator();
            while (it.hasNext()) {
                sigmaList.add(((Compresiune) it.next()).getSigma());
            }
            compTabel.setC1(sigmaList);
            compTabel.setC2(formulaCompresiuneCol2(sigmaList, proba.getIdProba()));
            compTabel.setC3(formulaCompresiuneCol3(sigmaList, proba.getIdProba()));
            compTabel.setC4(formulaCompresiuneCol4(sigmaList, proba.getIdProba()));
            compTabel.setC5(formulaCompresiuneCol5(sigmaList, proba.getIdProba()));
            compTabel.setC6(formulaCompresiuneCol6(sigmaList, proba.getIdProba()));
            compTabel.setC7(formulaCompresiuneCol7(sigmaList, proba.getIdProba()));
            compTabel.setC8(formulaCompresiuneCol8(sigmaList, proba.getIdProba()));
            compTabel.setC9(formulaCompresiuneCol9(sigmaList, proba.getIdProba()));
            compTabel.setC10(formulaCompresiuneCol10(sigmaList, proba.getIdProba()));
        }
        getContext().getRequest().getSession(true).setAttribute("compresiune", compTabel);

        return new ForwardResolution("/WEB-INF/jsp/compresiune.jsp");
    }

    public Resolution submit() {

        IProbaDao probaDao = new ProbaDao();
        Proba proba = probaDao.geProbaByID(Integer.parseInt(getContext().getRequest().getSession().getAttribute("idProba").toString()));

        //sa populeze comboboxurile
        ICompresibilitateDao compresibilitateDao = new CompresibilitateDao();
        List<Float> sarciniL = compresibilitateDao.geSarciniByIDProba(proba.getIdProba());
        setSarcini(sarciniL);



        String sigma = getSarcina1() + "-" + getSarcina2();
        ICompresiuneDao compresiuneDao = new CompresiuneDao();
        Compresiune compresiune = new Compresiune(proba, sigma);
        List<Compresiune> compresiuneAuxiliar = compresiuneDao.geCompresiuneByIDProba(proba.getIdProba());
        if (compresiuneAuxiliar == null) {
            compresiuneDao.saveOrUpdate(compresiune);
        } else {
            int vb = 0;
            Iterator it = compresiuneAuxiliar.iterator();
            while (it.hasNext()) {
                Compresiune c = (Compresiune) it.next();
                if (c.getSigma().equals(sigma)) {
                    vb = 1;
                    compresiune.setIdCompresiune(c.getIdCompresiune());
                    compresiuneDao.saveOrUpdate(compresiune);
                    break;
                }
            }
            if (vb == 0) {
                compresiuneDao.saveOrUpdate(compresiune);
            }
        }
        List<Compresiune> compresiuni = compresiuneDao.geCompresiuneByIDProba(proba.getIdProba());
        List<String> sigmaList = new ArrayList<String>();
        Iterator it = compresiuni.iterator();
        while (it.hasNext()) {
            sigmaList.add(((Compresiune) it.next()).getSigma());
        }
        CompresiuneTabel compTabel = new CompresiuneTabel();
        compTabel.setC1(sigmaList);
        compTabel.setC2(formulaCompresiuneCol2(sigmaList, proba.getIdProba()));
        compTabel.setC3(formulaCompresiuneCol3(sigmaList, proba.getIdProba()));
        compTabel.setC4(formulaCompresiuneCol4(sigmaList, proba.getIdProba()));
        compTabel.setC5(formulaCompresiuneCol5(sigmaList, proba.getIdProba()));
        compTabel.setC6(formulaCompresiuneCol6(sigmaList, proba.getIdProba()));
        compTabel.setC7(formulaCompresiuneCol7(sigmaList, proba.getIdProba()));
        compTabel.setC8(formulaCompresiuneCol8(sigmaList, proba.getIdProba()));
        compTabel.setC9(formulaCompresiuneCol9(sigmaList, proba.getIdProba()));
        compTabel.setC10(formulaCompresiuneCol10(sigmaList, proba.getIdProba()));
        getContext().getRequest().getSession(true).setAttribute("compresiune", compTabel);
        return new ForwardResolution("/WEB-INF/jsp/compresiune.jsp");
    }

    public List<Float> formulaCompresiuneCol2(List<String> dataS, int idProba) {
        List<Float> dateOut = new ArrayList<Float>();
        List<Float> citire = new ArrayList<Float>();
        float formula = 0;
        String[] sigma = new String[2];
        ICompresibilitateDao compresibilitateDao = new CompresibilitateDao();
        Compresibilitate compresibilitate = null;
        IStantaDao stantaDao = new StantaDao();
        Stanta stanta = stantaDao.getStantaByIDProba(idProba);
        for (int i = 0; i < dataS.size(); i++) {
            sigma = dataS.get(i).split("-");
            compresibilitate = compresibilitateDao.geCompresibilitateByIDProbaAndSarcina(idProba, sigma[0]);
            citire.add(compresibilitate.getCitire());
            formula = citire.get(i) / stanta.getInaltimeStanta() / 10;
            dateOut.add((Float) zecimale(formula, 3));
        }

        return dateOut;
    }

    public List<Float> formulaCompresiuneCol3(List<String> dataS, int idProba) {
        List<Float> dateOut = new ArrayList<Float>();
        List<Float> citire = new ArrayList<Float>();
        float formula = 0;
        String[] sigma = new String[2];
        ICompresibilitateDao compresibilitateDao = new CompresibilitateDao();
        Compresibilitate compresibilitate = null;
        IStantaDao stantaDao = new StantaDao();
        Stanta stanta = stantaDao.getStantaByIDProba(idProba);
        for (int i = 0; i < dataS.size(); i++) {
            sigma = dataS.get(i).split("-");
            compresibilitate = compresibilitateDao.geCompresibilitateByIDProbaAndSarcina(idProba, sigma[1]);
            citire.add(compresibilitate.getCitire());
            formula = citire.get(i) / stanta.getInaltimeStanta() / 10;
            dateOut.add((Float) zecimale(formula, 3));
        }

        return dateOut;
    }

    public List<Float> formulaCompresiuneCol4(List<String> dataS, int idProba) {
        List<Float> dateOut = new ArrayList<Float>();
        List<Float> citire = new ArrayList<Float>();
        float formula = 0;
        String[] sigma = new String[2];
        ICompresibilitateDao compresibilitateDao = new CompresibilitateDao();
        Compresibilitate compresibilitate = null;
        IStantaDao stantaDao = new StantaDao();
        Stanta stanta = stantaDao.getStantaByIDProba(idProba);
        for (int i = 0; i < dataS.size(); i++) {
            sigma = dataS.get(i).split("-");
            compresibilitate = compresibilitateDao.geCompresibilitateByIDProbaAndSarcina(idProba, sigma[0]);
            citire.add(compresibilitate.getCitire());
            Float m2MinusM3 = stanta.getM2() - stanta.getTara();
            formula = (getSuprafataStanta(stanta) * getDensitateSchelet() / m2MinusM3) * (stanta.getInaltimeStanta() - citire.get(i) / 1000) - 1;
            dateOut.add((Float) zecimale(formula, 3));
        }

        return dateOut;
    }

    public List<Float> formulaCompresiuneCol5(List<String> dataS, int idProba) {
        List<Float> dateOut = new ArrayList<Float>();
        List<Float> citire = new ArrayList<Float>();
        float formula = 0;
        String[] sigma = new String[2];
        ICompresibilitateDao compresibilitateDao = new CompresibilitateDao();
        Compresibilitate compresibilitate = null;
        IStantaDao stantaDao = new StantaDao();
        Stanta stanta = stantaDao.getStantaByIDProba(idProba);
        Float m2MinusM3 = stanta.getM2() - stanta.getTara();
        for (int i = 0; i < dataS.size(); i++) {
            sigma = dataS.get(i).split("-");
            compresibilitate = compresibilitateDao.geCompresibilitateByIDProbaAndSarcina(idProba, sigma[1]);
            citire.add(compresibilitate.getCitire());
            formula = (getSuprafataStanta(stanta) * getDensitateSchelet() / m2MinusM3) * (stanta.getInaltimeStanta() - citire.get(i) / 1000) - 1;
            dateOut.add((Float) zecimale(formula, 3));
        }

        return dateOut;
    }

    public List<Float> formulaCompresiuneCol6(List<String> dataS, int idProba) {
        List<Float> dateOut = new ArrayList<Float>();
        List<Float> listaSarcini = new ArrayList<Float>();
        String sarcinaMinima = null;
        String[] sigma = new String[2];
        IStantaDao stantaDao = new StantaDao();
        Stanta stanta = stantaDao.getStantaByIDProba(idProba);
        float formula = 0, citire = 0, sarcinaAux1 = 0, sarcinaAux2 = 0, e0 = 0, e1 = 0, e2 = 0;

        Float m2MinusM3 = stanta.getM2() - stanta.getTara();
        ICompresibilitateDao compresibilitateDao = new CompresibilitateDao();
        List<Compresibilitate> compresibilitate = compresibilitateDao.geCompresibilitateByIDProba(idProba);
        Iterator it = compresibilitate.iterator();
        while (it.hasNext()) {
            listaSarcini.add(((Compresibilitate) it.next()).getSarcina());
        }
        sarcinaMinima = Collections.min(listaSarcini).toString();
        Compresibilitate compresibilitateCuSarcinaMinima = compresibilitateDao.geCompresibilitateByIDProbaAndSarcina(idProba, sarcinaMinima);
        citire = compresibilitateCuSarcinaMinima.getCitire();

        e0 = getSuprafataStanta(stanta) * getDensitateSchelet() / m2MinusM3 * (stanta.getInaltimeStanta() - citire / 1000) - 1;

        for (int i = 0; i < dataS.size(); i++) {
            sigma = dataS.get(i).split("-");
            sarcinaAux1 = Float.valueOf(sigma[1]);
            sarcinaAux2 = Float.valueOf(sigma[0]);
            e1 = formulaCompresiuneCol5(dataS, idProba).get(i);
            e2 = formulaCompresiuneCol4(dataS, idProba).get(i);
            formula = (sarcinaAux2 - sarcinaAux1) * (1 + e0) / (e1 - e2);
            dateOut.add(formula);

        }

        return dateOut;
    }

    public List<Float> formulaCompresiuneCol7(List<String> dataS, int idProba) {
        List<Float> dateOut = new ArrayList<Float>();
        Float formula;
        for (int i = 0; i < dataS.size(); i++) {
            formula = 1 / formulaCompresiuneCol6(dataS, idProba).get(i);
            dateOut.add(formula);
        }

        return dateOut;
    }

    public List<Float> formulaCompresiuneCol8(List<String> dataS, int idProba) {
        List<Float> dateOut = new ArrayList<Float>();
        Float formula;
        for (int i = 0; i < dataS.size(); i++) {
            formula = formulaCompresiuneCol7(dataS, idProba).get(i) * (1 + formulaCompresiuneCol6(dataS, idProba).get(0));
            dateOut.add((Float) zecimale(formula, 3));
        }
        return dateOut;
    }

    public List<Float> formulaCompresiuneCol9(List<String> dataS, int idProba) {
        List<Float> dateOut = new ArrayList<Float>();
        String[] sigma = new String[2];
        Float formula;
        float e1 = 0, e2 = 0, sig1 = 0, sig2 = 0;

        for (int i = 0; i < dataS.size(); i++) {
            sigma = dataS.get(i).split("-");
            sig1 = Float.valueOf(sigma[0]);
            sig2 = Float.valueOf(sigma[1]);
            e1 = formulaCompresiuneCol4(dataS, idProba).get(i);
            e2 = formulaCompresiuneCol5(dataS, idProba).get(i);
            formula = (float) ((e2 - e1) / Math.log10(sig1 / sig2));
            dateOut.add((Float) zecimale(formula, 3));
        }

        return dateOut;
    }

    public List<Float> formulaCompresiuneCol10(List<String> dataS, int idProba) {
        List<Float> dateOut = new ArrayList<Float>();
        float e1 = 0, e2 = 0, sig1 = 0, sig2 = 0;
        String[] sigma = new String[2];
        Float formula;
        for (int i = 0; i < dataS.size(); i++) {
            e1 = formulaCompresiuneCol4(dataS, idProba).get(i);
            e2 = formulaCompresiuneCol5(dataS, idProba).get(i);
            sigma = dataS.get(i).split("-");
            sig1 = Float.valueOf(sigma[0]);
            sig2 = Float.valueOf(sigma[1]);
            formula = (float) (-(e2 - e1) / Math.log10(sig1 / sig2));
            dateOut.add((Float) zecimale(formula, 3));
        }

        return dateOut;
    }

    public List<Float> getSarcini() {
        return sarcini;
    }

    public void setSarcini(List<Float> sarcini) {
        this.sarcini = sarcini;
    }

    public String getSarcina1() {
        return sarcina1;
    }

    public void setSarcina1(String sarcina1) {
        this.sarcina1 = sarcina1;
    }

    public String getSarcina2() {
        return sarcina2;
    }

    public void setSarcina2(String sarcina2) {
        this.sarcina2 = sarcina2;
    }

    public Float getDensitateSchelet() {
        return (Float) zecimale(Float.parseFloat(getRs()), 2);
    }

    public Float getSuprafataStanta(Stanta stanta) {
        Float diametruStanta = stanta.getDiamStanta();
        return (Float) zecimale((diametruStanta * 3.1418 * diametruStanta / 4), 2);
    }
}
TOP

Related Classes of action.CompresiuneActionBean

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.