版权声明:本文为博主原创文章,转载时请注明出处。 https://blog.csdn.net/nxw_tsp/article/details/85092257
查询:
static IQueryable<Outlet> Query(string Region, string DC, string CustomerCode, string KA, string OutletCode, string NestleOutletCode)
{
var query = (from o in DB.Current.Outlet
where
(string.IsNullOrEmpty(Region) || o.Region.Contains(Region)) &&
(string.IsNullOrEmpty(DC) || o.DC.Contains(DC)) &&
(string.IsNullOrEmpty(CustomerCode) || o.CustomerCode.Contains(CustomerCode)) &&
(string.IsNullOrEmpty(KA) || o.KA.Contains(KA)) &&
(string.IsNullOrEmpty(OutletCode) || o.OutletCode.Contains(OutletCode)) &&
(string.IsNullOrEmpty(NestleOutletCode) || o.NestleOutletCode.Contains(NestleOutletCode))
select o);
return query;
}
删除
public static bool DelAll(string Region, string DC, string CustomerCode, string KA, string OutletCode, string NestleOutletCode)
{
var outlet = Query(Region, DC, CustomerCode, KA, OutletCode,NestleOutletCode);
var delsql = new StringBuilder();
for (int i = 0; i < outlet.Count(); i++) {
using (var db = new NestleImportEntities())
{
delsql.Append($" DELETE FROM Outlet where 1=1 ");
if (Region != null && Region != "") {
delsql.Append("and Region like '%").Append(Region).Append($"%' ");
}
if (DC != null && DC != "") {
delsql.Append("and DC like '%").Append(DC).Append($"%' ");
}
if (CustomerCode != null && CustomerCode != "") {
delsql.Append("and CustomerCode like '%").Append(CustomerCode).Append($"%' ");
}
if (KA != null && KA != "") {
delsql.Append("and KA like '%").Append(KA).Append($"%' ");
}
if (OutletCode != null && OutletCode != "") {
delsql.Append("and OutletCode like '%").Append(OutletCode).Append($"%' ");
}
if (NestleOutletCode != null && NestleOutletCode != "") {
delsql.Append("and NestleOutletCode like '%").Append(NestleOutletCode).Append($"%' ");
}
db.Database.ExecuteSqlCommand(delsql.ToString());
}
}
return true;
}
插入更新
private void UpdateOrInsertGroup(List<ExcelData> allList)
{
using (var db = new NestleImportEntities())
{
db.Database.CommandTimeout = 420;
var wheresql = new StringBuilder();
wheresql.Append($" 1 = 1 ");
foreach (var f in UpdateWhereField)
{
wheresql.Append($"and t.[{f}] = s.[{f}] ");
}
try
{
var mergeSql = new StringBuilder();
mergeSql.Append($"MERGE INTO Product_Detail AS t USING ( ");
mergeSql.Append($" SELECT DISTINCT ");
mergeSql.Append($" YearMonth, ");
mergeSql.Append($" SKU_Code, ");
mergeSql.Append($" Unit_Quantity, ");
mergeSql.Append($" RRP_EA, ");
mergeSql.Append($" RRP_Cases, ");
mergeSql.Append($" SKU_Group, ");
mergeSql.Append($" Key_SKU, ");
mergeSql.Append($" insertUser, ");
mergeSql.Append($" CreateTime, ");
mergeSql.Append($" UpdateTime, ");
mergeSql.Append($" batchNo ");
mergeSql.Append($" FROM ");
mergeSql.Append($" Product_Detail_temp WHERE insertUser = '").Append(loginedUser.User.ID).Append($"'");
mergeSql.Append($") AS s ON ").Append(wheresql);
mergeSql.Append($"WHEN matched THEN ");
mergeSql.Append($" UPDATE ");
mergeSql.Append($"SET t.YearMonth = s.YearMonth, ");
mergeSql.Append($"t.SKU_Code = s.SKU_Code, ");
mergeSql.Append($"t.Unit_Quantity = t.Unit_Quantity, ");
mergeSql.Append($"t.RRP_EA = t.RRP_EA, ");
mergeSql.Append($"t.RRP_Cases = t.RRP_Cases, ");
mergeSql.Append($"t.SKU_Group = s.SKU_Group, ");
mergeSql.Append($"t.Key_SKU = s.Key_SKU, ");
mergeSql.Append($"t.insertUser = s.insertUser, ");
mergeSql.Append($"t.CreateTime = t.CreateTime, ");
mergeSql.Append($"t.UpdateTime = s.UpdateTime ");
mergeSql.Append($"WHEN NOT matched THEN ");
mergeSql.Append($" INSERT ( ");
mergeSql.Append($" YearMonth, ");
mergeSql.Append($"SKU_Code, ");
mergeSql.Append($"Unit_Quantity, ");
mergeSql.Append($"RRP_EA, ");
mergeSql.Append($"RRP_Cases, ");
mergeSql.Append($"SKU_Group, ");
mergeSql.Append($"Key_SKU, ");
mergeSql.Append($"insertUser, ");
mergeSql.Append($"CreateTime, ");
mergeSql.Append($"UpdateTime ");
mergeSql.Append($" ) ");
mergeSql.Append($"VALUES ");
mergeSql.Append($" ( ");
mergeSql.Append($" s.YearMonth, ");
mergeSql.Append($" s.SKU_Code, ");
mergeSql.Append($" s.Unit_Quantity, ");
mergeSql.Append($" s.RRP_EA, ");
mergeSql.Append($" s.RRP_Cases, ");
mergeSql.Append($" s.SKU_Group, ");
mergeSql.Append($" s.Key_SKU, ");
mergeSql.Append($" s.insertUser, ");
mergeSql.Append($" s.CreateTime, ");
mergeSql.Append($" s.UpdateTime ");
mergeSql.Append($" ) ; ");
Logger.Current.Info("merg》》》》》:" + mergeSql.ToString());
db.Database.ExecuteSqlCommand(mergeSql.ToString());
}
catch (Exception ex)
{
Logger.Current.Info("上传失败!!!!!!!" + ex.Message);
throw new Exception("发送信息异常,原因:" + ex.Message + ex.InnerException);
}
finally
{
//释放资源
//scope.Dispose();
}
///////////////////////////////////////////////////////////////////////////
}
}