You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
327 lines
15 KiB
C#
327 lines
15 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Data;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Text.RegularExpressions;
|
|
using System.Web;
|
|
using DSWebMobileService.Common;
|
|
using DSWeb.Areas.Account.DAL.Chfee_Payapplication;
|
|
using DSWeb.Areas.Account.Models.Chfee_Payapplication;
|
|
using Newtonsoft.Json;
|
|
using HcUtility.Comm;
|
|
|
|
namespace DSWebMobile.Handler
|
|
{
|
|
/// <summary>
|
|
/// Payment 的摘要说明
|
|
/// </summary>
|
|
public class Payment : IHttpHandler, System.Web.SessionState.IRequiresSessionState
|
|
{
|
|
|
|
public void ProcessRequest(HttpContext context)
|
|
{
|
|
string action = context.Request.QueryString["action"].ToString();
|
|
switch (action)
|
|
{
|
|
case "0":
|
|
GetDataList(context);
|
|
break;
|
|
case "1":
|
|
GetDataInfo(context);
|
|
break;
|
|
case "2":
|
|
GetDataDetailList(context);
|
|
break;
|
|
case "3":
|
|
//GetDataBalanceList(context);
|
|
break;
|
|
case "4":
|
|
SubmitAudit(context);
|
|
break;
|
|
case "5":
|
|
SubmitAuditBack(context);
|
|
break;
|
|
case "6":
|
|
//GetReason(context);
|
|
break;
|
|
}
|
|
}
|
|
|
|
private void SubmitAuditBack(HttpContext context)
|
|
{
|
|
string relGID = "";
|
|
//string relReason = "";
|
|
|
|
string id = Encrypt.DesDecrypt("#7c&e@63", context.Request.QueryString["gid"].ToString());
|
|
//string reason = Encrypt.DesDecrypt("#7c&e@63", context.Request.QueryString["r"].ToString());
|
|
|
|
string pattern = "\0";
|
|
string replacement = "";
|
|
|
|
Regex rgx = new Regex(pattern);
|
|
relGID = rgx.Replace(id, replacement);
|
|
//relReason = rgx.Replace(reason, replacement);
|
|
pattern = "\t";
|
|
Regex rgx2 = new Regex(pattern);
|
|
relGID = rgx2.Replace(relGID, relGID);
|
|
//relReason = rgx2.Replace(relReason, relReason);
|
|
|
|
List<ChPayapplication> dataList = ChpayapplicationDAL.GetAuditDataList("", Convert.ToString(SessionUtil.Session["USERID"]), "", Convert.ToString(SessionUtil.Session["UserName"]), Convert.ToString(SessionUtil.Session["COMPANYID"]), "");
|
|
//List<ChPayapplication> list = dataList.Where(p => p.GID == relGID);
|
|
List<ChPayapplication> listPay = new List<ChPayapplication>();
|
|
ChPayapplication listItem = new ChPayapplication();
|
|
|
|
foreach (ChPayapplication temp in dataList)
|
|
{
|
|
if (temp.GID == relGID)
|
|
{
|
|
listItem.BILLNO = temp.BILLNO;
|
|
listItem.BILLSTATUS = temp.BILLSTATUS;
|
|
listPay.Add(listItem);
|
|
}
|
|
}
|
|
|
|
//List<ChPayapplication> result = //JsonConvert.SerializeObject(list);
|
|
|
|
DBResult result = ChpayapplicationDAL.AuditBackList(listPay, SessionUtil.Session["USERID"].ToString());
|
|
|
|
StringBuilder sb = new StringBuilder();
|
|
if (!result.Success) { sb.Append("[{\"result\":\"fail\"}]"); }
|
|
else { sb.Append("[{\"result\":\"success\"}]"); }
|
|
context.Response.ContentType = "text/plain";
|
|
context.Response.Write(sb.ToString());
|
|
context.Response.End();
|
|
}
|
|
|
|
private void SubmitAudit(HttpContext context)
|
|
{
|
|
string relGID = "";
|
|
//string relReason = "";
|
|
|
|
string id = Encrypt.DesDecrypt("#7c&e@63", context.Request.QueryString["gid"].ToString());
|
|
//string reason = Encrypt.DesDecrypt("#7c&e@63", context.Request.QueryString["r"].ToString());
|
|
|
|
string pattern = "\0";
|
|
string replacement = "";
|
|
|
|
Regex rgx = new Regex(pattern);
|
|
relGID = rgx.Replace(id, replacement);
|
|
//relReason = rgx.Replace(reason, replacement);
|
|
pattern = "\t";
|
|
Regex rgx2 = new Regex(pattern);
|
|
relGID = rgx2.Replace(relGID, relGID);
|
|
//relReason = rgx2.Replace(relReason, relReason);
|
|
|
|
List<ChPayapplication> dataList = ChpayapplicationDAL.GetAuditDataList("", Convert.ToString(SessionUtil.Session["USERID"]), "", Convert.ToString(SessionUtil.Session["UserName"]), Convert.ToString(SessionUtil.Session["COMPANYID"]), "");
|
|
//List<ChPayapplication> list = dataList.Where(p => p.GID == relGID);
|
|
List<ChPayapplication> listPay = new List<ChPayapplication>();
|
|
ChPayapplication listItem = new ChPayapplication();
|
|
|
|
foreach (ChPayapplication temp in dataList) {
|
|
if (temp.GID == relGID)
|
|
{
|
|
listItem.BILLNO = temp.BILLNO;
|
|
listItem.BILLSTATUS = temp.BILLSTATUS;
|
|
listPay.Add(listItem);
|
|
}
|
|
}
|
|
|
|
//List<ChPayapplication> result = //JsonConvert.SerializeObject(list);
|
|
|
|
DBResult result = ChpayapplicationDAL.AuditList(listPay, SessionUtil.Session["USERID"].ToString());
|
|
|
|
StringBuilder sb = new StringBuilder();
|
|
if (!result.Success) { sb.Append("[{\"result\":\"fail\"}]"); }
|
|
else { sb.Append("[{\"result\":\"success\"}]"); }
|
|
context.Response.ContentType = "text/plain";
|
|
context.Response.Write(sb.ToString());
|
|
context.Response.End();
|
|
}
|
|
|
|
private void GetDataDetailList(HttpContext context)
|
|
{
|
|
string relBillNo = "";
|
|
|
|
string billNo = Encrypt.DesDecrypt("#7c&e@63", context.Request.QueryString["b"].ToString());
|
|
|
|
string pattern = "\0";
|
|
string replacement = "";
|
|
|
|
Regex rgx = new Regex(pattern);
|
|
relBillNo = rgx.Replace(billNo, replacement);
|
|
pattern = "\t";
|
|
Regex rgx2 = new Regex(pattern);
|
|
relBillNo = rgx2.Replace(relBillNo, replacement);
|
|
|
|
/*DataTable dt = BaseInfo.PaymentAuditingListDBServer.PaymentAuditingDetailList(relCacheKey, relBillNo);
|
|
|
|
StringBuilder sb = new StringBuilder();
|
|
if (dt == null || dt.Rows.Count == 0) { sb.Append("[{\"GID\":\"\"}]"); }
|
|
else { sb.Append(JsonClass.DataTable2JsonNoneTotalCount(dt)); }*/
|
|
var dataList = ChpayapplicationDAL.GetBodyAuditList("c.BILLNO = '" + relBillNo + "'", null);
|
|
string result = JsonConvert.SerializeObject(dataList);
|
|
|
|
context.Response.ContentType = "text/plain";
|
|
context.Response.Write(result);
|
|
context.Response.End();
|
|
}
|
|
|
|
private void GetDataInfo(HttpContext context)
|
|
{
|
|
string relStrCondition = "";
|
|
string relGID = "";
|
|
|
|
string gid = Encrypt.DesDecrypt("#7c&e@63", context.Request.QueryString["i"].ToString());
|
|
//string strCondition = Encrypt.DesDecrypt("#7c&e@63", context.Request.QueryString["s"].ToString());
|
|
//string IsAudit = context.Request.QueryString["au"].ToString();
|
|
string IsAudit = "";
|
|
|
|
string pattern = "\0";
|
|
string replacement = "";
|
|
|
|
Regex rgx = new Regex(pattern);
|
|
relGID = rgx.Replace(gid, replacement);
|
|
//relStrCondition = rgx.Replace(strCondition, replacement);
|
|
pattern = "\t";
|
|
Regex rgx2 = new Regex(pattern);
|
|
relGID = rgx2.Replace(relGID, replacement);
|
|
//relStrCondition = rgx2.Replace(relStrCondition, replacement);
|
|
|
|
if (IsAudit == "0") { IsAudit = ""; }
|
|
|
|
/*DataTable dt = BaseInfo.PaymentAuditingListDBServer.PaymentAuditionInfo(relCacheKey, relGID);
|
|
|
|
StringBuilder sb = new StringBuilder();
|
|
if (dt == null || dt.Rows.Count == 0) { sb.Append("[{\"GID\":\"\"}]"); }
|
|
else { sb.Append(JsonClass.DataTable2JsonNoneTotalCount(dt)); }*/
|
|
var dataList = ChpayapplicationDAL.GetAuditDataList(relStrCondition, Convert.ToString(SessionUtil.Session["USERID"]), IsAudit, Convert.ToString(SessionUtil.Session["UserName"]), Convert.ToString(SessionUtil.Session["COMPANYID"]), "");
|
|
//var list = dataList.Where(p => p.GID == relGID);
|
|
ChPayapplication chpay = new ChPayapplication();
|
|
foreach (ChPayapplication data in dataList)
|
|
{
|
|
if (data.GID == relGID)
|
|
{
|
|
/*
|
|
GID,i.BILLNO,i.BILLSTATUS,i.CUSTOMERNAME,i.CURR,i.CHEQUEPAYABLE,i.SETTLETYPE,i.PAYTYPE ");
|
|
i.PAYABLETIME,i.AMOUNTRMB,i.RATE,i.AMOUNTUSD,i.SETTLERMB as RMBDOAMOUNT,i.SETTLEUSD as USDDOAMOUNT,i.SETTLERATE");
|
|
i.APPLICANT,i.APPLYTIME,i.ENTERTIME,i.SETTLEUSER,i.SETTLETIME,i.AUDITUSER,i.AUDITTIME ");
|
|
i.REMARK,i.COMPANYID,i.ISAPP,i.PAYAPPID,i.CHEQUENUMREMARK,INVDATE,INVNO, ");
|
|
(select EnumValueName from tSysEnumValue where LangId=0 and EnumTypeID=97005 and EnumValueID=i.BILLSTATUS) as BILLSTATUSREF");
|
|
(select ShowName from [user] where GID=i.APPLICANT) as APPLICANTNAME");
|
|
(select ShowName from [user] where GID=i.AUDITUSER) as AUDITUSERREF");
|
|
i.CUSTACCOUNTGID");
|
|
(select CODENAME+'_'+bankname from info_client_bank where gid=i.CUSTACCOUNTGID) CUSTBANKNAME");
|
|
(select ACCOUNT from info_client_bank where gid=i.CUSTACCOUNTGID) CUSTACCOUNT");
|
|
ISNULL((select sum(isnull(amount,0)-isnull(invoice,0)) as noinvoice from ch_fee where ISINVOICE<>1 and gid in (select feeid from ch_fee_do where BILLNO=i.BILLNO)),0) as NOINVOICE");
|
|
i.BS_CUSTOMERNAME,dbo.[GetUsingStep](wu.WORKFLOWID,wu.currentid,'" + userid + "',wu.stepno) as IsAudit ");
|
|
i.PREAMOUNTRMB,i.PREAMOUNTUSD ");
|
|
dbo.GetBalNoByPayNo(i.BILLNO) as BALBILLNO
|
|
*
|
|
billNo = item.BILLNO; //申请单号
|
|
BillNo = item.BILLNO;
|
|
billStatus = parseInt(item.BILLSTATUS); //状态
|
|
customerName = item.CUSTOMERNAME; //结算单位
|
|
settlementClient = item.CUSTOMERNAME;
|
|
amountRMB = new Number(item.AMOUNTRMB);
|
|
|
|
amountUSD = item.AMOUNTUSD; //USD
|
|
amountUSD = new Number(item.AMOUNTUSD);
|
|
|
|
applyTime = item.APPLYTIME; //申请日期
|
|
applyTime = applyTime.substring(0, 8);
|
|
applyTime = applyTime.replace(/\//g, "-");
|
|
|
|
applicantName = item.APPLICANTNAME; //申请人
|
|
payableTime = item.PAYABLETIME; //支付日期
|
|
payableTime = payableTime.substring(0, 8);
|
|
payableTime = payableTime.replace(/\//g, "-");
|
|
|
|
|
|
*/
|
|
chpay.BILLNO = data.BILLNO;
|
|
chpay.BILLSTATUS = data.BILLSTATUS;
|
|
chpay.CUSTOMERNAME = data.CUSTOMERNAME;
|
|
chpay.AMOUNTRMB = data.AMOUNTRMB;
|
|
chpay.AMOUNTUSD = data.AMOUNTUSD;
|
|
chpay.APPLYTIME = data.APPLYTIME;
|
|
chpay.APPLICANTNAME = data.APPLICANTNAME;
|
|
chpay.PAYABLETIME = data.PAYABLETIME;
|
|
}
|
|
}
|
|
string applytime = chpay.APPLYTIME.ToString();
|
|
applytime = applytime.Substring(0, applytime.IndexOf(" "));
|
|
string result = "[{\"BILLNO\":\"" + chpay.BILLNO + "\",\"BILLSTATUS\":\"" + chpay.BILLSTATUS + "\",\"CUSTOMERNAME\":\"" + chpay.CUSTOMERNAME + "\",\"AMOUNTRMB\":\"" + chpay.AMOUNTRMB + "\",\"AMOUNTUSD\":\"" + chpay.AMOUNTUSD + "\",\"APPLYTIME\":\"" + applytime + "\",\"APPLICANTNAME\":\"" + chpay.APPLICANTNAME + "\",\"PAYABLETIME\":\"" + chpay.PAYABLETIME + "\",\"INVNO\":\"" + chpay.INVNO + "\"}]";
|
|
|
|
context.Response.ContentType = "text/plain";
|
|
context.Response.Write(result);
|
|
context.Response.End();
|
|
}
|
|
|
|
private void GetDataList(HttpContext context)
|
|
{
|
|
string relStrCondition = "";
|
|
string relBeginFrom = "";
|
|
string relBeginTo = "";
|
|
|
|
string strCondition = Encrypt.DesDecrypt("#7c&e@63", context.Request.Form["s"].ToString());
|
|
string bf = Encrypt.DesDecrypt("#7c&e@63", context.Request.Form["bf"].ToString());
|
|
string bt = Encrypt.DesDecrypt("#7c&e@63", context.Request.Form["bt"].ToString());
|
|
string IsAudit = context.Request.QueryString["au"].ToString();
|
|
|
|
string pattern = "\0";
|
|
string replacement = "";
|
|
|
|
/*int pageIndex = int.Parse(context.Request.QueryString["i"].ToString());
|
|
int pageCount = int.Parse(context.Request.QueryString["c"].ToString());
|
|
int TotalCount = 0;*/
|
|
|
|
int start = int.Parse(context.Request.QueryString["t"].ToString());
|
|
int limit = int.Parse(context.Request.QueryString["l"].ToString());
|
|
|
|
Regex rgx = new Regex(pattern);
|
|
relStrCondition = rgx.Replace(strCondition, replacement);
|
|
relBeginFrom = rgx.Replace(bf, replacement);
|
|
relBeginTo = rgx.Replace(bt, replacement);
|
|
pattern = "\t";
|
|
Regex rgx2 = new Regex(pattern);
|
|
relStrCondition = rgx2.Replace(relStrCondition, replacement);
|
|
relBeginFrom = rgx2.Replace(relBeginFrom, replacement);
|
|
relBeginTo = rgx2.Replace(relBeginTo, replacement);
|
|
|
|
if (IsAudit == "0") { IsAudit = ""; }
|
|
//APPLYTIME
|
|
if (relBeginFrom != "") {
|
|
if (relStrCondition != "")
|
|
{
|
|
relStrCondition += " and APPLYTIME>='" + relBeginFrom + " 00:00:00' ";
|
|
}
|
|
else {
|
|
relStrCondition = " APPLYTIME>='" + relBeginFrom + " 00:00:00' ";
|
|
}
|
|
}
|
|
if (relBeginTo != "") {
|
|
relStrCondition += " and APPLYTIME<='" + relBeginTo + " 23:59:59' ";
|
|
}
|
|
|
|
var dataList = ChpayapplicationDAL.GetAuditDataList(relStrCondition, Convert.ToString(SessionUtil.Session["USERID"]), IsAudit, Convert.ToString(SessionUtil.Session["UserName"]), Convert.ToString(SessionUtil.Session["COMPANYID"]), "");
|
|
//var list = dataList.Skip(start).Take(limit);
|
|
string result = JsonConvert.SerializeObject(dataList);
|
|
/*string result2 = result.Substring(25, result.Length - 72);
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = list.ToList() });
|
|
return new ContentResult() { Content = json };*/
|
|
|
|
context.Response.ContentType = "text/plain";
|
|
context.Response.Write(result);
|
|
context.Response.End();
|
|
}
|
|
|
|
public bool IsReusable
|
|
{
|
|
get
|
|
{
|
|
return false;
|
|
}
|
|
}
|
|
}
|
|
} |