using Common; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using com.hnshituo.core.webapp.vo; namespace MeterConditionLibrary { /// /// 物资名称验证与类型类型的关系验证 /// public class validMatterName { /// /// 物资名称验证:物资名称包含钢筋,且业务类型不是销售出厂,不允许进行计量操作; /// 业务类型验证:非计量不允许进行上秤操作 /// /// /// public bool ValidMethod(PreTrackScale trackScale) { //001006011外销出厂-复磅(码头);001006002外销出厂计量;001006004外销退货计量 if (trackScale!=null && !string.IsNullOrEmpty(trackScale.matterName)) { if (trackScale.matterName.Equals("钢筋12mm-28mm,高线6.5mm-10mm,盘螺6mm-14mm") && !trackScale.meterTypeNo.Equals("001006002") && !trackScale.meterTypeNo.Equals("001006011") && !trackScale.meterTypeNo.Equals("001006004")) { PbCache.ResultMessage = "物资名称为【"+ trackScale.matterName + "】,且业务类型不是外销出厂或销售退货,不允许进行计量操作!"; return false; } } if (trackScale != null && !string.IsNullOrEmpty(trackScale.meterTypeName)) { if (trackScale.meterTypeName.Contains("非计量")) { PbCache.ResultMessage = "当前业务类型为[非计量],不允许进行计量操作!"; return false; } } return true; } /// /// 验证物资是否需要发运重量 /// /// /// public bool ValidEffectiveWeight(PreTrackScale trackScale) { //2022年1月7日 钢筋12mm-28mm,高线6.5mm-10mm,盘螺6mm-14mm添加发运重量的限制 if (trackScale.matterName.Equals("钢筋12mm-28mm,高线6.5mm-10mm,盘螺6mm-14mm") && trackScale.effectiveWeight == 0) { PbCache.ResultMessage = "物资名称为【" + trackScale.matterName + "】,发运重量为【"+ trackScale.effectiveWeight + "】,不允许进行计量操作,请重新联系库房进行发运!"; return false; } return true; } /// /// 验证是否为二次资源的物料 /// /// /// public bool ValidSecondResourcesMatter(PreTrackScale trackScale) { if (trackScale == null || !trackScale.meterTypeName.Contains("外销")) { return false; } if (trackScale != null && !string.IsNullOrEmpty(trackScale.matterName) && !string.IsNullOrEmpty(trackScale.matterNo)) { MeterBaseMatterInfoService matterInfoService = new MeterBaseMatterInfoService(); RESTfulResult result = matterInfoService.doQueryId(trackScale.matterNo); if (result.Succeed && result.Data!=null) { if (result?.Data?.isSecondResources == "1") { return true; } } } return false; } } }