Example usage for org.springframework.jdbc.support.rowset SqlRowSet getInt

List of usage examples for org.springframework.jdbc.support.rowset SqlRowSet getInt

Introduction

In this page you can find the example usage for org.springframework.jdbc.support.rowset SqlRowSet getInt.

Prototype

int getInt(String columnLabel) throws InvalidResultSetAccessException;

Source Link

Document

Retrieve the value of the indicated column in the current row as an int.

Usage

From source file:com.ardhi.businessgame.services.BusinessGameService.java

public String detachEquipment(HttpServletRequest req) {
    String val = "0", idStorage, sqls[];
    ArrayList<String> sqlL = new ArrayList<String>();
    SqlRowSet srs;

    //0 = internal error
    //1 = user belum memiliki storage

    srs = db.getJdbc()//w w w. j  a  va 2  s .co m
            .queryForRowSet("select id from storage where [user]='" + req.getParameter("user")
                    + "' and [zone]=(select [zone] from businessgame.dbo.[user] where name='"
                    + req.getParameter("user") + "')");
    if (srs.next())
        idStorage = srs.getString("id");
    else
        return "1";

    sqlL.add("delete from installment_equipment where id='" + req.getParameter("idEquipment") + "'");

    sqlL.add("insert into storage_equipment values ('" + req.getParameter("idEquipment") + "','" + idStorage
            + "')");

    sqls = new String[sqlL.size()];
    sqlL.toArray(sqls);
    db.getJdbc().batchUpdate(sqls);

    srs = db.getJdbc().queryForRowSet(
            "select installment_equipment.id,equipment,quality,durability,size,operational,draw from installment_equipment,desc_equipment,list_equipment,info_equipment where installment='"
                    + req.getParameter("id")
                    + "' and installment_equipment.id=list_equipment.id and list_equipment.[desc]=desc_equipment.id and name=equipment");
    ArrayList<InstallmentEquipment> equipments = new ArrayList<InstallmentEquipment>();
    while (srs.next()) {
        equipments.add(new InstallmentEquipment(srs.getString("id"), srs.getString("equipment"),
                srs.getInt("quality"), srs.getDouble("durability"), srs.getDouble("size"),
                srs.getDouble("operational"), srs.getString("draw")));
    }

    Installment installment = getSingleUserInstallments(req.getParameter("id"));

    ArrayList<String> data = new ArrayList<String>();
    data.add(gson.toJson(equipments));
    data.add(gson.toJson(installment));

    val = gson.toJson(data);

    equipments = null;
    installment = null;
    data = null;
    sqlL = null;
    sqls = null;
    idStorage = null;
    srs = null;

    gc();

    return val;
}

From source file:com.ardhi.businessgame.services.BusinessGameService.java

public String buyMarketEquipment(HttpServletRequest req) {
    String val = "0", seller, user, userZone, equipmentIdSeller, sqls[];
    double userMoney, sellerMoney, price, storage = 0, size;
    int level;/*from  w  ww  . jav a  2s. co  m*/
    ArrayList<String> sqlL = new ArrayList<String>();

    //0 = internal error
    //1 = produk dah abis
    //2 = uang ga cukup
    //3 = storage ga ada
    //4 = storage ga cukup

    SqlRowSet srs = db.getJdbc().queryForRowSet(
            "select name,money,[zone] from businessgame.dbo.[user] where name=(select [user] from storage where id='"
                    + req.getParameter("storage") + "')");
    if (srs.next()) {
        user = srs.getString("name");
        userMoney = srs.getDouble("money");
        userZone = srs.getString("zone");
    } else
        return "0";

    srs = db.getJdbc().queryForRowSet(
            "select storage_equipment_id,market_equipment.price,size,name,money from market_equipment,list_equipment,desc_equipment,[user],storage,storage_equipment where market_equipment.id='"
                    + req.getParameter("equipmentId")
                    + "' and storage_equipment.id=list_equipment.id and storage_equipment_id=storage_equipment.id and list_equipment.[desc]=desc_equipment.id and storage_equipment_id=list_equipment.id and storage.id=storage_equipment.storage and [user].name=storage.[user]");
    if (srs.next()) {
        price = srs.getDouble("price");
        size = srs.getDouble("size");
        equipmentIdSeller = srs.getString("storage_equipment_id");
        seller = srs.getString("name");
        sellerMoney = srs.getDouble("money");
    } else
        return "1";

    if (userMoney < price)
        return "2";

    userMoney -= price;

    srs = db.getJdbc()
            .queryForRowSet("select [level] from storage where id='" + req.getParameter("storage") + "'");
    if (srs.next()) {
        level = srs.getInt("level") - 1;
    } else
        return "3";

    srs = db.getJdbc().queryForRowSet(
            "select [value] from info_values where name='storage' union select [value] from info_values where name='storage_inc'");
    if (srs.next()) {
        storage = Double.parseDouble(srs.getString("value"));
    } else
        return "0";

    if (srs.next()) {
        storage += level * Double.parseDouble(srs.getString("value"));
    } else
        return "0";

    srs = db.getJdbc().queryForRowSet("select id,size from storage_product where storage='"
            + req.getParameter("storage")
            + "' union select storage_equipment.id,size from storage_equipment,desc_equipment,list_equipment,storage where storage='"
            + req.getParameter("storage")
            + "' and list_equipment.id=storage_equipment.id and list_equipment.[desc]=desc_equipment.id and storage.id=storage_equipment.storage");
    while (srs.next()) {
        storage -= srs.getDouble("size");
    }

    if (storage < size)
        return "4";

    sqlL.add("update storage_equipment set storage='" + req.getParameter("storage") + "' where id='"
            + equipmentIdSeller + "'");

    sqlL.add("update list_equipment set buy_price='" + price + "' where id='" + equipmentIdSeller + "'");

    sqlL.add("delete from market_equipment where id='" + req.getParameter("equipmentId") + "'");

    sqlL.add("update businessgame.dbo.[user] set money='" + userMoney + "' where name='" + user + "'");

    if (!seller.equals("")) {
        sellerMoney += price;
        sqlL.add("update businessgame.dbo.[user] set money='" + sellerMoney + "' where name='" + seller + "'");
    }

    sqls = new String[sqlL.size()];
    sqlL.toArray(sqls);
    db.getJdbc().batchUpdate(sqls);

    srs = db.getJdbc().queryForRowSet(
            "select market_equipment.id,storage.[user],equipment,market_equipment.price,quality,durability,size,operational,draw from market_equipment,storage_equipment,desc_equipment,list_equipment,storage,info_equipment where market_equipment.[zone]='"
                    + userZone
                    + "' and storage_equipment.id=storage_equipment_id and list_equipment.id=storage_equipment.id and list_equipment.[desc]=desc_equipment.id and storage.id=storage_equipment.storage and equipment=name");
    ArrayList<MarketEquipment> equipments = new ArrayList<MarketEquipment>();
    while (srs.next()) {
        equipments
                .add(new MarketEquipment(srs.getString("id"), srs.getString("user"), srs.getString("equipment"),
                        srs.getDouble("price"), srs.getInt("quality"), srs.getDouble("durability"),
                        srs.getDouble("size"), srs.getDouble("operational"), srs.getString("draw")));
    }

    ArrayList<String> data = new ArrayList<String>();
    data.add(gson.toJson(userMoney));
    data.add(gson.toJson(equipments));

    val = gson.toJson(data);

    sqlL = null;
    equipments = null;
    data = null;
    sqls = null;
    srs = null;
    seller = null;
    user = null;
    userZone = null;
    equipmentIdSeller = null;

    gc();

    return val;
}

From source file:com.ardhi.businessgame.services.BusinessGameService.java

public String fireEmployee(HttpServletRequest req) {
    String val = "", zone, idInc, sqls[];
    ArrayList<String> sqlL = new ArrayList<String>();
    double price;
    SqlRowSet srs;

    srs = db.getJdbc().queryForRowSet("select price from list_employee,desc_employee where list_employee.id='"
            + req.getParameter("idEmployee") + "' and desc_employee.id=list_employee.[desc]");
    if (srs.next())
        price = srs.getDouble("price");
    else/*from   www. jav  a 2s  . com*/
        return "0";

    srs = db.getJdbc()
            .queryForRowSet("select [zone] from installment where id='" + req.getParameter("id") + "'");
    if (srs.next())
        zone = srs.getString("zone");
    else
        return "0";

    idInc = getUniqueIncrementIdNew("market_employee");
    sqlL.add("delete from installment_employee where id='" + req.getParameter("idEmployee") + "'");
    sqlL.add("insert into market_employee values ('" + KEY_MARKET_EMPLOYEE + idInc + "','"
            + req.getParameter("idEmployee") + "','" + zone + "','" + price + "')");

    sqls = new String[sqlL.size()];
    sqlL.toArray(sqls);
    db.getJdbc().batchUpdate(sqls);

    srs = db.getJdbc().queryForRowSet(
            "select installment_employee.id,employee,quality,operational,draw from installment_employee,desc_employee,list_employee,info_employee where installment='"
                    + req.getParameter("id")
                    + "' and installment_employee.id=list_employee.id and list_employee.[desc]=desc_employee.id and name=employee");
    ArrayList<InstallmentEmployee> employees = new ArrayList<InstallmentEmployee>();
    while (srs.next()) {
        employees.add(new InstallmentEmployee(srs.getString("id"), srs.getString("employee"),
                srs.getInt("quality"), srs.getDouble("operational"), srs.getString("draw")));
    }

    Installment installment = getSingleUserInstallments(req.getParameter("id"));

    ArrayList<String> data = new ArrayList<String>();
    data.add(gson.toJson(employees));
    data.add(gson.toJson(installment));

    val = gson.toJson(data);

    employees = null;
    sqlL = null;
    sqls = null;
    idInc = null;
    zone = null;
    srs = null;
    data = null;
    installment = null;

    gc();

    return val;
}

From source file:com.ardhi.businessgame.services.BusinessGameService.java

public String cancelOfferEquipment(HttpServletRequest req) {
    String val = "";
    db.getJdbc().execute("delete from market_equipment where id='" + req.getParameter("id") + "'");

    SqlRowSet srs1, srs2;

    srs1 = db.getJdbc().queryForRowSet(//from  w w w .  jav  a2  s .co m
            "select storage_equipment.id,equipment,quality,durability,size,operational,draw from storage_equipment,list_equipment,desc_equipment,info_equipment where storage=(select id from storage where [user]='"
                    + req.getParameter("user") + "' and [zone]='" + req.getParameter("zone")
                    + "') and storage_equipment.id=list_equipment.id and list_equipment.[desc]=desc_equipment.id and name=equipment");
    ArrayList<StorageEquipment> storageEquipments = new ArrayList<StorageEquipment>();
    ArrayList<MarketEquipment> marketEquipments = new ArrayList<MarketEquipment>();
    while (srs1.next()) {
        srs2 = db.getJdbc().queryForRowSet(
                "select market_equipment.id,equipment,market_equipment.price,quality,durability,size,operational,draw from storage_equipment,market_equipment,desc_equipment,list_equipment,info_equipment where storage_equipment_id='"
                        + srs1.getString("id")
                        + "' and storage_equipment.id=storage_equipment_id and list_equipment.id=storage_equipment.id and list_equipment.[desc]=desc_equipment.id and equipment=name");
        if (srs2.next()) {
            marketEquipments.add(new MarketEquipment(srs2.getString("id"), "", srs2.getString("equipment"),
                    srs2.getDouble("price"), srs2.getInt("quality"), srs2.getDouble("durability"),
                    srs2.getDouble("size"), srs2.getDouble("operational"), srs2.getString("draw")));
        } else {
            storageEquipments.add(new StorageEquipment(srs1.getString("id"), srs1.getString("equipment"),
                    srs1.getInt("quality"), srs1.getDouble("durability"), srs1.getDouble("size"),
                    srs1.getDouble("operational"), srs1.getString("draw")));
        }
    }

    ArrayList<String> data = new ArrayList<String>();
    data.add(gson.toJson(storageEquipments));
    data.add(gson.toJson(marketEquipments));
    val = gson.toJson(data);

    data = null;
    marketEquipments = null;
    storageEquipments = null;
    srs1 = null;
    srs2 = null;

    gc();

    return val;
}

From source file:com.ardhi.businessgame.services.BusinessGameService.java

public String hireEmployeeToInstallment(HttpServletRequest req) {
    String val = "", idEmployee, sqls[];
    ArrayList<String> sqlL = new ArrayList<String>();
    SqlRowSet srs;
    double money, price;

    //0=internal error
    //1=karyawan keburu diambil orang
    //2=uang ga cukup

    srs = db.getJdbc().queryForRowSet(/*from w w  w .  j  ava 2s  .c o  m*/
            "select money from businessgame.dbo.[user] where name='" + req.getParameter("user") + "'");
    if (srs.next())
        money = srs.getDouble("money");
    else
        return "0";

    srs = db.getJdbc().queryForRowSet("select market_employee.[desc],price from market_employee where id='"
            + req.getParameter("idEmployee") + "'");
    if (srs.next()) {
        idEmployee = srs.getString("desc");
        price = srs.getDouble("price");
    } else
        return "1";

    if (money < price)
        return "2";

    money -= price;

    sqlL.add("insert into installment_employee values ('" + idEmployee + "','"
            + req.getParameter("idInstallment") + "')");
    sqlL.add("delete from market_employee where id='" + req.getParameter("idEmployee") + "'");
    sqlL.add("update businessgame.dbo.[user] set money='" + money + "' where name='" + req.getParameter("user")
            + "'");

    sqls = new String[sqlL.size()];
    sqlL.toArray(sqls);
    db.getJdbc().batchUpdate(sqls);

    srs = db.getJdbc().queryForRowSet(
            "select market_employee.id,employee,market_employee.price,quality,operational,draw from market_employee,desc_employee,list_employee,info_employee where [zone]='"
                    + req.getParameter("zone")
                    + "' and list_employee.id=market_employee.[desc] and desc_employee.id=list_employee.[desc] and name=employee");
    ArrayList<MarketEmployee> employees = new ArrayList<MarketEmployee>();
    while (srs.next()) {
        employees.add(new MarketEmployee(srs.getString("id"), srs.getString("employee"), srs.getDouble("price"),
                srs.getInt("quality"), srs.getDouble("operational"), srs.getString("draw")));
    }

    Installment installment = getSingleUserInstallments(req.getParameter("idInstallment"));

    ArrayList<String> data = new ArrayList<String>();
    data.add(gson.toJson(money));
    data.add(gson.toJson(employees));
    data.add(gson.toJson(installment));

    val = gson.toJson(data);

    data = null;
    employees = null;
    installment = null;
    sqlL = null;
    sqls = null;
    idEmployee = null;
    srs = null;

    gc();

    return val;
}

From source file:com.ardhi.businessgame.services.BusinessGameService.java

public String cancelOfferProduct(HttpServletRequest req) {
    String val = "";
    double remain;

    db.getJdbc().execute("delete from market_product where id='" + req.getParameter("id") + "'");

    SqlRowSet srs1 = db.getJdbc().queryForRowSet(
            "select storage_product.id,product,quality,size,draw from storage_product,desc_product,info_product where storage=(select id from storage where [user]='"
                    + req.getParameter("user") + "' and [zone]='" + req.getParameter("zone")
                    + "') and desc_product.id=storage_product.[desc] and product=name"),
            srs2;// w  w w . ja v a  2 s . co  m

    srs1 = db.getJdbc().queryForRowSet(
            "select storage_product.id,product,quality,size,draw from storage_product,desc_product,info_product where storage=(select id from storage where [user]='"
                    + req.getParameter("user") + "' and [zone]='" + req.getParameter("zone")
                    + "') and desc_product.id=storage_product.[desc] and product=name");
    ArrayList<StorageProduct> storageProducts = new ArrayList<StorageProduct>();
    ArrayList<MarketProduct> marketProducts = new ArrayList<MarketProduct>();
    while (srs1.next()) {
        remain = srs1.getDouble("size");
        srs2 = db.getJdbc().queryForRowSet(
                "select market_product.id,product,market_product.price,quality,market_product.size,draw from market_product,desc_product,info_product,storage_product where storage_product_id='"
                        + srs1.getString("id")
                        + "' and storage_product_id=storage_product.id and desc_product.id=storage_product.[desc] and product=name");
        while (srs2.next()) {
            remain -= srs2.getDouble("size");
            marketProducts.add(new MarketProduct(srs2.getString("id"), "", srs2.getString("product"),
                    srs2.getDouble("price"), srs2.getInt("quality"), srs2.getDouble("size"),
                    srs2.getString("draw")));
        }
        if (remain > 0)
            storageProducts
                    .add(new StorageProduct(srs1.getString("id"), srs1.getString("product"),
                            srs1.getInt("quality"), new BigDecimal(Double.valueOf(remain))
                                    .setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue(),
                            srs1.getString("draw")));
    }

    //      ArrayList<StorageProduct> products = new ArrayList<StorageProduct>();
    //      while(srs1.next()){
    //         remain = srs1.getDouble("size");
    //         srs2 = db.getJdbc().queryForRowSet("select size from market_product where storage_product_id='"+srs1.getString("id")+"'");
    //         while(srs2.next()){
    //            remain -= srs2.getDouble("size");
    //         }
    //         if(remain > 0)
    //            products.add(new StorageProduct(srs1.getString("id"), srs1.getString("product"), srs1.getInt("quality"), new BigDecimal(Double.valueOf(remain)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue(), srs2.getString("draw")));
    //      }
    ArrayList<String> data = new ArrayList<String>();
    data.add(gson.toJson(storageProducts));
    data.add(gson.toJson(marketProducts));
    val = gson.toJson(data);

    data = null;
    marketProducts = null;
    storageProducts = null;
    srs1 = null;
    srs2 = null;

    gc();

    return val;
}

From source file:com.ardhi.businessgame.services.BusinessGameService.java

public String loadBankData(HttpServletRequest req) {
    String val = "";

    SqlRowSet srs = db.getJdbc()
            .queryForRowSet("select id from req_borrow_bank where [user]='" + req.getParameter("user") + "'");
    if (srs.next())
        return "1";

    srs = db.getJdbc()//from   w  w w  .j a  va 2 s  .  c o  m
            .queryForRowSet("select id from borrow_bank where [user]='" + req.getParameter("user") + "'");
    if (srs.next())
        return "2";

    ArrayList<String> sectorList = new ArrayList<String>(), data = new ArrayList<String>();
    ArrayList<Double> priceList = new ArrayList<Double>();
    ArrayList<BusinessSectorInfo> bsiList = new ArrayList<BusinessSectorInfo>();
    ArrayList<IndustrialEquipmentInfo> ie;
    ArrayList<EmployeeInfo> e;
    ArrayList<InputInfo> i;
    ArrayList<OutputInfo> o;
    double tmpd1, tmpd2;

    srs = db.getJdbc().queryForRowSet("select name, cost from info_sector");
    while (srs.next()) {
        sectorList.add(srs.getString("name"));
        priceList.add(srs.getDouble("cost"));
    }

    srs = db.getJdbc().queryForRowSet(
            "select cost from info_zone where id=(select [zone] from businessgame.dbo.[user] where name='"
                    + req.getParameter("user") + "')");
    if (srs.next())
        tmpd1 = srs.getDouble("cost");
    else
        return "0";

    srs = db.getJdbc().queryForRowSet("select [value] from info_values where name='cost_storage'");
    if (srs.next())
        tmpd2 = Double.parseDouble(srs.getString("value"));
    else
        return "0";

    for (String sector : sectorList) {
        srs = db.getJdbc().queryForRowSet(
                "select equipment_type,items,base_price,base_operational from info_sector_equipment,info_equipment where equipment_type=info_equipment.name and info_sector_equipment.sector='"
                        + sector + "'");

        ie = new ArrayList<IndustrialEquipmentInfo>();
        while (srs.next()) {
            ie.add(new IndustrialEquipmentInfo(srs.getString("equipment_type"), srs.getInt("items"),
                    srs.getDouble("base_price"), srs.getDouble("base_operational")));
        }

        srs = db.getJdbc().queryForRowSet(
                "select employee_type,items,base_price,base_operational from info_sector_employee,info_employee where employee_type=info_employee.name and info_sector_employee.sector='"
                        + sector + "'");
        e = new ArrayList<EmployeeInfo>();
        while (srs.next()) {
            e.add(new EmployeeInfo(srs.getString("employee_type"), srs.getInt("items"),
                    srs.getDouble("base_price"), srs.getDouble("base_operational")));
        }

        srs = db.getJdbc().queryForRowSet(
                "select input_type,base_price,size from info_sector_input,info_product where input_type=info_product.name and info_sector_input.sector='"
                        + sector + "'");
        i = new ArrayList<InputInfo>();
        while (srs.next()) {
            i.add(new InputInfo(srs.getString("input_type"), srs.getDouble("size"),
                    srs.getDouble("base_price")));
        }

        srs = db.getJdbc().queryForRowSet(
                "select output_type,base_price,size from info_sector_output,info_product where output_type=info_product.name and info_sector_output.sector='"
                        + sector + "'");
        o = new ArrayList<OutputInfo>();
        while (srs.next()) {
            o.add(new OutputInfo(srs.getString("output_type"), srs.getDouble("size"),
                    srs.getDouble("base_price")));
        }

        bsiList.add(new BusinessSectorInfo(ie, e, i, o));
        ie = null;
        e = null;
        i = null;
        o = null;
    }

    data.add(gson.toJson(sectorList));
    data.add(gson.toJson(priceList));
    data.add(gson.toJson(tmpd1));
    data.add(gson.toJson(tmpd2));
    data.add(gson.toJson(bsiList));

    val = gson.toJson(data);

    sectorList = null;
    priceList = null;
    bsiList = null;
    data = null;
    srs = null;

    gc();

    return val;
}

From source file:com.ardhi.businessgame.services.BusinessGameService.java

public String loadPlayerInfo(HttpServletRequest req) {
    String val = "", email, dob, about;
    long rep;/*from www  .  j  a v a 2  s  .  c  om*/
    SqlRowSet srs1 = db.getJdbc()
            .queryForRowSet("select email,dob,about,rep from businessgame.dbo.[user] where name='"
                    + req.getParameter("player") + "'"),
            srs2, srs3;
    if (srs1.next()) {
        email = srs1.getString("email");
        dob = srs1.getString("dob");
        about = srs1.getString("about");
        rep = srs1.getLong("rep");
    } else
        return "0";

    srs1 = db.getJdbc()
            .queryForRowSet("select type from installment where [user]='" + req.getParameter("player") + "'");
    ArrayList<String> installments = new ArrayList<String>(), outputs = new ArrayList<String>();
    ArrayList<ArrayList<Double>> prices = new ArrayList<ArrayList<Double>>();
    ArrayList<Double> tmpPrices;
    while (srs1.next()) {
        if (!installments.contains(srs1.getString("type")))
            installments.add(srs1.getString("type"));
        srs2 = db.getJdbc().queryForRowSet("select output_type from info_sector_output where sector='"
                + srs1.getString("type") + "' and output_type!='Energy'");
        while (srs2.next()) {
            if (!outputs.contains(srs2.getString("output_type"))) {
                tmpPrices = new ArrayList<Double>();
                outputs.add(srs2.getString("output_type"));
                srs3 = db.getJdbc().queryForRowSet("select price from desc_product where product='"
                        + srs2.getString("output_type") + "' order by quality asc");
                //               System.out.println("select price from desc_product where product='"+srs2.getString("output_type")+"' order by quality asc");
                while (srs3.next()) {
                    //                  System.out.println(srs3.getDouble("price"));
                    tmpPrices.add(srs3.getDouble("price"));
                }
                prices.add(tmpPrices);
                tmpPrices = null;
            }
        }
    }

    srs1 = db.getJdbc().queryForRowSet("select quality from info_quality order by quality asc");
    ArrayList<Integer> qualities = new ArrayList<Integer>();
    while (srs1.next()) {
        qualities.add(srs1.getInt("quality"));
    }

    for (int i = 0; i < outputs.size(); i++) {
        for (int j = 0; j < qualities.size(); j++) {
            //            System.out.println(outputs.get(i)+" - "+qualities.get(j)+" at "+prices.get(i).get(j));
        }
    }

    ArrayList<String> data = new ArrayList<String>();
    data.add(email);
    data.add(dob);
    data.add(about);
    data.add(gson.toJson(rep));
    data.add(gson.toJson(installments));
    data.add(gson.toJson(outputs));
    data.add(gson.toJson(qualities));
    data.add(gson.toJson(prices));

    val = gson.toJson(data);

    srs1 = null;
    data = null;
    email = null;
    about = null;
    installments = null;
    outputs = null;
    qualities = null;
    prices = null;
    tmpPrices = null;

    gc();

    return val;
}

From source file:com.ardhi.businessgame.services.BusinessGameService.java

public String buyMarketProduct(HttpServletRequest req) {
    String val = "0", seller = "", sellerZone = "", user, userZone, product, idInc, sqls[], desc;
    double userMoney, sellerMoney, price, storage = 0, picked, size, total, transport = 0;
    int level;//from  www .  ja  v  a 2  s  .  c  om
    ArrayList<String> sqlL = new ArrayList<String>();

    SqlRowSet srs = db.getJdbc().queryForRowSet(
            "select name,money,[zone] from businessgame.dbo.[user] where name=(select [user] from storage where id='"
                    + req.getParameter("storage") + "')");
    if (srs.next()) {
        user = srs.getString("name");
        userMoney = srs.getDouble("money");
        userZone = srs.getString("zone");
    } else
        return "0";

    System.out.println("Tanda 1");

    //0 = internal error
    //1 = produk dah abis
    //2 = produk kurang
    //3 = uang ga cukup
    //4 = storage ga ada
    //5 = storage ga cukup

    srs = db.getJdbc().queryForRowSet(
            "select desc_product.id,market_product.price,market_product.size,storage.[user],storage.[zone],[user].money,product,quality from market_product,storage_product,desc_product,storage,[user] where market_product.id='"
                    + req.getParameter("productId")
                    + "' and storage_product.id=storage_product_id and storage_product.[desc]=desc_product.id and storage_product.storage=storage.id and storage.[user]=[user].name");
    if (srs.next()) {
        desc = srs.getString("id");
        price = srs.getDouble("price");
        size = srs.getDouble("size");
        seller = srs.getString("user");
        product = srs.getString("product");
        sellerMoney = srs.getDouble("money");
        sellerZone = srs.getString("zone");
    } else
        return "1";

    srs = db.getJdbc().queryForRowSet("select transport from info_product where name='" + product + "'");
    if (srs.next())
        transport = srs.getDouble("transport");
    else
        return "0";

    System.out.println("Tanda 2");

    picked = Double.parseDouble(req.getParameter("picked"));
    total = price * picked;

    if (size < picked)
        return "2";

    if (userMoney < total)
        return "3";

    size -= picked;
    userMoney -= total;

    srs = db.getJdbc()
            .queryForRowSet("select id,[level] from storage where id='" + req.getParameter("storage") + "'");
    if (srs.next()) {
        level = srs.getInt("level") - 1;
    } else
        return "4";

    srs = db.getJdbc().queryForRowSet(
            "select [value] from info_values where name='storage' union select [value] from info_values where name='storage_inc'");
    if (srs.next()) {
        storage = Double.parseDouble(srs.getString("value"));
    } else
        return "0";

    System.out.println("Tanda 3");

    if (srs.next()) {
        storage += level * Double.parseDouble(srs.getString("value"));
    } else
        return "0";

    System.out.println("Tanda 4");

    srs = db.getJdbc().queryForRowSet("select id,size from storage_product where storage='"
            + req.getParameter("storage")
            + "' union select storage_equipment.id,size from storage_equipment,desc_equipment,list_equipment,storage where storage='"
            + req.getParameter("storage")
            + "' and list_equipment.id=storage_equipment.id and list_equipment.[desc]=desc_equipment.id and storage.id=storage_equipment.storage");
    while (srs.next()) {
        storage -= srs.getDouble("size");
    }

    if (storage < picked)
        return "5";

    System.out.println("Tanda 5");

    srs = db.getJdbc()
            .queryForRowSet("select id,size,avg_price from storage_product where storage_product.[desc]='"
                    + desc + "' and storage='" + req.getParameter("storage") + "'");
    if (srs.next()) {
        price = (total + (srs.getDouble("size") * srs.getDouble("avg_price")))
                / (picked + srs.getDouble("size"));
        sqlL.add("update storage_product set size='" + (srs.getDouble("size") + picked) + "',price='" + price
                + "' where id='" + srs.getString("id") + "'");
    }

    if (sqlL.size() < 1) {
        idInc = getUniqueIncrementIdNew("storage_product");
        sqlL.add("insert into storage_product values ('" + KEY_PRODUCT + idInc + "','" + desc + "','"
                + req.getParameter("storage") + "','" + picked + "','" + price + "')");
    }

    if (size > 0)
        sqlL.add("update market_product set size='" + size + "' where id='" + req.getParameter("productId")
                + "'");
    else
        sqlL.add("delete from market_product where id='" + req.getParameter("productId") + "'");

    sqlL.add("update businessgame.dbo.[user] set money='" + userMoney + "' where name='" + user + "'");

    //      srs = db.getJdbc().queryForRowSet("select total from user_finance where user='"+user+"' and type='Raw Material'");
    //      if(srs.next()){
    //         sqlL.add("update user_finance set total='"+(((srs.getDouble("total")*-1)+total)*-1)+"' where user='"+user+"' and type='Raw Material'");
    //      } else {
    //         idInc = getUniqueIncrementIdNew("user_finance");
    //         sqlL.add("insert into user_finance values ('"+KEY_USER_FINANCE+idInc+"','"+user+"','Raw Material','"+(-1*total)+"')");
    //      }
    //      accountingFinance(user, "Raw Material", total, false);

    sellerMoney += total;

    double tmpd1;

    srs = db.getJdbc().queryForRowSet(
            "select transport_in,transport_out,retribution from info_zone where id='" + userZone + "'");
    if (srs.next()) {
        if (userZone.equals(sellerZone))
            transport *= srs.getDouble("transport_in");
        else
            transport *= srs.getDouble("transport_out");
        tmpd1 = srs.getDouble("retribution");
    } else
        return "0";
    accountingFinance(seller, "Sales", total, true);
    accountingFinance(seller, "Transport", picked * transport, false);
    accountingFinance(seller, "Retribution", picked * tmpd1, false);

    sqlL.add("update businessgame.dbo.[user] set money='" + sellerMoney + "' where name='" + seller + "'");

    srs = db.getJdbc().queryForRowSet(
            "select id,size from storage_product where id=(select storage_product_id from market_product where id='"
                    + req.getParameter("productId") + "')");
    if (srs.next()) {
        val = srs.getString("id");
        size = srs.getDouble("size");
    } else
        return "0";

    size -= picked;
    if (size > 0)
        sqlL.add("update storage_product set size='" + size + "' where id='" + val + "'");
    else
        sqlL.add("delete from storage_product where id='" + val + "'");

    System.out.println("Tanda 6");

    sqls = new String[sqlL.size()];
    sqlL.toArray(sqls);
    db.getJdbc().batchUpdate(sqls);

    srs = db.getJdbc().queryForRowSet(
            "select market_product.id,storage.[user],product,market_product.price,quality,market_product.size,draw from market_product,storage_product,desc_product,storage,info_product where market_product.[zone]='"
                    + userZone
                    + "' and storage_product.id=storage_product_id and desc_product.id=storage_product.[desc] and storage.id=storage_product.storage and product=name");
    //      srs = db.getJdbc().queryForRowSet("select market_product.id,storage.[user],product,market_product.price,quality,market_product.size,draw from market_product,storage_product,desc_product,storage,info_product where market_product.[zone]='"+userZone+"' and storage_product.id=storage_product_id and desc_product.id=storage_product.[desc] and storage.id=storage_product.storage and product=name union select market_product.id,'',product,market_product.price,quality,market_product.size,draw from market_product,desc_product,info_product where market_product.[zone]='"+userZone+"' and desc_product.id=market_product.[desc] and product=name");
    ArrayList<MarketProduct> products = new ArrayList<MarketProduct>();
    while (srs.next()) {
        products.add(new MarketProduct(srs.getString("id"), srs.getString("user"), srs.getString("product"),
                srs.getDouble("price"), srs.getInt("quality"), srs.getDouble("size"), srs.getString("draw")));
    }

    ArrayList<String> data = new ArrayList<String>();
    data.add(gson.toJson(userMoney));
    data.add(gson.toJson(products));

    val = gson.toJson(data);

    product = null;
    sqlL = null;
    data = null;
    sqls = null;
    srs = null;
    seller = null;
    sellerZone = null;
    user = null;
    userZone = null;
    desc = null;
    product = null;
    idInc = null;

    gc();

    return val;
}

From source file:com.ardhi.businessgame.services.BusinessGameService.java

public String fixEquipment(HttpServletRequest req) {
    String val = "", sqls[];
    double money, price;

    //0=internal error
    //1=uang user kurang

    SqlRowSet srs1 = db.getJdbc().queryForRowSet(
            "select money from businessgame.dbo.[user] where name='" + req.getParameter("user") + "'"), srs2;
    if (srs1.next())
        money = srs1.getDouble("money");
    else//  w w w  .j  av a  2 s .  c o  m
        return "0";

    srs1 = db.getJdbc().queryForRowSet(
            "select durability,buy_price from list_equipment where id='" + req.getParameter("id") + "'");
    if (srs1.next())
        price = ((100 - srs1.getDouble("durability")) / 100) * srs1.getDouble("buy_price");
    else
        return "0";

    if (money < price)
        return "1";

    money -= price;

    ArrayList<String> sqlL = new ArrayList<String>();
    sqlL.add("update businessgame.dbo.[user] set money='" + (money) + "' where name='"
            + req.getParameter("user") + "'");
    sqlL.add("update list_equipment set durability='95.00' where id='" + req.getParameter("id") + "'");

    sqls = new String[sqlL.size()];
    sqlL.toArray(sqls);
    db.getJdbc().batchUpdate(sqls);

    srs1 = db.getJdbc().queryForRowSet(
            "select storage_equipment.id,equipment,quality,durability,size,operational,draw from storage_equipment,list_equipment,desc_equipment,info_equipment where storage=(select id from storage where [user]='"
                    + req.getParameter("user")
                    + "' and [zone]=(select [zone] from businessgame.dbo.[user] where name='"
                    + req.getParameter("user")
                    + "')) and storage_equipment.id=list_equipment.id and list_equipment.[desc]=desc_equipment.id and name=equipment");
    ArrayList<StorageEquipment> storageEquipments = new ArrayList<StorageEquipment>();
    while (srs1.next()) {
        srs2 = db.getJdbc().queryForRowSet(
                "select market_equipment.id,equipment,market_equipment.price,quality,durability,size,operational,draw from storage_equipment,market_equipment,desc_equipment,list_equipment,info_equipment where storage_equipment_id='"
                        + srs1.getString("id")
                        + "' and storage_equipment.id=storage_equipment_id and list_equipment.id=storage_equipment.id and list_equipment.[desc]=desc_equipment.id and equipment=name");
        if (!srs2.next()) {
            storageEquipments.add(new StorageEquipment(srs1.getString("id"), srs1.getString("equipment"),
                    srs1.getInt("quality"), srs1.getDouble("durability"), srs1.getDouble("size"),
                    srs1.getDouble("operational"), srs1.getString("draw")));
        }
    }

    ArrayList<String> data = new ArrayList<String>();
    data.add(gson.toJson(money));
    data.add(gson.toJson(storageEquipments));

    val = gson.toJson(data);

    data = null;
    storageEquipments = null;
    srs1 = null;
    srs2 = null;

    gc();

    return val;
}