List of usage examples for org.springframework.jdbc.support.rowset SqlRowSet next
boolean next() throws InvalidResultSetAccessException;
From source file:com.ardhi.businessgame.services.BusinessGameService.java
public String loadSectorOwned(HttpServletRequest req) { String val = "0"; SqlRowSet srs = db.getJdbc() .queryForRowSet("select sector,cost from user_sector_blueprint,info_sector where [user]='" + req.getParameter("user") + "' and sector=name"); ArrayList<String> userSectors = new ArrayList<String>(); ArrayList<Double> sectorCosts = new ArrayList<Double>(); while (srs.next()) { userSectors.add(srs.getString("sector")); sectorCosts.add(srs.getDouble("cost")); }/*from w w w. ja va 2s. c o m*/ srs = db.getJdbc().queryForRowSet( "select cost from info_zone where id=(select [zone] from businessgame.dbo.[user] where name='" + req.getParameter("user") + "')"); double price; if (srs.next()) { price = srs.getDouble("cost"); } else return "0"; ArrayList<String> data = new ArrayList<String>(); data.add(gson.toJson(userSectors)); data.add(gson.toJson(sectorCosts)); data.add(gson.toJson(price)); val = gson.toJson(data); userSectors = null; sectorCosts = null; data = null; srs = null; gc(); return val; }
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()/*from w w w .j ava 2s . 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 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;/* www .j a v a 2 s . com*/ 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 makeContract(HttpServletRequest req) { String val = "", idInc, storageSeller, storageUser, desc; SqlRowSet srs; //0=internal error //1=supplier ga punya storage //2=user ga punya storage srs = db.getJdbc()//from ww w . ja va 2s. com .queryForRowSet("select id from storage where [user]='" + req.getParameter("supplier") + "' and [zone]=(select [zone] from businessgame.dbo.[user] where name='" + req.getParameter("supplier") + "')"); if (srs.next()) storageSeller = srs.getString("id"); else return "1"; srs = db.getJdbc() .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()) storageUser = srs.getString("id"); else return "2"; srs = db.getJdbc().queryForRowSet("select id from desc_product where product='" + req.getParameter("product") + "' and quality='" + req.getParameter("quality") + "'"); if (srs.next()) desc = srs.getString("id"); else return "0"; idInc = getUniqueIncrementIdNew("user_contract"); db.getJdbc() .execute("insert into user_contract values ('" + KEY_USER_CONTRACT + idInc + "','" + storageUser + "','" + storageSeller + "','" + desc + "','" + req.getParameter("quantity") + "','" + req.getParameter("price") + "','" + req.getParameter("turn") + "','0')"); val = "Ok"; return val; }
From source file:com.ardhi.businessgame.services.BusinessGameService.java
public String loadHeadquarterData(HttpServletRequest req) { String val = "0", contractType, user, zone; SqlRowSet srs1 = db.getJdbc().queryForRowSet("select name,[level] from info_sector"), srs2, srs3; ArrayList<String> sectors = new ArrayList<String>(); ArrayList<Integer> sectorsLvl = new ArrayList<Integer>(); while (srs1.next()) { sectors.add(srs1.getString("name")); sectorsLvl.add(srs1.getInt("level")); }/* w w w.java 2 s. com*/ srs1 = db.getJdbc().queryForRowSet("select [value] from info_values where name='sector'"); double price; if (srs1.next()) { price = Double.parseDouble(srs1.getString("value")); } else return "0"; srs1 = db.getJdbc().queryForRowSet( "select user_contract.id,request_storage,supplier_storage,product,quality,size,user_contract.price,turn from user_contract,storage,desc_product where accept='1' and [user]='" + req.getParameter("user") + "' and product_desc=desc_product.id and (request_storage=storage.id or supplier_storage=storage.id)"); ArrayList<Contract> contracts = new ArrayList<Contract>(); while (srs1.next()) { srs2 = db.getJdbc().queryForRowSet("select [user],[zone] from storage where id='" + srs1.getString("request_storage") + "' union select [user],[zone] from storage where id='" + srs1.getString("supplier_storage") + "'"); if (srs2.next()) { if (srs2.getString("user").equals(req.getParameter("user"))) { contractType = "from"; srs2.next(); user = srs2.getString("user"); zone = srs2.getString("zone"); } else { contractType = "to"; user = srs2.getString("user"); zone = srs2.getString("zone"); } contracts .add(new Contract(srs1.getString("id"), user, zone, contractType, srs1.getString("product"), srs1.getInt("quality"), srs1.getDouble("size"), srs1.getDouble("price"))); } else return "0"; } srs1 = db.getJdbc().queryForRowSet( "select user_contract.id,request_storage,supplier_storage,product,quality,size,user_contract.price,turn from user_contract,storage,desc_product where accept='0' and [user]='" + req.getParameter("user") + "' and product_desc=desc_product.id and (request_storage=storage.id or supplier_storage=storage.id)"); ArrayList<Contract> pendingContracts = new ArrayList<Contract>(); while (srs1.next()) { srs2 = db.getJdbc().queryForRowSet("select [user],[zone] from storage where id='" + srs1.getString("request_storage") + "' union select [user],[zone] from storage where id='" + srs1.getString("supplier_storage") + "'"); if (srs2.next()) { if (srs2.getString("user").equals(req.getParameter("user"))) { contractType = "from"; srs2.next(); user = srs2.getString("user"); zone = srs2.getString("zone"); } else { contractType = "to"; user = srs2.getString("user"); zone = srs2.getString("zone"); } pendingContracts .add(new Contract(srs1.getString("id"), user, zone, contractType, srs1.getString("product"), srs1.getInt("quality"), srs1.getDouble("size"), srs1.getDouble("price"))); } else return "0"; } double sales = 0, raw = 0, electricity = 0, fixed = 0, wage = 0, operation = 0, transport = 0, retribution = 0, advertisement = 0, interest = 0, depreciation = 0, tax = 0; srs1 = db.getJdbc().queryForRowSet( "select type,total from user_finance where [user]='" + req.getParameter("user") + "'"); while (srs1.next()) { if (srs1.getString("type").equals("Sales")) sales = srs1.getDouble("total"); else if (srs1.getString("type").equals("Raw Material")) raw = srs1.getDouble("total"); else if (srs1.getString("type").equals("Electricity")) electricity = srs1.getDouble("total"); else if (srs1.getString("type").equals("Fixed")) fixed = srs1.getDouble("total"); else if (srs1.getString("type").equals("Wage")) wage = srs1.getDouble("total"); else if (srs1.getString("type").equals("Operation")) operation = srs1.getDouble("total"); else if (srs1.getString("type").equals("Transport")) transport = srs1.getDouble("total"); else if (srs1.getString("type").equals("Retribution")) retribution = srs1.getDouble("total"); else if (srs1.getString("type").equals("Advertisement")) advertisement = srs1.getDouble("total"); else if (srs1.getString("type").equals("Interest")) interest = srs1.getDouble("total"); else if (srs1.getString("type").equals("Depreciation")) depreciation = srs1.getDouble("total"); } srs1 = db.getJdbc().queryForRowSet("select [value] from info_values where name='tax'"); if (srs1.next()) tax = Double.parseDouble(srs1.getString("value")); else return "0"; double cash, rawOnStorage = 0, equipmentOnStorage = 0, loan = 0, storage = 0, equipment = 0, sector = 0, tmpd1, tmpd2, tmpd3; srs1 = db.getJdbc().queryForRowSet( "select money from businessgame.dbo.[user] where name='" + req.getParameter("user") + "'"); if (srs1.next()) cash = srs1.getDouble("money"); else return "0"; srs1 = db.getJdbc().queryForRowSet( "select [value] from info_values where name='cost_storage' union select [value] from info_values where name='cost_storage_upgrade'"); if (srs1.next()) tmpd1 = Double.parseDouble(srs1.getString("value")); else return "0"; if (srs1.next()) tmpd2 = Double.parseDouble(srs1.getString("value")); else return "0"; srs1 = db.getJdbc() .queryForRowSet("select id,[level] from storage where [user]='" + req.getParameter("user") + "'"); while (srs1.next()) { srs2 = db.getJdbc().queryForRowSet( "select size,avg_price from storage_product where storage='" + srs1.getString("id") + "'"); while (srs2.next()) { rawOnStorage += (srs2.getDouble("size") * srs2.getDouble("avg_price")); } srs2 = db.getJdbc().queryForRowSet( "select buy_price,durability from storage_equipment,list_equipment where storage='" + srs1.getString("id") + "' and storage_equipment.id=list_equipment.id"); while (srs2.next()) { equipmentOnStorage += srs2.getDouble("buy_price") * (srs2.getDouble("durability") / 100.00); } storage += tmpd1; for (int i = 1; i < srs1.getLong("level"); i++) { storage += tmpd2; } } srs1 = db.getJdbc() .queryForRowSet("select borrow from borrow_bank where [user]='" + req.getParameter("user") + "'"); while (srs1.next()) { loan += srs1.getDouble("borrow") * -1; } srs1 = db.getJdbc().queryForRowSet( "select installment.id,info_zone.cost,info_sector.cost from installment,info_zone,info_sector where [user]='" + req.getParameter("user") + "' and info_zone.id=[zone] and info_sector.name=type"); while (srs1.next()) { sector += srs1.getDouble(2) + srs1.getDouble(3); srs2 = db.getJdbc().queryForRowSet( "select buy_price,durability from installment_equipment,list_equipment where installment='" + srs1.getString(1) + "' and installment_equipment.id=list_equipment.id"); while (srs2.next()) { equipment += srs2.getDouble("buy_price") * (srs2.getDouble("durability") / 100.00); } } srs1 = db.getJdbc().queryForRowSet("select name from info_product"); ArrayList<String> products = new ArrayList<String>(); while (srs1.next()) { products.add(srs1.getString("name")); } srs1 = db.getJdbc().queryForRowSet("select id,advertise,price from desc_advertisement"); ArrayList<String> advertises = new ArrayList<String>(), idAds = new ArrayList<String>(); ArrayList<Double> prices = new ArrayList<Double>(); while (srs1.next()) { idAds.add(srs1.getString("id")); advertises.add(srs1.getString("advertise")); prices.add(srs1.getDouble("price")); } srs1 = db.getJdbc().queryForRowSet( "select name from businessgame.dbo.[user] where [zone]=(select [zone] from businessgame.dbo.[user] where name='" + req.getParameter("user") + "')"); ArrayList<String> players = new ArrayList<String>(); ArrayList<Double> assets = new ArrayList<Double>(); while (srs1.next()) { tmpd3 = 0; srs2 = db.getJdbc().queryForRowSet( "select money from businessgame.dbo.[user] where name='" + srs1.getString("name") + "'"); if (srs2.next()) tmpd3 += srs2.getDouble("money"); else return "0"; srs2 = db.getJdbc() .queryForRowSet("select id,[level] from storage where [user]='" + srs1.getString("name") + "'"); while (srs2.next()) { srs3 = db.getJdbc().queryForRowSet( "select size,avg_price from storage_product where storage='" + srs2.getString("id") + "'"); while (srs3.next()) { tmpd3 += (srs3.getDouble("size") * srs3.getDouble("avg_price")); } srs3 = db.getJdbc().queryForRowSet( "select buy_price,durability from storage_equipment,list_equipment where storage='" + srs2.getString("id") + "' and storage_equipment.id=list_equipment.id"); while (srs3.next()) { tmpd3 += srs3.getDouble("buy_price") * (srs3.getDouble("durability") / 100.00); } tmpd3 += tmpd1; for (int i = 1; i < srs2.getLong("level"); i++) { tmpd3 += tmpd2 * i; } } srs2 = db.getJdbc() .queryForRowSet("select borrow from borrow_bank where [user]='" + srs1.getString("name") + "'"); while (srs2.next()) { tmpd3 += srs2.getDouble("borrow") * -1; } srs2 = db.getJdbc().queryForRowSet( "select installment.id,info_zone.cost,info_sector.cost from installment,info_zone,info_sector where [user]='" + srs1.getString("name") + "' and info_zone.id=[zone] and info_sector.name=type"); while (srs2.next()) { tmpd3 += srs2.getDouble(2) + srs2.getDouble(3); srs3 = db.getJdbc().queryForRowSet( "select buy_price,durability from installment_equipment,list_equipment where installment='" + srs2.getString(1) + "' and installment_equipment.id=list_equipment.id"); while (srs3.next()) { tmpd3 += srs3.getDouble("buy_price") * (srs3.getDouble("durability") / 100.00); } } players.add(srs1.getString("name")); assets.add(tmpd3); } for (int i = 0; i < assets.size(); i++) { for (int j = i + 1; j < assets.size(); j++) { if (assets.get(i) < assets.get(j)) { user = players.get(i); tmpd3 = assets.get(i); players.set(i, players.get(j)); assets.set(i, assets.get(j)); players.set(j, user); assets.set(j, tmpd3); } } } ArrayList<String> data = new ArrayList<String>(); data.add(gson.toJson(sectors)); data.add(gson.toJson(sectorsLvl)); data.add(gson.toJson(price)); data.add(gson.toJson(contracts)); data.add(gson.toJson(pendingContracts)); data.add(gson.toJson(sales)); data.add(gson.toJson(raw)); data.add(gson.toJson(electricity)); data.add(gson.toJson(fixed)); data.add(gson.toJson(wage)); data.add(gson.toJson(operation)); data.add(gson.toJson(transport)); data.add(gson.toJson(retribution)); data.add(gson.toJson(advertisement)); data.add(gson.toJson(interest)); data.add(gson.toJson(depreciation)); data.add(gson.toJson(tax)); data.add(gson.toJson(cash)); data.add(gson.toJson(rawOnStorage)); data.add(gson.toJson(equipmentOnStorage)); data.add(gson.toJson(loan)); data.add(gson.toJson(storage)); data.add(gson.toJson(equipment)); data.add(gson.toJson(sector)); data.add(gson.toJson(products)); data.add(gson.toJson(idAds)); data.add(gson.toJson(advertises)); data.add(gson.toJson(prices)); data.add(gson.toJson(players)); val = gson.toJson(data); sectors = null; sectorsLvl = null; contracts = null; pendingContracts = null; data = null; contractType = null; user = null; products = null; advertises = null; prices = null; players = null; assets = null; zone = null; srs1 = null; srs2 = null; gc(); return val; }
From source file:com.ardhi.businessgame.services.BusinessGameService.java
private Installment getSingleUserInstallments(String id) { String hiElement = ""; double hiVal = 0, tmpd1, tmpd2; int eff;/*from www . j av a 2 s . co m*/ SqlRowSet srs1 = db.getJdbc().queryForRowSet( "select [zone],type,draw,active from installment,info_sector where id='" + id + "' and name=type"), srs2, srs3; HashMap<String, Double> elementsRatio = new HashMap<String, Double>(), elements = new HashMap<String, Double>(), elementsCalc = new HashMap<String, Double>(); Installment installment = null; boolean pass = false; if (srs1.next()) { hiElement = ""; hiVal = 0; elementsRatio.clear(); elements.clear(); elementsCalc.clear(); pass = true; srs2 = db.getJdbc() .queryForRowSet("select equipment_type,items from info_sector_equipment where sector='" + srs1.getString("type") + "'"); while (srs2.next()) { elementsRatio.put(srs2.getString("equipment_type"), srs2.getDouble("items")); if (hiVal < srs2.getDouble("items")) { hiElement = srs2.getString("equipment_type"); hiVal = srs2.getDouble("items"); } srs3 = db.getJdbc().queryForRowSet( "select count(installment_equipment.id) from installment_equipment,list_equipment,desc_equipment where installment='" + id + "' and desc_equipment.equipment='" + srs2.getString("equipment_type") + "' and installment_equipment.id=list_equipment.id and list_equipment.[desc]=desc_equipment.id"); srs3.next(); elements.put(srs2.getString("equipment_type"), srs3.getDouble(1)); } srs2 = db.getJdbc().queryForRowSet("select employee_type,items from info_sector_employee where sector='" + srs1.getString("type") + "'"); while (srs2.next()) { elementsRatio.put(srs2.getString("employee_type"), srs2.getDouble("items")); if (hiVal < srs2.getDouble("items")) { hiElement = srs2.getString("employee_type"); hiVal = srs2.getDouble("items"); } srs3 = db.getJdbc().queryForRowSet( "select count(installment_employee.id) from installment_employee,list_employee,desc_employee where installment='" + id + "' and desc_employee.employee='" + srs2.getString("employee_type") + "' and installment_employee.id=list_employee.id and list_employee.[desc]=desc_employee.id"); srs3.next(); elements.put(srs2.getString("employee_type"), srs3.getDouble(1)); } //calculating: while (true) { for (String element : elementsRatio.keySet()) { if (element.equals(hiElement)) { elementsCalc.put(element, elements.get(element)); } else { elementsCalc.put(element, (elementsRatio.get(element) * elements.get(hiElement)) / elementsRatio.get(hiElement)); } } for (String element : elements.keySet()) { if (elements.get(element) < elementsCalc.get(element)) { pass = false; hiElement = element; hiVal = elements.get(element); break; } else { pass = true; } } if (pass) { eff = elements.get(hiElement).intValue() / elementsRatio.get(hiElement).intValue(); if (elements.get(hiElement) % elementsRatio.get(hiElement) > 0) { hiVal = (elementsRatio.get(hiElement) * (eff + 1)); if (hiVal > 0) tmpd1 = new BigDecimal(Double.valueOf( elementsCalc.get(hiElement) / (elementsRatio.get(hiElement) * (eff + 1)))) .setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue(); else tmpd1 = 0; tmpd2 = eff + 1; } else { hiVal = (elementsRatio.get(hiElement) * eff); if (hiVal > 0) tmpd1 = new BigDecimal(Double .valueOf(elementsCalc.get(hiElement) / (elementsRatio.get(hiElement) * eff))) .setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue(); else tmpd1 = 0; tmpd2 = eff; } installment = new Installment(id, srs1.getString("type"), srs1.getString("zone"), tmpd1, tmpd2, srs1.getString("draw"), srs1.getBoolean("active")); break; } } } hiElement = null; srs1 = null; srs2 = null; srs3 = null; elements = null; elementsCalc = null; elementsRatio = null; gc(); return installment; }
From source file:com.ardhi.businessgame.services.BusinessGameService.java
public String attachEquipmentToInstallment(HttpServletRequest req) { String val = "0", sqls[]; ArrayList<String> sqlL = new ArrayList<String>(); sqlL.add("insert into installment_equipment values ('" + req.getParameter("idEquipment") + "','" + req.getParameter("idInstallment") + "')"); sqlL.add("delete from storage_equipment where id='" + req.getParameter("idEquipment") + "'"); sqls = new String[sqlL.size()]; sqlL.toArray(sqls);//from w w w. ja va 2 s . c o m db.getJdbc().batchUpdate(sqls); SqlRowSet srs1, srs2; 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='" + req.getParameter("storage") + "' and storage_equipment.id=list_equipment.id and list_equipment.[desc]=desc_equipment.id and name=equipment"); ArrayList<StorageEquipment> equipments = new ArrayList<StorageEquipment>(); while (srs1.next()) { srs2 = db.getJdbc().queryForRowSet( "select id from market_equipment where storage_equipment_id='" + srs1.getString("id") + "'"); if (!srs2.next()) equipments.add(new StorageEquipment(srs1.getString("id"), srs1.getString("equipment"), srs1.getInt("quality"), srs1.getDouble("durability"), srs1.getDouble("size"), srs1.getDouble("operational"), srs1.getString("draw"))); } Installment installment = getSingleUserInstallments(req.getParameter("idInstallment")); ArrayList<String> data = new ArrayList<String>(); data.add(gson.toJson(equipments)); data.add(gson.toJson(installment)); val = gson.toJson(data); sqlL = null; equipments = null; srs1 = null; srs2 = null; sqls = null; installment = null; data = null; gc(); return val; }
From source file:com.ardhi.businessgame.services.BusinessGameService.java
public String loadInstallmentDetails(HttpServletRequest req) { String val = "0"; ArrayList<InstallmentEmployee> employees = new ArrayList<InstallmentEmployee>(); ArrayList<InstallmentEquipment> equipments = new ArrayList<InstallmentEquipment>(); ArrayList<String> data = new ArrayList<String>(); SqlRowSet srs1 = db.getJdbc().queryForRowSet( "select installment_employee.id,employee,quality,operational,draw from installment_employee,list_employee,desc_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"), srs2;//from w w w. j av a2 s. c om while (srs1.next()) { employees.add(new InstallmentEmployee(srs1.getString("id"), srs1.getString("employee"), srs1.getInt("quality"), srs1.getDouble("operational"), srs1.getString("draw"))); } srs1 = 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"); while (srs1.next()) { equipments.add(new InstallmentEquipment(srs1.getString("id"), srs1.getString("equipment"), srs1.getInt("quality"), srs1.getDouble("durability"), srs1.getDouble("size"), srs1.getDouble("operational"), srs1.getString("draw"))); } ArrayList<String> installmentIOdata = calculateInstallmentAndIOByIdInstallment(req.getParameter("id")); data.add(installmentIOdata.get(0)); data.add(installmentIOdata.get(1)); data.add(installmentIOdata.get(2)); data.add(installmentIOdata.get(3)); data.add(installmentIOdata.get(4)); data.add(installmentIOdata.get(5)); data.add(installmentIOdata.get(6)); data.add(installmentIOdata.get(7)); data.add(gson.toJson(equipments)); data.add(gson.toJson(employees)); if (installmentIOdata.get(0).equals("Petrol Power Plant")) { srs1 = db.getJdbc().queryForRowSet( "select subscription,tariff from installment where id='" + req.getParameter("id") + "'"); double tariff, subscription; if (srs1.next()) { subscription = srs1.getDouble("subscription"); tariff = srs1.getDouble("tariff"); } else return "0"; srs1 = db.getJdbc() .queryForRowSet("select id,type,[user],planned_supply from installment where supply='" + req.getParameter("id") + "'"); ArrayList<String> types = new ArrayList<String>(), users = new ArrayList<String>(), idSupplies = new ArrayList<String>(); ArrayList<Double> supplies = new ArrayList<Double>(); while (srs1.next()) { idSupplies.add(srs1.getString("id")); types.add(srs1.getString("type")); users.add(srs1.getString("user")); supplies.add(srs1.getDouble("planned_supply")); } data.add(gson.toJson(subscription)); data.add(gson.toJson(tariff)); data.add(gson.toJson(types)); data.add(gson.toJson(users)); data.add(gson.toJson(supplies)); data.add(gson.toJson(idSupplies)); val = gson.toJson(data); types = null; users = null; supplies = null; idSupplies = null; } else { srs1 = db.getJdbc().queryForRowSet( "select supply,planned_supply from installment where id='" + req.getParameter("id") + "'"); ArrayList<String> idSupplies = new ArrayList<String>(), users = new ArrayList<String>(), tmpSupplies; ArrayList<Double> subscriptions = new ArrayList<Double>(), tariffs = new ArrayList<Double>(), availables = new ArrayList<Double>(); JsonParser parser = new JsonParser(); JsonArray array1; int tmp; double available, currentKwh; String currentSupply; if (srs1.next()) { currentKwh = srs1.getDouble("planned_supply"); currentSupply = srs1.getString("supply"); } else return "0"; srs1 = db.getJdbc().queryForRowSet( "select id,[user],subscription,tariff from installment where type='Petrol Power Plant'"); while (srs1.next()) { tmp = 0; tmpSupplies = calculateInstallmentAndIOByIdInstallment(srs1.getString("id")); array1 = parser.parse(tmpSupplies.get(5)).getAsJsonArray(); for (int i = 0; i < array1.size(); i++) { if ((new Gson().fromJson(array1.get(i), String.class)).equals("Energy")) { tmp = i; break; } } array1 = parser.parse(tmpSupplies.get(6)).getAsJsonArray(); available = new Gson().fromJson(array1.get(tmp), Double.class); srs2 = db.getJdbc().queryForRowSet( "select planned_supply from installment where supply='" + srs1.getString("id") + "'"); while (srs2.next()) available -= srs2.getDouble("planned_supply"); idSupplies.add(srs1.getString("id")); users.add(srs1.getString("user")); subscriptions.add(srs1.getDouble("subscription")); tariffs.add(srs1.getDouble("tariff")); availables.add(new BigDecimal(Double.valueOf(available)).setScale(2, BigDecimal.ROUND_HALF_EVEN) .doubleValue()); tmpSupplies = null; } data.add(gson.toJson(idSupplies)); data.add(gson.toJson(users)); data.add(gson.toJson(subscriptions)); data.add(gson.toJson(tariffs)); data.add(gson.toJson(availables)); data.add(gson.toJson(currentKwh)); data.add(gson.toJson(currentSupply)); val = gson.toJson(data); idSupplies = null; users = null; tariffs = null; availables = null; currentSupply = null; } installmentIOdata = null; employees = null; equipments = null; data = null; srs1 = null; srs2 = null; gc(); return val; }
From source file:com.ardhi.businessgame.services.BusinessGameService.java
public String refreshClientData(HttpServletRequest req) { SqlRowSet srs; // srs2 = db.getJdbc().queryForRowSet("select cost from info_zone where id='"+srs1.getString("zone")+"'"); // double propCost; // if(srs2.next()){ // propCost = srs2.getDouble("cost"); // } else return "0"; srs = db.getJdbc().queryForRowSet("select sector,cost from user_sector_blueprint,info_sector where [user]='" + req.getParameter("user") + "' and sector=name"); HashMap<String, Double> sectorCosts = new HashMap<String, Double>(); while (srs.next()) { sectorCosts.put(srs.getString("sector"), srs.getDouble("cost")); }//from w w w . ja v a 2s. c om String val = "0"; srs = db.getJdbc().queryForRowSet("select money,rep,cost from [user],info_zone where name='" + req.getParameter("user") + "' and id=[zone]"); User user; if (srs.next()) user = new User("", "", "", "", srs.getDouble("money"), srs.getDouble("cost"), srs.getLong("rep"), "", 0, new HashMap<String, String>(), new HashMap<String, String>(), new HashMap<String, String>(), sectorCosts, new ArrayList<Installment>()); else return "0"; val = gson.toJson(user); srs = null; sectorCosts = null; user = null; gc(); return val; }
From source file:com.ardhi.businessgame.services.BusinessGameService.java
public String sellStorageProduct(HttpServletRequest req) { String val = "0", idInc, sqls[]; double remain, size, offer, basePrice, price, lowest, highest; ArrayList<String> sqlL = new ArrayList<String>(); SqlRowSet srs1, srs2; //0 = internal error //1 = CBM yg ditawarkan lebih besar dari yg dimiliki //2 = harga melampaui 25% lebih murah dari harga jual yang disarankan //3 = harga melampaui 25% lebih mahal dari harga jual yang disarankan srs1 = db.getJdbc().queryForRowSet("select price,size from storage_product,desc_product where id='" + req.getParameter("productId") + "' and storage_product.[desc]=desc_product.id"); if (srs1.next()) { size = srs1.getDouble("size"); basePrice = srs1.getDouble("price"); } else/*from ww w . j a va 2 s . c o m*/ return "0"; srs1 = db.getJdbc().queryForRowSet( "select size from market_product where storage_product_id='" + req.getParameter("productId") + "'"); if (srs1.next()) size -= srs1.getDouble("size"); offer = Double.parseDouble(req.getParameter("offer")); price = Double.parseDouble(req.getParameter("price")); lowest = basePrice - (basePrice * 0.25); highest = basePrice + (basePrice * 0.25); if (size < offer) return "1"; if (price < lowest) return "2"; if (price > highest) return "3"; srs1 = db.getJdbc() .queryForRowSet("select id,size from market_product where storage_product_id='" + req.getParameter("productId") + "' and [zone]='" + req.getParameter("zone") + "' and price='" + req.getParameter("price") + "'"); if (srs1.next()) sqlL.add("update market_product set size='" + (srs1.getDouble("size") + offer) + "' where id='" + srs1.getString("id") + "'"); else { idInc = getUniqueIncrementIdNew("market_product"); sqlL.add("insert into market_product values ('" + KEY_MARKET_PRODUCT + idInc + "','" + req.getParameter("productId") + "','','" + req.getParameter("zone") + "','" + req.getParameter("price") + "','" + offer + "')"); } sqls = new String[sqlL.size()]; sqlL.toArray(sqls); db.getJdbc().batchUpdate(sqls); val = "Ok"; // srs1 = db.getJdbc().queryForRowSet("select storage_product.id,product,quality,size,draw from storage_product,desc_product,info_product where storage='"+req.getParameter("storage")+"' and desc_product.id=storage_product.desc and product=name"); // 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(), srs1.getString("draw"))); // } srs1 = db.getJdbc().queryForRowSet( "select storage_product.id,product,quality,size,draw from storage_product,desc_product,info_product where storage='" + req.getParameter("storage") + "' 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<String> data = new ArrayList<String>(); data.add(gson.toJson(storageProducts)); data.add(gson.toJson(marketProducts)); val = gson.toJson(data); sqlL = null; storageProducts = null; marketProducts = null; sqls = null; srs1 = null; srs2 = null; idInc = null; gc(); return val; }