mirror of
http://git.coreshop.cn/jianweie/coreshoppro.git
synced 2025-12-06 18:43:26 +08:00
【修复】服务商品倒计时错误的问题,调整首页组件显示效果。
This commit is contained in:
@@ -685,53 +685,49 @@ namespace CoreCms.Net.Services
|
||||
}
|
||||
else if (item.widgetCode == "service")
|
||||
{
|
||||
JObject parameters = (JObject)JsonConvert.DeserializeObject(item.parameters);
|
||||
var parameters = (JObject)JsonConvert.DeserializeObject(item.parameters);
|
||||
|
||||
if (parameters != null && parameters.ContainsKey("list"))
|
||||
{
|
||||
JArray result = JArray.Parse(parameters["list"].ToString());
|
||||
foreach (JObject ss in result)
|
||||
var result = JArray.Parse(parameters["list"].ToString());
|
||||
var ids = (from JObject ss in result where ss.ContainsKey("id") select ((JObject)ss)["id"].ObjectToInt(0) into id where id > 0 select id).ToList();
|
||||
|
||||
if (ids.Any())
|
||||
{
|
||||
if (ss.ContainsKey("id"))
|
||||
var serviceObj = await _servicesServices.QueryListByClauseAsync(p => ids.Contains(p.id));
|
||||
foreach (var jToken in result)
|
||||
{
|
||||
var ss = (JObject) jToken;
|
||||
var id = ((JObject)ss)["id"].ObjectToInt(0);
|
||||
if (id > 0)
|
||||
var serviceInfo = serviceObj.Find(p => p.id == id);
|
||||
if (serviceInfo != null)
|
||||
{
|
||||
var serviceInfo = await _servicesServices.QueryByIdAsync(id);
|
||||
if (serviceInfo != null)
|
||||
var openStatus = 1;
|
||||
int lastTime = 0;
|
||||
var dt = DateTime.Now;
|
||||
if (serviceInfo.startTime > dt)
|
||||
{
|
||||
var pinTuanStartStatus = 1;
|
||||
int lastTime = 0;
|
||||
bool isOverdue = false;
|
||||
//判断拼团状态
|
||||
var dt = DateTime.Now;
|
||||
|
||||
if (serviceInfo.startTime > dt)
|
||||
{
|
||||
pinTuanStartStatus = (int)GlobalEnumVars.ServicesOpenStatus.notBegun;
|
||||
TimeSpan ts = serviceInfo.startTime.Subtract(dt);
|
||||
lastTime = (int)ts.TotalSeconds;
|
||||
isOverdue = lastTime > 0;
|
||||
}
|
||||
else if (serviceInfo.startTime <= dt && serviceInfo.endTime > dt)
|
||||
{
|
||||
pinTuanStartStatus = (int)GlobalEnumVars.ServicesOpenStatus.begin;
|
||||
|
||||
TimeSpan ts = serviceInfo.endTime.Subtract(dt);
|
||||
lastTime = (int)ts.TotalSeconds;
|
||||
isOverdue = lastTime > 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
pinTuanStartStatus = (int)GlobalEnumVars.ServicesOpenStatus.haveExpired;
|
||||
}
|
||||
((JObject)ss).Add("pinTuanStartStatus", pinTuanStartStatus);
|
||||
((JObject)ss).Add("lastTime", lastTime);
|
||||
((JObject)ss).Add("isOverdue", isOverdue);
|
||||
openStatus = (int)GlobalEnumVars.ServicesOpenStatus.notBegun;
|
||||
TimeSpan ts = serviceInfo.startTime.Subtract(dt);
|
||||
lastTime = (int)ts.TotalSeconds;
|
||||
}
|
||||
else if (serviceInfo.startTime <= dt && serviceInfo.endTime > dt)
|
||||
{
|
||||
openStatus = (int)GlobalEnumVars.ServicesOpenStatus.begin;
|
||||
|
||||
TimeSpan ts = serviceInfo.endTime.Subtract(dt);
|
||||
lastTime = (int)ts.TotalSeconds;
|
||||
}
|
||||
else
|
||||
{
|
||||
openStatus = (int)GlobalEnumVars.ServicesOpenStatus.haveExpired;
|
||||
}
|
||||
ss.Add("openStatus", openStatus);
|
||||
ss.Add("lastTime", lastTime);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
parameters.Remove("list");
|
||||
parameters.Add("list", result);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user