|
|
@@ -31,6 +31,9 @@ namespace MeterSceneLibrary
|
|
|
// 根据称点查询监控信息
|
|
|
private RESTfulResult<List<MeterWorkMonitor>> listMonitor;
|
|
|
|
|
|
+ // 查询上一次结净数据
|
|
|
+ private MeterWorkCarActualService meterWorkCarActualService = new MeterWorkCarActualService();
|
|
|
+
|
|
|
private JISCO.SaveMethod saveMethod = new JISCO.SaveMethod();
|
|
|
|
|
|
public rtInfo MeterMethod(PreTrackScale scale)
|
|
|
@@ -41,10 +44,31 @@ namespace MeterSceneLibrary
|
|
|
string ResultMessage = "";
|
|
|
bool isError = false;
|
|
|
|
|
|
+ #region 数据查询
|
|
|
//根据称点查询监控信息
|
|
|
MeterWorkMonitorService meterWorkMonitorService = new MeterWorkMonitorService();
|
|
|
listMonitor = meterWorkMonitorService.doQueryOneWf(new MeterWorkMonitor { pointNo = PbCache.sportInfo.baseSpotNo });
|
|
|
|
|
|
+ // VALUE_FLAG 状态(0=作废,1=有效(已匹配),2=结净,3=未匹配)
|
|
|
+ // 根据车号查询最近的一次计量数据
|
|
|
+ RESTfulResult<List<MeterWorkCarActualFirst>> rmX = mwcfs.doQueryByFlag(new MeterWorkCarActualFirst { carNo = PbCache.lockCarNo });
|
|
|
+
|
|
|
+ // 根据车号查询委托表中未使用和使用中的委托
|
|
|
+ // 状态(0:未配车;1:未使用;2:已使用;3:已作废;4:正使用)
|
|
|
+ RESTfulResult<List<PreTrackScale>> rmPre = preTrackScaleService.doQueryByFlag(new PreTrackScale { carNo = PbCache.lockCarNo });
|
|
|
+
|
|
|
+
|
|
|
+ //计量实绩
|
|
|
+ MeterWorkCarActual mwca = new MeterWorkCarActual();
|
|
|
+ mwca.carNo = PbCache.lockCarNo;
|
|
|
+ RESTfulResult<List<MeterWorkCarActual>> rm = meterWorkCarActualService.doQueryActaulWf(mwca);
|
|
|
+
|
|
|
+ // 签发时间比较
|
|
|
+ // 通过上次结净记录,找到该委托的签发时间
|
|
|
+ MeterWorkCarActual lastMeterWorkCarActual = rm.Data[0];
|
|
|
+ RESTfulResult<List<PreTrackScale>> lastPre = preTrackScaleService.doQueryWf(new PreTrackScale { predictionNo = lastMeterWorkCarActual.predictionNo });
|
|
|
+ #endregion
|
|
|
+
|
|
|
mwaf.carNo = PbCache.lockCarNo;
|
|
|
mwaf.weightType = ""; // 默认重量类型为空
|
|
|
mwaf.actualFirstNo = DateTime.Now.ToString("yyyyMMdd");//10
|
|
|
@@ -76,16 +100,10 @@ namespace MeterSceneLibrary
|
|
|
PbCache.yardActual = null;
|
|
|
PbCache.yardFirst = null;
|
|
|
|
|
|
- // VALUE_FLAG 状态(0=作废,1=有效(已匹配),2=结净,3=未匹配)
|
|
|
- // 根据车号查询最近的一次计量数据
|
|
|
- RESTfulResult<List<MeterWorkCarActualFirst>> rmX = mwcfs.doQueryByFlag(new MeterWorkCarActualFirst { carNo = PbCache.lockCarNo });
|
|
|
if (rmX.Succeed)
|
|
|
{
|
|
|
List<MeterWorkCarActualFirst> list = rmX.Data;
|
|
|
|
|
|
- // 根据车号查询委托表中未使用和使用中的委托
|
|
|
- // 状态(0:未配车;1:未使用;2:已使用;3:已作废;4:正使用)
|
|
|
- RESTfulResult<List<PreTrackScale>> rmPre = preTrackScaleService.doQueryByFlag(new PreTrackScale { carNo = PbCache.lockCarNo });
|
|
|
listPreScale = rmPre.Data;
|
|
|
|
|
|
// 不存在一次计量数据
|
|
|
@@ -126,13 +144,7 @@ namespace MeterSceneLibrary
|
|
|
//EntityBase<PreTrackScale> entityBase = new EntityBase<PreTrackScale>();
|
|
|
//mwaf = entityBase.format<MeterWorkCarActualFirst>(scale, mwaf);
|
|
|
|
|
|
- // 查询上一次结净数据
|
|
|
- MeterWorkCarActualService meterWorkCarActualService = new MeterWorkCarActualService();
|
|
|
- //计量实绩
|
|
|
- MeterWorkCarActual mwca = new MeterWorkCarActual();
|
|
|
- mwca.carNo = PbCache.lockCarNo;
|
|
|
-
|
|
|
- RESTfulResult<List<MeterWorkCarActual>> rm = meterWorkCarActualService.doQueryActaulWf(mwca);
|
|
|
+
|
|
|
|
|
|
if (rm.Succeed)
|
|
|
{
|
|
|
@@ -154,7 +166,7 @@ namespace MeterSceneLibrary
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- MeterWorkCarActual lastMeterWorkCarActual = rm.Data[0];
|
|
|
+
|
|
|
|
|
|
|
|
|
// 上次净重记录未匹配委托
|
|
|
@@ -180,9 +192,7 @@ namespace MeterSceneLibrary
|
|
|
bool isYCDX = false;
|
|
|
|
|
|
bool isHZ = false;
|
|
|
- // 签发时间比较
|
|
|
- // 通过上次结净记录,找到该委托的签发时间
|
|
|
- RESTfulResult<List<PreTrackScale>> lastPre = preTrackScaleService.doQueryWf(new PreTrackScale { predictionNo = lastMeterWorkCarActual.predictionNo });
|
|
|
+
|
|
|
//int min = 999;
|
|
|
|
|
|
//if (lastPre.Succeed && lastPre.Data.Count == 1)
|
|
|
@@ -425,12 +435,6 @@ namespace MeterSceneLibrary
|
|
|
else if (listPreScale.Count > 1)
|
|
|
{
|
|
|
bool isHZ = false;
|
|
|
- MeterWorkCarActualService meterWorkCarActualService = new MeterWorkCarActualService();
|
|
|
- //计量实绩
|
|
|
- MeterWorkCarActual mwca = new MeterWorkCarActual();
|
|
|
- mwca.carNo = PbCache.lockCarNo;
|
|
|
-
|
|
|
- RESTfulResult<List<MeterWorkCarActual>> rm = meterWorkCarActualService.doQueryActaulWf(mwca);
|
|
|
|
|
|
if (rm.Succeed)
|
|
|
{
|
|
|
@@ -650,19 +654,19 @@ namespace MeterSceneLibrary
|
|
|
}
|
|
|
|
|
|
|
|
|
- MeterWorkCarActualFirst mwca = new MeterWorkCarActualFirst();
|
|
|
- mwca = rmX.Data[0];
|
|
|
- mwca.isPreScale = "1";
|
|
|
+ MeterWorkCarActualFirst mwca2 = new MeterWorkCarActualFirst();
|
|
|
+ mwca2 = rmX.Data[0];
|
|
|
+ mwca2.isPreScale = "1";
|
|
|
|
|
|
EntityBase<PreTrackScale> entityBase = new EntityBase<PreTrackScale>();
|
|
|
- mwca = entityBase.format<MeterWorkCarActualFirst>(ptss, mwca);
|
|
|
+ mwca2 = entityBase.format<MeterWorkCarActualFirst>(ptss, mwca2);
|
|
|
|
|
|
//EntityBase<PreTrackScale> entityBase1 = new EntityBase<PreTrackScale>();
|
|
|
//mwaf = entityBase1.format<MeterWorkCarActualFirst>(listPreScale[0], mwaf);
|
|
|
//mwaf.isPreScale = "1";
|
|
|
|
|
|
PbCache.voiceType = 1;
|
|
|
- rt = saveMethod.doNetHZHX(ptss, mwca, mwaf);
|
|
|
+ rt = saveMethod.doNetHZHX(ptss, mwca2, mwaf);
|
|
|
PbCache.LEDResultMessage = string.Format("车号{0},2次重量{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 += ",混装业务";
|
|
|
}
|
|
|
@@ -843,9 +847,9 @@ namespace MeterSceneLibrary
|
|
|
* a. 正常结净产生一条净重记录
|
|
|
* b. 自动生成一条一次毛重计量数据,重量值值为当次计量数据中的毛重
|
|
|
*/
|
|
|
- MeterWorkCarActualFirst mwca = new MeterWorkCarActualFirst();
|
|
|
- mwca = rmX.Data[0];
|
|
|
- mwca.isPreScale = "1";
|
|
|
+ MeterWorkCarActualFirst mwca3 = new MeterWorkCarActualFirst();
|
|
|
+ mwca3 = rmX.Data[0];
|
|
|
+ mwca3.isPreScale = "1";
|
|
|
|
|
|
PreTrackScale pts = null;
|
|
|
|
|
|
@@ -858,13 +862,13 @@ namespace MeterSceneLibrary
|
|
|
}
|
|
|
|
|
|
EntityBase<PreTrackScale> entityBase = new EntityBase<PreTrackScale>();
|
|
|
- mwca = entityBase.format<MeterWorkCarActualFirst>(pts, mwca);
|
|
|
+ mwca3 = entityBase.format<MeterWorkCarActualFirst>(pts, mwca3);
|
|
|
|
|
|
//EntityBase<PreTrackScale> entityBase1 = new EntityBase<PreTrackScale>();
|
|
|
//mwaf = entityBase1.format<MeterWorkCarActualFirst>(pts, mwaf);
|
|
|
//mwaf.isPreScale = "1";
|
|
|
|
|
|
- rt = saveMethod.doNetHZHX(pts, mwca, mwaf);
|
|
|
+ rt = saveMethod.doNetHZHX(pts, mwca3, mwaf);
|
|
|
rt.resultInfo += ",混装业务";
|
|
|
PbCache.voiceType = 1;
|
|
|
PbCache.LEDResultMessage = string.Format("车号{0},2次重量{1}吨,净重{2}吨,混装业务", PbCache.lockCarNo, Math.Round((PbCache.lockWgt / 1000), 2), Math.Round((Math.Abs(rmX.Data[0].meterWeight.Value - PbCache.lockWgt) / 1000), 2));
|