// method for topsheet calculation public virtual decimal calculateFinalDepreciationRate() { if (AssemblyTable != null && EquipmentTable != null) { finalDepreciationRate = EquipmentTable.DepreciationRate * Factor1; finalDepreciationRate = finalDepreciationRate * Factor2; finalDepreciationRate = finalDepreciationRate * Factor3; finalDepreciationRate = finalDepreciationRate * LocalFactor; finalDepreciationRate = finalDepreciationRate * ExchangeRate; if (AssemblyTable.ActivityBased != null && AssemblyTable.ActivityBased.Equals(false)) { finalDepreciationRate = finalDepreciationRate * QuantityPerUnit; finalDepreciationRate = BigDecimalMath.div(finalDepreciationRate, UnitHours); } else { try { decimal fDiv = BigDecimalMath.mult(AssemblyTable.Productivity, UnitHours); finalDepreciationRate = BigDecimalMath.div(finalDepreciationRate, fDiv); } catch (ArithmeticException) { finalDepreciationRate = BigDecimalMath.ZERO; } } finalDepreciationRate = finalDepreciationRate.setScale(10, decimal.ROUND_HALF_UP); } return(finalDepreciationRate); }
public virtual decimal getUnitRate(decimal totalCost) { if (totalCost == null || totalCost.doubleValue() == 0 || Quantity.doubleValue() == 0) { return(BigDecimalMath.ZERO); } return(BigDecimalMath.div(totalCost, Quantity)); }
public virtual decimal calculateFinalRate() { if (AssemblyTable != null && EquipmentTable != null) { decimal equipmentRate = EquipmentTable.RateForCalculation; decimal fuelRate = BigDecimalMath.ZERO; if (EquipmentTable.FuelConsumption.CompareTo(BigDecimalMath.ZERO) > 0 && EnergyPrice.CompareTo(BigDecimalMath.ZERO) > 0) { fuelRate = BigDecimalMath.mult(EnergyPrice, EquipmentTable.FuelConsumption); } else { fuelRate = EquipmentTable.FuelRate; } fuelRate = fuelRate.setScale(10, decimal.ROUND_HALF_UP); FuelRate = fuelRate; equipmentRate = equipmentRate + fuelRate * ExchangeRate; finalRate = equipmentRate * Factor1; finalRate = finalRate * Factor2; finalRate = finalRate * Factor3; finalRate = finalRate * LocalFactor; if (AssemblyTable.ActivityBased != null && AssemblyTable.ActivityBased.Equals(false)) { finalRate = finalRate * QuantityPerUnit; finalRate = BigDecimalMath.div(finalRate, UnitHours); } else { try { decimal fDiv = BigDecimalMath.mult(AssemblyTable.Productivity, UnitHours); finalRate = BigDecimalMath.div(finalRate, fDiv); } catch (ArithmeticException) { finalRate = BigDecimalMath.ZERO; } } finalRate = finalRate.setScale(10, decimal.ROUND_HALF_UP); } return(finalRate); }
private decimal calculateFinalRateFor(decimal rate) { rate = rate * ExchangeRate; rate = rate * LocalFactor; decimal fRate = null; if (BoqItemTable.HasProductivity.Value || BoqItemTable.Quantity.CompareTo(BigDecimalMath.ZERO) <= 0) { fRate = rate * Factor1; fRate = fRate * Factor2; fRate = fRate * Factor3; if (BoqItemTable.ActivityBased != null && BoqItemTable.ActivityBased.Equals(false)) { fRate = fRate * QuantityPerUnit; fRate = BigDecimalMath.div(fRate, UnitHours); } else { try { decimal fDiv = BigDecimalMath.mult(BoqItemTable.AdjustedProd, UnitHours); fRate = BigDecimalMath.div(fRate, fDiv); } catch (Exception) { fRate = BigDecimalMath.ZERO; } } } else { // Total Units Method: fRate = rate * TotalUnits; try { fRate = BigDecimalMath.div(fRate, BoqItemTable.Quantity); } catch (Exception) { fRate = BigDecimalMath.ZERO; } } return(fRate); }
public virtual MaterialTable convertToMaterialTable(ProjectDBProperties prop) { MaterialTable obj = BlankResourceInitializer.createBlankMaterial(null); BoqItemTable boqItemTable = BoqItemTable; QuotationTable quotationTable = QuotationTable; double[] projectGeoPosition = StringUtils.extractDoubles(prop.getProperty("project.geolocation")); double[] supplierGeoPosition = StringUtils.extractDoubles(quotationTable.GeoLocation); double distanceKm = HaversineDistanceUtil.distance(HaversineDistanceUtil.KM_DISTANCE, projectGeoPosition, supplierGeoPosition); if (Title.IndexOf(boqItemTable.Title, StringComparison.Ordinal) != -1 && Title.IndexOf(boqItemTable.Description, StringComparison.Ordinal) != -1) { obj.Title = StringUtils.makeShortTitle(boqItemTable.Title); } else { obj.Title = StringUtils.makeShortTitle(Title); } obj.DatabaseId = DatabaseId; if (DatabaseCreationDate == null) { obj.DatabaseCreationDate = 100L; //ResourceUtil.MISSING_DB_CREATE_DATE); } else { obj.DatabaseCreationDate = DatabaseCreationDate; } obj.Weight = BigDecimalMath.ZERO; obj.WeightUnit = "KG"; obj.GroupCode = boqItemTable.GroupCode; obj.GekCode = boqItemTable.GekCode; obj.Project = prop.getProperty("project.code") + " - " + prop.getProperty("project.name"); obj.Description = boqItemTable.Description; obj.Notes = boqItemTable.Notes; obj.EditorId = DatabaseDBUtil.Properties.UserId; obj.Country = quotationTable.Country; obj.StateProvince = quotationTable.StateProvince; obj.Rate = Rate; obj.DistanceToSite = new BigDecimalFixed("" + distanceKm); obj.DistanceUnit = "KM"; obj.RawMaterial = MaterialTable.UNSPECIFIED_RAWMAT; obj.RawMaterialReliance = BigDecimalMath.ZERO; obj.CreateUserId = quotationTable.EditorId; if (quotationTable.ReceivedDate != null) { obj.LastUpdate = quotationTable.ReceivedDate; obj.CreateDate = quotationTable.ReceivedDate; } else { obj.LastUpdate = DateTime.Now; obj.CreateDate = obj.LastUpdate; } if (quotationTable.OnSiteDelivery.Value) { if (ShipmentCost != null) { decimal indirectRate = BigDecimalMath.ZERO; if (IndirectCost != null) { decimal qty = Quantity; if (BigDecimalMath.cmpCheckNulls(qty, BigDecimalMath.ZERO) == 0) { qty = BigDecimalMath.ONE; } obj.ShipmentRate = BigDecimalMath.div(shipmentCost, qty); } // double qty = getQuantity().doubleValue(); // if ( qty == 0 ) // qty = 1; // double srate = shipmentCost.doubleValue()/getQuantity().doubleValue(); // obj.setShipmentRate(new BigDecimalFixed(""+srate)); } else { obj.ShipmentRate = BigDecimalMath.ZERO; } obj.Inclusion = MaterialTable.SHIPMENT_INCLUSION; } else { obj.Inclusion = MaterialTable.NONE_INCLUSION; obj.ShipmentRate = BigDecimalMath.ZERO; } obj.FabricationRate = BigDecimalMath.ZERO; obj.TotalRate = obj.Rate + obj.ShipmentRate; obj.Quantity = Quantity; obj.Unit = Unit; obj.Currency = quotationTable.Currency; obj.Accuracy = MaterialTable.QUOTED_ACCURACY; obj.ExtraCode1 = boqItemTable.ExtraCode1; obj.ExtraCode2 = boqItemTable.ExtraCode2; obj.ExtraCode3 = boqItemTable.ExtraCode3; obj.ExtraCode4 = boqItemTable.ExtraCode4; obj.ExtraCode5 = boqItemTable.ExtraCode5; obj.ExtraCode6 = boqItemTable.ExtraCode6; obj.ExtraCode7 = boqItemTable.ExtraCode7; obj.ExtraCode8 = boqItemTable.ExtraCode8; obj.ExtraCode9 = boqItemTable.ExtraCode9; obj.ExtraCode10 = boqItemTable.ExtraCode10; boqItemTable.loadBimMaterialsAndTypes(); obj.BimMaterial = boqItemTable.BimMaterial; obj.BimType = boqItemTable.BimType; obj.recalculate(); return(obj); }
public virtual decimal calculateFinalRate(bool ds) { decimal fRate = finalRate; if (BoqItemTable != null) { decimal tUnits = BigDecimalMath.ONE; tUnits = BigDecimalMath.mult(tUnits, Factor1); tUnits = BigDecimalMath.mult(tUnits, Factor2); tUnits = BigDecimalMath.mult(tUnits, Factor3); if (BoqItemTable.ActivityBased != null && BoqItemTable.ActivityBased.Equals(false)) { tUnits = BigDecimalMath.mult(tUnits, QuantityPerUnit); tUnits = BigDecimalMath.mult(tUnits, BoqItemTable.Quantity); } else { tUnits = BigDecimalMath.mult(tUnits, BoqItemTable.Duration); } if (totalUnits == null || BigDecimalMath.cmp(totalUnits, tUnits) != 0) { totalUnits = tUnits; } } if (BoqItemTable != null && LaborTable != null) { decimal laborRate = BigDecimalMath.mult(LaborTable.RateForCalculation, ExchangeRate); laborRate = BigDecimalMath.mult(laborRate, LocalFactor); if (BoqItemTable.HasProductivity || BoqItemTable.Quantity.CompareTo(BigDecimalMath.ZERO) <= 0) { fRate = BigDecimalMath.mult(laborRate, Factor1); fRate = BigDecimalMath.mult(fRate, Factor2); fRate = BigDecimalMath.mult(fRate, Factor3); if (BoqItemTable.ActivityBased != null && BoqItemTable.ActivityBased.Equals(false)) { fRate = BigDecimalMath.mult(fRate, QuantityPerUnit); fRate = BigDecimalMath.div(fRate, UnitHours); // System.out.println("!!!!! WARN: PRODUCTIVITY TRUE ACT BASED FALSE !!!!"); } else { try { decimal fDiv = BigDecimalMath.mult(BoqItemTable.AdjustedProd, UnitHours); fRate = BigDecimalMath.div(fRate, fDiv); } catch (ArithmeticException) { fRate = BigDecimalMath.ZERO; } } } else { // Total Units Method: fRate = BigDecimalMath.mult(laborRate, TotalUnits); try { fRate = BigDecimalMath.div(fRate, BoqItemTable.Quantity); } catch (ArithmeticException) { fRate = BigDecimalMath.ZERO; } } // Calculate Variable, Total Cost: variableCost = fRate * (BoqItemTable.Quantity); totalCost = decimal.Zero; totalCost = totalCost + variableCost; totalCost = totalCost + FinalFixedCost; // Avoid precision/scale updates if data is the same: variableCost = variableCost.setScale(10, decimal.ROUND_HALF_UP); totalCost = totalCost.setScale(10, decimal.ROUND_HALF_UP); fRate = fRate.setScale(10, decimal.ROUND_HALF_UP); totalUnits = totalUnits.setScale(10, decimal.ROUND_HALF_UP); } finalRate = fRate; //System.out.println("Calculated final rate is -> "+finalRate); return(fRate); }
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#: //ORIGINAL LINE: private void loadLineItems(org.hibernate.Session paramSession, String paramString) throws Exception private void loadLineItems(Session paramSession, string paramString) { POIFSFileSystem pOIFSFileSystem = new POIFSFileSystem(new FileStream(paramString, FileMode.Open, FileAccess.Read)); HSSFWorkbook hSSFWorkbook = new HSSFWorkbook(pOIFSFileSystem); this.o_evaluator = hSSFWorkbook.CreationHelper.createFormulaEvaluator(); HSSFSheet hSSFSheet = hSSFWorkbook.getSheetAt(0); Console.WriteLine("Loading Line Items..."); int i = getRealNumberOfRows(hSSFSheet); string str1 = null; string str2 = null; GroupCodeTable groupCodeTable = null; string str3 = null; for (int j = 1; j < i; j++) { if (j % this.rowsToCommit == 0) { paramSession.Transaction.commit(); paramSession.Transaction.begin(); Console.WriteLine("Processing next 500..."); } HSSFRow hSSFRow = hSSFSheet.getRow(j); string str4 = notNull(hSSFRow.getCell(0)); string str5 = notNull(hSSFRow.getCell(1)); if (!str4.StartsWith("Group", StringComparison.Ordinal)) { string str6 = notNull(hSSFRow.getCell(2)); string str7 = notNull(hSSFRow.getCell(3)); if (!StringUtils.isNullOrBlank(str4)) { Console.WriteLine(str6 + " - " + str7); str1 = str4; str1 = StringUtils.replaceAll(str1, ".", ""); str1 = StringUtils.replaceAll(str1, "-", ""); str1 = str1.Substring(0, 4); str3 = str1; GroupCode groupCode = addGroupCode1(str1, str7); this.dprPhaseMap[str6] = groupCode; paramSession.save(groupCode); } else if (!StringUtils.isNullOrBlank(str5)) { Console.WriteLine(str6 + " - " + str7); str2 = str5; str2 = StringUtils.replaceAll(str2, ".", ""); str2 = StringUtils.replaceAll(str2, "-", ""); str1 = str2.Substring(0, 4); str2 = str2.Substring(4, str2.Length - 4); GroupCode groupCode = addGroupCode1(str3 + "." + str2, str7); this.dprPhaseMap[str6] = groupCode; long?long = (long?)paramSession.save(groupCode); groupCodeTable = (GroupCodeTable)groupCode; groupCodeTable.GroupCodeId = long; } else { decimal bigDecimal1 = notNullBigDecimal(hSSFRow.getCell(4), 1.0D); string str8 = toCorrectUnit(notNull(hSSFRow.getCell(5))); string str9 = notNull(hSSFRow.getCell(6)); decimal bigDecimal2 = notNullBigDecimal(hSSFRow.getCell(7), 0.0D); string str10 = toCorrectUnit(notNull(hSSFRow.getCell(8))); decimal bigDecimal3 = notNullBigDecimal(hSSFRow.getCell(9), 0.0D); string str11 = toCorrectUnit(notNull(hSSFRow.getCell(10))); decimal bigDecimal4 = notNullBigDecimal(hSSFRow.getCell(11), 0.0D); string str12 = notNull(hSSFRow.getCell(12)).ToUpper(); decimal bigDecimal5 = notNullBigDecimal(hSSFRow.getCell(13), 0.0D); string str13 = toCorrectUnit(notNull(hSSFRow.getCell(14))); decimal bigDecimal6 = notNullBigDecimal(hSSFRow.getCell(15), 0.0D); decimal bigDecimal7 = notNullBigDecimal(hSSFRow.getCell(16), 1.0D); string str14 = toCorrectUnit(notNull(hSSFRow.getCell(17))); decimal bigDecimal8 = notNullBigDecimal(hSSFRow.getCell(18), 1.0D); string str15 = toCorrectUnit(notNull(hSSFRow.getCell(19))); decimal bigDecimal9 = notNullBigDecimal(hSSFRow.getCell(20), 0.0D); string str16 = toCorrectUnit(notNull(hSSFRow.getCell(21))); decimal bigDecimal10 = notNullBigDecimal(hSSFRow.getCell(22), 0.0D); decimal bigDecimal11 = notNullBigDecimal(hSSFRow.getCell(23), 0.0D); string str17 = toCorrectUnit(notNull(hSSFRow.getCell(24))); decimal bigDecimal12 = notNullBigDecimal(hSSFRow.getCell(25), 0.0D); string str18 = toCorrectUnit(notNull(hSSFRow.getCell(26))); decimal bigDecimal13 = notNullBigDecimal(hSSFRow.getCell(27), 0.0D); string str19 = toCorrectUnit(notNull(hSSFRow.getCell(28))); decimal bigDecimal14 = notNullBigDecimal(hSSFRow.getCell(29), 0.0D); string str20 = toCorrectUnit(notNull(hSSFRow.getCell(30))); decimal bigDecimal15 = notNullBigDecimal(hSSFRow.getCell(31), 0.0D); decimal bigDecimal16 = notNullBigDecimal(hSSFRow.getCell(32), 1.0D); string str21 = toCorrectUnit(notNull(hSSFRow.getCell(33))); decimal bigDecimal17 = notNullBigDecimal(hSSFRow.getCell(34), 0.0D); string str22 = toCorrectUnit(notNull(hSSFRow.getCell(35))); decimal bigDecimal18 = notNullBigDecimal(hSSFRow.getCell(36), 1.0D); string str23 = toCorrectUnit(notNull(hSSFRow.getCell(37))); decimal bigDecimal19 = notNullBigDecimal(hSSFRow.getCell(38), 0.0D); string str24 = toCorrectUnit(notNull(hSSFRow.getCell(39))); decimal bigDecimal20 = notNullBigDecimal(hSSFRow.getCell(40), 0.0D); decimal bigDecimal21 = notNullBigDecimal(hSSFRow.getCell(41), 0.0D); string str25 = toCorrectUnit(notNull(hSSFRow.getCell(42))); decimal bigDecimal22 = notNullBigDecimal(hSSFRow.getCell(43), 0.0D); string str26 = toCorrectUnit(notNull(hSSFRow.getCell(44))); decimal bigDecimal23 = notNullBigDecimal(hSSFRow.getCell(45), 0.0D); string str27 = toCorrectUnit(notNull(hSSFRow.getCell(46))); decimal bigDecimal24 = notNullBigDecimal(hSSFRow.getCell(47), 0.0D); string str28 = toCorrectUnit(notNull(hSSFRow.getCell(48))); decimal bigDecimal25 = notNullBigDecimal(hSSFRow.getCell(49), 0.0D); decimal bigDecimal26 = notNullBigDecimal(hSSFRow.getCell(50), 0.0D); string str29 = toCorrectUnit(notNull(hSSFRow.getCell(51))); decimal bigDecimal27 = notNullBigDecimal(hSSFRow.getCell(52), 0.0D); Console.WriteLine(str6 + " - " + str7 + " " + str8 + " " + bigDecimal1 + " " + str9 + " " + bigDecimal27); string str30 = notNull(hSSFRow.getCell(53)); string str31 = notNull(hSSFRow.getCell(54)); string str32 = notNull(hSSFRow.getCell(55)); string str33 = notNull(hSSFRow.getCell(56)); string str34 = notNull(hSSFRow.getCell(57)); string str35 = notNull(hSSFRow.getCell(58)); string str36 = notNull(hSSFRow.getCell(59)); AssemblyTable assemblyTable = BlankResourceInitializer.createBlankAssembly(null); assemblyTable.ItemCode = str6; assemblyTable.PublishedRevisionCode = str6; assemblyTable.Title = str7; assemblyTable.Unit = str8; assemblyTable.Currency = "USD"; assemblyTable.Country = "US"; assemblyTable.Quantity = bigDecimal1; assemblyTable.LastUpdate = this.lastUpdate; assemblyTable.Description = ""; assemblyTable.LastUpdate = this.lastUpdate; assemblyTable.CreateDate = this.lastUpdate; assemblyTable.CreateUserId = "admin"; assemblyTable.EditorId = "admin"; if (groupCodeTable != null) { assemblyTable.GroupCode = groupCodeTable.ToString(); } assemblyTable.AssemblyEquipmentSet = new HashSet <object>(); assemblyTable.AssemblySubcontractorSet = new HashSet <object>(); assemblyTable.AssemblyLaborSet = new HashSet <object>(); assemblyTable.AssemblyMaterialSet = new HashSet <object>(); assemblyTable.AssemblyConsumableSet = new HashSet <object>(); long?long = (long?)paramSession.save(assemblyTable.clone()); assemblyTable = (AssemblyTable)paramSession.load(typeof(AssemblyTable), long); if (!StringUtils.isNullOrBlank(str9)) { LaborTable laborTable = (LaborTable)this.laborCache[str9]; if (laborTable == null) { laborTable = BlankResourceInitializer.createBlankLabor(null); laborTable.Title = str9; laborTable.Unit = "HOUR"; laborTable.Rate = bigDecimal5; laborTable.IKA = BigDecimalMath.ZERO; laborTable.Currency = "USD"; laborTable.Country = "US"; laborTable.LastUpdate = this.lastUpdate; laborTable.CreateDate = this.lastUpdate; laborTable.CreateUserId = "admin"; laborTable.EditorId = "admin"; long = (long?)paramSession.save(laborTable.clone()); laborTable.Id = long; this.laborCache[str9] = laborTable; } else { laborTable = (LaborTable)paramSession.load(typeof(LaborTable), laborTable.Id); } if (BigDecimalMath.cmp(bigDecimal4, BigDecimalMath.ZERO) <= 0 && BigDecimalMath.cmp(bigDecimal2, BigDecimalMath.ZERO) > 0) { bigDecimal4 = BigDecimalMath.div(BigDecimalMath.ONE, bigDecimal2); } laborTable = (LaborTable)paramSession.load(typeof(LaborTable), laborTable.Id); AssemblyLaborTable assemblyLaborTable = new AssemblyLaborTable(); assemblyLaborTable.Factor1 = BigDecimalMath.ONE; assemblyLaborTable.Factor2 = BigDecimalMath.ONE; assemblyLaborTable.Factor3 = BigDecimalMath.ONE; assemblyLaborTable.ExchangeRate = BigDecimalMath.ONE; assemblyLaborTable.QuantityPerUnit = bigDecimal4; assemblyLaborTable.QuantityPerUnitFormula = ""; assemblyLaborTable.QuantityPerUnitFormulaState = ResourceToAssignmentTable.QTYPUFORM_NOFORMULA; assemblyLaborTable.LocalFactor = BigDecimalMath.ONE; assemblyLaborTable.LocalCountry = ""; assemblyLaborTable.LocalStateProvince = ""; assemblyLaborTable.LastUpdate = assemblyTable.LastUpdate; long = (long?)paramSession.save(assemblyLaborTable); assemblyLaborTable.AssemblyLaborId = long; assemblyTable.AssemblyLaborSet.Add(assemblyLaborTable); paramSession.saveOrUpdate(assemblyTable); assemblyLaborTable.LaborTable = laborTable; assemblyLaborTable.AssemblyTable = assemblyTable; paramSession.saveOrUpdate(assemblyLaborTable); } if (bigDecimal14 != null && BigDecimalMath.cmp(bigDecimal14, BigDecimalMath.ZERO) > 0) { if (bigDecimal11 != null && BigDecimalMath.cmp(bigDecimal11, BigDecimalMath.ZERO) > 0) { decimal bigDecimal = bigDecimal13; if (BigDecimalMath.cmp(bigDecimal, BigDecimalMath.ZERO) <= 0 && BigDecimalMath.cmp(bigDecimal11, BigDecimalMath.ZERO) > 0) { bigDecimal = BigDecimalMath.div(BigDecimalMath.ONE, bigDecimal11); } if (str8.Equals("DAY")) { bigDecimal14 = BigDecimalMath.mult(bigDecimal14, BigDecimalMath.div(BigDecimalMath.ONE, HOURS_OF_DAY)); } else if (str8.Equals("WEEK") || str8.Equals("WK")) { bigDecimal14 = BigDecimalMath.mult(bigDecimal14, BigDecimalMath.div(BigDecimalMath.ONE, HOURS_OF_WEEK)); } else if (str8.Equals("MONTH") || str8.Equals("MO")) { bigDecimal14 = BigDecimalMath.mult(bigDecimal14, BigDecimalMath.div(BigDecimalMath.ONE, HOURS_OF_MONTH)); } if (str20.Equals("WEEK")) { bigDecimal = BigDecimalMath.mult(bigDecimal, HOURS_OF_WEEK); } else if (str20.Equals("MO") || str20.Equals("MONTH")) { bigDecimal = BigDecimalMath.mult(bigDecimal, HOURS_OF_MONTH); } else if (str20.Equals("DAY")) { bigDecimal = BigDecimalMath.mult(bigDecimal, HOURS_OF_DAY); } EquipmentTable equipmentTable = BlankResourceInitializer.createBlankEquipment(assemblyTable); equipmentTable.Title = assemblyTable.Title; equipmentTable.Unit = str20; equipmentTable.ReservationRate = bigDecimal14; equipmentTable.Currency = "USD"; equipmentTable.EditorId = "admin"; equipmentTable.Country = "US"; equipmentTable.LastUpdate = this.lastUpdate; equipmentTable.CreateDate = this.lastUpdate; equipmentTable.CreateUserId = "admin"; equipmentTable.EditorId = "admin"; long = (long?)paramSession.save(equipmentTable.clone()); equipmentTable.Id = long; equipmentTable = (EquipmentTable)paramSession.load(typeof(EquipmentTable), long); AssemblyEquipmentTable assemblyEquipmentTable = new AssemblyEquipmentTable(); assemblyEquipmentTable.Factor1 = BigDecimalMath.ONE; assemblyEquipmentTable.Factor2 = BigDecimalMath.ONE; assemblyEquipmentTable.Factor3 = BigDecimalMath.ONE; assemblyEquipmentTable.ExchangeRate = BigDecimalMath.ONE; assemblyEquipmentTable.QuantityPerUnit = bigDecimal; assemblyEquipmentTable.QuantityPerUnitFormula = ""; assemblyEquipmentTable.QuantityPerUnitFormulaState = ResourceToAssignmentTable.QTYPUFORM_NOFORMULA; assemblyEquipmentTable.LocalFactor = BigDecimalMath.ONE; assemblyEquipmentTable.LocalCountry = ""; assemblyEquipmentTable.LocalStateProvince = ""; assemblyEquipmentTable.EnergyPrice = BigDecimalMath.ZERO; assemblyEquipmentTable.FuelRate = BigDecimalMath.ZERO; assemblyEquipmentTable.LastUpdate = assemblyTable.LastUpdate; long = (long?)paramSession.save(assemblyEquipmentTable); assemblyEquipmentTable.AssemblyEquipmentId = long; assemblyTable.AssemblyEquipmentSet.Add(assemblyEquipmentTable); paramSession.saveOrUpdate(assemblyTable); assemblyEquipmentTable.EquipmentTable = equipmentTable; assemblyEquipmentTable.AssemblyTable = assemblyTable; paramSession.saveOrUpdate(assemblyEquipmentTable); } else { createSubcontractor(paramSession, assemblyTable, "Equipment: " + assemblyTable.Title, bigDecimal14, str20, bigDecimal13); } } if (bigDecimal9 != null && BigDecimalMath.cmp(bigDecimal9, BigDecimalMath.ZERO) > 0) { MaterialTable materialTable = BlankResourceInitializer.createBlankMaterial(assemblyTable); materialTable.Title = assemblyTable.Title; materialTable.Unit = str16; materialTable.Rate = bigDecimal9; materialTable.Currency = "USD"; materialTable.EditorId = "admin"; materialTable.Country = "US"; materialTable.LastUpdate = this.lastUpdate; materialTable.CreateDate = this.lastUpdate; materialTable.CreateUserId = "admin"; materialTable.EditorId = "admin"; long = (long?)paramSession.save(materialTable.clone()); materialTable.Id = long; materialTable = (MaterialTable)paramSession.load(typeof(MaterialTable), long); AssemblyMaterialTable assemblyMaterialTable = new AssemblyMaterialTable(); assemblyMaterialTable.Factor1 = BigDecimalMath.ONE; assemblyMaterialTable.Factor2 = BigDecimalMath.ONE; assemblyMaterialTable.Factor3 = BigDecimalMath.ONE; assemblyMaterialTable.ExchangeRate = BigDecimalMath.ONE; assemblyMaterialTable.QuantityPerUnit = bigDecimal8; assemblyMaterialTable.QuantityPerUnitFormula = ""; assemblyMaterialTable.QuantityPerUnitFormulaState = ResourceToAssignmentTable.QTYPUFORM_NOFORMULA; assemblyMaterialTable.LocalFactor = BigDecimalMath.ONE; assemblyMaterialTable.LocalCountry = ""; assemblyMaterialTable.LocalStateProvince = ""; assemblyMaterialTable.LastUpdate = assemblyTable.LastUpdate; long = (long?)paramSession.save(assemblyMaterialTable); assemblyMaterialTable.AssemblyMaterialId = long; assemblyTable.AssemblyMaterialSet.Add(assemblyMaterialTable); paramSession.saveOrUpdate(assemblyTable); assemblyMaterialTable.MaterialTable = materialTable; assemblyMaterialTable.AssemblyTable = assemblyTable; paramSession.saveOrUpdate(assemblyMaterialTable); } if (bigDecimal24 != null && BigDecimalMath.cmp(bigDecimal24, BigDecimalMath.ZERO) > 0) { createSubcontractor(paramSession, assemblyTable, assemblyTable.Title, bigDecimal24, str28, bigDecimal23); } if (bigDecimal19 != null && BigDecimalMath.cmp(bigDecimal19, BigDecimalMath.ZERO) > 0) { ConsumableTable consumableTable = BlankResourceInitializer.createBlankConsumable(assemblyTable); consumableTable.Title = assemblyTable.Title; consumableTable.Unit = str24; consumableTable.Rate = bigDecimal19; consumableTable.Currency = "USD"; consumableTable.EditorId = "admin"; consumableTable.Country = "US"; consumableTable.LastUpdate = this.lastUpdate; consumableTable.CreateDate = this.lastUpdate; consumableTable.CreateUserId = "admin"; consumableTable.EditorId = "admin"; long = (long?)paramSession.save(consumableTable.clone()); consumableTable.Id = long; consumableTable = (ConsumableTable)paramSession.load(typeof(ConsumableTable), long); AssemblyConsumableTable assemblyConsumableTable = new AssemblyConsumableTable(); assemblyConsumableTable.Factor1 = BigDecimalMath.ONE; assemblyConsumableTable.Factor2 = BigDecimalMath.ONE; assemblyConsumableTable.Factor3 = BigDecimalMath.ONE; assemblyConsumableTable.ExchangeRate = BigDecimalMath.ONE; assemblyConsumableTable.QuantityPerUnit = bigDecimal18; assemblyConsumableTable.QuantityPerUnitFormula = ""; assemblyConsumableTable.QuantityPerUnitFormulaState = ResourceToAssignmentTable.QTYPUFORM_NOFORMULA; assemblyConsumableTable.LocalFactor = BigDecimalMath.ONE; assemblyConsumableTable.LocalCountry = ""; assemblyConsumableTable.LocalStateProvince = ""; assemblyConsumableTable.LastUpdate = assemblyTable.LastUpdate; long = (long?)paramSession.save(assemblyConsumableTable); assemblyConsumableTable.AssemblyConsumableId = long; assemblyTable.AssemblyConsumableSet.Add(assemblyConsumableTable); paramSession.saveOrUpdate(assemblyTable); assemblyConsumableTable.ConsumableTable = consumableTable; assemblyConsumableTable.AssemblyTable = assemblyTable; paramSession.saveOrUpdate(assemblyConsumableTable); } if (DatabaseDBUtil.LocalCommunication) { assemblyTable.recalculate(); paramSession.saveOrUpdate(assemblyTable); } } } } if (hSSFWorkbook != null) { hSSFWorkbook.close(); } }
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#: //ORIGINAL LINE: private void loadWorkgroups(org.hibernate.Session paramSession, String paramString) throws Exception private void loadWorkgroups(Session paramSession, string paramString) { Console.WriteLine("\n\n\n\nLoading Workgroups"); POIFSFileSystem pOIFSFileSystem = new POIFSFileSystem(new FileStream(paramString, FileMode.Open, FileAccess.Read)); HSSFWorkbook hSSFWorkbook = new HSSFWorkbook(pOIFSFileSystem); this.o_evaluator = hSSFWorkbook.CreationHelper.createFormulaEvaluator(); HSSFSheet hSSFSheet = hSSFWorkbook.getSheetAt(4); int i = getRealNumberOfRows(hSSFSheet); int j; for (j = 1; j < i; j++) { if (j % this.rowsToCommit == 0) { paramSession.Transaction.commit(); paramSession.Transaction.begin(); Console.WriteLine("Processing next " + this.rowsToCommit + "..."); } HSSFRow hSSFRow = hSSFSheet.getRow(j); string str1 = notNull(hSSFRow.getCell(0)); string str2 = notNull(hSSFRow.getCell(1)); string str3 = toCostOSUoM(notNull(hSSFRow.getCell(2))); decimal bigDecimal1 = notNullBigDecimal(hSSFRow.getCell(3), 0.0D); decimal bigDecimal2 = notNullBigDecimal(hSSFRow.getCell(4), 1.0D); string str4 = notNull(hSSFRow.getCell(5)); string str5 = notNull(hSSFRow.getCell(8)); string str6 = ""; if (str5.Length >= 2 && !StringUtils.isBlank(str5)) { str6 = "0" + str5.Substring(0, 2) + "00"; } if (acceptProject(str1)) { AssemblyTable assemblyTable = BlankResourceInitializer.createBlankAssembly(null); assemblyTable.ItemCode = str2; assemblyTable.Title = str4; assemblyTable.Unit = str3; assemblyTable.Quantity = bigDecimal1; assemblyTable.Project = str1; assemblyTable.Currency = "USD"; assemblyTable.ActivityBased = false; assemblyTable.AssemblyChildSet = new HashSet <object>(); assemblyTable.AssemblyEquipmentSet = new HashSet <object>(); assemblyTable.AssemblySubcontractorSet = new HashSet <object>(); assemblyTable.AssemblyLaborSet = new HashSet <object>(); assemblyTable.AssemblyMaterialSet = new HashSet <object>(); assemblyTable.AssemblyConsumableSet = new HashSet <object>(); assemblyTable.EditorId = "ccc"; assemblyTable.CreateUserId = "ccc"; assemblyTable.LastUpdate = this.lastUpdate; assemblyTable.CreateDate = this.lastUpdate; assemblyTable.CustomText1 = "Workgroup"; if (this.csi95Map.ContainsKey(str6)) { assemblyTable.GroupCode = (string)this.csi95Map[str6]; } else if (!StringUtils.isBlank(str6)) { Console.WriteLine("CSI Not Found: " + str6); } long?long = (long?)paramSession.save(assemblyTable); assemblyTable = (AssemblyTable)paramSession.load(assemblyTable.GetType(), long); this.operationsMap[str1 + str2] = assemblyTable; } } hSSFSheet = hSSFWorkbook.getSheetAt(3); i = getRealNumberOfRows(hSSFSheet); for (j = 1; j < i; j++) { if (j % this.rowsToCommit == 0) { paramSession.Transaction.commit(); paramSession.Transaction.begin(); Console.WriteLine("Processing next " + this.rowsToCommit + " - " + j + "/" + i + "..."); } HSSFRow hSSFRow = hSSFSheet.getRow(j); string str1 = notNull(hSSFRow.getCell(0)); string str2 = notNull(hSSFRow.getCell(1)); string str3 = notNull(hSSFRow.getCell(2)); string str4 = notNull(hSSFRow.getCell(3)); string str5 = notNull(hSSFRow.getCell(4)); decimal bigDecimal = notNullBigDecimal(hSSFRow.getCell(5), 0.0D); AssemblyTable assemblyTable = (AssemblyTable)this.operationsMap[str1 + str2]; ResourceTable resourceTable = (ResourceTable)this.resourcesMap[str1 + str3]; if (assemblyTable == null) { Console.Error.WriteLine("Workgroup not found: " + str2 + ", project: " + str1); continue; } if (resourceTable == null) { resourceTable = (ResourceTable)this.operationsMap[str1 + str3]; if (resourceTable == null) { Console.Error.WriteLine("Operation or Resource not found: " + str3 + ", project: " + str1); continue; } } if (BigDecimalMath.cmp(BigDecimalMath.ZERO, assemblyTable.Quantity) == 0) { Console.WriteLine("Divide by zero error on workgroup: " + str2 + ", operation or resource: " + str3 + ", project: " + str1); bigDecimal = BigDecimalMath.ONE; } else { bigDecimal = BigDecimalMath.div(bigDecimal, assemblyTable.Quantity); } assignToResource(paramSession, assemblyTable, resourceTable, bigDecimal); paramSession.flush(); assemblyTable = (AssemblyTable)paramSession.load(assemblyTable.GetType(), assemblyTable.Id); assemblyTable.recalculate(); paramSession.update(assemblyTable); continue; } }