using CnasLocalIDAL;
using CnasSynchronousCommon;
using CnasSynchrousModel;
using SyncLocalDAL;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace CnasSynchronusClient
{
public class LaboratoryTestBLL
{
public ILaboratoryTest laboratoryTest { get { return new LaboratoryTestDAL(); } }
///
/// 读取本地数据库中存储的化验数据
///
///
public List GetLaboratoryTestData()
{
return laboratoryTest.GetAllLaboratoryTests();
}
///
/// 根据类型和最大日期获取数据(获取该日期后的数据)
///
///
///
public List GetLaboratoryTestDataByTypeAndDate(Dictionary dict)
{
return laboratoryTest.GetLaboratoryTestsByTypeAndDate(dict);
}
///
/// 获取没有上传的所有数据
///
///
public List GetLaboratoryTestDataByNoUpLoad()
{
return laboratoryTest.GetLaboratoryTestsByNoUpLoad();
}
///
/// 保存化验数据(新增/修改/删除)
///
///
///
public ReturnValue SaveLaboratoryData(List laboratories)
{
ReturnValue returnValue = new ReturnValue();
int addCount = 0;
int updateCount = 0;
int deleCount = 0;
//逐行插入数据
try
{
foreach (var item in laboratories)
{
if (item.OperationType==null) continue;
switch (item.OperationType.ToLower())
{
case "add":
addCount += laboratoryTest.InsertLaboratory(item);
break;
case "update":
updateCount += laboratoryTest.UpdateLaboratory(item);
break;
case "delete":
deleCount += laboratoryTest.DeleteLaboratory(item);
break;
}
}
returnValue.StrMsg = $"成功插入{addCount}条化验数据,更新{updateCount}条化验数据,删除{deleCount}条化验数据";
}
catch (Exception ex)
{
returnValue.StrErrorMsg = ex.Message;
}
return returnValue;
}
///
/// 保存一条化验数据(新增/修改/删除)
///
///
///
public ReturnValue SaveLaboratoryData(LaboratoryTest laboratory)
{
ReturnValue returnValue = new ReturnValue();
int addCount = 0;
int updateCount = 0;
int deleCount = 0;
//逐行插入数据
try
{
if (laboratory.OperationType != null)
{
switch (laboratory.OperationType.ToLower())
{
case "add":
addCount += laboratoryTest.InsertLaboratory(laboratory);
break;
case "update":
updateCount += laboratoryTest.UpdateLaboratory(laboratory);
break;
case "delete":
deleCount += laboratoryTest.DeleteLaboratory(laboratory);
break;
}
}
returnValue.StrMsg = $"成功插入{addCount}条化验数据,更新{updateCount}条化验数据,删除{deleCount}条化验数据";
}
catch (Exception ex)
{
returnValue.StrErrorMsg = ex.Message;
}
return returnValue;
}
}
}