1 #ifndef AMO_TOOLS_SUITE_DB_H 2 #define AMO_TOOLS_SUITE_DB_H 5 #include <sqlite/SQLite.h> 10 #include <calculator/losses/SolidLoadChargeMaterial.h> 11 #include <calculator/losses/LiquidLoadChargeMaterial.h> 12 #include <calculator/losses/GasLoadChargeMaterial.h> 13 #include <calculator/losses/GasFlueGasMaterial.h> 14 #include <calculator/losses/SolidLiquidFlueGasMaterial.h> 15 #include <calculator/losses/Atmosphere.h> 16 #include <calculator/losses/WallLosses.h> 17 #include <calculator/motor/MotorData.h> 18 #include <calculator/pump/PumpData.h> 24 std::unique_ptr<SQLite> sql;
26 double Get(std::string
const &nm)
28 v8::Isolate *isolate = v8::Isolate::GetCurrent();
29 v8::Local<v8::Context> context = isolate->GetCurrentContext();
30 Local<String> getName = Nan::New<String>(nm).ToLocalChecked();
31 Local<Value> rObj = Nan::To<Object>(inp).ToLocalChecked()->Get(context, getName).ToLocalChecked();
32 if (rObj->IsUndefined())
34 ThrowTypeError(std::string(
"Get method in db.h: " + nm +
" not present in object").c_str());
36 return Nan::To<double>(rObj).FromJust();
39 std::string GetStr(std::string
const &nm)
41 v8::Isolate *isolate = v8::Isolate::GetCurrent();
42 v8::Local<v8::Context> context = isolate->GetCurrentContext();
43 Local<String> getName = Nan::New<String>(nm).ToLocalChecked();
44 Local<Value> obj = Nan::To<Object>(inp).ToLocalChecked()->Get(context, getName).ToLocalChecked();
45 if (obj->IsUndefined())
47 ThrowTypeError(std::string(
"GetStr method in db.h: " + nm +
" not present in object").c_str());
49 v8::String::Utf8Value s(isolate, obj);
50 return std::string(*s);
53 inline void SetObj(Local<Object> &obj,
const std::string &key,
double val)
55 Nan::Set(obj, Nan::New<String>(key).ToLocalChecked(), Nan::New<Number>(val));
58 inline void SetObj(Local<Object> &obj,
const std::string &key,
const std::string &val)
60 Nan::Set(obj, Nan::New<String>(key).ToLocalChecked(), Nan::New<String>(val).ToLocalChecked());
63 inline void SetObj(Local<Object> &obj,
const std::string &key,
const Motor::LineFrequency &val)
65 int lineFreqNum = 1234;
66 if (val == Motor::LineFrequency::FREQ60)
70 else if (val == Motor::LineFrequency::FREQ50)
75 Nan::Set(obj, Nan::New<String>(key).ToLocalChecked(), Nan::New<Number>(lineFreqNum));
78 inline void SetObj(Local<Object> &obj,
const std::string &key,
const Motor::EfficiencyClass &val)
80 int efficiencyClassNum;
81 if (val == Motor::EfficiencyClass::STANDARD)
83 efficiencyClassNum = 0;
85 else if (val == Motor::EfficiencyClass::ENERGY_EFFICIENT)
87 efficiencyClassNum = 1;
89 else if (val == Motor::EfficiencyClass::PREMIUM)
91 efficiencyClassNum = 2;
93 else if (val == Motor::EfficiencyClass::SPECIFIED)
95 efficiencyClassNum = 3;
97 Nan::Set(obj, Nan::New<String>(key).ToLocalChecked(), Nan::New<Number>(efficiencyClassNum));
100 void SetMotorData(Local<Object> &obj,
const MotorData &motor)
102 SetObj(obj,
"id", motor.getId());
103 SetObj(obj,
"hp", motor.getHp());
104 SetObj(obj,
"synchronousSpeed", motor.getSynchronousSpeed());
105 SetObj(obj,
"poles", motor.getPoles());
106 SetObj(obj,
"nominalEfficiency", motor.getNominalEfficiency());
107 SetObj(obj,
"efficiencyClass", motor.getEfficiencyClass());
108 SetObj(obj,
"nemaTable", motor.getNemaTable());
109 SetObj(obj,
"enclosureType", motor.getEnclosureType());
110 SetObj(obj,
"lineFrequency", motor.getLineFrequency());
111 SetObj(obj,
"voltageLimit", motor.getVoltageLimit());
112 SetObj(obj,
"catalog", motor.getCatalog());
115 void SetPumpData(Local<Object> &obj,
const PumpData &pump)
117 SetObj(obj,
"id", pump.getId());
118 SetObj(obj,
"manufacturer", pump.getManufacturer());
119 SetObj(obj,
"model", pump.getModel());
120 SetObj(obj,
"type", pump.getType());
121 SetObj(obj,
"serialNumber", pump.getSerialNumber());
122 SetObj(obj,
"status", pump.getStatus());
123 SetObj(obj,
"pumpType", pump.getPumpType());
124 SetObj(obj,
"radialBearingType", pump.getRadialBearingType());
125 SetObj(obj,
"thrustBearingType", pump.getThrustBearingType());
126 SetObj(obj,
"shaftOrientation", pump.getShaftOrientation());
127 SetObj(obj,
"shaftSealType", pump.getShaftSealType());
128 SetObj(obj,
"fluidType", pump.getFluidType());
129 SetObj(obj,
"priority", pump.getPriority());
130 SetObj(obj,
"driveType", pump.getDriveType());
131 SetObj(obj,
"flangeConnectionClass", pump.getFlangeConnectionClass());
132 SetObj(obj,
"flangeConnectionSize", pump.getFlangeConnectionSize());
133 SetObj(obj,
"numShafts", pump.getNumShafts());
134 SetObj(obj,
"speed", pump.getSpeed());
135 SetObj(obj,
"numStages", pump.getNumStages());
136 SetObj(obj,
"yearlyOperatingHours", pump.getYearlyOperatingHours());
137 SetObj(obj,
"yearInstalled", pump.getYearInstalled());
138 SetObj(obj,
"finalMotorRpm", pump.getFinalMotorRpm());
139 SetObj(obj,
"inletDiameter", pump.getInletDiameter());
140 SetObj(obj,
"weight", pump.getWeight());
141 SetObj(obj,
"outletDiameter", pump.getOutletDiameter());
142 SetObj(obj,
"percentageOfSchedule", pump.getPercentageOfSchedule());
143 SetObj(obj,
"dailyPumpCapacity", pump.getDailyPumpCapacity());
144 SetObj(obj,
"measuredPumpCapacity", pump.getMeasuredPumpCapacity());
145 SetObj(obj,
"pumpPerformance", pump.getPumpPerformance());
146 SetObj(obj,
"staticSuctionHead", pump.getStaticSuctionHead());
147 SetObj(obj,
"staticDischargeHead", pump.getStaticDischargeHead());
148 SetObj(obj,
"fluidDensity", pump.getFluidDensity());
149 SetObj(obj,
"lengthOfDischargePipe", pump.getLengthOfDischargePipe());
150 SetObj(obj,
"pipeDesignFrictionLosses", pump.getPipeDesignFrictionLosses());
151 SetObj(obj,
"maxWorkingPressure", pump.getMaxWorkingPressure());
152 SetObj(obj,
"maxAmbientTemperature", pump.getMaxAmbientTemperature());
153 SetObj(obj,
"maxSuctionLift", pump.getMaxSuctionLift());
154 SetObj(obj,
"displacement", pump.getDisplacement());
155 SetObj(obj,
"startingTorque", pump.getStartingTorque());
156 SetObj(obj,
"ratedSpeed", pump.getRatedSpeed());
157 SetObj(obj,
"shaftDiameter", pump.getShaftDiameter());
158 SetObj(obj,
"impellerDiameter", pump.getImpellerDiameter());
159 SetObj(obj,
"efficiency", pump.getEfficiency());
160 SetObj(obj,
"output60Hz", pump.getOutput60Hz());
161 SetObj(obj,
"minFlowSize", pump.getMinFlowSize());
162 SetObj(obj,
"pumpSize", pump.getPumpSize());
163 SetObj(obj,
"outOfService", pump.getOutOfService());
179 std::string
const dbName =
":memory:";
182 sql = std::unique_ptr<SQLite>(
new SQLite(dbName,
true));
185 NAN_METHOD(selectSolidLoadChargeMaterials)
187 Local<String>
id = Nan::New<String>(
"id").ToLocalChecked();
188 Local<String> substance = Nan::New<String>(
"substance").ToLocalChecked();
189 Local<String> specificHeatSolid = Nan::New<String>(
"specificHeatSolid").ToLocalChecked();
190 Local<String> latentHeat = Nan::New<String>(
"latentHeat").ToLocalChecked();
191 Local<String> specificHeatLiquid = Nan::New<String>(
"specificHeatLiquid").ToLocalChecked();
192 Local<String> meltingPoint = Nan::New<String>(
"meltingPoint").ToLocalChecked();
194 auto const slcms = sql->getSolidLoadChargeMaterials();
196 auto objs = Nan::New<v8::Array>();
197 for (std::size_t i = 0; i < slcms.size(); i++)
199 auto const &slcm = slcms[i];
200 Local<Object> obj = Nan::New<Object>();
201 Nan::Set(obj,
id, Nan::New<Number>(slcm.getID()));
202 Nan::Set(obj, substance, Nan::New<String>(slcm.getSubstance()).ToLocalChecked());
203 Nan::Set(obj, specificHeatSolid, Nan::New<Number>(slcm.getSpecificHeatSolid()));
204 Nan::Set(obj, latentHeat, Nan::New<Number>(slcm.getLatentHeat()));
205 Nan::Set(obj, specificHeatLiquid, Nan::New<Number>(slcm.getSpecificHeatLiquid()));
206 Nan::Set(obj, meltingPoint, Nan::New<Number>(slcm.getMeltingPoint()));
207 Nan::Set(objs, i, obj);
210 info.GetReturnValue().Set(objs);
213 NAN_METHOD(selectSolidLoadChargeMaterialById)
215 Local<String>
id = Nan::New<String>(
"id").ToLocalChecked();
216 Local<String> substance = Nan::New<String>(
"substance").ToLocalChecked();
217 Local<String> specificHeatSolid = Nan::New<String>(
"specificHeatSolid").ToLocalChecked();
218 Local<String> latentHeat = Nan::New<String>(
"latentHeat").ToLocalChecked();
219 Local<String> specificHeatLiquid = Nan::New<String>(
"specificHeatLiquid").ToLocalChecked();
220 Local<String> meltingPoint = Nan::New<String>(
"meltingPoint").ToLocalChecked();
222 Local<Object> obj = Nan::New<Object>();
225 auto const slcm = sql->getSolidLoadChargeMaterialById(static_cast<int>(Nan::To<double>(info[0]).FromJust()));
226 Nan::Set(obj,
id, Nan::New<Number>(slcm.getID()));
227 Nan::Set(obj, substance, Nan::New<String>(slcm.getSubstance()).ToLocalChecked());
228 Nan::Set(obj, specificHeatSolid, Nan::New<Number>(slcm.getSpecificHeatSolid()));
229 Nan::Set(obj, latentHeat, Nan::New<Number>(slcm.getLatentHeat()));
230 Nan::Set(obj, specificHeatLiquid, Nan::New<Number>(slcm.getSpecificHeatLiquid()));
231 Nan::Set(obj, meltingPoint, Nan::New<Number>(slcm.getMeltingPoint()));
233 catch (std::runtime_error
const &e)
235 std::string
const what = e.what();
236 ThrowError(std::string(
"std::runtime_error thrown in selectSolidLoadChargeMaterialById - db.h: " + what).c_str());
239 info.GetReturnValue().Set(obj);
242 NAN_METHOD(insertSolidLoadChargeMaterial)
244 inp = Nan::To<Object>(info[0]).ToLocalChecked();
245 std::string substance = GetStr(
"substance");
246 double specificHeatSolid = Get(
"specificHeatSolid");
247 double specificHeatLiquid = Get(
"specificHeatLiquid");
248 double latentHeat = Get(
"latentHeat");
249 double meltingPoint = Get(
"meltingPoint");
257 bool success = sql->insertSolidLoadChargeMaterials(slcm);
259 info.GetReturnValue().Set(success);
262 NAN_METHOD(deleteSolidLoadChargeMaterial)
264 bool success = sql->deleteSolidLoadChargeMaterial(static_cast<int>(Nan::To<double>(info[0]).FromJust()));
265 info.GetReturnValue().Set(success);
268 NAN_METHOD(updateSolidLoadChargeMaterial)
270 inp = Nan::To<Object>(info[0]).ToLocalChecked();
271 std::string substance = GetStr(
"substance");
272 double specificHeatSolid = Get(
"specificHeatSolid");
273 double specificHeatLiquid = Get(
"specificHeatLiquid");
274 double latentHeat = Get(
"latentHeat");
275 double meltingPoint = Get(
"meltingPoint");
276 int id = (int)Get(
"id");
285 bool success = sql->updateSolidLoadChargeMaterial(slcm);
287 info.GetReturnValue().Set(success);
290 NAN_METHOD(selectLiquidLoadChargeMaterials)
292 Local<String>
id = Nan::New<String>(
"id").ToLocalChecked();
293 Local<String> substance = Nan::New<String>(
"substance").ToLocalChecked();
294 Local<String> specificHeatLiquid = Nan::New<String>(
"specificHeatLiquid").ToLocalChecked();
295 Local<String> specificHeatVapor = Nan::New<String>(
"specificHeatVapor").ToLocalChecked();
296 Local<String> vaporizationTemperature = Nan::New<String>(
"vaporizationTemperature").ToLocalChecked();
297 Local<String> latentHeat = Nan::New<String>(
"latentHeat").ToLocalChecked();
299 auto const llcms = sql->getLiquidLoadChargeMaterials();
301 auto objs = Nan::New<v8::Array>();
302 for (std::size_t i = 0; i < llcms.size(); i++)
304 auto const &llcm = llcms[i];
305 Local<Object> obj = Nan::New<Object>();
306 Nan::Set(obj,
id, Nan::New<Number>(llcm.getID()));
307 Nan::Set(obj, substance, Nan::New<String>(llcm.getSubstance()).ToLocalChecked());
308 Nan::Set(obj, specificHeatLiquid, Nan::New<Number>(llcm.getSpecificHeatLiquid()));
309 Nan::Set(obj, specificHeatVapor, Nan::New<Number>(llcm.getSpecificHeatVapor()));
310 Nan::Set(obj, vaporizationTemperature, Nan::New<Number>(llcm.getVaporizingTemperature()));
311 Nan::Set(obj, latentHeat, Nan::New<Number>(llcm.getLatentHeat()));
312 Nan::Set(objs, i, obj);
315 info.GetReturnValue().Set(objs);
318 NAN_METHOD(insertLiquidLoadChargeMaterial)
320 inp = Nan::To<Object>(info[0]).ToLocalChecked();
322 std::string substance = GetStr(
"substance");
323 double specificHeatLiquid = Get(
"specificHeatLiquid");
324 double specificHeatVapor = Get(
"specificHeatVapor");
325 double vaporizationTemperature = Get(
"vaporizationTemperature");
326 double latentHeat = Get(
"latentHeat");
334 bool success = sql->insertLiquidLoadChargeMaterials(llcm);
335 info.GetReturnValue().Set(success);
338 NAN_METHOD(deleteLiquidLoadChargeMaterial)
340 bool success = sql->deleteLiquidLoadChargeMaterial(static_cast<int>(Nan::To<double>(info[0]).FromJust()));
341 info.GetReturnValue().Set(success);
344 NAN_METHOD(updateLiquidLoadChargeMaterial)
346 inp = Nan::To<Object>(info[0]).ToLocalChecked();
347 std::string substance = GetStr(
"substance");
348 double specificHeatLiquid = Get(
"specificHeatLiquid");
349 double specificHeatVapor = Get(
"specificHeatVapor");
350 double vaporizationTemperature = Get(
"vaporizationTemperature");
351 double latentHeat = Get(
"latentHeat");
352 int id = (int)Get(
"id");
361 bool success = sql->updateLiquidLoadChargeMaterial(llcm);
363 info.GetReturnValue().Set(success);
366 NAN_METHOD(selectLiquidLoadChargeMaterialById)
368 Local<String>
id = Nan::New<String>(
"id").ToLocalChecked();
369 Local<String> substance = Nan::New<String>(
"substance").ToLocalChecked();
370 Local<String> specificHeatLiquid = Nan::New<String>(
"specificHeatLiquid").ToLocalChecked();
371 Local<String> specificHeatVapor = Nan::New<String>(
"specificHeatVapor").ToLocalChecked();
372 Local<String> vaporizationTemperature = Nan::New<String>(
"vaporizationTemperature").ToLocalChecked();
373 Local<String> latentHeat = Nan::New<String>(
"latentHeat").ToLocalChecked();
375 Local<Object> obj = Nan::New<Object>();
378 auto const llcm = sql->getLiquidLoadChargeMaterialById(static_cast<int>(Nan::To<double>(info[0]).FromJust()));
379 Nan::Set(obj,
id, Nan::New<Number>(llcm.
getID()));
380 Nan::Set(obj, substance, Nan::New<String>(llcm.
getSubstance()).ToLocalChecked());
384 Nan::Set(obj, latentHeat, Nan::New<Number>(llcm.
getLatentHeat()));
386 catch (std::runtime_error
const &e)
388 std::string
const what = e.what();
389 ThrowError(std::string(
"std::runtime_error thrown in selectLiquidLoadChargeMaterialById - db.h: " + what).c_str());
392 info.GetReturnValue().Set(obj);
395 NAN_METHOD(selectGasLoadChargeMaterials)
397 Local<String>
id = Nan::New<String>(
"id").ToLocalChecked();
398 Local<String> substance = Nan::New<String>(
"substance").ToLocalChecked();
399 Local<String> specificHeatVapor = Nan::New<String>(
"specificHeatVapor").ToLocalChecked();
401 auto const glcms = sql->getGasLoadChargeMaterials();
403 auto objs = Nan::New<v8::Array>();
404 for (std::size_t i = 0; i < glcms.size(); i++)
406 auto const &glcm = glcms[i];
407 Local<Object> obj = Nan::New<Object>();
408 Nan::Set(obj,
id, Nan::New<Number>(glcm.getID()));
409 Nan::Set(obj, substance, Nan::New<String>(glcm.getSubstance()).ToLocalChecked());
410 Nan::Set(obj, specificHeatVapor, Nan::New<Number>(glcm.getSpecificHeatVapor()));
411 Nan::Set(objs, i, obj);
414 info.GetReturnValue().Set(objs);
417 NAN_METHOD(insertGasLoadChargeMaterial)
419 inp = Nan::To<Object>(info[0]).ToLocalChecked();
423 bool success = sql->insertGasLoadChargeMaterials(glcm);
424 info.GetReturnValue().Set(success);
427 NAN_METHOD(deleteGasLoadChargeMaterial)
429 bool success = sql->deleteGasLoadChargeMaterial(static_cast<int>(Nan::To<double>(info[0]).FromJust()));
430 info.GetReturnValue().Set(success);
433 NAN_METHOD(updateGasLoadChargeMaterial)
435 inp = Nan::To<Object>(info[0]).ToLocalChecked();
436 std::string substance = GetStr(
"substance");
437 double specificHeatVapor = Get(
"specificHeatVapor");
438 int id = (int)Get(
"id");
444 bool success = sql->updateGasLoadChargeMaterial(glcm);
446 info.GetReturnValue().Set(success);
449 NAN_METHOD(selectGasLoadChargeMaterialById)
451 Local<String>
id = Nan::New<String>(
"id").ToLocalChecked();
452 Local<String> substance = Nan::New<String>(
"substance").ToLocalChecked();
453 Local<String> specificHeatVapor = Nan::New<String>(
"specificHeatVapor").ToLocalChecked();
455 Local<Object> obj = Nan::New<Object>();
458 auto const glcm = sql->getGasLoadChargeMaterialById(static_cast<int>(Nan::To<double>(info[0]).FromJust()));
459 Nan::Set(obj,
id, Nan::New<Number>(glcm.
getID()));
460 Nan::Set(obj, substance, Nan::New<String>(glcm.
getSubstance()).ToLocalChecked());
463 catch (std::runtime_error
const &e)
465 std::string
const what = e.what();
466 ThrowError(std::string(
"std::runtime_error thrown in selectGasLoadChargeMaterialById - db.h: " + what).c_str());
469 info.GetReturnValue().Set(obj);
472 NAN_METHOD(selectSolidLiquidFlueGasMaterials)
474 Local<String>
id = Nan::New<String>(
"id").ToLocalChecked();
475 Local<String> substance = Nan::New<String>(
"substance").ToLocalChecked();
476 Local<String> carbon = Nan::New<String>(
"carbon").ToLocalChecked();
477 Local<String> hydrogen = Nan::New<String>(
"hydrogen").ToLocalChecked();
478 Local<String> sulphur = Nan::New<String>(
"sulphur").ToLocalChecked();
479 Local<String> inertAsh = Nan::New<String>(
"inertAsh").ToLocalChecked();
480 Local<String> o2 = Nan::New<String>(
"o2").ToLocalChecked();
481 Local<String> moisture = Nan::New<String>(
"moisture").ToLocalChecked();
482 Local<String> nitrogen = Nan::New<String>(
"nitrogen").ToLocalChecked();
484 auto const fgMaterials = sql->getSolidLiquidFlueGasMaterials();
486 auto objs = Nan::New<v8::Array>();
487 for (std::size_t i = 0; i < fgMaterials.size(); i++)
489 auto const &fgm = fgMaterials[i];
490 Local<Object> obj = Nan::New<Object>();
491 Nan::Set(obj,
id, Nan::New<Number>(fgm.getID()));
492 Nan::Set(obj, substance, Nan::New<String>(fgm.getSubstance()).ToLocalChecked());
493 Nan::Set(obj, carbon, Nan::New<Number>(fgm.getCarbon()));
494 Nan::Set(obj, hydrogen, Nan::New<Number>(fgm.getHydrogen()));
495 Nan::Set(obj, sulphur, Nan::New<Number>(fgm.getSulphur()));
496 Nan::Set(obj, inertAsh, Nan::New<Number>(fgm.getInertAsh()));
497 Nan::Set(obj, o2, Nan::New<Number>(fgm.getO2()));
498 Nan::Set(obj, moisture, Nan::New<Number>(fgm.getMoisture()));
499 Nan::Set(obj, nitrogen, Nan::New<Number>(fgm.getNitrogen()));
500 Nan::Set(objs, i, obj);
503 info.GetReturnValue().Set(objs);
506 NAN_METHOD(insertSolidLiquidFlueGasMaterial)
508 inp = Nan::To<Object>(info[0]).ToLocalChecked();
510 double carbon = Get(
"carbon") * 100.0;
511 double hydrogen = Get(
"hydrogen") * 100.0;
512 double sulphur = Get(
"sulphur") * 100.0;
513 double inertAsh = Get(
"inertAsh") * 100.0;
514 double o2 = Get(
"o2") * 100.0;
515 double moisture = Get(
"moisture") * 100.0;
516 double nitrogen = Get(
"nitrogen") * 100.0;
517 std::string substance = GetStr(
"substance");
520 sulphur, inertAsh, o2,
522 slfgm.setSubstance(substance);
523 bool success = sql->insertSolidLiquidFlueGasMaterial(slfgm);
525 info.GetReturnValue().Set(success);
528 NAN_METHOD(deleteSolidLiquidFlueGasMaterial)
530 bool success = sql->deleteSolidLiquidFlueGasMaterial(static_cast<int>(Nan::To<double>(info[0]).FromJust()));
531 info.GetReturnValue().Set(success);
534 NAN_METHOD(updateSolidLiquidFlueGasMaterial)
536 inp = Nan::To<Object>(info[0]).ToLocalChecked();
538 double carbon = Get(
"carbon") * 100.0;
539 double hydrogen = Get(
"hydrogen") * 100.0;
540 double sulphur = Get(
"sulphur") * 100.0;
541 double inertAsh = Get(
"inertAsh") * 100.0;
542 double o2 = Get(
"o2") * 100.0;
543 double moisture = Get(
"moisture") * 100.0;
544 double nitrogen = Get(
"nitrogen") * 100.0;
545 std::string substance = GetStr(
"substance");
546 int id = (int)Get(
"id");
549 sulphur, inertAsh, o2,
551 slfgm.setSubstance(substance);
553 bool success = sql->updateSolidLiquidFlueGasMaterial(slfgm);
555 info.GetReturnValue().Set(success);
558 NAN_METHOD(selectSolidLiquidFlueGasMaterialById)
560 Local<String>
id = Nan::New<String>(
"id").ToLocalChecked();
561 Local<String> substance = Nan::New<String>(
"substance").ToLocalChecked();
562 Local<String> carbon = Nan::New<String>(
"carbon").ToLocalChecked();
563 Local<String> hydrogen = Nan::New<String>(
"hydrogen").ToLocalChecked();
564 Local<String> sulphur = Nan::New<String>(
"sulphur").ToLocalChecked();
565 Local<String> inertAsh = Nan::New<String>(
"inertAsh").ToLocalChecked();
566 Local<String> o2 = Nan::New<String>(
"o2").ToLocalChecked();
567 Local<String> moisture = Nan::New<String>(
"moisture").ToLocalChecked();
568 Local<String> nitrogen = Nan::New<String>(
"nitrogen").ToLocalChecked();
570 Local<Object> obj = Nan::New<Object>();
573 auto const fgm = sql->getSolidLiquidFlueGasMaterialById(static_cast<int>(Nan::To<double>(info[0]).FromJust()));
574 Nan::Set(obj,
id, Nan::New<Number>(fgm.getID()));
575 Nan::Set(obj, substance, Nan::New<String>(fgm.getSubstance()).ToLocalChecked());
576 Nan::Set(obj, carbon, Nan::New<Number>(fgm.getCarbon()));
577 Nan::Set(obj, hydrogen, Nan::New<Number>(fgm.getHydrogen()));
578 Nan::Set(obj, sulphur, Nan::New<Number>(fgm.getSulphur()));
579 Nan::Set(obj, inertAsh, Nan::New<Number>(fgm.getInertAsh()));
580 Nan::Set(obj, o2, Nan::New<Number>(fgm.getO2()));
581 Nan::Set(obj, moisture, Nan::New<Number>(fgm.getMoisture()));
582 Nan::Set(obj, nitrogen, Nan::New<Number>(fgm.getNitrogen()));
584 catch (std::runtime_error
const &e)
586 std::string
const what = e.what();
587 ThrowError(std::string(
"std::runtime_error thrown in selectSolidLiquidFlueGasMaterialById - db.h: " + what).c_str());
590 info.GetReturnValue().Set(obj);
593 NAN_METHOD(selectGasFlueGasMaterials)
595 Local<String>
id = Nan::New<String>(
"id").ToLocalChecked();
596 Local<String> substance = Nan::New<String>(
"substance").ToLocalChecked();
597 Local<String> CH4 = Nan::New<String>(
"CH4").ToLocalChecked();
598 Local<String> C2H6 = Nan::New<String>(
"C2H6").ToLocalChecked();
599 Local<String> N2 = Nan::New<String>(
"N2").ToLocalChecked();
600 Local<String> H2 = Nan::New<String>(
"H2").ToLocalChecked();
601 Local<String> C3H8 = Nan::New<String>(
"C3H8").ToLocalChecked();
602 Local<String> C4H10_CnH2n = Nan::New<String>(
"C4H10_CnH2n").ToLocalChecked();
603 Local<String> H2O = Nan::New<String>(
"H2O").ToLocalChecked();
604 Local<String> CO = Nan::New<String>(
"CO").ToLocalChecked();
605 Local<String> CO2 = Nan::New<String>(
"CO2").ToLocalChecked();
606 Local<String> SO2 = Nan::New<String>(
"SO2").ToLocalChecked();
607 Local<String> O2 = Nan::New<String>(
"O2").ToLocalChecked();
608 Local<String> heatingValue = Nan::New<String>(
"heatingValue").ToLocalChecked();
609 Local<String> heatingValueVolume = Nan::New<String>(
"heatingValueVolume").ToLocalChecked();
610 Local<String> specificGravity = Nan::New<String>(
"specificGravity").ToLocalChecked();
612 auto const fgMaterials = sql->getGasFlueGasMaterials();
614 auto objs = Nan::New<v8::Array>();
615 for (std::size_t i = 0; i < fgMaterials.size(); i++)
617 auto const &fgm = fgMaterials[i];
618 Local<Object> obj = Nan::New<Object>();
619 Nan::Set(obj,
id, Nan::New<Number>(fgm.getID()));
620 Nan::Set(obj, substance, Nan::New<String>(fgm.getSubstance()).ToLocalChecked());
621 Nan::Set(obj, CH4, Nan::New<Number>(fgm.getGasByVol(
"CH4")));
622 Nan::Set(obj, C2H6, Nan::New<Number>(fgm.getGasByVol(
"C2H6")));
623 Nan::Set(obj, N2, Nan::New<Number>(fgm.getGasByVol(
"N2")));
624 Nan::Set(obj, H2, Nan::New<Number>(fgm.getGasByVol(
"H2")));
625 Nan::Set(obj, C3H8, Nan::New<Number>(fgm.getGasByVol(
"C3H8")));
626 Nan::Set(obj, C4H10_CnH2n, Nan::New<Number>(fgm.getGasByVol(
"C4H10_CnH2n")));
627 Nan::Set(obj, H2O, Nan::New<Number>(fgm.getGasByVol(
"H2O")));
628 Nan::Set(obj, CO, Nan::New<Number>(fgm.getGasByVol(
"CO")));
629 Nan::Set(obj, CO2, Nan::New<Number>(fgm.getGasByVol(
"CO2")));
630 Nan::Set(obj, SO2, Nan::New<Number>(fgm.getGasByVol(
"SO2")));
631 Nan::Set(obj, O2, Nan::New<Number>(fgm.getGasByVol(
"O2")));
632 Nan::Set(obj, heatingValue, Nan::New<Number>(fgm.getHeatingValue()));
633 Nan::Set(obj, heatingValueVolume, Nan::New<Number>(fgm.getHeatingValueVolume()));
634 Nan::Set(obj, specificGravity, Nan::New<Number>(fgm.getSpecificGravity()));
635 Nan::Set(objs, i, obj);
638 info.GetReturnValue().Set(objs);
641 NAN_METHOD(insertGasFlueGasMaterial)
643 inp = Nan::To<Object>(info[0]).ToLocalChecked();
644 std::string substance = GetStr(
"substance");
645 double CH4 = Get(
"CH4");
646 double C2H6 = Get(
"C2H6");
647 double N2 = Get(
"N2");
648 double H2 = Get(
"H2");
649 double C3H8 = Get(
"C3H8");
650 double C4H10_CnH2n = Get(
"C4H10_CnH2n");
651 double H2O = Get(
"H2O");
652 double CO = Get(
"CO");
653 double CO2 = Get(
"CO2");
654 double SO2 = Get(
"SO2");
655 double O2 = Get(
"O2");
658 C4H10_CnH2n, H2O, CO, CO2, SO2, O2);
662 bool success = sql->insertGasFlueGasMaterial(comp);
664 info.GetReturnValue().Set(success);
666 catch (std::runtime_error
const &e)
668 std::string
const what = e.what();
669 ThrowError(std::string(
"std::runtime_error thrown in insertGasFlueGasMaterial - db.h: " + what).c_str());
670 info.GetReturnValue().Set(
false);
674 NAN_METHOD(deleteGasFlueGasMaterial)
676 bool success = sql->deleteGasFlueGasMaterial(static_cast<int>(Nan::To<double>(info[0]).FromJust()));
677 info.GetReturnValue().Set(success);
680 NAN_METHOD(updateGasFlueGasMaterial)
682 inp = Nan::To<Object>(info[0]).ToLocalChecked();
683 std::string substance = GetStr(
"substance");
684 double CH4 = Get(
"CH4");
685 double C2H6 = Get(
"C2H6");
686 double N2 = Get(
"N2");
687 double H2 = Get(
"H2");
688 double C3H8 = Get(
"C3H8");
689 double C4H10_CnH2n = Get(
"C4H10_CnH2n");
690 double H2O = Get(
"H2O");
691 double CO = Get(
"CO");
692 double CO2 = Get(
"CO2");
693 double SO2 = Get(
"SO2");
694 double O2 = Get(
"O2");
695 int id = (int)Get(
"id");
698 C4H10_CnH2n, H2O, CO, CO2, SO2, O2);
703 bool success = sql->updateGasFlueGasMaterial(comp);
704 info.GetReturnValue().Set(success);
706 catch (std::runtime_error
const &e)
708 std::string
const what = e.what();
709 ThrowError(std::string(
"std::runtime_error thrown in updateGasFlueGasMaterial - db.h: " + what).c_str());
710 info.GetReturnValue().Set(
false);
714 NAN_METHOD(selectGasFlueGasMaterialById)
716 Local<String>
id = Nan::New<String>(
"id").ToLocalChecked();
717 Local<String> substance = Nan::New<String>(
"substance").ToLocalChecked();
718 Local<String> CH4 = Nan::New<String>(
"CH4").ToLocalChecked();
719 Local<String> C2H6 = Nan::New<String>(
"C2H6").ToLocalChecked();
720 Local<String> N2 = Nan::New<String>(
"N2").ToLocalChecked();
721 Local<String> H2 = Nan::New<String>(
"H2").ToLocalChecked();
722 Local<String> C3H8 = Nan::New<String>(
"C3H8").ToLocalChecked();
723 Local<String> C4H10_CnH2n = Nan::New<String>(
"C4H10_CnH2n").ToLocalChecked();
724 Local<String> H2O = Nan::New<String>(
"H2O").ToLocalChecked();
725 Local<String> CO = Nan::New<String>(
"CO").ToLocalChecked();
726 Local<String> CO2 = Nan::New<String>(
"CO2").ToLocalChecked();
727 Local<String> SO2 = Nan::New<String>(
"SO2").ToLocalChecked();
728 Local<String> O2 = Nan::New<String>(
"O2").ToLocalChecked();
729 Local<String> heatingValue = Nan::New<String>(
"heatingValue").ToLocalChecked();
730 Local<String> heatingValueVolume = Nan::New<String>(
"heatingValueVolume").ToLocalChecked();
731 Local<String> specificGravity = Nan::New<String>(
"specificGravity").ToLocalChecked();
733 Local<Object> obj = Nan::New<Object>();
736 auto const fgm = sql->getGasFlueGasMaterialById(static_cast<int>(Nan::To<double>(info[0]).FromJust()));
737 Nan::Set(obj,
id, Nan::New<Number>(fgm.getID()));
738 Nan::Set(obj, substance, Nan::New<String>(fgm.getSubstance()).ToLocalChecked());
739 Nan::Set(obj, CH4, Nan::New<Number>(fgm.getGasByVol(
"CH4")));
740 Nan::Set(obj, C2H6, Nan::New<Number>(fgm.getGasByVol(
"C2H6")));
741 Nan::Set(obj, N2, Nan::New<Number>(fgm.getGasByVol(
"N2")));
742 Nan::Set(obj, H2, Nan::New<Number>(fgm.getGasByVol(
"H2")));
743 Nan::Set(obj, C3H8, Nan::New<Number>(fgm.getGasByVol(
"C3H8")));
744 Nan::Set(obj, C4H10_CnH2n, Nan::New<Number>(fgm.getGasByVol(
"C4H10_CnH2n")));
745 Nan::Set(obj, H2O, Nan::New<Number>(fgm.getGasByVol(
"H2O")));
746 Nan::Set(obj, CO, Nan::New<Number>(fgm.getGasByVol(
"CO")));
747 Nan::Set(obj, CO2, Nan::New<Number>(fgm.getGasByVol(
"CO2")));
748 Nan::Set(obj, SO2, Nan::New<Number>(fgm.getGasByVol(
"SO2")));
749 Nan::Set(obj, O2, Nan::New<Number>(fgm.getGasByVol(
"O2")));
750 Nan::Set(obj, heatingValue, Nan::New<Number>(fgm.getHeatingValue()));
751 Nan::Set(obj, heatingValueVolume, Nan::New<Number>(fgm.getHeatingValueVolume()));
752 Nan::Set(obj, specificGravity, Nan::New<Number>(fgm.getSpecificGravity()));
754 catch (std::runtime_error
const &e)
756 std::string
const what = e.what();
757 ThrowError(std::string(
"std::runtime_error thrown in selectGasFlueGasMaterialById - db.h: " + what).c_str());
760 info.GetReturnValue().Set(obj);
763 NAN_METHOD(selectAtmosphereSpecificHeat)
765 Local<String>
id = Nan::New<String>(
"id").ToLocalChecked();
766 Local<String> substance = Nan::New<String>(
"substance").ToLocalChecked();
767 Local<String> specificHeat = Nan::New<String>(
"specificHeat").ToLocalChecked();
768 auto const aMaterials = sql->getAtmosphereSpecificHeat();
770 auto objs = Nan::New<v8::Array>();
771 for (std::size_t i = 0; i < aMaterials.size(); i++)
773 auto const ash = aMaterials[i];
774 Local<Object> obj = Nan::New<Object>();
775 Nan::Set(obj,
id, Nan::New<Number>(ash.getID()));
776 Nan::Set(obj, substance, Nan::New<String>(ash.getSubstance()).ToLocalChecked());
777 Nan::Set(obj, specificHeat, Nan::New<Number>(ash.getSpecificHeat()));
778 Nan::Set(objs, i, obj);
781 info.GetReturnValue().Set(objs);
784 NAN_METHOD(insertAtmosphereSpecificHeat)
786 inp = Nan::To<Object>(info[0]).ToLocalChecked();
787 std::string substance = GetStr(
"substance");
788 double specificHeat = Get(
"specificHeat");
793 bool success = sql->insertAtmosphereSpecificHeat(atmos);
795 info.GetReturnValue().Set(success);
798 NAN_METHOD(deleteAtmosphereSpecificHeat)
800 bool success = sql->deleteAtmosphereSpecificHeat(static_cast<int>(Nan::To<double>(info[0]).FromJust()));
801 info.GetReturnValue().Set(success);
804 NAN_METHOD(updateAtmosphereSpecificHeat)
806 inp = Nan::To<Object>(info[0]).ToLocalChecked();
807 std::string substance = GetStr(
"substance");
808 double specificHeat = Get(
"specificHeat");
809 int id = (int)Get(
"id");
815 bool success = sql->updateAtmosphereSpecificHeat(atmos);
817 info.GetReturnValue().Set(success);
820 NAN_METHOD(selectAtmosphereSpecificHeatById)
822 Local<String>
id = Nan::New<String>(
"id").ToLocalChecked();
823 Local<String> substance = Nan::New<String>(
"substance").ToLocalChecked();
824 Local<String> specificHeat = Nan::New<String>(
"specificHeat").ToLocalChecked();
826 Local<Object> obj = Nan::New<Object>();
829 auto const ash = sql->getAtmosphereSpecificHeatById(static_cast<int>(Nan::To<double>(info[0]).FromJust()));
830 Nan::Set(obj,
id, Nan::New<Number>(ash.getID()));
831 Nan::Set(obj, substance, Nan::New<String>(ash.getSubstance()).ToLocalChecked());
832 Nan::Set(obj, specificHeat, Nan::New<Number>(ash.getSpecificHeat()));
834 catch (std::runtime_error
const &e)
836 std::string
const what = e.what();
837 ThrowError(std::string(
"std::runtime_error thrown in selectAtmosphereSpecificHeatById - db.h: " + what).c_str());
840 info.GetReturnValue().Set(obj);
843 NAN_METHOD(selectWallLossesSurface)
845 Local<String>
id = Nan::New<String>(
"id").ToLocalChecked();
846 Local<String> surface = Nan::New<String>(
"surface").ToLocalChecked();
847 Local<String> conditionFactor = Nan::New<String>(
"conditionFactor").ToLocalChecked();
848 auto const wlSurfaces = sql->getWallLossesSurface();
850 auto objs = Nan::New<v8::Array>();
851 for (std::size_t i = 0; i < wlSurfaces.size(); i++)
853 auto const &wls = wlSurfaces[i];
854 Local<Object> obj = Nan::New<Object>();
855 Nan::Set(obj,
id, Nan::New<Number>(wls.getID()));
856 Nan::Set(obj, surface, Nan::New<String>(wls.getSurface()).ToLocalChecked());
857 Nan::Set(obj, conditionFactor, Nan::New<Number>(wls.getConditionFactor()));
858 Nan::Set(objs, i, obj);
861 info.GetReturnValue().Set(objs);
864 NAN_METHOD(insertWallLossesSurface)
866 inp = Nan::To<Object>(info[0]).ToLocalChecked();
867 std::string surface = GetStr(
"surface");
868 double conditionFactor = Get(
"conditionFactor");
873 bool success = sql->insertWallLossesSurface(wl);
875 info.GetReturnValue().Set(success);
878 NAN_METHOD(deleteWallLossesSurface)
880 bool success = sql->deleteWallLossesSurface(static_cast<int>(Nan::To<double>(info[0]).FromJust()));
881 info.GetReturnValue().Set(success);
884 NAN_METHOD(updateWallLossesSurface)
886 inp = Nan::To<Object>(info[0]).ToLocalChecked();
887 std::string surface = GetStr(
"surface");
888 double conditionFactor = Get(
"conditionFactor");
889 int id = (int)Get(
"id");
895 bool success = sql->updateWallLossesSurface(wl);
897 info.GetReturnValue().Set(success);
900 NAN_METHOD(selectWallLossesSurfaceById)
902 Local<String>
id = Nan::New<String>(
"id").ToLocalChecked();
903 Local<String> surface = Nan::New<String>(
"surface").ToLocalChecked();
904 Local<String> conditionFactor = Nan::New<String>(
"conditionFactor").ToLocalChecked();
906 Local<Object> obj = Nan::New<Object>();
909 auto const wls = sql->getWallLossesSurfaceById(static_cast<int>(Nan::To<double>(info[0]).FromJust()));
910 Nan::Set(obj,
id, Nan::New<Number>(wls.getID()));
911 Nan::Set(obj, surface, Nan::New<String>(wls.getSurface()).ToLocalChecked());
912 Nan::Set(obj, conditionFactor, Nan::New<Number>(wls.getConditionFactor()));
914 catch (std::runtime_error
const &e)
916 std::string
const what = e.what();
917 ThrowError(std::string(
"std::runtime_error thrown in selectWallLossesSurfaceById - db.h: " + what).c_str());
920 info.GetReturnValue().Set(obj);
923 NAN_METHOD(selectMotors)
925 auto const motors = sql->getMotorData();
927 auto motorsNan = Nan::New<v8::Array>();
928 for (std::size_t i = 0; i < motors.size(); i++)
930 Local<Object> motor = Nan::New<Object>();
931 SetMotorData(motor, motors[i]);
932 Nan::Set(motorsNan, i, motor);
935 info.GetReturnValue().Set(motorsNan);
938 NAN_METHOD(selectMotorById)
940 Local<Object> motor = Nan::New<Object>();
943 SetMotorData(motor, sql->getMotorDataById(static_cast<int>(Nan::To<double>(info[0]).FromJust())));
945 catch (std::runtime_error
const &e)
947 std::string
const what = e.what();
948 ThrowError(std::string(
"std::runtime_error thrown in selectMotorById - db.h: " + what).c_str());
950 info.GetReturnValue().Set(motor);
953 NAN_METHOD(insertMotor)
955 inp = Nan::To<Object>(info[0]).ToLocalChecked();
956 int lineFreq = Get(
"lineFrequency");
957 Motor::LineFrequency lineFreqEnum;
960 lineFreqEnum = Motor::LineFrequency::FREQ60;
962 else if (lineFreq == 50)
964 lineFreqEnum = Motor::LineFrequency::FREQ50;
966 int efficiencyClass = Get(
"efficiencyClass");
967 Motor::EfficiencyClass efficiencyClassEnum;
968 if (efficiencyClass == 0)
970 efficiencyClassEnum = Motor::EfficiencyClass::STANDARD;
972 else if (efficiencyClass == 1)
974 efficiencyClassEnum = Motor::EfficiencyClass::ENERGY_EFFICIENT;
976 else if (efficiencyClass == 2)
978 efficiencyClassEnum = Motor::EfficiencyClass::PREMIUM;
980 else if (efficiencyClass == 3)
982 efficiencyClassEnum = Motor::EfficiencyClass::SPECIFIED;
985 MotorData motor(Get(
"hp"), Get(
"synchronousSpeed"), Get(
"poles"), Get(
"nominalEfficiency"), efficiencyClassEnum,
986 GetStr(
"nemaTable"), GetStr(
"enclosureType"), lineFreqEnum, Get(
"voltageLimit"), GetStr(
"catalog"));
987 bool success = sql->insertMotorData(motor);
988 info.GetReturnValue().Set(success);
991 NAN_METHOD(deleteMotor)
993 bool success = sql->deleteMotorData(static_cast<int>(Nan::To<double>(info[0]).FromJust()));
994 info.GetReturnValue().Set(success);
997 NAN_METHOD(updateMotor)
999 inp = Nan::To<Object>(info[0]).ToLocalChecked();
1000 int lineFreq = Get(
"lineFrequency");
1001 Motor::LineFrequency lineFreqEnum;
1004 lineFreqEnum = Motor::LineFrequency::FREQ60;
1006 else if (lineFreq == 50)
1008 lineFreqEnum = Motor::LineFrequency::FREQ50;
1010 int efficiencyClass = Get(
"efficiencyClass");
1011 Motor::EfficiencyClass efficiencyClassEnum;
1012 if (efficiencyClass == 0)
1014 efficiencyClassEnum = Motor::EfficiencyClass::STANDARD;
1016 else if (efficiencyClass == 1)
1018 efficiencyClassEnum = Motor::EfficiencyClass::ENERGY_EFFICIENT;
1020 else if (efficiencyClass == 2)
1022 efficiencyClassEnum = Motor::EfficiencyClass::PREMIUM;
1024 else if (efficiencyClass == 3)
1026 efficiencyClassEnum = Motor::EfficiencyClass::SPECIFIED;
1029 MotorData motor(Get(
"hp"), Get(
"synchronousSpeed"), Get(
"poles"), Get(
"nominalEfficiency"), efficiencyClassEnum,
1030 GetStr(
"nemaTable"), GetStr(
"enclosureType"), lineFreqEnum, Get(
"voltageLimit"), GetStr(
"catalog"));
1031 motor.setId(Get(
"id"));
1032 bool success = sql->insertMotorData(motor);
1033 info.GetReturnValue().Set(success);
1036 NAN_METHOD(selectPumps)
1038 auto const pumps = sql->getPumpData();
1040 auto pumpsNan = Nan::New<v8::Array>();
1041 for (std::size_t i = 0; i < pumps.size(); i++)
1043 Local<Object> pump = Nan::New<Object>();
1044 SetPumpData(pump, pumps[i]);
1045 Nan::Set(pumpsNan, i, pump);
1048 info.GetReturnValue().Set(pumpsNan);
1051 NAN_METHOD(selectPumpById)
1053 Local<Object> pump = Nan::New<Object>();
1057 SetPumpData(pump, sql->getPumpDataById(static_cast<int>(Nan::To<double>(info[0]).FromJust())));
1060 catch (std::runtime_error
const &e)
1062 std::string
const what = e.what();
1063 ThrowError(std::string(
"std::runtime_error thrown in selectPumpById - db.h: " + what).c_str());
1065 info.GetReturnValue().Set(pump);
1068 NAN_METHOD(insertPump)
1071 inp = Nan::To<Object>(info[0]).ToLocalChecked();
1074 GetStr(
"manufacturer"), GetStr(
"model"), GetStr(
"type"), GetStr(
"serialNumber"), GetStr(
"status"),
1075 GetStr(
"pumpType"), GetStr(
"radialBearingType"), GetStr(
"thrustBearingType"), GetStr(
"shaftOrientation"),
1076 GetStr(
"shaftSealType"), GetStr(
"fluidType"), GetStr(
"priority"), GetStr(
"driveType"),
1077 GetStr(
"flangeConnectionClass"), GetStr(
"flangeConnectionSize"), Get(
"numShafts"), Get(
"speed"),
1078 Get(
"numStages"), Get(
"yearlyOperatingHours"), Get(
"yearInstalled"), Get(
"finalMotorRpm"),
1079 Get(
"inletDiameter"), Get(
"weight"), Get(
"outletDiameter"), Get(
"percentageOfSchedule"),
1080 Get(
"dailyPumpCapacity"), Get(
"measuredPumpCapacity"), Get(
"pumpPerformance"), Get(
"staticSuctionHead"),
1081 Get(
"staticDischargeHead"), Get(
"fluidDensity"), Get(
"lengthOfDischargePipe"), Get(
"pipeDesignFrictionLosses"),
1082 Get(
"maxWorkingPressure"), Get(
"maxAmbientTemperature"), Get(
"maxSuctionLift"), Get(
"displacement"),
1083 Get(
"startingTorque"), Get(
"ratedSpeed"), Get(
"shaftDiameter"), Get(
"impellerDiameter"),
1084 Get(
"efficiency"), Get(
"output60Hz"), Get(
"minFlowSize"), Get(
"pumpSize"), Get(
"outOfService"));
1085 bool success = sql->insertPumpData(pump);
1086 info.GetReturnValue().Set(success);
1089 NAN_METHOD(deletePump)
1092 bool success = sql->deletePumpData(static_cast<int>(Nan::To<double>(info[0]).FromJust()));
1093 info.GetReturnValue().Set(success);
1096 NAN_METHOD(updatePump)
1099 inp = Nan::To<Object>(info[0]).ToLocalChecked();
1102 GetStr(
"manufacturer"), GetStr(
"model"), GetStr(
"type"), GetStr(
"serialNumber"), GetStr(
"status"),
1103 GetStr(
"pumpType"), GetStr(
"radialBearingType"), GetStr(
"thrustBearingType"),
1104 GetStr(
"shaftOrientation"), GetStr(
"shaftSealType"), GetStr(
"fluidType"), GetStr(
"priority"),
1105 GetStr(
"driveType"), GetStr(
"flangeConnectionClass"), GetStr(
"flangeConnectionSize"), Get(
"numShafts"),
1106 Get(
"speed"), Get(
"numStages"), Get(
"yearlyOperatingHours"), Get(
"yearInstalled"), Get(
"finalMotorRpm"),
1107 Get(
"inletDiameter"), Get(
"weight"), Get(
"outletDiameter"), Get(
"percentageOfSchedule"), Get(
"dailyPumpCapacity"),
1108 Get(
"measuredPumpCapacity"), Get(
"pumpPerformance"), Get(
"staticSuctionHead"), Get(
"staticDischargeHead"),
1109 Get(
"fluidDensity"), Get(
"lengthOfDischargePipe"), Get(
"pipeDesignFrictionLosses"), Get(
"maxWorkingPressure"),
1110 Get(
"maxAmbientTemperature"), Get(
"maxSuctionLift"), Get(
"displacement"), Get(
"startingTorque"),
1111 Get(
"ratedSpeed"), Get(
"shaftDiameter"), Get(
"impellerDiameter"), Get(
"efficiency"),
1112 Get(
"output60Hz"), Get(
"minFlowSize"), Get(
"pumpSize"), Get(
"outOfService"));
1114 pump.setId(Get(
"id"));
1115 bool success = sql->updatePumpData(pump);
1116 info.GetReturnValue().Set(success);
1119 #endif //AMO_TOOLS_SUITE_DB_H void setSubstance(std::string substance)
void setLatentHeat(const double latentHeat)
std::string getSubstance() const
void setSpecificHeatLiquid(const double specificHeatLiquid)
void setSpecificHeat(const double specificHeat)
void setSpecificHeatSolid(const double specificHeatSolid)
void setSurface(std::string surface)
double getSpecificHeatVapor() const
double getVaporizingTemperature() const
double getLatentHeat() const
void setSpecificHeatVapor(double specificHeatVapor)
void setSubstance(std::string substance)
void setSubstance(std::string const &substance)
std::string getSubstance() const
double getSpecificHeatLiquid() const
void setMeltingPoint(const double meltingPoint)
void setVaporizingTemperature(const double vaporizingTemperature)
void setLatentHeat(const double latentHeat)
void setConditionFactor(const double conditionFactor)
double getSpecificHeatVapor() const
void setSubstance(std::string const &substance)
void setSpecificHeatVapor(const double specificHeatVapor)
void setSpecificHeatLiquid(const double specificHeatLiquid)