| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- using System.Text;
- using StressClient.Common;
- using Vbdsm.Common;
- using Vbdsm.Model;
- namespace Vbdsm.Gen
- {
- public class GenData
- {
- public GenData(string terminalIds, string? companyId)
- {
- TerminalIds = terminalIds;
- CompanyId = companyId;
- }
- public string TerminalIds { get; set; }
- public string? CompanyId { get; set; }
- public string GenTerminals(string? date = null)
- {
- date = date ?? $"{DateTime.Now:yyyyMMddHH}{(DateTime.Now.Minute - DateTime.Now.Minute % 15):D2}00";
- var str = $"st=01;cn={CompanyId};datatime={date};cphh=&&";
- var tidList = TerminalIds.Split(',');
- foreach (var tid in tidList)
- {
- str += GenTerminal(tid) + "$";
- }
- str = str.TrimEnd('$');
- Console.WriteLine($"\t {str}");
- byte[] bytes = StrHexHelper.HexStrToArray(StrHexHelper.StrToHexStr(str, Encoding.Default));
- var result = $"##{str.Length:D6}{str}{StrHexHelper.do_CRC(bytes)}\r\n";
- return result;
- }
- private string GenTerminal(string terminalId)
- {
- string fileName = $"{CompanyId}@{terminalId}";
- TerminalData terminalData = FileHelper.ReadFileInfo<TerminalData>(fileName) ?? new TerminalData(CompanyId, terminalId);
- var str = $"tid={terminalId}";
- var power = new PowerEnergy();
- var dp = Helper.GetRan(22000, 3000, 100);
- var de = Helper.GetRan(6600, 600, 100);
- var pe = terminalData.GetCurMonthTotal_P() == 0 ? 0 : terminalData.GetCurMonthTotal_P() + dp;
- var qe = terminalData.GetCurMonthTotal_E() == 0 ? 0 : terminalData.GetCurMonthTotal_E() + de;
- var ps = terminalData.Total_P + dp;
- var qs = terminalData.Total_E + de;
- power.SetEngine(pe, qe, ps, ps);
- terminalData.SetMouthTotal_P(pe == 0 ? (decimal)0.01 : pe).SetMouthTotal_E(qe == 0 ? (decimal)0.01 : qe).SetTotal_P(ps).SetTotal_E(qs).Save();
- str += "&" + power.GetStr();
- var hia = new Harmonic("a").SetI(power.ia);
- str += "&" + hia.GetStr_I();
- var hib = new Harmonic("b").SetI(power.ib);
- str += "&" + hib.GetStr_I();
- var hic = new Harmonic("c").SetI(power.ic);
- str += "&" + hic.GetStr_I();
- var hua = new Harmonic("a").SetU(power.ua);
- str += "&" + hua.GetStr_U();
- var hub = new Harmonic("b").SetU(power.ub);
- str += "&" + hub.GetStr_U();
- var huc = new Harmonic("c").SetU(power.uc);
- str += "&" + huc.GetStr_U();
- return str;
- }
- }
- }
|