467 lines
19 KiB
C#
467 lines
19 KiB
C#
using Ninject;
|
||
using System;
|
||
using System.Collections.Generic;
|
||
using System.Data;
|
||
using System.Linq;
|
||
using System.Web.Mvc;
|
||
using WX.CRM.BLL.Base;
|
||
using WX.CRM.Common;
|
||
using WX.CRM.IBLL.QH;
|
||
using WX.CRM.IBLL.Res;
|
||
using WX.CRM.Model.Entity;
|
||
using WX.CRM.Model.QueryMap;
|
||
using WX.CRM.WebHelper;
|
||
|
||
namespace WX.CRM.WEB.Controllers.Csvr
|
||
{
|
||
public class CustomerQHController : BaseController
|
||
{
|
||
//
|
||
// GET: /CustomerQH/
|
||
private IQH_CUSTOMER_RESID _iqh_Customer_Resid;
|
||
private IQH_CUSTOMER _iqh_Customer;
|
||
private IQH_TRANSACTIONDETAIL _iqh_TransacyionDetail;
|
||
private IQH_CUSTOMERPOSITIONS _iqh_CustomerPositions;
|
||
ValidationErrors errors = new ValidationErrors();
|
||
|
||
[Inject]
|
||
public IRES_CUSTOMER_Q customer_Q { get; set; }
|
||
|
||
[Inject]
|
||
public IQH_DISCREPANCYGOLD QH_DiscrepancyGold_BL { get; set; }
|
||
|
||
[Inject]
|
||
public IQH_TRANSACTIONDETAIL_CACHE QH_Transactiondetail_Cache_BL { get; set; }
|
||
|
||
[Inject]
|
||
public IQH_CAPITALDETAIL QH_CapitalDetail_BL { get; set; }
|
||
|
||
|
||
|
||
public CustomerQHController(IQH_CUSTOMER_RESID qH_CUSTOMER_RESID, IQH_CUSTOMER iQH_CUSTOMER, IQH_TRANSACTIONDETAIL iQH_TRANSACTIONDETAIL, IQH_CUSTOMERPOSITIONS iQH_CUSTOMERPOSITIONS)
|
||
{
|
||
this._iqh_Customer_Resid = qH_CUSTOMER_RESID;
|
||
this._iqh_Customer = iQH_CUSTOMER;
|
||
this._iqh_TransacyionDetail = iQH_TRANSACTIONDETAIL;
|
||
this._iqh_CustomerPositions = iQH_CUSTOMERPOSITIONS;
|
||
}
|
||
public ActionResult CustomerQH(CustomerInfo info)
|
||
{
|
||
string[] resids = customer_Q.GetAllResidByCustomerId(info.CustomerId);
|
||
List<QH_CUSTOMER_RESID> qH_CUSTOMER_RESID = _iqh_Customer_Resid.GetList(resids).ToList();
|
||
QH_CUSTOMER qH_CUSTOMER = new QH_CUSTOMER();
|
||
List<QH_TRANSACTIONDETAIL> qh_TRANSACTIONDETAIL = new List<QH_TRANSACTIONDETAIL>();
|
||
List<QH_CUSTOMERPOSITIONS> qh_CUSTOMERPOSITIONS = new List<QH_CUSTOMERPOSITIONS>();
|
||
ViewBag.USERACCOUNT = "";
|
||
if (qH_CUSTOMER_RESID.Count != 0)
|
||
{
|
||
string userAccount = qH_CUSTOMER_RESID[0].USERACCOUNT;
|
||
ViewBag.USERACCOUNT = userAccount;
|
||
qH_CUSTOMER = _iqh_Customer.Get(p => p.USERACCOUNT == userAccount);
|
||
qh_TRANSACTIONDETAIL = _iqh_TransacyionDetail.GetList(p => p.USERACCOUNT == userAccount).OrderByDescending(p => p.CTIME).Take(5).ToList();
|
||
qh_CUSTOMERPOSITIONS = _iqh_CustomerPositions.GetList(p => p.USERACCOUNT == userAccount).OrderByDescending(p => p.CTIME).Take(5).ToList();
|
||
}
|
||
ViewBag.QHC = qH_CUSTOMER;
|
||
ViewBag.QHTD = qh_TRANSACTIONDETAIL;
|
||
ViewBag.QHCP = qh_CUSTOMERPOSITIONS;
|
||
return View();
|
||
}
|
||
#region 更多-成交明细(已不用)
|
||
public ActionResult TransactionDetail()
|
||
{
|
||
Pager pager = new Pager() { page = 1, rows = 10 };
|
||
string tableId = "tablist";
|
||
WebHelper.Table tab = new WebHelper.Table(tableId);
|
||
tab.AddHeadCol("USERACCOUNT", "", "资产账号");
|
||
tab.AddHeadCol("CONTRACTTYPE", "", "合约类别");
|
||
tab.AddHeadCol("CONTRACTCODE", "", "合约代码");
|
||
tab.AddHeadCol("DEPT", "", "营业部");
|
||
tab.AddHeadCol("EXCHANGE", "", "交易所");
|
||
tab.AddHeadCol("JYK", "", "净盈亏");
|
||
tab.AddHeadCol("CJJE", "", "成交金额");
|
||
tab.AddHeadCol("CJSS", "", "成交手数");
|
||
tab.AddHeadCol("CJJG", "", "成交价格");
|
||
tab.AddHeadCol("CTIME", "", "日期");
|
||
tab.AddHeadRow();
|
||
ViewBag.gridTable = tab.GetHead() + Pagination.GetPage(pager, tableId, "5,8,10,15");
|
||
return View();
|
||
}
|
||
public JsonResult GetTransactionDetailHtml(Pager pager, string UserAccount, string year, string quarter)
|
||
{
|
||
Table table = new Table("", true);
|
||
List<QH_TRANSACTIONDETAIL> list = _iqh_TransacyionDetail.GetList(ref pager, UserAccount, year, quarter);
|
||
table.gridPager = pager;
|
||
//foreach (var data in list)
|
||
//{
|
||
// table.AddCol(data.USERACCOUNT);
|
||
// table.AddCol(data.CONTRACTTYPE);
|
||
// table.AddCol(data.CONTRACTCODE);
|
||
// table.AddCol(data.DEPT);
|
||
// table.AddCol(data.EXCHANGE);
|
||
// table.AddCol(data.JYK);
|
||
// table.AddCol(data.CJJE);
|
||
// table.AddCol(data.CJSS);
|
||
// table.AddCol(data.CJJG);
|
||
// table.AddCol(data.CTIME);
|
||
// table.AddRow();
|
||
//}
|
||
var json = new
|
||
{
|
||
totalPages = pager.totalPages,
|
||
totalRows = pager.totalRows,
|
||
rowsList = table.GetRows()
|
||
};
|
||
return Json(json, JsonRequestBehavior.AllowGet);
|
||
}
|
||
#endregion
|
||
#region 更多-持仓信息(已不用)
|
||
public ActionResult CustomerPositions()
|
||
{
|
||
Pager pager = new Pager() { page = 1, rows = 10 };
|
||
string tableId = "tablist";
|
||
WebHelper.Table tab = new WebHelper.Table(tableId);
|
||
tab.AddHeadCol("USERACCOUNT", "", "资产账号");
|
||
tab.AddHeadCol("CONTRACTTYPE", "", "合约类别");
|
||
tab.AddHeadCol("CONTRACTCODE", "", "合约代码");
|
||
tab.AddHeadCol("DEPT", "", "营业部");
|
||
tab.AddHeadCol("EXCHANGE", "", "交易所");
|
||
tab.AddHeadCol("MRCC", "", "买入持仓");
|
||
tab.AddHeadCol("MCCC", "", "买出持仓");
|
||
tab.AddHeadCol("CCYK", "", "持仓盈亏");
|
||
tab.AddHeadCol("ZYK", "", "总盈亏");
|
||
tab.AddHeadCol("CTIME", "", "日期");
|
||
tab.AddHeadRow();
|
||
ViewBag.gridTable = tab.GetHead() + Pagination.GetPage(pager, tableId, "5,8,10,15");
|
||
return View();
|
||
}
|
||
public JsonResult GetCustomerPositionsHtml(Pager pager, string UserAccount, string year, string quarter)
|
||
{
|
||
Table table = new Table("", true);
|
||
List<QH_CUSTOMERPOSITIONS> list = _iqh_CustomerPositions.GetList(ref pager, UserAccount, year, quarter);
|
||
table.gridPager = pager;
|
||
foreach (var data in list)
|
||
{
|
||
table.AddCol(data.USERACCOUNT);
|
||
table.AddCol(data.CONTRACTTYPE);
|
||
table.AddCol(data.CONTRACTCODE);
|
||
table.AddCol(data.DEPT);
|
||
table.AddCol(data.EXCHANGE);
|
||
table.AddCol(data.MRCC);
|
||
table.AddCol(data.MCCC);
|
||
table.AddCol(data.CCYK);
|
||
table.AddCol(data.ZYK);
|
||
table.AddCol(data.CTIME);
|
||
table.AddRow();
|
||
}
|
||
var json = new
|
||
{
|
||
totalPages = pager.totalPages,
|
||
totalRows = pager.totalRows,
|
||
rowsList = table.GetRows()
|
||
};
|
||
return Json(json, JsonRequestBehavior.AllowGet);
|
||
}
|
||
#endregion
|
||
#region 绑定(已不用)
|
||
public ViewResult CustomerResid(CustomerInfo info)
|
||
{
|
||
ViewBag.ResId = info.CustomerId;
|
||
return View();
|
||
}
|
||
public JsonResult BindCustomerResid(string resid, string userAccount, string telephone)
|
||
{
|
||
bool result = false;
|
||
string[] resids = customer_Q.GetAllResidByCustomerId(resid);
|
||
string inputResId = WX.CRM.Common.ResUtil.CreateResId(telephone);
|
||
if (!resids.Contains(inputResId))
|
||
{
|
||
errors.Add("输入的手机号和客户ID不匹配,请确认后重新输入!");
|
||
return JsonHandler.InsertMessage(errors, result);
|
||
}
|
||
|
||
if (_iqh_Customer_Resid.Get(p => p.USERACCOUNT == userAccount) != null)
|
||
{
|
||
errors.Add("该资金账号已绑定客户ID,请重新输入!");
|
||
return JsonHandler.InsertMessage(errors, result);
|
||
}
|
||
|
||
QH_CUSTOMER_RESID qH_CUSTOMER_RESID = new QH_CUSTOMER_RESID();
|
||
qH_CUSTOMER_RESID.PKID = new SEQUENCES_BL().Seq_base_get();
|
||
qH_CUSTOMER_RESID.USERACCOUNT = userAccount;
|
||
qH_CUSTOMER_RESID.RESID = resid;
|
||
qH_CUSTOMER_RESID.CREATEUSERID = UserId;
|
||
qH_CUSTOMER_RESID.CTIME = DateTime.Now;
|
||
result = _iqh_Customer_Resid.Add(qH_CUSTOMER_RESID, ref errors);
|
||
return JsonHandler.InsertMessage(errors, result);
|
||
|
||
}
|
||
#endregion
|
||
|
||
public ViewResult CustomerFutureUC(CustomerInfo info)
|
||
{
|
||
string[] resids = customer_Q.GetAllResidByCustomerId(info.CustomerId);
|
||
int type = 2;//类型( 1:有开户申请资料 2:没有申请资料)
|
||
List<QH_CUSTOMER_RESID> modelList = _iqh_Customer_Resid.GetList(resids);
|
||
//获取fxh_customerlist数据
|
||
if (modelList != null && modelList.Count > 0)
|
||
{
|
||
type = 1;
|
||
}
|
||
else
|
||
{
|
||
type = 2;
|
||
}
|
||
ViewBag.type = type;
|
||
ViewBag.resid = info.CustomerId;
|
||
ViewBag.modelList = modelList;
|
||
var QHRecordHost = System.Configuration.ConfigurationManager.AppSettings["QHRecordHost"];
|
||
ViewBag.QHRecordHost = QHRecordHost == null ? "" : QHRecordHost;
|
||
return View();
|
||
}
|
||
|
||
public ActionResult CustomerCapitalDetailUC(string useraccount)
|
||
{
|
||
//tradecode = "45001242";
|
||
List<QH_CUSTOMER> list = new List<QH_CUSTOMER>();
|
||
try
|
||
{
|
||
if (!string.IsNullOrEmpty(useraccount))
|
||
{
|
||
list = _iqh_Customer.GetList(m => m.USERACCOUNT == useraccount).OrderByDescending(m => m.RQ).Skip(0).Take(8).ToList();
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
LogHelper.Error(ex.Message);
|
||
}
|
||
ViewBag.UserAccount = useraccount;
|
||
return View(list);
|
||
}
|
||
|
||
public ActionResult CustomerDiscGoldDetailUC(string useraccount)
|
||
{
|
||
//tradecode = "45001242";
|
||
List<QH_DISCREPANCYGOLD> list = new List<QH_DISCREPANCYGOLD>();
|
||
try
|
||
{
|
||
if (!string.IsNullOrEmpty(useraccount))
|
||
{
|
||
list = QH_DiscrepancyGold_BL.GetList(m => m.USERACCOUNT == useraccount).OrderByDescending(m => m.RQ).Skip(0).Take(8).ToList();
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
LogHelper.Error(ex.Message);
|
||
}
|
||
ViewBag.UserAccount = useraccount;
|
||
return View(list);
|
||
}
|
||
|
||
public ActionResult CustomerTransactionDetailUC(string useraccount)
|
||
{
|
||
//tradecode = "45001242";
|
||
List<QH_TRANSACTIONDETAIL_CACHE> list = new List<QH_TRANSACTIONDETAIL_CACHE>();
|
||
try
|
||
{
|
||
if (!string.IsNullOrEmpty(useraccount))
|
||
{
|
||
list = QH_Transactiondetail_Cache_BL.GetList(m => m.USERACCOUNT == useraccount).OrderByDescending(m => m.CJRQ).Skip(0).Take(8).ToList();
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
LogHelper.Error(ex.Message);
|
||
}
|
||
ViewBag.UserAccount = useraccount;
|
||
return View(list);
|
||
}
|
||
|
||
public ActionResult CustomerFutureLoadUC()
|
||
{
|
||
return View();
|
||
}
|
||
|
||
|
||
#region 更多资金明细
|
||
public ActionResult CustomerCapitalList()
|
||
{
|
||
Pager pager = new Pager() { page = 1, rows = 20 };
|
||
string tableId = "tablist";
|
||
WebHelper.Table tab = new WebHelper.Table(tableId);
|
||
tab.AddHeadCol("USERACCOUNT", "", "资产账号");
|
||
tab.AddHeadCol("TEAM", "", "所属组");
|
||
tab.AddHeadCol("RQ", "", "日期");
|
||
tab.AddHeadCol("BZ", "", "币种");
|
||
tab.AddHeadCol("SCJSZBJ", "", "上次结算准备金");
|
||
tab.AddHeadCol("RJ", "", "入金");
|
||
tab.AddHeadCol("CJ", "", "出金");
|
||
tab.AddHeadCol("JTQY", "", "静态权益");
|
||
tab.AddHeadCol("PCYK", "", "平仓盈亏");
|
||
tab.AddHeadCol("CCYK", "", "持仓盈亏");
|
||
tab.AddHeadCol("SXF", "", "手续费");
|
||
tab.AddHeadCol("DTQY", "", "动态权益");
|
||
tab.AddHeadCol("ZYBZJ", "", "占用保证金");
|
||
tab.AddHeadCol("DJSXF", "", "冻结手续费");
|
||
tab.AddHeadCol("DJBZJ", "", "冻结保证金");
|
||
tab.AddHeadCol("KYZJ", "", "可用资金");
|
||
tab.AddHeadCol("KQZJ", "", "可取资金");
|
||
tab.AddHeadCol("JYSBZJ", "", "交易所保证金");
|
||
tab.AddHeadCol("SQFY", "", "申请费用");
|
||
tab.AddHeadRow();
|
||
ViewBag.gridTable = tab.GetHead() + Pagination.GetPage(pager, tableId, "10,15,20,30");
|
||
return View();
|
||
}
|
||
|
||
public JsonResult GetCustomerCapitalListHtml(Pager pager, string useraccount)
|
||
{
|
||
Table table = new Table("", true);
|
||
List<QH_CAPITALDETAIL> list = QH_CapitalDetail_BL.GetList(ref pager, useraccount);
|
||
table.gridPager = pager;
|
||
foreach (var data in list)
|
||
{
|
||
table.AddCol(data.USERACCOUNT);
|
||
table.AddCol(data.TEAM);
|
||
table.AddCol(data.RQ.Value.ToString("yyyy-MM-dd"));
|
||
table.AddCol(data.BZ);
|
||
table.AddCol(data.SCJSZBJ);
|
||
table.AddCol(data.RJ);
|
||
table.AddCol(data.CJ);
|
||
table.AddCol(data.JTQY);
|
||
table.AddCol(data.PCYK);
|
||
table.AddCol(data.CCYK);
|
||
table.AddCol(data.SXF);
|
||
table.AddCol(data.DTQY);
|
||
table.AddCol(data.ZYBZJ);
|
||
table.AddCol(data.DJSXF);
|
||
table.AddCol(data.DJBZJ);
|
||
table.AddCol(data.KYZJ);
|
||
table.AddCol(data.KQZJ);
|
||
table.AddCol(data.JYSBZJ);
|
||
table.AddCol(data.SQFY);
|
||
table.AddRow();
|
||
}
|
||
var json = new
|
||
{
|
||
totalPages = pager.totalPages,
|
||
totalRows = pager.totalRows,
|
||
rowsList = table.GetRows()
|
||
};
|
||
return Json(json, JsonRequestBehavior.AllowGet);
|
||
}
|
||
#endregion
|
||
|
||
#region 更多出入金
|
||
public ActionResult CustomerDiscGoldList()
|
||
{
|
||
Pager pager = new Pager() { page = 1, rows = 20 };
|
||
string tableId = "tablist";
|
||
WebHelper.Table tab = new WebHelper.Table(tableId);
|
||
tab.AddHeadCol("TEAM", "", "所属组");
|
||
tab.AddHeadCol("USERACCOUNT", "", "账户");
|
||
tab.AddHeadCol("ACCOUNTNAME", "", "账户名称");
|
||
tab.AddHeadCol("BZ", "", "币种");
|
||
tab.AddHeadCol("CRJLX", "", "出入金类型");
|
||
tab.AddHeadCol("JE", "", "金额");
|
||
tab.AddHeadCol("ZYZJ", "", "自有资金");
|
||
tab.AddHeadCol("BJ", "", "本金");
|
||
tab.AddHeadCol("RQ", "", "日期");
|
||
tab.AddHeadCol("CZ", "", "操作");
|
||
tab.AddHeadRow();
|
||
ViewBag.gridTable = tab.GetHead() + Pagination.GetPage(pager, tableId, "10,15,20,30");
|
||
return View();
|
||
}
|
||
|
||
public JsonResult GetCustomerDiscGoldListHtml(Pager pager, string useraccount)
|
||
{
|
||
Table table = new Table("", true);
|
||
List<QH_DISCREPANCYGOLD> list = QH_DiscrepancyGold_BL.GetList(ref pager, useraccount);
|
||
table.gridPager = pager;
|
||
foreach (var data in list)
|
||
{
|
||
table.AddCol(data.TEAM);
|
||
table.AddCol(data.USERACCOUNT);
|
||
table.AddCol(data.ACCOUNTNAME);
|
||
table.AddCol(data.BZ);
|
||
table.AddCol(data.CRJLX);
|
||
table.AddCol(data.JE);
|
||
table.AddCol(data.ZYZJ);
|
||
table.AddCol(data.BJ);
|
||
table.AddCol(data.RQ.Value.ToString("yyyy-MM-dd HH:mm"));
|
||
table.AddCol(data.CZ);
|
||
table.AddRow();
|
||
}
|
||
var json = new
|
||
{
|
||
totalPages = pager.totalPages,
|
||
totalRows = pager.totalRows,
|
||
rowsList = table.GetRows()
|
||
};
|
||
return Json(json, JsonRequestBehavior.AllowGet);
|
||
}
|
||
#endregion
|
||
|
||
#region 更多交易明细
|
||
public ActionResult CustomerTransactionList()
|
||
{
|
||
Pager pager = new Pager() { page = 1, rows = 20 };
|
||
string tableId = "tablist";
|
||
WebHelper.Table tab = new WebHelper.Table(tableId);
|
||
tab.AddHeadCol("TEAM", "", "所属组");
|
||
tab.AddHeadCol("EXCHANGE", "", "交易所");
|
||
tab.AddHeadCol("USERACCOUNT", "", "账户");
|
||
tab.AddHeadCol("ACCOUNTNAME", "", "账户名");
|
||
tab.AddHeadCol("PRODUCTNAME", "", "品种");
|
||
tab.AddHeadCol("CONTRACTCODE", "", "合约代码");
|
||
tab.AddHeadCol("MM", "", "买卖");
|
||
tab.AddHeadCol("KP", "", "开平");
|
||
tab.AddHeadCol("CJBH", "", "成交编号");
|
||
tab.AddHeadCol("CJJG", "", "成交价格");
|
||
tab.AddHeadCol("CJRQ", "", "成交日期");
|
||
tab.AddHeadCol("CJSL", "", "成交数量");
|
||
tab.AddHeadCol("BDBH", "", "报单编号");
|
||
tab.AddHeadCol("TB", "", "投保");
|
||
tab.AddHeadCol("ZHSXF", "", "账户手续费");
|
||
tab.AddHeadCol("JYSSXF", "", "交易所手续费");
|
||
tab.AddHeadRow();
|
||
ViewBag.gridTable = tab.GetHead() + Pagination.GetPage(pager, tableId, "10,15,20,30");
|
||
return View();
|
||
}
|
||
|
||
public JsonResult GetCustomerTransactionHtml(Pager pager, string useraccount)
|
||
{
|
||
Table table = new Table("", true);
|
||
List<QH_TRANSACTIONDETAIL> list = _iqh_TransacyionDetail.GetList(ref pager, useraccount);
|
||
table.gridPager = pager;
|
||
foreach (var data in list)
|
||
{
|
||
table.AddCol(data.TEAM);
|
||
table.AddCol(data.EXCHANGE);
|
||
table.AddCol(data.USERACCOUNT);
|
||
table.AddCol(data.ACCOUNTNAME);
|
||
table.AddCol(data.PRODUCTNAME);
|
||
table.AddCol(data.CONTRACTCODE);
|
||
table.AddCol(data.MM);
|
||
table.AddCol(data.KP);
|
||
table.AddCol(data.CJBH);
|
||
table.AddCol(data.CJJG);
|
||
table.AddCol(data.CJRQ.Value.ToString("yyyy-MM-dd HH:mm"));
|
||
table.AddCol(data.CJSL);
|
||
table.AddCol(data.BDBH);
|
||
table.AddCol(data.TB);
|
||
table.AddCol(data.ZHSXF);
|
||
table.AddCol(data.JYSSXF);
|
||
table.AddRow();
|
||
}
|
||
var json = new
|
||
{
|
||
totalPages = pager.totalPages,
|
||
totalRows = pager.totalRows,
|
||
rowsList = table.GetRows()
|
||
};
|
||
return Json(json, JsonRequestBehavior.AllowGet);
|
||
}
|
||
#endregion
|
||
|
||
}
|
||
}
|