234 lines
9.1 KiB
C#
234 lines
9.1 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Data;
|
|
using System.Globalization;
|
|
using System.IO;
|
|
using System.Web;
|
|
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 SzzyPrepaymentController : BaseController
|
|
{
|
|
public IWX_SZZYPREPAYMENT WX_SzzyPrement_BL { get; set; }
|
|
|
|
public SzzyPrepaymentController() { }
|
|
|
|
[AuthorizeRedirect(Roles = InitRights.CONST_定金上传)]
|
|
public ActionResult Index()
|
|
{
|
|
//ToolBar
|
|
ToolBar tool = new ToolBar();
|
|
string[] toolbtn = new ToolButtonView().ToolButtonRight(InitRights.定金上传, userRightId);
|
|
tool.AllowButton(toolbtn);
|
|
tool.AddOtherButton("Other1", "上传定金", "icon-detail", "Upload_Click", true);
|
|
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("PREPAYMENTID", "", "定金编号");
|
|
tab.AddHeadCol("USERID", "", "用户ID");
|
|
tab.AddHeadCol("RESID", "", "客户ID");
|
|
tab.AddHeadCol("REALNAME", "", "姓名");
|
|
tab.AddHeadCol("TOBANKNAME", "", "收款银行");
|
|
tab.AddHeadCol("REMITTIME", "", "汇款日期");
|
|
tab.AddHeadCol("AMOUNT", "", "定金金额");
|
|
tab.AddHeadCol("SZZYORDERID", "", "定金支付的订单号");
|
|
|
|
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 prepaymentId, string resId, string realName, decimal? szzyOrderId, string columns)
|
|
{
|
|
|
|
List<WX_SZZYPREPAYMENT> list = WX_SzzyPrement_BL.GetList(ref pager, prepaymentId, resId, realName, szzyOrderId);
|
|
Table table = new Table(columns, true);
|
|
table.gridPager = pager;
|
|
foreach (var model in list)
|
|
{
|
|
table.AddHiddenCol(model.PKID);
|
|
table.AddCol(model.PREPAYMENTID);
|
|
table.AddCol(model.USERID);
|
|
var linkUrl = "";
|
|
if (!string.IsNullOrEmpty(model.RESID))
|
|
{
|
|
string.Format("<a href=\"javascript:parent.ChildAddTab('{0}', '{1}', '')\">{2}</a>"
|
|
, "客户详细"
|
|
, "/Csvr/CustomerInfo/CustomerDetail?resid=" + model.RESID
|
|
, model.RESID);
|
|
}
|
|
|
|
table.AddCol(linkUrl);
|
|
table.AddCol(model.REALNAME);
|
|
table.AddCol(model.TOBANKNAME);
|
|
table.AddCol(model.REMITTIME);
|
|
table.AddCol(model.AMOUNT);
|
|
table.AddCol(model.SZZYORDERID);
|
|
|
|
table.AddRow();
|
|
}
|
|
var json = new
|
|
{
|
|
totalPages = pager.totalPages,
|
|
totalRows = pager.totalRows,
|
|
rowsList = table.GetRows()
|
|
};
|
|
return Json(json, JsonRequestBehavior.AllowGet);
|
|
}
|
|
|
|
[AuthorizeToolBar(InitRights.CONST_定金上传, InitToolBar.CONST_Other1)]
|
|
public ActionResult PrepaymentUpload()
|
|
{
|
|
|
|
return View();
|
|
}
|
|
|
|
[AcceptVerbs(HttpVerbs.Post)]
|
|
public JsonResult Upload(HttpPostedFileBase fileData)
|
|
{
|
|
if (fileData != null)
|
|
{
|
|
try
|
|
{
|
|
//文件上传后的保存路径
|
|
string filePath = Server.MapPath("~/UploadFile/PrepaymentPay/");
|
|
if (!Directory.Exists(filePath))
|
|
{
|
|
Directory.CreateDirectory(filePath);
|
|
}
|
|
string fileName = Path.GetFileName(fileData.FileName);//原始文件名称
|
|
string fileExtension = Path.GetExtension(fileName); //文件扩展名
|
|
string saveName = Guid.NewGuid() + fileExtension; //保存文件名称
|
|
|
|
fileData.SaveAs(filePath + saveName);
|
|
bool timeIsEmpty = false;
|
|
handleArrivalUpload(saveName, ref timeIsEmpty);
|
|
if (!timeIsEmpty)
|
|
{
|
|
return Json(new
|
|
{
|
|
Success = true,
|
|
Message = "上传成功"
|
|
});
|
|
}
|
|
else
|
|
{
|
|
return Json(new
|
|
{
|
|
Success = false,
|
|
Message = "更新失败,文件中到账时间格式有误"
|
|
});
|
|
}
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
LogHelper.Error(ex);
|
|
return Json(new { Success = false, Message = ex.Message }, JsonRequestBehavior.AllowGet);
|
|
}
|
|
}
|
|
return Json(new { Success = false, Message = "请选择要上传的文件!" }, JsonRequestBehavior.AllowGet);
|
|
}
|
|
|
|
public void handleArrivalUpload(string file, ref bool timeIsEmpty)
|
|
{
|
|
string str = "";
|
|
DataTable dt = null;
|
|
try
|
|
{
|
|
NPOIHelper.InitializeWorkbook_xls(AppDomain.CurrentDomain.BaseDirectory + "UploadFile\\PrepaymentPay\\" + file);
|
|
dt = NPOIHelper.ConvertToDataTable();
|
|
|
|
//TempData["uploadtable"] = dt;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
LogHelper.Error(ex);
|
|
}
|
|
|
|
if (dt.Rows.Count > 0 || dt.Columns.Count == 3)
|
|
{
|
|
for (int i = 0; i < dt.Rows.Count; i++)
|
|
{
|
|
DataRow model = dt.Rows[i];
|
|
string prepaymentId = model[0].ToString();
|
|
string userId = model[1].ToString();
|
|
string resId = model[2].ToString();
|
|
string realName = model[3].ToString();
|
|
string toBankName = model[4].ToString();
|
|
|
|
DateTime remitTime = DateTime.MinValue;
|
|
if (model[5] != null && !string.IsNullOrWhiteSpace(model[5].ToString()))
|
|
{
|
|
if (!DateTime.TryParse(model[5].ToString(), out remitTime))
|
|
{
|
|
DateTime.TryParseExact(model[5].ToString(), "dd/MM/yy hh:mm", new CultureInfo("en-US"), DateTimeStyles.None, out remitTime);
|
|
}
|
|
}
|
|
if (remitTime == null || remitTime == DateTime.MinValue)
|
|
{
|
|
timeIsEmpty = true;
|
|
continue;
|
|
|
|
}
|
|
decimal amount = Convert.ToDecimal(model[6]);
|
|
decimal szzyOrderid = Convert.ToDecimal(model[7]);
|
|
decimal salerEid = Convert.ToDecimal(model[8]);
|
|
decimal salerUserId = InnerUserHelper.Instance.GetUserIdByEid(salerEid);
|
|
|
|
WX_SZZYPREPAYMENT prepayment = WX_SzzyPrement_BL.Get(m => m.PREPAYMENTID == prepaymentId);
|
|
|
|
if (prepayment == null)
|
|
{
|
|
WX_SZZYPREPAYMENT m = new WX_SZZYPREPAYMENT();
|
|
m.PKID = new SEQUENCES_BL().Seq_base_get();
|
|
m.PREPAYMENTID = prepaymentId;
|
|
m.USERID = userId;
|
|
m.RESID = resId;
|
|
m.REALNAME = realName;
|
|
m.TOBANKNAME = toBankName;
|
|
m.REMITTIME = remitTime;
|
|
m.AMOUNT = amount;
|
|
m.SZZYORDERID = szzyOrderid;
|
|
m.INNERUSERID = UserId;
|
|
m.CTIME = DateTime.Now;
|
|
m.SALEREID = salerEid;
|
|
m.SALERUSERID = salerUserId;
|
|
WX_SzzyPrement_BL.Add(m);
|
|
}
|
|
else
|
|
{
|
|
prepayment.USERID = userId;
|
|
prepayment.RESID = resId;
|
|
prepayment.REALNAME = realName;
|
|
prepayment.TOBANKNAME = toBankName;
|
|
prepayment.REMITTIME = remitTime;
|
|
prepayment.AMOUNT = amount;
|
|
prepayment.SZZYORDERID = szzyOrderid;
|
|
prepayment.INNERUSERID = UserId;
|
|
prepayment.CTIME = DateTime.Now;
|
|
prepayment.SALEREID = salerEid;
|
|
prepayment.SALERUSERID = salerUserId;
|
|
WX_SzzyPrement_BL.Update(prepayment);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
}
|