using Lottomat.Application.Entity.SystemManage;
using Lottomat.Application.IService.SystemManage;
using Lottomat.Data.Repository;
using Lottomat.Util.WebControl;
using System.Collections.Generic;
using System.Linq;
using Lottomat.Application.Code;
using Lottomat.Application.Entity.LotteryNumberManage;
using Lottomat.Util.Extension;
using Lottomat.Utils.Date;
using Newtonsoft.Json.Linq;
namespace Lottomat.Application.Service.SystemManage
{
///
/// 版 本 1.0
/// Copyright (c) 2016-2017
/// 创 建:超级管理员
/// 日 期:2017-12-18 10:55
/// 描 述:意见反馈
///
public class FeedbackService : RepositoryFactory, IFeedbackService
{
#region 获取数据
///
/// 获取列表
///
/// 分页
/// 查询参数
/// 返回分页列表
public IEnumerable GetPageList(Pagination pagination, string queryJson)
{
var expression = LinqExtensions.True();
JObject queryParam = queryJson.ToJObject();
if (queryParam != null)
{
if (!queryParam["NickName"].IsEmpty())
{
string NickName = queryParam["NickName"].ToString();
expression = expression.And(t => t.NickName.Contains(NickName));
}
if (!queryParam["Contact"].IsEmpty())
{
string Contact = queryParam["Contact"].ToString();
expression = expression.And(t => t.Contact.Contains(Contact));
}
}
return this.BaseRepository().FindList(expression, pagination);
}
///
/// 获取列表
///
/// 查询参数
/// 返回列表
public IEnumerable GetList(string queryJson)
{
return this.BaseRepository().IQueryable().ToList();
}
///
/// 获取实体
///
/// 主键值
///
public FeedbackEntity GetEntity(string keyValue)
{
return this.BaseRepository().FindEntity(keyValue);
}
#endregion
#region 提交数据
///
/// 删除数据
///
/// 主键
public void RemoveForm(string keyValue)
{
this.BaseRepository().Delete(keyValue);
}
///
/// 保存表单(新增、修改)
///
/// 主键值
/// 实体对象
///
public int SaveForm(string keyValue, FeedbackEntity entity, string which)
{
if (!string.IsNullOrEmpty(keyValue))
{
if (which == "1")
{
entity.IsReply = true;
entity.ReplyTime = DateTimeHelper.Now;
entity.ReplyUserName = entity.ReplyUserName == ""
? OperatorProvider.Provider.Current().UserName
: entity.ReplyUserName;
}
entity.Modify(keyValue);
return this.BaseRepository().Update(entity);
}
else
{
entity.Create();
return this.BaseRepository().Insert(entity);
}
}
#endregion
}
}