176 lines
7.1 KiB
C#
176 lines
7.1 KiB
C#
using Ninject;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Web.Mvc;
|
|
using WX.CRM.BLL.Base;
|
|
using WX.CRM.Common;
|
|
using WX.CRM.IBLL.Wx;
|
|
using WX.CRM.Model.Entity;
|
|
using WX.CRM.WebHelper;
|
|
|
|
namespace WX.CRM.WEB.Controllers.WeiXin
|
|
{
|
|
public class StockRecommendController : BaseController
|
|
{
|
|
ValidationErrors errors = new ValidationErrors();
|
|
|
|
[Inject]
|
|
public IWX_STOCKRECOMMEND wx_StockReCommend_BL { get; set; }
|
|
|
|
[AuthorizeRedirect(Roles = InitRights.CONST_分析师荐股)]
|
|
public ActionResult Index()
|
|
{
|
|
//ToolBar
|
|
ToolBar tool = new ToolBar();
|
|
string[] toolbtn = new ToolButtonView().ToolButtonRight(InitRights.分析师荐股, userRightId);
|
|
tool.AllowButton(toolbtn);
|
|
//tool.AllowButton("Create", "Edit", "Details", "Delete");
|
|
ViewBag.ToolBar = tool;
|
|
|
|
//table
|
|
Pager pager = new Pager() { page = 1, rows = 20 };
|
|
string tableId = "tablist";
|
|
Table tab = new Table(tableId);
|
|
tab.AddHiddenHeadCol("PKID", "编号");
|
|
tab.AddHeadCol("REFERRERID", "", "荐股人");
|
|
tab.AddHeadCol("STOCKCODE", "", "股票号");
|
|
tab.AddHeadCol("STOCKNAME", "", "股票名");
|
|
tab.AddHeadCol("BUYPRICE", "", "建仓价格");
|
|
tab.AddHeadCol("BUYDATE", "", "建仓时间");
|
|
tab.AddHeadCol("STOPLOSSPRICE", "", "止损价格");
|
|
tab.AddHeadCol("POSITION", "", "仓位");
|
|
tab.AddHeadCol("SELLDATEANDPRICE", "", "卖出时间与价格");
|
|
tab.AddHeadCol("EARNINGRATE", "", "收益率");
|
|
tab.AddHeadRow();
|
|
ViewBag.gridTable = tab.GetHead() + Pagination.GetPage(pager, tableId, "5,10,15,20");
|
|
return View();
|
|
}
|
|
|
|
[HttpPost]
|
|
[AuthorizeRedirect(Roles = InitRights.CONST_分析师荐股)]
|
|
public JsonResult GetHtmlList(Pager pager, string eid, string stockCode, string stockName, string stime, string etime, string columns)
|
|
{
|
|
decimal? userId = null;
|
|
if (!string.IsNullOrWhiteSpace(eid))
|
|
{
|
|
decimal decEid = 0;
|
|
decimal.TryParse(eid, out decEid);
|
|
userId = InnerUserHelper.Instance.GetUserIdByEid(decEid);
|
|
}
|
|
|
|
List<WX_STOCKRECOMMEND> list = wx_StockReCommend_BL.GetList(ref pager, userId, stockCode, stockName, stime, etime);
|
|
|
|
Table table = new Table(columns, true);
|
|
table.gridPager = pager;
|
|
foreach (var model in list)
|
|
{
|
|
table.AddHiddenCol(model.PKID);
|
|
table.AddCol(InnerUserHelper.Instance.GetEidAndTrueName(model.REFERRERID));
|
|
table.AddCol(model.STOCKCODE);
|
|
table.AddCol(model.STOCKNAME);
|
|
table.AddCol(model.BUYPRICE);
|
|
table.AddCol(string.Format("{0:yyyy-MM-dd}", model.BUYDATE));
|
|
table.AddCol(model.STOPLOSSPRICE);
|
|
table.AddCol(string.Format("{0}%", model.POSITION));
|
|
table.AddCol(model.SELLDATEANDPRICE);
|
|
table.AddCol(model.EARNINGRATE > 0 ? string.Format("<span style='color:red'>{0}%</span>", model.EARNINGRATE) : string.Format("<span style='color:green'>{0}%</span>", model.EARNINGRATE));
|
|
table.AddRow();
|
|
}
|
|
var json = new
|
|
{
|
|
totalPages = pager.totalPages,
|
|
totalRows = pager.totalRows,
|
|
rowsList = table.GetRows()
|
|
};
|
|
return Json(json, JsonRequestBehavior.AllowGet);
|
|
}
|
|
|
|
[AuthorizeRedirect(Roles = InitRights.CONST_分析师荐股)]
|
|
public ActionResult Edit(string id)
|
|
{
|
|
string eid = "";
|
|
WX_STOCKRECOMMEND model = null;
|
|
if (id == null)
|
|
{
|
|
model = new WX_STOCKRECOMMEND();
|
|
// 数据初始化
|
|
}
|
|
else
|
|
{
|
|
var pkid = Convert.ToDecimal(id);
|
|
model = wx_StockReCommend_BL.Get(m => m.PKID == pkid);
|
|
eid = InnerUserHelper.Instance.GetEid(model.REFERRERID);
|
|
}
|
|
ViewBag.eid = eid;
|
|
return View(model);
|
|
}
|
|
|
|
[HttpPost]
|
|
[AuthorizeToolBar(InitRights.CONST_分析师荐股, InitToolBar.CONST_Add)]
|
|
public JsonResult Edit(WX_STOCKRECOMMEND model, string eid)
|
|
{
|
|
if (!ModelState.IsValid)
|
|
{
|
|
return JsonHandler.ValidateFailMessage();
|
|
}
|
|
decimal decEid = 0;
|
|
decimal.TryParse(eid, out decEid);
|
|
var referrerid = InnerUserHelper.Instance.GetUserIdByEid(decEid);
|
|
if (referrerid <= 1)
|
|
{
|
|
errors.Add("分析师工号不存在!");
|
|
return JsonHandler.InsertMessage(errors, false);
|
|
}
|
|
if (string.IsNullOrEmpty(model.STOCKCODE))
|
|
{
|
|
errors.Add("股票号不能为空!");
|
|
return JsonHandler.InsertMessage(errors, false);
|
|
}
|
|
if (string.IsNullOrEmpty(model.STOCKNAME))
|
|
{
|
|
errors.Add("股票名称不能为空!");
|
|
return JsonHandler.InsertMessage(errors, false);
|
|
}
|
|
if (!model.BUYDATE.HasValue)
|
|
{
|
|
errors.Add("建仓时间不能为空!");
|
|
return JsonHandler.InsertMessage(errors, false);
|
|
}
|
|
if (model.PKID == 0)
|
|
{
|
|
model.PKID = new SEQUENCES_BL().Seq_base_get();
|
|
model.REFERRERID = referrerid;
|
|
model.INNERUSERID = UserId;
|
|
model.CTIME = DateTime.Now;
|
|
bool result = wx_StockReCommend_BL.Add(model) == 1;
|
|
return JsonHandler.InsertMessage(errors, result);
|
|
}
|
|
else
|
|
{
|
|
model.INNERUSERID = UserId;
|
|
model.REFERRERID = referrerid;
|
|
bool result = wx_StockReCommend_BL.Update(model);
|
|
return JsonHandler.UpdateMessage(errors, result);
|
|
}
|
|
}
|
|
|
|
[HttpGet]
|
|
[AuthorizeToolBar(InitRights.CONST_分析师荐股, InitToolBar.CONST_Details)]
|
|
public ActionResult Detail(string id)
|
|
{
|
|
var oId = Convert.ToDecimal(id);
|
|
var model = wx_StockReCommend_BL.Get(m => m.PKID == oId);
|
|
//if (!string.IsNullOrWhiteSpace(model.SELLDATEANDPRICE))
|
|
//{
|
|
// model.SELLDATEANDPRICE = model.SELLDATEANDPRICE.Replace("\r\n", "<br/>").Replace("\n", "<br/>");
|
|
//}
|
|
//if (!string.IsNullOrWhiteSpace(model.RECOMMENDREASON))
|
|
//{
|
|
// model.RECOMMENDREASON = model.RECOMMENDREASON.Replace("\r\n", "<br/>").Replace("\n", "<br/>");
|
|
//}
|
|
ViewBag.SellDateAndPrice = !string.IsNullOrWhiteSpace(model.SELLDATEANDPRICE) ? model.SELLDATEANDPRICE.Replace("\r\n", "<br/>").Replace("\n", "<br/>") : model.SELLDATEANDPRICE;
|
|
ViewBag.referrer = InnerUserHelper.Instance.GetEidAndTrueName(model.REFERRERID);
|
|
return View(model);
|
|
}
|
|
}
|
|
} |