/// <summary> /// 增加一条数据 /// </summary> public bool Add(Express.Model.OrderInfo model) { return(dal.Add(model)); }
/// <summary> /// 更新一条数据 /// </summary> public bool Update(Express.Model.OrderInfo model) { return(dal.Update(model)); }
/// <summary> /// 更新快件状态 /// </summary> /// <param name="dt"></param> /// <returns></returns> private int GetOrderState(string data, ref Express.Model.OrderInfo model) { if (string.IsNullOrEmpty(data) || data.Length < 5) { model.Remark = "查件失败"; return(3);//未签收 } string[] dts = data.Split(';'); Array.Sort(dts); ////如果只有一条信息并且处于“揽件扫描”,则说明无物流信息 if (dts.Length == 1 && dts[0].Split(',')[2] == "揽件扫描") { return(4); } bool isNoAct = true; foreach (var item in dts) { string[] mydata = item.Split(','); if (mydata[2].Contains("扫描") && mydata[3].Contains("深圳")) { isNoAct = false; break; } } if (isNoAct) { return(5);//漏件补收 } if (dts.Length > 1) { if (dts[dts.Length - 2].Split(',')[2] == "签收") { return(1); } } switch (dts[dts.Length - 1].Split(',')[2]) { case "签收": case "代签收扫描": return(1); break; case "异常签收": string exmsg = dts[dts.Length - 1].Split(',')[3].ToString(); if (exmsg.IndexOf("备注:") > 0) { model.Remark += exmsg.Substring(exmsg.IndexOf("备注:") + 3); } return(2); break; case "揽件扫描": //最后一条揽件状态为揽件扫描如果上一条时签收状态,则认为快件为正常状态 if (dts.Length > 1) { if (dts[dts.Length - 2].Split(',')[2].Contains("签收")) { return(1); } } break; default: break; } return(3); }