using System.Collections.Generic;
using System.Linq;
namespace BLL
{
///
/// 公司质量样板
///
public class QualityModelService
{
///
/// 根据主键获取公司质量样板
///
///
///
public static Model.Model_QualityModel GetQualityModelById(string QualityModelId)
{
return Funs.DB.Model_QualityModel.FirstOrDefault(e => e.QualityModelId == QualityModelId);
}
///
/// 获取质量样板信息
///
///
///
public static List GetQualityModelByIdForApi(string QualityModelId)
{
using (var db = new Model.SGGLDB(Funs.ConnString))
{
IQueryable q = db.Model_QualityModel;
if (!string.IsNullOrEmpty(QualityModelId))
{
q = q.Where(e => e.QualityModelId == QualityModelId);
}
var qres = from x in q
orderby x.CompileDate descending
select new
{
x.QualityModelId,
x.ProjectId,
x.CompanyModelId,
ModelType = (from y in db.Base_CompanyModel where y.CompanyModelId == x.CompanyModelId select y.ModelType).First(),
CompanyModelKindName = (from y in db.Base_CompanyModelKind
join z in db.Base_CompanyModel on y.CompanyModelKindId equals z.CompanyModelKindId
where z.CompanyModelId == x.CompanyModelId
select y.CompanyModelKindName).First(),
x.Evaluate,
x.Remark,
x.CompileDate,
x.CompileMan,
CompileManName = (from y in db.Person_Persons where y.PersonId == x.CompileMan select y.PersonName).First(),
x.AttachUrl,
};
List res = new List();
foreach (var item in qres)
{
Model.Model_QualityModel cd = new Model.Model_QualityModel();
cd.QualityModelId = item.QualityModelId;
cd.ProjectId = item.ProjectId;
cd.CompanyModelId = item.CompanyModelId + "$" + item.ModelType + "$" + item.CompanyModelKindName;
cd.Evaluate = item.Evaluate;
cd.Remark = item.Remark;
cd.CompileDate = item.CompileDate;
cd.CompileMan = item.CompileMan + "$" + item.CompileManName;
cd.AttachUrlModel = AttachFileService.getFileUrl(item.CompanyModelId);
cd.AttachUrl = AttachFileService.getFileUrl(item.QualityModelId);
res.Add(cd);
}
return res;
}
}
///
/// 添加公司质量样板
///
///
public static void AddQualityModel(Model.Model_QualityModel QualityModel)
{
Model.Model_QualityModel newQualityModel = new Model.Model_QualityModel
{
QualityModelId = QualityModel.QualityModelId,
ProjectId = QualityModel.ProjectId,
CompanyModelId = QualityModel.CompanyModelId,
Evaluate = QualityModel.Evaluate,
Remark = QualityModel.Remark,
CompileMan = QualityModel.CompileMan,
CompileDate = QualityModel.CompileDate
};
Funs.DB.Model_QualityModel.InsertOnSubmit(newQualityModel);
Funs.DB.SubmitChanges();
}
public static void AddQualityModelForApi(Model.Model_QualityModel QualityModel)
{
using (var db = new Model.SGGLDB(Funs.ConnString))
{
Model.Model_QualityModel newQualityModel = new Model.Model_QualityModel();
newQualityModel.QualityModelId = QualityModel.QualityModelId;
newQualityModel.ProjectId = QualityModel.ProjectId;
newQualityModel.CompanyModelId = QualityModel.CompanyModelId;
newQualityModel.Evaluate = QualityModel.Evaluate;
newQualityModel.Remark = QualityModel.Remark;
newQualityModel.CompileMan = QualityModel.CompileMan;
newQualityModel.CompileDate = QualityModel.CompileDate;
db.Model_QualityModel.InsertOnSubmit(newQualityModel);
db.SubmitChanges();
}
}
///
/// 修改公司质量样板
///
///
public static void UpdateQualityModel(Model.Model_QualityModel QualityModel)
{
Model.Model_QualityModel newQualityModel = Funs.DB.Model_QualityModel.FirstOrDefault(e => e.QualityModelId == QualityModel.QualityModelId);
if (newQualityModel != null)
{
newQualityModel.CompanyModelId = QualityModel.CompanyModelId;
newQualityModel.Evaluate = QualityModel.Evaluate;
newQualityModel.Remark = QualityModel.Remark;
Funs.DB.SubmitChanges();
}
}
public static void UpdateQualityModelForApi(Model.Model_QualityModel QualityModel)
{
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
{
Model.Model_QualityModel newQualityModel = db.Model_QualityModel.FirstOrDefault(e => e.QualityModelId == QualityModel.QualityModelId);
if (newQualityModel != null)
{
if (!string.IsNullOrEmpty(QualityModel.CompanyModelId))
newQualityModel.CompanyModelId = QualityModel.CompanyModelId;
if (!string.IsNullOrEmpty(QualityModel.Evaluate))
newQualityModel.Evaluate = QualityModel.Evaluate;
if (!string.IsNullOrEmpty(QualityModel.Remark))
newQualityModel.Remark = QualityModel.Remark;
db.SubmitChanges();
}
}
}
///
/// 根据主键删除公司质量样板
///
///
public static void DeleteQualityModelById(string QualityModelId)
{
Model.Model_QualityModel QualityModel = Funs.DB.Model_QualityModel.FirstOrDefault(e => e.QualityModelId == QualityModelId);
if (QualityModel != null)
{
CommonService.DeleteAttachFileById(QualityModelId);
Funs.DB.Model_QualityModel.DeleteOnSubmit(QualityModel);
Funs.DB.SubmitChanges();
}
}
public static List getListDataForApi(string projectId, int startRowIndex, int maximumRows)
{
using (var db = new Model.SGGLDB(Funs.ConnString))
{
IQueryable q = db.Model_QualityModel;
if (!string.IsNullOrEmpty(projectId))
{
q = q.Where(e => e.ProjectId == projectId);
}
var qres = from x in q
orderby x.CompileDate descending
select new
{
x.QualityModelId,
x.ProjectId,
x.CompanyModelId,
ModelType = (from y in db.Base_CompanyModel where y.CompanyModelId == x.CompanyModelId select y.ModelType).First(),
CompanyModelKindName = (from y in db.Base_CompanyModelKind
join z in db.Base_CompanyModel on y.CompanyModelKindId equals z.CompanyModelKindId
where z.CompanyModelId == x.CompanyModelId
select y.CompanyModelKindName).First(),
x.Evaluate,
x.Remark,
x.CompileDate,
x.CompileMan,
CompileManName = (from y in db.Person_Persons where y.PersonId == x.CompileMan select y.PersonName).First(),
x.AttachUrl,
};
List res = new List();
var list = qres.Skip(startRowIndex).Take(maximumRows).ToList();
foreach (var item in list)
{
Model.Model_QualityModel cd = new Model.Model_QualityModel();
cd.QualityModelId = item.QualityModelId;
cd.ProjectId = item.ProjectId;
cd.CompanyModelId = item.CompanyModelId + "$" + item.ModelType + "$" + item.CompanyModelKindName;
cd.Evaluate = item.Evaluate;
cd.Remark = item.Remark;
cd.CompileDate = item.CompileDate;
cd.CompileMan = item.CompileMan + "$" + item.CompileManName;
cd.AttachUrlModel = AttachFileService.getFileUrl(item.CompanyModelId);
cd.AttachUrl = AttachFileService.getFileUrl(item.QualityModelId);
res.Add(cd);
}
return res;
}
}
///
/// 获取质量模板信息
///
///
///
public static Model.Model_QualityModel GetQualityModelByQualityModelIdForApi(string QualityModelId)
{
using (var db = new Model.SGGLDB(Funs.ConnString))
{
var q = db.Model_QualityModel.FirstOrDefault(e => e.QualityModelId == QualityModelId);
if (q != null)
{
q.CompanyModelId = q.CompanyModelId + "$" + (from y in db.Base_CompanyModel where y.CompanyModelId == q.CompanyModelId select y.ModelType).First() + "$" + (from y in db.Base_CompanyModelKind
join z in db.Base_CompanyModel on y.CompanyModelKindId equals z.CompanyModelKindId
where z.CompanyModelId == q.CompanyModelId
select y.CompanyModelKindName).First();
q.CompileMan = q.CompileMan + "$" + BLL.Person_PersonsService.GetPersonsNameById(q.CompileMan);
q.AttachUrlModel = AttachFileService.getFileUrl(q.CompanyModelId);
q.AttachUrl = AttachFileService.getFileUrl(q.QualityModelId);
}
return q;
}
}
}
}