1.报错机制增加未扫描上架的提供库位屏蔽机制
2.库位查询增加当前屏蔽模组库位百分比查询 3.货架库位屏蔽、模组屏蔽后增加当前禁用模组库位百分比查询
This commit is contained in:
@ -73,5 +73,6 @@ namespace WCS.BLL.Services.IService
|
||||
/// <returns></returns>
|
||||
public Task<ResponseCommon> disableOrEnableStore(DisableOrEnableStoreRequest request);
|
||||
|
||||
public Task<ResponseCommon> getDisablePercent();
|
||||
}
|
||||
}
|
||||
|
@ -350,7 +350,52 @@ namespace WCS.BLL.Services.Service
|
||||
if (LocalFile.Config.IsMx)
|
||||
{
|
||||
var DingDing = string.Empty;
|
||||
MXBackgroundThread.SendDingDingMsg($"【智能货架】模组{moduleInfo.ModuleCode}被屏蔽", new List<string> { "104379", "103595" }, ref DingDing);
|
||||
MXBackgroundThread.SendDingDingMsg($"【智能货架】模组{moduleInfo.ModuleCode}被屏蔽(模组管理),请及时调查或维保硬件!", new List<string> { "104379", "103595" }, ref DingDing);
|
||||
#region 计算库位禁用率并发送
|
||||
Task.Run(() =>
|
||||
{
|
||||
var disabledStore = DbHelp.db.Queryable<StoreInfo>()
|
||||
.Where(t => t.CurrentMatSn == "禁用")
|
||||
.ToList();
|
||||
var allStore = DbHelp.db.Queryable<StoreInfo>()
|
||||
.ToList();
|
||||
|
||||
var disabledCount = disabledStore.Count();
|
||||
var allCount = allStore.Count();
|
||||
|
||||
var disabledACount = disabledStore.Where(t => t.ShelfCode.Contains("A")).ToList().Count();
|
||||
var allACount = allStore.Where(t => t.ShelfCode.Contains("A")).ToList().Count();
|
||||
|
||||
var disabledCCount = disabledStore.Where(t => t.ShelfCode.Contains("C")).ToList().Count();
|
||||
var allCCount = allStore.Where(t => t.ShelfCode.Contains("C")).ToList().Count();
|
||||
|
||||
|
||||
var disabledModule = DbHelp.db.Queryable<ModuleInfo>()
|
||||
.Where(t => t.IsEnable == false)
|
||||
.ToList();
|
||||
var allModule = DbHelp.db.Queryable<ModuleInfo>()
|
||||
.ToList();
|
||||
|
||||
var disabledModuleCount = disabledModule.Count();
|
||||
var allModuleCount = allModule.Count();
|
||||
|
||||
var disabledAModuleCount = disabledModule.Where(t => t.ShelfCode.Contains("A")).ToList().Count();
|
||||
var allAModuleCount = allModule.Where(t => t.ShelfCode.Contains("A")).ToList().Count();
|
||||
|
||||
var disabledCModuleCount = disabledModule.Where(t => t.ShelfCode.Contains("C")).ToList().Count();
|
||||
var allCModuleCount = allModule.Where(t => t.ShelfCode.Contains("C")).ToList().Count();
|
||||
|
||||
var message = $"【智能货架】当前库位总数{allCount},禁用总数{disabledCount},禁用率{((double)disabledCount / allCount).ToString("P")}," +
|
||||
$"其中A区库位总数{allACount},禁用数{disabledACount},禁用率{((double)disabledACount / allACount).ToString("P")}," +
|
||||
$"C区库位总数{allCCount},禁用数{disabledCCount},禁用率{((double)disabledCCount / allCCount).ToString("P")}。\r\n" +
|
||||
$"当前模组总数{allModuleCount},禁用总数{disabledModuleCount},禁用率{((double)disabledModuleCount / allModuleCount).ToString("P")}," +
|
||||
$"其中A区模组总数{allAModuleCount},禁用数{disabledAModuleCount},禁用率{((double)disabledAModuleCount / allAModuleCount).ToString("P")}," +
|
||||
$"C区模组总数{allCModuleCount},禁用数{disabledCModuleCount},禁用率{((double)disabledCModuleCount / allCModuleCount).ToString("P")}。";
|
||||
|
||||
var dd = string.Empty;
|
||||
MXBackgroundThread.SendDingDingMsg(message, new List<string> { "104379", "103595" }, ref dd);
|
||||
});
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
else
|
||||
@ -552,7 +597,53 @@ namespace WCS.BLL.Services.Service
|
||||
if (LocalFile.Config.IsMx)
|
||||
{
|
||||
var DingDing = string.Empty;
|
||||
MXBackgroundThread.SendDingDingMsg($"【智能货架】库位{storeInfo.StoreCode}被屏蔽", new List<string> { "104379", "103595" }, ref DingDing);
|
||||
MXBackgroundThread.SendDingDingMsg($"【智能货架】库位{storeInfo.StoreCode}被屏蔽(库位管理),请及时调查或维保硬件!", new List<string> { "104379", "103595" }, ref DingDing);
|
||||
|
||||
#region 计算库位禁用率并发送
|
||||
Task.Run(() =>
|
||||
{
|
||||
var disabledStore = DbHelp.db.Queryable<StoreInfo>()
|
||||
.Where(t => t.CurrentMatSn == "禁用")
|
||||
.ToList();
|
||||
var allStore = DbHelp.db.Queryable<StoreInfo>()
|
||||
.ToList();
|
||||
|
||||
var disabledCount = disabledStore.Count();
|
||||
var allCount = allStore.Count();
|
||||
|
||||
var disabledACount = disabledStore.Where(t => t.ShelfCode.Contains("A")).ToList().Count();
|
||||
var allACount = allStore.Where(t => t.ShelfCode.Contains("A")).ToList().Count();
|
||||
|
||||
var disabledCCount = disabledStore.Where(t => t.ShelfCode.Contains("C")).ToList().Count();
|
||||
var allCCount = allStore.Where(t => t.ShelfCode.Contains("C")).ToList().Count();
|
||||
|
||||
|
||||
var disabledModule = DbHelp.db.Queryable<ModuleInfo>()
|
||||
.Where(t => t.IsEnable == false)
|
||||
.ToList();
|
||||
var allModule = DbHelp.db.Queryable<ModuleInfo>()
|
||||
.ToList();
|
||||
|
||||
var disabledModuleCount = disabledModule.Count();
|
||||
var allModuleCount = allModule.Count();
|
||||
|
||||
var disabledAModuleCount = disabledModule.Where(t => t.ShelfCode.Contains("A")).ToList().Count();
|
||||
var allAModuleCount = allModule.Where(t => t.ShelfCode.Contains("A")).ToList().Count();
|
||||
|
||||
var disabledCModuleCount = disabledModule.Where(t => t.ShelfCode.Contains("C")).ToList().Count();
|
||||
var allCModuleCount = allModule.Where(t => t.ShelfCode.Contains("C")).ToList().Count();
|
||||
|
||||
var message = $"【智能货架】当前库位总数{allCount},禁用总数{disabledCount},禁用率{((double)disabledCount / allCount).ToString("P")}," +
|
||||
$"其中A区库位总数{allACount},禁用数{disabledACount},禁用率{((double)disabledACount / allACount).ToString("P")}," +
|
||||
$"C区库位总数{allCCount},禁用数{disabledCCount},禁用率{((double)disabledCCount / allCCount).ToString("P")}。\r\n" +
|
||||
$"当前模组总数{allModuleCount},禁用总数{disabledModuleCount},禁用率{((double)disabledModuleCount / allModuleCount).ToString("P")}," +
|
||||
$"其中A区模组总数{allAModuleCount},禁用数{disabledAModuleCount},禁用率{((double)disabledAModuleCount / allAModuleCount).ToString("P")}," +
|
||||
$"C区模组总数{allCModuleCount},禁用数{disabledCModuleCount},禁用率{((double)disabledCModuleCount / allCModuleCount).ToString("P")}。";
|
||||
|
||||
var dd = string.Empty;
|
||||
MXBackgroundThread.SendDingDingMsg(message, new List<string> { "104379", "103595" }, ref dd);
|
||||
});
|
||||
#endregion
|
||||
}
|
||||
|
||||
//库位
|
||||
@ -618,6 +709,74 @@ namespace WCS.BLL.Services.Service
|
||||
}
|
||||
}
|
||||
|
||||
public async Task<ResponseCommon> getDisablePercent()
|
||||
{
|
||||
try
|
||||
{
|
||||
#region 计算库位禁用率
|
||||
var disabledStore = DbHelp.db.Queryable<StoreInfo>()
|
||||
.Where(t => t.CurrentMatSn == "禁用")
|
||||
.ToList();
|
||||
var allStore = DbHelp.db.Queryable<StoreInfo>()
|
||||
.ToList();
|
||||
|
||||
var disabledCount = disabledStore.Count();
|
||||
var allCount = allStore.Count();
|
||||
|
||||
var disabledACount = disabledStore.Where(t => t.ShelfCode.Contains("A")).ToList().Count();
|
||||
var allACount = allStore.Where(t => t.ShelfCode.Contains("A")).ToList().Count();
|
||||
|
||||
var disabledCCount = disabledStore.Where(t => t.ShelfCode.Contains("C")).ToList().Count();
|
||||
var allCCount = allStore.Where(t => t.ShelfCode.Contains("C")).ToList().Count();
|
||||
|
||||
|
||||
var disabledModule = DbHelp.db.Queryable<ModuleInfo>()
|
||||
.Where(t => t.IsEnable == false)
|
||||
.ToList();
|
||||
var allModule = DbHelp.db.Queryable<ModuleInfo>()
|
||||
.ToList();
|
||||
|
||||
var disabledModuleCount = disabledModule.Count();
|
||||
var allModuleCount = allModule.Count();
|
||||
|
||||
var disabledAModuleCount = disabledModule.Where(t => t.ShelfCode.Contains("A")).ToList().Count();
|
||||
var allAModuleCount = allModule.Where(t => t.ShelfCode.Contains("A")).ToList().Count();
|
||||
|
||||
var disabledCModuleCount = disabledModule.Where(t => t.ShelfCode.Contains("C")).ToList().Count();
|
||||
var allCModuleCount = allModule.Where(t => t.ShelfCode.Contains("C")).ToList().Count();
|
||||
|
||||
var message = $"【智能货架】当前库位总数{allCount},禁用总数{disabledCount},禁用率{((double)disabledCount / allCount).ToString("P")}," +
|
||||
$"其中A区库位总数{allACount},禁用数{disabledACount},禁用率{((double)disabledACount / allACount).ToString("P")}," +
|
||||
$"C区库位总数{allCCount},禁用数{disabledCCount},禁用率{((double)disabledCCount / allCCount).ToString("P")}。\r\n" +
|
||||
$"当前模组总数{allModuleCount},禁用总数{disabledModuleCount},禁用率{((double)disabledModuleCount / allModuleCount).ToString("P")}," +
|
||||
$"其中A区模组总数{allAModuleCount},禁用数{disabledAModuleCount},禁用率{((double)disabledAModuleCount / allAModuleCount).ToString("P")}," +
|
||||
$"C区模组总数{allCModuleCount},禁用数{disabledCModuleCount},禁用率{((double)disabledCModuleCount / allCModuleCount).ToString("P")}。";
|
||||
#endregion
|
||||
|
||||
//非盟讯公司的展示
|
||||
if (LocalFile.Config.IsMx == false)
|
||||
{
|
||||
message = $"【智能货架】当前库位总数{allCount},禁用总数{disabledCount},禁用率{((double)disabledCount / allCount).ToString("P")}。";
|
||||
}
|
||||
|
||||
return new ResponseCommon()
|
||||
{
|
||||
Code = 200,
|
||||
Message = $"Success",
|
||||
Data = message ,
|
||||
};
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
DbHelp.db.RollbackTran();
|
||||
return new ResponseCommon()
|
||||
{
|
||||
Code = 300,
|
||||
Message = $"操作失败:异常{ex.Message}!"
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user