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<WebOrderDetailViewEntity, WebOrderDetailView, DbModelCore>
|
{
|
private static object Lock = new object();
|
|
private WebOrderDetailService() : base(WebOrderDetailDao.GetInstance()) { }
|
|
private static WebOrderDetailService Instance = null;
|
|
/// <summary>
|
/// 获取单例的方法
|
/// </summary>
|
/// <returns>用户服务的单例实体</returns>
|
public static WebOrderDetailService GetInstance()
|
{
|
|
if (Instance == null)
|
{
|
lock (Lock)
|
{
|
if (Instance == null)
|
{
|
Instance = new WebOrderDetailService();
|
}
|
}
|
}
|
return Instance;
|
}
|
|
public int DeleteDetail(List<int> 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<WebOrderDetailView> GetWebOrderDetail(int webOrderId,out string msg)
|
{
|
msg = "";
|
using (var dbModel = new DbModelCore())
|
{
|
List<WebOrderDetailView> detail = new List<WebOrderDetailView>();
|
try
|
{
|
return dbModel.WebOrderDetailView.Where(x => x.weborderid == webOrderId).ToList();
|
}
|
catch (Exception ex)
|
{
|
msg = ex.Message;
|
return detail;
|
}
|
}
|
}
|
}
|
}
|