|
|
@@ -101,12 +101,15 @@ namespace MeterSceneLibrary
|
|
|
PbCache.isActual = true;
|
|
|
PbCache.isInnerCar = true;
|
|
|
rt = saveMethod.doAddFirst(null, mwaf);
|
|
|
+ PbCache.voiceType = 1;
|
|
|
PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,计量完成", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2));
|
|
|
}
|
|
|
// 存在一条使用中的委托
|
|
|
else if (listPreScale.Count == 1 && listPreScale[0].valueFlag == "4")
|
|
|
{
|
|
|
rt = saveMethod.doError("不存在一次计量数据却存在一条使用中的委托");
|
|
|
+ PbCache.voiceType = 18;
|
|
|
+ PbCache.LEDResultMessage = "不存在一次计量数据却存在一条使用中的委托";
|
|
|
}
|
|
|
// 只存在一条未使用的委托
|
|
|
else if (listPreScale.Count == 1 && (listPreScale[0].valueFlag == "0" || listPreScale[0].valueFlag == "1"))
|
|
|
@@ -137,6 +140,7 @@ namespace MeterSceneLibrary
|
|
|
// 把委托编号复制给一次计量记录
|
|
|
PbCache.isActual = true;
|
|
|
PbCache.isInnerCar = true;
|
|
|
+ PbCache.voiceType = 1;
|
|
|
rt = saveMethod.doAddFirst(listPreScale[0], mwaf);
|
|
|
PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,计量完成", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2));
|
|
|
}
|
|
|
@@ -150,6 +154,7 @@ namespace MeterSceneLibrary
|
|
|
{
|
|
|
PbCache.isActual = true;
|
|
|
PbCache.isInnerCar = true;
|
|
|
+ PbCache.voiceType = 1;
|
|
|
rt = saveMethod.doAddFirst(null, mwaf);
|
|
|
PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,计量完成", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2));
|
|
|
}
|
|
|
@@ -158,7 +163,7 @@ namespace MeterSceneLibrary
|
|
|
{
|
|
|
/* 委托和当次存在委托满足一车多卸逻辑 && 当次重量值小于上次净重记录中的皮重值
|
|
|
* 一车多卸判断逻辑1
|
|
|
- * 存在判断依据(委托类型为一车多卸,且上次洁净数据中匹配委托类型也是一车多卸)
|
|
|
+ * 存在判断依据(委托类型为一车多卸,且上次结净数据中匹配委托类型也是一车多卸)
|
|
|
*
|
|
|
* 一车多卸判断逻辑2
|
|
|
* 委托不存在判断依据,则根据签发时间排序
|
|
|
@@ -168,7 +173,7 @@ namespace MeterSceneLibrary
|
|
|
|
|
|
bool isHZ = false;
|
|
|
// 签发时间比较
|
|
|
- // 通过上次洁净记录,找到该委托的签发时间
|
|
|
+ // 通过上次结净记录,找到该委托的签发时间
|
|
|
RESTfulResult<List<PreTrackScale>> lastPre = preTrackScaleService.doQueryWf(new PreTrackScale { predictionNo = lastMeterWorkCarActual.predictionNo });
|
|
|
//int min = 999;
|
|
|
|
|
|
@@ -191,10 +196,10 @@ namespace MeterSceneLibrary
|
|
|
// isYCDX = true;
|
|
|
//}
|
|
|
|
|
|
- if (lastPre.Data[0].predictionCombination == listPreScale[0].predictionCombination && lastPre.Data[0].predictionType == "6" && listPreScale[0].predictionType == "6")
|
|
|
- {
|
|
|
- isYCDX = true;
|
|
|
- }
|
|
|
+ //if (lastPre.Data[0].predictionCombination == listPreScale[0].predictionCombination && lastPre.Data[0].predictionType == "6" && listPreScale[0].predictionType == "6")
|
|
|
+ //{
|
|
|
+ // isYCDX = true;
|
|
|
+ //}
|
|
|
|
|
|
if (!string.IsNullOrEmpty(lastPre.Data[0].receiverRemark) && !string.IsNullOrEmpty(listPreScale[0].receiverRemark) && listPreScale[0].tempConveyance == lastPre.Data[0].tempConveyance && !string.IsNullOrEmpty(listPreScale[0].tempConveyance) && !string.IsNullOrEmpty(lastPre.Data[0].tempConveyance))
|
|
|
{
|
|
|
@@ -205,7 +210,7 @@ namespace MeterSceneLibrary
|
|
|
{
|
|
|
/*
|
|
|
* a. 取上次净重记录的皮重为当次毛重
|
|
|
- * b. 洁净匹配委托
|
|
|
+ * b. 结净匹配委托
|
|
|
*/
|
|
|
// 新增一条毛重数据
|
|
|
MeterWorkCarActualFirst tempCarActualFirst = new MeterWorkCarActualFirst();
|
|
|
@@ -243,13 +248,13 @@ namespace MeterSceneLibrary
|
|
|
// 将当次一次计量数据重量类型改为皮重
|
|
|
mwaf.weightType = "1"; // 常规皮重
|
|
|
mwaf.isPreScale = "1";
|
|
|
- // 混装卸逻辑,并洁净匹配委托
|
|
|
+ // 混装卸逻辑,并结净匹配委托
|
|
|
rt = saveMethod.doNetHZHX(listPreScale[0], tempCarActualFirst, mwaf);
|
|
|
}
|
|
|
|
|
|
/* 匹配委托和当次委托满足混装逻辑 && 当次重量大于上次净重记录中的毛重值
|
|
|
* 混装判断逻辑1
|
|
|
- * 存在判断依据(委托类型为混装,且上次洁净数据中匹配委托类型也是混装)
|
|
|
+ * 存在判断依据(委托类型为混装,且上次结净数据中匹配委托类型也是混装)
|
|
|
*
|
|
|
* 混装判断逻辑2
|
|
|
* 两次委托发货单位一致,净重时间在4个小时之内
|
|
|
@@ -258,7 +263,7 @@ namespace MeterSceneLibrary
|
|
|
|
|
|
|
|
|
// 签发时间比较
|
|
|
- // 通过上次洁净记录,找到该委托的签发时间
|
|
|
+ // 通过上次结净记录,找到该委托的签发时间
|
|
|
//int hour = 999;
|
|
|
|
|
|
//if (lastPre.Succeed && lastPre.Data.Count == 1)
|
|
|
@@ -286,7 +291,7 @@ namespace MeterSceneLibrary
|
|
|
{
|
|
|
/*
|
|
|
* a. 取上次净重记录中的毛重值为当次皮重
|
|
|
- * b. 洁净匹配委托
|
|
|
+ * b. 结净匹配委托
|
|
|
*/
|
|
|
// 新增一条皮重数据
|
|
|
MeterWorkCarActualFirst newActualFirst = new MeterWorkCarActualFirst();
|
|
|
@@ -327,9 +332,11 @@ namespace MeterSceneLibrary
|
|
|
// 将当次一次计量数据重量类型改为毛重
|
|
|
mwaf.weightType = "0"; // 毛重
|
|
|
mwaf.isPreScale = "1";
|
|
|
- // 混装逻辑,并洁净匹配委托
|
|
|
+ // 混装逻辑,并结净匹配委托
|
|
|
rt = saveMethod.doAddNetNewHZHX(listPreScale[0], newActualFirst, mwaf);
|
|
|
- rt.resultInfo += ",混装业务";
|
|
|
+ rt.resultInfo += ",混装业务";
|
|
|
+ PbCache.voiceType = 1;
|
|
|
+ PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,净重{2}吨,计量完成混装业务", PbCache.lockCarNo, Math.Round(PbCache.lockWgt / 1000, 2), Math.Round((PbCache.lockWgt - double.Parse(lastMeterWorkCarActual.grossWeight.ToString()) / 1000), 2));
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
@@ -337,12 +344,13 @@ namespace MeterSceneLibrary
|
|
|
mwaf = entityBase2.format<MeterWorkCarActualFirst>(listPreScale[0], mwaf);
|
|
|
PbCache.isActual = true;
|
|
|
PbCache.isInnerCar = true;
|
|
|
+ PbCache.voiceType = 1;
|
|
|
rt = saveMethod.doAddFirst(listPreScale[0], mwaf);
|
|
|
PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,计量完成", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2));
|
|
|
}
|
|
|
|
|
|
}
|
|
|
- // 存在洁净记录,不满足以上逻辑
|
|
|
+ // 存在结净记录,不满足以上逻辑
|
|
|
else {
|
|
|
/*
|
|
|
* a. 正常保存重量(重量类型为空)
|
|
|
@@ -355,6 +363,7 @@ namespace MeterSceneLibrary
|
|
|
mwaf = entityBase.format<MeterWorkCarActualFirst>(listPreScale[0], mwaf);
|
|
|
PbCache.isActual = true;
|
|
|
PbCache.isInnerCar = true;
|
|
|
+ PbCache.voiceType = 1;
|
|
|
rt = saveMethod.doAddFirst(listPreScale[0], mwaf);
|
|
|
PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,计量完成", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2));
|
|
|
}
|
|
|
@@ -369,6 +378,7 @@ namespace MeterSceneLibrary
|
|
|
else if (listPreScale.Count == 2 && listPreScale[0].valueFlag == "4" && listPreScale[1].valueFlag == "4")
|
|
|
{
|
|
|
rt = saveMethod.doAddFirst(null, mwaf);
|
|
|
+ PbCache.voiceType = 1;
|
|
|
PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,计量完成", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2));
|
|
|
}
|
|
|
// 存在多条委托
|
|
|
@@ -406,6 +416,8 @@ namespace MeterSceneLibrary
|
|
|
if (flag)
|
|
|
{
|
|
|
pre = listPreScale[0];
|
|
|
+ PbCache.voiceType = 1;
|
|
|
+ PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,计量完成", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2));
|
|
|
}
|
|
|
if (listPreScale.Count == 2 && listPreScale[0].valueFlag == "1" && listPreScale[1].valueFlag == "1" && listPreScale[0].predictionType == "6" && listPreScale[1].predictionType == "6")
|
|
|
{
|
|
|
@@ -421,20 +433,23 @@ namespace MeterSceneLibrary
|
|
|
}
|
|
|
if (listPreScale.Count == 2 && listPreScale[0].matterNo == listPreScale[1].matterNo && (listPreScale[0].receivingUintNo == listPreScale[1].forwardingUnitNo || listPreScale[0].forwardingUnitNo == listPreScale[1].receivingUintNo))
|
|
|
{
|
|
|
- // 正常洁净并生成两条净重数据
|
|
|
+ // 正常结净并生成两条净重数据
|
|
|
pre = listPreScale[1];
|
|
|
res = ",双委托业务";
|
|
|
+ PbCache.voiceType = 1;
|
|
|
PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,计量完成,双委托业务", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2));
|
|
|
}
|
|
|
if (listPreScale.Count == 2 && !string.IsNullOrEmpty(listPreScale[0].receiverRemark) && !string.IsNullOrEmpty(listPreScale[1].receiverRemark) && listPreScale[0].tempConveyance == listPreScale[1].tempConveyance && !string.IsNullOrEmpty(listPreScale[0].tempConveyance) && !string.IsNullOrEmpty(listPreScale[1].tempConveyance))
|
|
|
{
|
|
|
pre = listPreScale[1];
|
|
|
res = ",混装业务";
|
|
|
+ PbCache.voiceType = 1;
|
|
|
PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,计量完成,混装", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2));
|
|
|
}
|
|
|
if (pre == null)
|
|
|
{
|
|
|
res = ",存在多个委托,无法自动匹配";
|
|
|
+ PbCache.voiceType = 8;
|
|
|
PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,计量完成,多委托无法自动匹配请联系", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2));
|
|
|
PbCache.monitorResultMessage = string.Format("计量完成,车号{0}存在{1}个委托,无法自动匹配", PbCache.lockCarNo, listPreScale.Count);
|
|
|
}
|
|
|
@@ -470,7 +485,7 @@ namespace MeterSceneLibrary
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- // 校验上次计量数据和当次计量数据是否满足基础配置表中的洁净最小值条件
|
|
|
+ // 校验上次计量数据和当次计量数据是否满足基础配置表中的结净最小值条件
|
|
|
if (Math.Abs(rmX.Data[0].meterWeight.Value - PbCache.lockWgt) > diffrentWgt || listMonitor.Data[0].validPredictionDiff == "0")
|
|
|
{
|
|
|
if (rmPre.Succeed)
|
|
|
@@ -482,15 +497,16 @@ namespace MeterSceneLibrary
|
|
|
if (listPreScale == null || listPreScale.Count == 0)
|
|
|
{
|
|
|
/*
|
|
|
- * a. 正常产生洁净数据(状态为未发布)
|
|
|
+ * a. 正常产生结净数据(状态为未发布)
|
|
|
* b. 提示司机当前计量数据未匹配委托,请联系计量打印进行处理
|
|
|
*/
|
|
|
rt = saveMethod.doNet(null, rmX.Data[0], mwaf);
|
|
|
rt.isWarn = true;
|
|
|
rt.WarnContent = "validIsPre";
|
|
|
- rt.resultInfo += ",无委托洁净";
|
|
|
- PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,净重{2}吨,计量完成无委托洁净请联系", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2), Math.Round((Math.Abs(rmX.Data[0].meterWeight.Value - PbCache.lockWgt) / 1000), 2));
|
|
|
- PbCache.monitorResultMessage = string.Format("计量完成,车号{0}无委托洁净", PbCache.lockCarNo, listPreScale.Count);
|
|
|
+ rt.resultInfo += ",无委托结净";
|
|
|
+ PbCache.voiceType = 1;
|
|
|
+ PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,净重{2}吨,计量完成无委托结净", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2), Math.Round((Math.Abs(rmX.Data[0].meterWeight.Value - PbCache.lockWgt) / 1000), 2));
|
|
|
+ PbCache.monitorResultMessage = string.Format("计量完成,车号{0}无委托结净", PbCache.lockCarNo, listPreScale.Count);
|
|
|
|
|
|
}
|
|
|
// 只存在一条使用中的委托
|
|
|
@@ -501,7 +517,9 @@ namespace MeterSceneLibrary
|
|
|
* b. 提示司机存在一条使用中的委托,请联系计量大厅进行确认
|
|
|
* c. 自动进行语音求助
|
|
|
*/
|
|
|
+ PbCache.voiceType = 18;
|
|
|
rt = saveMethod.doError("存在一条使用中的委托,请联系计量大厅进行确认");
|
|
|
+ PbCache.LEDResultMessage = "存在一条使用中的委托,请联系计量大厅进行确认";
|
|
|
}
|
|
|
// 只存在一条未使用的委托数据
|
|
|
else if (listPreScale.Count == 1 && listPreScale[0].valueFlag == "1")
|
|
|
@@ -513,7 +531,7 @@ namespace MeterSceneLibrary
|
|
|
EntityBase<PreTrackScale> entityBase = new EntityBase<PreTrackScale>();
|
|
|
mwaf = entityBase.format<MeterWorkCarActualFirst>(listPreScale[0], mwaf);
|
|
|
mwaf.isPreScale = "1";
|
|
|
-
|
|
|
+ PbCache.voiceType = 1;
|
|
|
rt = saveMethod.doNet(listPreScale[0], rmX.Data[0], mwaf);
|
|
|
PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,净重{2}吨,计量完成", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2), Math.Round((Math.Abs(rmX.Data[0].meterWeight.Value - PbCache.lockWgt) / 1000), 2));
|
|
|
}
|
|
|
@@ -527,13 +545,17 @@ namespace MeterSceneLibrary
|
|
|
*/
|
|
|
if (listPreScale[0].predictionType == "5" && listPreScale[1].predictionType == "5" && listPreScale[0].predictionCombination == listPreScale[1].predictionCombination)
|
|
|
{
|
|
|
- // 正常洁净并生成两条净重数据
|
|
|
+ // 正常结净并生成两条净重数据
|
|
|
rt = saveMethod.doNetAddTwo(listPreScale, rmX.Data[0], mwaf);
|
|
|
+ PbCache.voiceType = 1;
|
|
|
+ PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,净重{2}吨,计量完成双委托结净", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2), Math.Round((Math.Abs(rmX.Data[0].meterWeight.Value - PbCache.lockWgt) / 1000), 2));
|
|
|
}
|
|
|
else if (listPreScale[0].matterNo == listPreScale[1].matterNo && (listPreScale[0].receivingUintNo == listPreScale[1].forwardingUnitNo || listPreScale[0].forwardingUnitNo == listPreScale[1].receivingUintNo))
|
|
|
{
|
|
|
- // 正常洁净并生成两条净重数据
|
|
|
+ // 正常结净并生成两条净重数据
|
|
|
rt = saveMethod.doNetAddTwo(listPreScale, rmX.Data[0], mwaf);
|
|
|
+ PbCache.voiceType = 1;
|
|
|
+ PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,净重{2}吨,计量完成双委托结净", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2), Math.Round((Math.Abs(rmX.Data[0].meterWeight.Value - PbCache.lockWgt) / 1000), 2));
|
|
|
}
|
|
|
/*
|
|
|
* 委托关系满足混装逻辑
|
|
|
@@ -541,7 +563,7 @@ namespace MeterSceneLibrary
|
|
|
else if (listPreScale.Count == 2 && !string.IsNullOrEmpty(listPreScale[0].receiverRemark) && !string.IsNullOrEmpty(listPreScale[1].receiverRemark) && listPreScale[0].tempConveyance == listPreScale[1].tempConveyance && !string.IsNullOrEmpty(listPreScale[0].tempConveyance) && !string.IsNullOrEmpty(listPreScale[1].tempConveyance))
|
|
|
{
|
|
|
/*
|
|
|
- * a. 正常洁净产生一条净重记录
|
|
|
+ * a. 正常结净产生一条净重记录
|
|
|
* b. 自动生成一条一次毛重计量数据,重量值值为当次计量数据中的毛重
|
|
|
*/
|
|
|
MeterWorkCarActualFirst mwca = new MeterWorkCarActualFirst();
|
|
|
@@ -554,16 +576,16 @@ namespace MeterSceneLibrary
|
|
|
//EntityBase<PreTrackScale> entityBase1 = new EntityBase<PreTrackScale>();
|
|
|
//mwaf = entityBase1.format<MeterWorkCarActualFirst>(listPreScale[0], mwaf);
|
|
|
//mwaf.isPreScale = "1";
|
|
|
-
|
|
|
+ PbCache.voiceType = 1;
|
|
|
rt = saveMethod.doNetHZHX(listPreScale[1], mwca, mwaf);
|
|
|
- PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,净重{2}吨,计量完成", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2), Math.Round((Math.Abs(rmX.Data[0].meterWeight.Value - PbCache.lockWgt) / 1000), 2));
|
|
|
+ PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,净重{2}吨,计量完成混装业务", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2), Math.Round((Math.Abs(rmX.Data[0].meterWeight.Value - PbCache.lockWgt) / 1000), 2));
|
|
|
rt.resultInfo += ",混装业务";
|
|
|
}
|
|
|
// 不满足以上逻辑
|
|
|
else
|
|
|
{
|
|
|
/*
|
|
|
- * a. 正常洁净产生一条净重记录(状态为未发布)
|
|
|
+ * a. 正常结净产生一条净重记录(状态为未发布)
|
|
|
* b. 提示司机当前存计量数据未匹配委托
|
|
|
* c. 进行大厅报警,请联系计量大厅进行处理
|
|
|
* d. 自动进行语音求助(但是原有的语音求助逻辑是重量归零相应秤点的求助信息也会清空)
|
|
|
@@ -572,7 +594,8 @@ namespace MeterSceneLibrary
|
|
|
rt.isWarn = true;
|
|
|
rt.WarnContent = "validIsPre";
|
|
|
rt.resultInfo += ",存在多个委托,无法自动匹配";
|
|
|
- PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,计量完成,多委托无法自动匹配请联系", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2));
|
|
|
+ PbCache.voiceType = 8;
|
|
|
+ PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,净重{2}吨,多委托请联系大厅", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2), Math.Round((Math.Abs(rmX.Data[0].meterWeight.Value - PbCache.lockWgt) / 1000), 2));
|
|
|
PbCache.monitorResultMessage = string.Format("计量完成,车号{0}存在{1}个委托,无法自动匹配", PbCache.lockCarNo, listPreScale.Count);
|
|
|
}
|
|
|
}
|
|
|
@@ -585,7 +608,7 @@ namespace MeterSceneLibrary
|
|
|
// */
|
|
|
//if (1 == 1)
|
|
|
//{
|
|
|
- // // 正常洁净并生成两条净重数据
|
|
|
+ // // 正常结净并生成两条净重数据
|
|
|
// rt = saveMethod.doNetAddTwo(listPreScale, rmX.Data[0], mwaf);
|
|
|
//}
|
|
|
///*
|
|
|
@@ -595,20 +618,20 @@ namespace MeterSceneLibrary
|
|
|
//else if (2 == 2)
|
|
|
//{
|
|
|
// /*
|
|
|
- // * a. 正常洁净产生一条净重记录
|
|
|
+ // * a. 正常结净产生一条净重记录
|
|
|
// * b. 自动生成一条一次毛重计量数据,重量值值为当次计量数据中的毛重
|
|
|
// */
|
|
|
|
|
|
// // 将当次一次计量数据重量类型改为毛重
|
|
|
// mwaf.weightType = "0"; // 毛重
|
|
|
- // // 洁净匹配委托
|
|
|
+ // // 结净匹配委托
|
|
|
// rt = saveMethod.doNetMass(scale, mwaf);
|
|
|
//}
|
|
|
//// 不满足以上逻辑
|
|
|
//else
|
|
|
//{
|
|
|
// /*
|
|
|
- // * a. 正常洁净产生一条净重记录(状态为未发布)
|
|
|
+ // * a. 正常结净产生一条净重记录(状态为未发布)
|
|
|
// * b. 提示司机当前计量数据未匹配委托,请联系计量大厅进行委托匹配
|
|
|
// * c. 自动进行语音求助(但是原有的语音求助逻辑是重量归零相应秤点的求助信息也会清空)
|
|
|
// */
|
|
|
@@ -645,13 +668,16 @@ namespace MeterSceneLibrary
|
|
|
EntityBase<PreTrackScale> entityBase = new EntityBase<PreTrackScale>();
|
|
|
mwaf = entityBase.format<MeterWorkCarActualFirst>(pre, mwaf);
|
|
|
mwaf.isPreScale = "1";
|
|
|
+ PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,净重{2}吨,计量完成", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2), Math.Round((Math.Abs(rmX.Data[0].meterWeight.Value - PbCache.lockWgt) / 1000), 2));
|
|
|
}
|
|
|
+ PbCache.voiceType = 1;
|
|
|
rt = saveMethod.doNet(pre, rmX.Data[0], mwaf);
|
|
|
rt.isWarn = true;
|
|
|
rt.WarnContent = "validIsPre";
|
|
|
if (pre == null)
|
|
|
{
|
|
|
- PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,计量完成,多委托无法自动匹配请联系", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2));
|
|
|
+ PbCache.voiceType = 8;
|
|
|
+ PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,净重{2}吨,多委托请联系大厅", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2), Math.Round((Math.Abs(rmX.Data[0].meterWeight.Value - PbCache.lockWgt) / 1000), 2));
|
|
|
PbCache.monitorResultMessage = string.Format("计量完成,车号{0}存在{1}个委托,无法自动匹配", PbCache.lockCarNo, listPreScale.Count);
|
|
|
rt.resultInfo += ",存在多个委托,无法自动匹配";
|
|
|
}
|
|
|
@@ -682,7 +708,7 @@ namespace MeterSceneLibrary
|
|
|
EntityBase<PreTrackScale> entityBase = new EntityBase<PreTrackScale>();
|
|
|
mwaf = entityBase.format<MeterWorkCarActualFirst>(pts, mwaf);
|
|
|
mwaf.isPreScale = "1";
|
|
|
-
|
|
|
+ PbCache.voiceType = 1;
|
|
|
rt = saveMethod.doNet(pts, oldCarActural, mwaf);
|
|
|
PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,净重{2}吨,计量完成", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2), Math.Round((Math.Abs(rmX.Data[0].meterWeight.Value - PbCache.lockWgt) / 1000), 2));
|
|
|
|
|
|
@@ -699,13 +725,17 @@ namespace MeterSceneLibrary
|
|
|
*/
|
|
|
if (listPreScale[0].predictionType == "5" && listPreScale[1].predictionType == "5" && listPreScale[0].predictionCombination == listPreScale[1].predictionCombination)
|
|
|
{
|
|
|
- // 正常洁净并生成两条净重数据
|
|
|
+ // 正常结净并生成两条净重数据
|
|
|
rt = saveMethod.doNetAddTwo(listPreScale, rmX.Data[0], mwaf);
|
|
|
+ PbCache.voiceType = 1;
|
|
|
+ PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,净重{2}吨,计量完成双委托结净", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2), Math.Round((Math.Abs(rmX.Data[0].meterWeight.Value - PbCache.lockWgt) / 1000), 2));
|
|
|
}
|
|
|
else if (listPreScale[0].matterNo == listPreScale[1].matterNo && (listPreScale[0].receivingUintNo == listPreScale[1].forwardingUnitNo || listPreScale[0].forwardingUnitNo == listPreScale[1].receivingUintNo))
|
|
|
{
|
|
|
- // 正常洁净并生成两条净重数据
|
|
|
+ // 正常结净并生成两条净重数据
|
|
|
rt = saveMethod.doNetAddTwo(listPreScale, rmX.Data[0], mwaf);
|
|
|
+ PbCache.voiceType = 1;
|
|
|
+ PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,净重{2}吨,计量完成双委托结净", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2), Math.Round((Math.Abs(rmX.Data[0].meterWeight.Value - PbCache.lockWgt) / 1000), 2));
|
|
|
}
|
|
|
/*
|
|
|
* 委托关系满足混装混卸逻辑
|
|
|
@@ -713,7 +743,7 @@ namespace MeterSceneLibrary
|
|
|
else if (listPreScale.Count == 2 && !string.IsNullOrEmpty(listPreScale[0].receiverRemark) && !string.IsNullOrEmpty(listPreScale[1].receiverRemark) && listPreScale[0].tempConveyance == listPreScale[1].tempConveyance && !string.IsNullOrEmpty(listPreScale[0].tempConveyance) && !string.IsNullOrEmpty(listPreScale[1].tempConveyance))
|
|
|
{
|
|
|
/*
|
|
|
- * a. 正常洁净产生一条净重记录
|
|
|
+ * a. 正常结净产生一条净重记录
|
|
|
* b. 自动生成一条一次毛重计量数据,重量值值为当次计量数据中的毛重
|
|
|
*/
|
|
|
MeterWorkCarActualFirst mwca = new MeterWorkCarActualFirst();
|
|
|
@@ -739,13 +769,14 @@ namespace MeterSceneLibrary
|
|
|
|
|
|
rt = saveMethod.doNetHZHX(pts, mwca, mwaf);
|
|
|
rt.resultInfo += ",混装业务";
|
|
|
- PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,净重{2}吨,计量完成", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2), Math.Round((Math.Abs(rmX.Data[0].meterWeight.Value - PbCache.lockWgt) / 1000), 2));
|
|
|
+ PbCache.voiceType = 1;
|
|
|
+ PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,净重{2}吨,计量完成混装业务", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2), Math.Round((Math.Abs(rmX.Data[0].meterWeight.Value - PbCache.lockWgt) / 1000), 2));
|
|
|
}
|
|
|
// 不满足以上逻辑
|
|
|
else
|
|
|
{
|
|
|
/*
|
|
|
- * a. 正常洁净产生一条净重记录(状态为未发布)
|
|
|
+ * a. 正常结净产生一条净重记录(状态为未发布)
|
|
|
* b. 提示司机当前存计量数据未匹配委托
|
|
|
* c. 进行大厅报警,请联系计量大厅进行处理
|
|
|
* d. 自动进行语音求助(但是原有的语音求助逻辑是重量归零相应秤点的求助信息也会清空)
|
|
|
@@ -777,13 +808,13 @@ namespace MeterSceneLibrary
|
|
|
EntityBase<PreTrackScale> entityBase = new EntityBase<PreTrackScale>();
|
|
|
mwaf = entityBase.format<MeterWorkCarActualFirst>(pts, mwaf);
|
|
|
mwaf.isPreScale = "1";
|
|
|
-
|
|
|
+ PbCache.voiceType = 1;
|
|
|
rt = saveMethod.doNet(pts, oldCarActural, mwaf);
|
|
|
PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,净重{2}吨,计量完成", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2), Math.Round((Math.Abs(rmX.Data[0].meterWeight.Value - PbCache.lockWgt) / 1000), 2));
|
|
|
- PbCache.monitorResultMessage = string.Format("计量完成,在洁净时仍然存在{1}个委托)", PbCache.lockCarNo, listPreScale.Count-1);
|
|
|
+ PbCache.monitorResultMessage = string.Format("计量完成,在结净时仍然存在{1}个委托)", PbCache.lockCarNo, listPreScale.Count-1);
|
|
|
|
|
|
rt.result = true;
|
|
|
- rt.resultInfo = "称重完成";
|
|
|
+ rt.resultInfo = "计量完成";
|
|
|
}
|
|
|
}
|
|
|
else if (listPreScale.Count == 2 && listPreScale[0].valueFlag == "4" && listPreScale[1].valueFlag == "4")
|
|
|
@@ -791,8 +822,9 @@ namespace MeterSceneLibrary
|
|
|
rt = saveMethod.doNet(null, rmX.Data[0], mwaf);
|
|
|
rt.isWarn = true;
|
|
|
rt.WarnContent = "validIsPre";
|
|
|
+ PbCache.voiceType = 8;
|
|
|
rt.resultInfo += ",存在多个委托,无法自动匹配";
|
|
|
- PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,计量完成,多委托无法自动匹配请联系", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2));
|
|
|
+ PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,净重{2}吨,多委托请联系大厅", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2), Math.Round((Math.Abs(rmX.Data[0].meterWeight.Value - PbCache.lockWgt) / 1000), 2));
|
|
|
PbCache.monitorResultMessage = string.Format("计量完成,车号{0}存在{1}个委托,无法自动匹配", PbCache.lockCarNo, listPreScale.Count);
|
|
|
}
|
|
|
// 存在多条未使用的委托数据
|
|
|
@@ -817,13 +849,14 @@ namespace MeterSceneLibrary
|
|
|
{
|
|
|
rt.isWarn = true;
|
|
|
rt.WarnContent = "validIsPre";
|
|
|
+ PbCache.voiceType = 8;
|
|
|
rt.resultInfo += ",存在多个委托,无法自动匹配";
|
|
|
- PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,计量完成,多委托无法自动匹配请联系", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2));
|
|
|
+ PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,净重{2}吨,多委托请联系大厅", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2), Math.Round((Math.Abs(rmX.Data[0].meterWeight.Value - PbCache.lockWgt) / 1000), 2));
|
|
|
PbCache.monitorResultMessage = string.Format("计量完成,车号{0}存在{1}个委托,无法自动匹配", PbCache.lockCarNo, listPreScale.Count);
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,计量完成", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2));
|
|
|
+ PbCache.LEDResultMessage = string.Format("车号{0},重量{1}吨,净重{2}吨,计量完成", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2), Math.Round((Math.Abs(rmX.Data[0].meterWeight.Value - PbCache.lockWgt) / 1000), 2));
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
@@ -835,6 +868,8 @@ namespace MeterSceneLibrary
|
|
|
rt = saveMethod.doError("第一次计量重量【" + rmX.Data[0].meterWeight.Value / 1000 + "T】和第二次计量重量【" + PbCache.lockWgt / 1000 + "T】接近,小于结净最小值【" + diffrentWgt / 1000 + " T】");
|
|
|
rt.isWarn = true;
|
|
|
rt.WarnContent = "validWgt";
|
|
|
+ PbCache.voiceType = 4;
|
|
|
+ PbCache.LEDResultMessage = "计量失败,小于结净最小值,请联系计量大厅";
|
|
|
}
|
|
|
}
|
|
|
else
|
|
|
@@ -843,6 +878,8 @@ namespace MeterSceneLibrary
|
|
|
PbCache.isInnerCar = true;
|
|
|
rt = saveMethod.doAddFirst(listPreScale[0], mwaf);
|
|
|
rt.resultInfo = "存在多条一次计量数据";
|
|
|
+ PbCache.voiceType = 3;
|
|
|
+ PbCache.LEDResultMessage = "存在多条一次计量数据";
|
|
|
rt.isWarn = true;
|
|
|
rt.WarnContent = "validWgt";
|
|
|
}
|
|
|
@@ -853,7 +890,7 @@ namespace MeterSceneLibrary
|
|
|
}
|
|
|
|
|
|
return rt;
|
|
|
- }
|
|
|
+ }
|
|
|
|
|
|
|
|
|
}
|