using iWareCommon.Common.Service; using iWareCommon.Utils; using iWareDataCore.BASE.Dao; using iWareDataCore.BASE.Entity; using iWareDataCore.ORM; using iWareDataCore.Properties; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace iWareDataCore.BASE.Service { public class WebOrderDetailService : CommonService { private static object Lock = new object(); private WebOrderDetailService() : base(WebOrderDetailDao.GetInstance()) { } private static WebOrderDetailService Instance = null; /// /// 获取单例的方法 /// /// 用户服务的单例实体 public static WebOrderDetailService GetInstance() { if (Instance == null) { lock (Lock) { if (Instance == null) { Instance = new WebOrderDetailService(); } } } return Instance; } public int DeleteDetail(List ids, out string msg) { msg = ""; using (var dbModel = new DbModelCore()) { int fristIndex = 0; foreach (var id in ids) { try { var detail = dbModel.WebOrderDetail.FirstOrDefault(x => x.id == id); if (detail != null) { if (fristIndex==0) { var mainOrder = dbModel.WebOrder.FirstOrDefault(x => x.id == detail.weborderid); if (mainOrder !=null && mainOrder.statusflag==1) { msg = "此单据已下发,不能删除明细"; break; } } dbModel.WebOrderDetail.Remove(detail); fristIndex++; } } catch (Exception){} } if (string.IsNullOrEmpty(msg)) { dbModel.SaveChanges(); return ids.Count; } else return 0; } } public List GetWebOrderDetail(int webOrderId,out string msg) { msg = ""; using (var dbModel = new DbModelCore()) { List detail = new List(); try { return dbModel.WebOrderDetailView.Where(x => x.weborderid == webOrderId).ToList(); } catch (Exception ex) { msg = ex.Message; return detail; } } } } }