using iWareCommon.Common.Entity;
|
using iWareCommon.Common.EnumType;
|
using iWareCommon.Common.Service;
|
using iWareCommon.Utils;
|
using iWareDataCore.DEV.Dao;
|
using iWareDataCore.DEV.Entity;
|
using iWareDataCore.ORM;
|
using iWareDataCore.Properties;
|
using System;
|
using System.Collections.Generic;
|
using System.Data.Entity.Validation;
|
using System.Linq;
|
using System.Text;
|
using System.Threading.Tasks;
|
|
namespace iWareDataCore.DEV.Service
|
{
|
public class EquipmentService : CommonService<EquipmentEntity, DEVEquipment, DbModelCore>
|
{
|
private static object Lock = new object();
|
private EquipmentService() : base(EquipmentDao.GetInstance()) { }
|
|
private static EquipmentService Instance = null;
|
|
/// <summary>
|
/// 获取单例的方法
|
/// </summary>
|
/// <returns>单例</returns>
|
public static EquipmentService GetInstance()
|
{
|
if (Instance == null)
|
{
|
lock (Lock)
|
{
|
if (Instance == null)
|
{
|
Instance = new EquipmentService();
|
}
|
|
}
|
}
|
return Instance;
|
}
|
|
public override int Save(EquipmentEntity t, out string msg)
|
{
|
msg = "";
|
using (DbModelCore db = new DbModelCore())
|
{
|
try
|
{
|
var one = t.ToOrm();
|
db.DEVEquipments.Add(one);
|
return db.SaveChanges();
|
|
}
|
catch (DbEntityValidationException ex)
|
{
|
var errs = ex.EntityValidationErrors.SelectMany(validationResult => validationResult.ValidationErrors).Select(m => m.ErrorMessage);
|
msg = string.Join(", ", errs);
|
LogTextHelper.WriteLog(Resources.LogDir, this.ToString(), "Save", msg);
|
return -1;
|
}
|
catch (Exception ex)
|
{
|
msg = ex.HResult == (int)EDbError.记录已存在 ? EDbError.记录已存在.ToString() : ex.Message;
|
LogTextHelper.WriteLog(Resources.LogDir, this.ToString(), "Save", msg);
|
return -1;
|
}
|
|
|
}
|
}
|
|
public override List<EquipmentEntity> QueryByParam(QueryParam param, out string msg)
|
{
|
|
msg = "";
|
using (var db = new DbModelCore())
|
{
|
var equipments = EquipmentDao.GetInstance().QueryByParam(param, db);
|
return equipments;
|
}
|
}
|
|
public override int Update(EquipmentEntity t, out string msg)
|
{
|
msg = "";
|
using (DbModelCore db = new DbModelCore())
|
{
|
try
|
{
|
var one = db.DEVEquipments.First(x => x.id == t.Id);
|
EntityPropHelper<EquipmentEntity, DEVEquipment>.CopyProp(t, one, EquipmentEntity.GetColumnMap());
|
db.SaveChanges();
|
return one.id;
|
}
|
catch (DbEntityValidationException ex)
|
{
|
var errs = ex.EntityValidationErrors.SelectMany(validationResult => validationResult.ValidationErrors).Select(m => m.ErrorMessage);
|
msg = string.Join(", ", errs);
|
LogTextHelper.WriteLog(Resources.LogDir, this.ToString(), "Save", msg);
|
return -1;
|
}
|
|
catch (Exception ex)
|
{
|
msg = ex.Message;
|
LogTextHelper.WriteLog(Resources.LogDir, this.ToString(), "Update", ex.Message);
|
return -1;
|
}
|
|
}
|
}
|
|
public int ChangeStatus(List<int> ids, int status, out string msg)
|
{
|
msg = "";
|
using (var dbModel = new DbModelCore())
|
{
|
try
|
{
|
var ones = dbModel.DEVEquipments.Where(x => ids.Contains(x.id)).ToList();
|
|
foreach (var one in ones)
|
{
|
one.status = status;
|
}
|
|
dbModel.SaveChanges();
|
return ones.Count;
|
}
|
catch (Exception ex)
|
{
|
msg = ex.Message;
|
LogTextHelper.WriteLog(Resources.LogDir, this.ToString(), "ChangeStatus", ex.Message);
|
return -1;
|
}
|
}
|
}
|
|
|
}
|
}
|