|
|
using System;
|
|
|
using System.Linq;
|
|
|
using System.Web.Mvc;
|
|
|
using DSWeb.Areas.Account.DAL.Chfee_Settlement;
|
|
|
using DSWeb.Areas.Import.DAL.CW;
|
|
|
using DSWeb.Areas.Account.Models.Chfee_Payapplication;
|
|
|
using DSWeb.Areas.Account.Models.Chfee_Settlement;
|
|
|
using DSWeb.Areas.Account.Models.Chfee_do_detail;
|
|
|
using DSWeb.Areas.Account.Models.BillChfeeDetail;
|
|
|
using DSWeb.Areas.Import.Models.CWAdvancePayment;
|
|
|
using DSWeb.Areas.Account.Models.Chfee_Invoice;
|
|
|
using DSWeb.Areas.Account.Models.Chfee_Invoicehexiao;
|
|
|
using DSWeb.Areas.Account.Models.MsCwVouchersGl3;
|
|
|
using DSWeb.MvcShipping.Helper;
|
|
|
using DSWeb.MvcShipping.Comm.Cookie;
|
|
|
using DSWeb.Areas.CommMng.DAL;
|
|
|
using System.Collections.Generic;
|
|
|
using HcUtility.Comm;
|
|
|
using HcUtility.Core;
|
|
|
using DSWeb.EntityDA;
|
|
|
using DSWeb.Areas.Account.Models.Chfee_Exrate;
|
|
|
using DSWeb.MvcShipping.DAL.MsSysBillNoSet;
|
|
|
using DSWeb.MvcShipping.Models.MsSysBillNoSet;
|
|
|
using DSWeb.MvcShipping.DAL.ChMonthCloseDAL;
|
|
|
using DSWeb.TruckMng.Helper.Repository;
|
|
|
using System.Text;
|
|
|
using DSWeb.Areas.CommMng.Models;
|
|
|
using DSWeb.MvcShipping.DAL.MsSysParamSet;
|
|
|
using DSWeb.Areas.Account.Models.ChfeeDetail;
|
|
|
using DSWeb.MvcShipping.DAL.MsBaseInfoDAL;
|
|
|
using DSWeb.SoftMng.Filter;
|
|
|
using Ivony.Fluent;
|
|
|
|
|
|
namespace DSWeb.Areas.Account.Controllers
|
|
|
{
|
|
|
[JsonRequestBehavior]
|
|
|
public class Chfee_settlementController : Controller
|
|
|
{
|
|
|
//
|
|
|
// GET:
|
|
|
public ActionResult PayIndex()
|
|
|
{
|
|
|
return View();
|
|
|
}
|
|
|
|
|
|
//
|
|
|
// GET: /
|
|
|
public ActionResult PayEdit()
|
|
|
{
|
|
|
return View();
|
|
|
}
|
|
|
|
|
|
public ActionResult PayBLEdit()
|
|
|
{
|
|
|
return View();
|
|
|
}
|
|
|
|
|
|
|
|
|
public ActionResult PayAppEdit()
|
|
|
{
|
|
|
return View();
|
|
|
}
|
|
|
// GET:
|
|
|
public ActionResult RecvIndex()
|
|
|
{
|
|
|
return View();
|
|
|
}
|
|
|
|
|
|
//
|
|
|
// GET: /
|
|
|
public ActionResult RecvEdit()
|
|
|
{
|
|
|
return View();
|
|
|
}
|
|
|
public ActionResult RecvBLEdit()
|
|
|
{
|
|
|
return View();
|
|
|
}
|
|
|
|
|
|
public ActionResult RecvAppEdit()
|
|
|
{
|
|
|
return View();
|
|
|
}
|
|
|
|
|
|
public ActionResult RecvInvEdit()
|
|
|
{
|
|
|
return View();
|
|
|
}
|
|
|
|
|
|
public ActionResult PayInvEdit()
|
|
|
{
|
|
|
return View();
|
|
|
}
|
|
|
public ActionResult SettementView()
|
|
|
{
|
|
|
return View();
|
|
|
}
|
|
|
|
|
|
public ActionResult RptStlRemitIndex()
|
|
|
{
|
|
|
return View();
|
|
|
}
|
|
|
|
|
|
// GET:
|
|
|
public ActionResult HexiaoIndex()
|
|
|
{
|
|
|
return View();
|
|
|
}
|
|
|
// GET:
|
|
|
public ActionResult HexiaoEdit()
|
|
|
{
|
|
|
return View();
|
|
|
}
|
|
|
|
|
|
//
|
|
|
// GET:
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetDataList(int start, int limit, string sort, string condition,int billtype,string isload="0")
|
|
|
{
|
|
|
|
|
|
int total=0;
|
|
|
string sortStr="";
|
|
|
if (sort != null)
|
|
|
{
|
|
|
sortStr = sort.Replace("SETTLEMODEREF", "SETTLEMODE");
|
|
|
sortStr = sortStr.Replace("SETTLETYPEREF", "SETTLETYPE");
|
|
|
sortStr = sortStr.Replace("SETTLEUSERREF", "SETTLEUSER");
|
|
|
sortStr = sortStr.Replace("BANKCODE", "ACCOUNTRMB");
|
|
|
}
|
|
|
string LAN = Convert.ToString(Session["LANGUAGES"]);
|
|
|
|
|
|
var dataList = ChsettlementDAL.GetDataList(condition, start, limit, out total, CookieConfig.GetCookie_UserId(Request), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]), sortStr, billtype, isload, LAN);
|
|
|
//var list = dataList.Skip(start).Take(limit);
|
|
|
|
|
|
//var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = list.ToList() });
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = total, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetDataListAll(int start, int limit, string sort, string condition)
|
|
|
{
|
|
|
|
|
|
int total = 0;
|
|
|
string sortStr = "";
|
|
|
if (sort != null)
|
|
|
{
|
|
|
sortStr = sort.Replace("SETTLEMODEREF", "SETTLEMODE");
|
|
|
sortStr = sortStr.Replace("SETTLETYPEREF", "SETTLETYPE");
|
|
|
sortStr = sortStr.Replace("ACCOUNTREF", "ACCOUNTRMB");
|
|
|
sortStr = sortStr.Replace("SETTLEUSERREF", "SETTLEUSER");
|
|
|
sortStr = sortStr.Replace("BANKCODE", "ACCOUNTRMB");
|
|
|
}
|
|
|
string LAN = Convert.ToString(Session["LANGUAGES"]);
|
|
|
|
|
|
var dataList = ChsettlementDAL.GetDataListAll(condition);
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetDataListStr(int start, int limit, string sort, string condition, int billtype)
|
|
|
{
|
|
|
var dataListStr = ChsettlementDAL.GetDataListStr(condition, CookieConfig.GetCookie_UserId(Request), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]), sort, billtype);
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", data = dataListStr });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetData(string handle, string condition)
|
|
|
{
|
|
|
ChSettlement head = null;
|
|
|
int total = 0;
|
|
|
string LAN = Convert.ToString(Session["LANGUAGES"]);
|
|
|
if (handle == "edit")
|
|
|
{
|
|
|
var list = ChsettlementDAL.GetDataList(condition,0,10,out total, CookieConfig.GetCookie_UserId(Request), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]),null,0,"0",LAN);
|
|
|
if (list.Count > 0)
|
|
|
head = list[0];
|
|
|
}
|
|
|
|
|
|
if (head == null)
|
|
|
{
|
|
|
head = new ChSettlement();
|
|
|
}
|
|
|
|
|
|
if (handle == "add")
|
|
|
{
|
|
|
head.SETTLEUSER = CookieConfig.GetCookie_UserId(Request);
|
|
|
head.SETTLEUSERREF = Convert.ToString(Session["SHOWNAME"]);
|
|
|
var period = ChMonthCloseDAL.GetData("", Convert.ToString(Session["COMPANYID"]));
|
|
|
if (Convert.ToDateTime(period.FDAY) > DateTime.Now)
|
|
|
{
|
|
|
head.SETTLETIME = period.FDAY;
|
|
|
} else
|
|
|
head.SETTLETIME = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
|
|
|
head.CURR = Convert.ToString(Session["LOCALCURR"]);
|
|
|
head.SETTLETYPE = 7;
|
|
|
head.RATE = 1;
|
|
|
}
|
|
|
|
|
|
var json = JsonConvert.Serialize(
|
|
|
new { Success = true, Message = "查询成功", data = head });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetBillList(string condition,string sort)
|
|
|
{
|
|
|
var dataList = ChsettlementDAL.GetBodyList(condition, sort);
|
|
|
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetBillListStr(string condition, string sort)
|
|
|
{
|
|
|
var dataListStr = ChsettlementDAL.GetBodyListStr(condition, sort);
|
|
|
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", data = dataListStr });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetBillListPage(int start, int limit, string condition, string sort)
|
|
|
{
|
|
|
string LAN = Convert.ToString(Session["LANGUAGES"]);
|
|
|
var dataList = ChsettlementDAL.GetBodyList(start, limit, condition, sort, LAN);
|
|
|
int count = ChsettlementDAL.getbodyTotalCount(condition, Convert.ToString(Session["USERID"]), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]));
|
|
|
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = count, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetBillSum(string condition)
|
|
|
{
|
|
|
var dataList = ChsettlementDAL.GetBodySumList(condition);
|
|
|
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetFeeDataList(int start, int limit, string sort, string condition, int billtype)
|
|
|
{
|
|
|
var dataList = ChsettlementDAL.GetFeeDataList(condition, CookieConfig.GetCookie_UserId(Request), Convert.ToString(Session["SHOWNAME"]), Convert.ToString(Session["COMPANYID"]), sort, billtype);
|
|
|
var list = dataList.Skip(start).Take(limit);
|
|
|
var json = JsonConvert.Serialize(
|
|
|
new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = list.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetBillDataList(int start, int limit, string sort, string condition, int billtype)
|
|
|
{
|
|
|
var dataList = ChsettlementDAL.GetAddBillList(condition, CookieConfig.GetCookie_UserId(Request), Convert.ToString(Session["SHOWNAME"]), Convert.ToString(Session["COMPANYID"]), sort, billtype);
|
|
|
// var list = dataList.Skip(start).Take(limit);
|
|
|
var json = JsonConvert.Serialize(
|
|
|
new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetFeeDetailList(string sort, string condition)
|
|
|
{
|
|
|
|
|
|
string LAN = Convert.ToString(Session["LANGUAGES"]);
|
|
|
var dataList = ChsettlementDAL.GetFeeDetailList(condition, CookieConfig.GetCookie_UserId(Request), Convert.ToString(Session["SHOWNAME"]), Convert.ToString(Session["COMPANYID"]), sort, LAN);
|
|
|
//var list = dataList.Skip(start).Take(limit);
|
|
|
var json = JsonConvert.Serialize(
|
|
|
new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetAddSum(string condition, int billtype)
|
|
|
{
|
|
|
var dataList = ChsettlementDAL.GetAddSum(condition, CookieConfig.GetCookie_UserId(Request), Convert.ToString(Session["SHOWNAME"]), Convert.ToString(Session["COMPANYID"]),billtype);
|
|
|
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
public ContentResult Save(string opstatus, string data, string accountsdata, string prepaydata, string ahsrdata, string financialdata, string advancedata, int billtype,string prepaychange)
|
|
|
{
|
|
|
if (Convert.ToString(Session["COMPANYID"]).ToString().Trim() == "" || Convert.ToString(Session["USERID"]).ToString().Trim() == "" || Convert.ToString(Session["CODENAME"]).ToString().Trim() == "" || Convert.ToString(Session["SHOWNAME"]).ToString().Trim() == "" || Convert.ToString(Session["DEPTNAME"]).ToString().Trim() == "")
|
|
|
{
|
|
|
var jsonRespose2 = new JsonResponse { Success = false, Message = "登录超时,请退出系统重新登录!" };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose2) };
|
|
|
}
|
|
|
|
|
|
var headData = JsonConvert.Deserialize<ChSettlement>(data.Replace("}", ",") + accountsdata.Replace("{", "").Replace("}", ",") + prepaydata.Replace("{", "").Replace("}", ",")
|
|
|
+ ahsrdata.Replace("{", "").Replace("}", ",") + financialdata.Replace("{", "").Replace("}", ",") + advancedata.Replace("{", ""));
|
|
|
|
|
|
if (opstatus == "add"&& (headData.BILLNO == "" || headData.BILLNO == "*"))
|
|
|
{
|
|
|
headData.GID = Guid.NewGuid().ToString();
|
|
|
headData.BILLDATE = DateTime.Now;
|
|
|
if (headData.BILLNO == "" || headData.BILLNO == "*")
|
|
|
{
|
|
|
if (billtype == 2)
|
|
|
{
|
|
|
|
|
|
var billnoset = MsSysBillNoSetDAL.GetData("OPLBNAME='付费结算'", Convert.ToString(Session["COMPANYID"]));
|
|
|
if (billnoset.BILLTYPE != "")
|
|
|
headData.BILLNO = MsSysBillNoSetDAL.GetBillNo(billnoset, headData.SETTLETIME.ToString().Trim(), headData.BILLDATE.ToString().Trim());
|
|
|
else
|
|
|
headData.BILLNO = PubSysDAL.GetBillNo("0304");
|
|
|
}
|
|
|
else if (billtype == 1)
|
|
|
{
|
|
|
var billnoset = MsSysBillNoSetDAL.GetData("OPLBNAME='收费结算'", Convert.ToString(Session["COMPANYID"]));
|
|
|
if (billnoset.BILLTYPE != "")
|
|
|
headData.BILLNO = MsSysBillNoSetDAL.GetBillNo(billnoset, headData.SETTLETIME.ToString().Trim(), headData.BILLDATE.ToString().Trim());
|
|
|
else headData.BILLNO = PubSysDAL.GetBillNo("0305");
|
|
|
}
|
|
|
}
|
|
|
headData.COMPANYID = Convert.ToString(Session["COMPANYID"]);
|
|
|
headData.DbOperationType = DbOperationType.DbotIns;
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
headData.DbOperationType = DbOperationType.DbotUpd;
|
|
|
headData.ModelUIStatus = "E";
|
|
|
|
|
|
//SR2020020600001
|
|
|
var IsAdvancePaymentChanged = ChsettlementDAL.IsAdvancePaymentChanged(headData);
|
|
|
var AdvancePaymentHaveBeenUsed = ChsettlementDAL.AdvancePaymentHaveBeenUsed(headData);
|
|
|
if (AdvancePaymentHaveBeenUsed)
|
|
|
{
|
|
|
if (IsAdvancePaymentChanged)
|
|
|
{
|
|
|
var jsonRespose0 = new JsonResponse
|
|
|
{
|
|
|
Success = false,
|
|
|
Message = "该结算单产生的预收/预付已被引用,不能修改其:结算对象名、币别、金额;",
|
|
|
Data = headData
|
|
|
};
|
|
|
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose0) };
|
|
|
}
|
|
|
}
|
|
|
|
|
|
bool updatepayment = ChsettlementDAL.updatePayment(headData, CookieConfig.GetCookie_UserId(Request), Convert.ToString(Session["COMPANYID"]));
|
|
|
|
|
|
if (!updatepayment)
|
|
|
{
|
|
|
var jsonRespose0 = new JsonResponse
|
|
|
{
|
|
|
Success = false,
|
|
|
Message = "结算单产生的预收/预付时发生错误,请重新执行保存或联系管理员",
|
|
|
Data = headData
|
|
|
};
|
|
|
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose0) };
|
|
|
}
|
|
|
}
|
|
|
|
|
|
var ct = ChsettlementDAL.GetRdCount("GID<>'" + headData.GID + "' AND BILLNO='" + headData.BILLNO + "' ");
|
|
|
if (ct != 0)
|
|
|
{
|
|
|
var jsonRespose0 = new JsonResponse
|
|
|
{
|
|
|
Success = false,
|
|
|
Message = "结算编号重复,不允许保存!",
|
|
|
Data = headData
|
|
|
};
|
|
|
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose0) };
|
|
|
}
|
|
|
|
|
|
if (headData.BILLTYPE ==2) {
|
|
|
var PAYINVNONOTREPEAT = MsSysParamSetDAL.GetData("PARAMNAME='PAYINVNONOTREPEAT'");
|
|
|
if (PAYINVNONOTREPEAT.PARAMVALUE == "1"&&!string.IsNullOrEmpty(headData.INVOICENO)) {
|
|
|
var ct2 = ChsettlementDAL.GetRdCount("GID<>'" + headData.GID + "' AND BILLTYPE=2 AND INVOICENO='" + headData.INVOICENO + "' ");
|
|
|
if (ct2 != 0)
|
|
|
{
|
|
|
var jsonRespose0 = new JsonResponse
|
|
|
{
|
|
|
Success = false,
|
|
|
Message = "发票号重复,不允许保存!",
|
|
|
Data = headData
|
|
|
};
|
|
|
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose0) };
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
if (string.IsNullOrEmpty(headData.ACCOUNT)) {
|
|
|
var bankList = MsBaseInfoDAL.GetBANKList("", headData.SALECORPID);
|
|
|
if (bankList != null && bankList.Count != 0)
|
|
|
{
|
|
|
foreach (var bank in bankList)
|
|
|
{
|
|
|
if ((bank.CURRENCY == headData.CURR) && (bank.ISDEF == "True"))
|
|
|
headData.ACCOUNT = bank.GID;
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
var BILLNO = headData.BILLNO;
|
|
|
|
|
|
|
|
|
if (headData.CURR == "RMB")
|
|
|
{
|
|
|
headData.AMOUNTRMB = headData.AMOUNT;
|
|
|
headData.ACCOUNTRMB = headData.ACCOUNT;
|
|
|
headData.AMOUNTUSD = 0;
|
|
|
headData.ACCOUNTUSD = "";
|
|
|
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
|
|
|
headData.AMOUNTUSD = headData.AMOUNT;
|
|
|
headData.ACCOUNTUSD = headData.ACCOUNT;
|
|
|
headData.ACCOUNTRMB = "";
|
|
|
headData.AMOUNTRMB = 0;
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if (headData.SETTLETIME == "") headData.SETTLETIME = null;
|
|
|
if (headData.INVOICEDATE == "") headData.INVOICEDATE = null;
|
|
|
|
|
|
if (headData.REMITTANCEAMOUNT == "") headData.REMITTANCEAMOUNT = "0";
|
|
|
if (headData.BUYRATE == "") headData.BUYRATE = "0";
|
|
|
if (headData.SELLRATE == "") headData.SELLRATE = "0";
|
|
|
if (headData.SETTLRATE == "") headData.SETTLRATE = "0";
|
|
|
|
|
|
if (headData.ACCOUNTS_CURRENCY ==""|| headData.ACCOUNTS_CURRENCY ==null)
|
|
|
headData.ACCOUNTS_CURRENCY = headData.CURR;//
|
|
|
if (headData.PREPAY_CURRENCY == "" || headData.PREPAY_CURRENCY == null)
|
|
|
headData.PREPAY_CURRENCY = headData.CURR;//
|
|
|
if (headData.AHSR_CURRENCY == "" || headData.AHSR_CURRENCY == null)
|
|
|
headData.AHSR_CURRENCY = headData.CURR;//
|
|
|
if (headData.FINANCIAL_CURRENCY == "" || headData.FINANCIAL_CURRENCY == null)
|
|
|
headData.FINANCIAL_CURRENCY = headData.CURR;//
|
|
|
if (headData.ADVANCE_CURRENCY == "" || headData.ADVANCE_CURRENCY == null)
|
|
|
headData.ADVANCE_CURRENCY = headData.CURR;//
|
|
|
|
|
|
var modb = new ModelObjectDB();
|
|
|
DBResult result = modb.Save(headData);
|
|
|
if ((result.Success) &&(prepaychange == "true")) {
|
|
|
|
|
|
bool updatepayment=ChsettlementDAL.updatePayment(headData, CookieConfig.GetCookie_UserId(Request), Convert.ToString(Session["COMPANYID"]));
|
|
|
|
|
|
if (!updatepayment) { result.Message="已保存成功,但预收付更新时发生错误,请检查预收付单据是否已生成凭证或有其他错误!";}
|
|
|
|
|
|
}
|
|
|
|
|
|
if (result.Success == true) {
|
|
|
//if (billtype == 2&&!string.IsNullOrEmpty(headData.INVOICENO)) {
|
|
|
// T_ALL_DA T_ALL_DA = new T_ALL_DA();
|
|
|
// var blUpSQL = " update ch_fee_payapplication SET INVNO='"+ headData.INVOICENO + "' where billno in (select PAYBILLNO FROM CH_FEE_DO_PAYAPPLICATION WHERE BILLNO='"+ headData.BILLNO+ "')";
|
|
|
// bool bl = T_ALL_DA.GetExecuteSqlCommand(blUpSQL);
|
|
|
//}
|
|
|
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
MsSysBillNoSetDAL.DeleteBsNo(headData.BILLNO);
|
|
|
}
|
|
|
var jsonRespose = new JsonResponse
|
|
|
{
|
|
|
Success = result.Success,
|
|
|
Message = result.Message,
|
|
|
Data = ChsettlementDAL.GetData(" BILLNO='" + BILLNO + "'", CookieConfig.GetCookie_UserId(Request), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]))
|
|
|
};
|
|
|
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
|
|
|
}
|
|
|
|
|
|
public ContentResult AddDetail(string bill, string data, string curr,int billtype)
|
|
|
{
|
|
|
var bodyList = JsonConvert.Deserialize<List<BillChfeeDetail>>(data);
|
|
|
|
|
|
var modb = new ModelObjectDB();
|
|
|
DBResult result = ChsettlementDAL.AddDetail(bill, bodyList, curr, Convert.ToString(Session["COMPANYID"]));
|
|
|
if (result.Success) { ChsettlementDAL.p_update_Amount(bill,billtype); }
|
|
|
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
public ContentResult AddDetailStl(string bill, string data, string curr, int billtype,string ShenNo)
|
|
|
{
|
|
|
var bodyList = JsonConvert.Deserialize<List<ChFeeDetail>>(data);
|
|
|
var headdata = ChsettlementDAL.GetData(" BILLNO='" + bill + "'", CookieConfig.GetCookie_UserId(Request), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]));
|
|
|
var modb = new ModelObjectDB();
|
|
|
DBResult result = ChsettlementDAL.AddDetailStl(bill, bodyList, curr, Convert.ToString(Session["COMPANYID"]), headdata,ShenNo);
|
|
|
if (result.Success) { ChsettlementDAL.p_update_Amount(bill, billtype); }
|
|
|
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
public ContentResult AddBillStl(string billno, string billcust, string billcurr, string feesql, string storeCurrExrate, int billtype, bool custgroup = false,string ShenNo="")
|
|
|
{
|
|
|
var exrateList = JsonConvert.Deserialize<List<ChFeeExrate>>(storeCurrExrate);
|
|
|
|
|
|
if ((exrateList == null) || (exrateList.Count == 0))
|
|
|
{
|
|
|
var exratestr = feesql;
|
|
|
if (ShenNo != "") exratestr = exratestr + " and f.GID IN (SELECT FEEID FROM CH_FEE_DO WHERE BILLNO='" + ShenNo + "')";
|
|
|
exrateList = ChsettlementDAL.GetCurrExrateData(billcust, billcurr, exratestr, custgroup);
|
|
|
if (exrateList.Count == 0)
|
|
|
{
|
|
|
var modb = new ModelObjectDB();
|
|
|
var headdata = ChsettlementDAL.GetData(" BILLNO='" + billno + "'", CookieConfig.GetCookie_UserId(Request), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]));
|
|
|
DBResult result = ChsettlementDAL.AddBillStl(billno, billcust, billcurr, feesql, exrateList, Convert.ToString(Session["COMPANYID"]),headdata,custgroup,ShenNo);
|
|
|
if (result.Success) { ChsettlementDAL.p_update_Amount(billno, billtype); }
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
|
|
|
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
var jsonRespose = new JsonResponse { Success = true, Message = "查询成功", Data = exrateList.ToList() };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
|
|
|
var modb = new ModelObjectDB();
|
|
|
var headdata = ChsettlementDAL.GetData(" BILLNO='" + billno + "'", CookieConfig.GetCookie_UserId(Request), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]));
|
|
|
DBResult result = ChsettlementDAL.AddBillStl(billno, billcust, billcurr, feesql, exrateList, Convert.ToString(Session["COMPANYID"]), headdata, custgroup, ShenNo);
|
|
|
if (result.Success) { ChsettlementDAL.p_update_Amount(billno, billtype); }
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
}
|
|
|
public ContentResult AddBill(string billno, string billcust, string billcurr, string feesql, string storeCurrExrate, int billtype, bool custgroup = false)
|
|
|
{
|
|
|
var exrateList = JsonConvert.Deserialize<List<ChFeeExrate>>(storeCurrExrate);
|
|
|
|
|
|
if ((exrateList == null) || (exrateList.Count == 0))
|
|
|
{
|
|
|
|
|
|
exrateList = ChsettlementDAL.GetCurrExrateData(billcust, billcurr, feesql, custgroup);
|
|
|
if (exrateList.Count == 0)
|
|
|
{
|
|
|
var modb = new ModelObjectDB();
|
|
|
DBResult result = ChsettlementDAL.AddBill(billno, billcust, billcurr, feesql, exrateList, CookieConfig.GetCookie_UserId(Request), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]), custgroup);
|
|
|
if (result.Success) { ChsettlementDAL.p_update_Amount(billno, billtype); }
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
|
|
|
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
var jsonRespose = new JsonResponse { Success = true, Message = "查询成功", Data = exrateList.ToList() };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
|
|
|
var modb = new ModelObjectDB();
|
|
|
DBResult result = ChsettlementDAL.AddBill(billno, billcust, billcurr, feesql, exrateList, CookieConfig.GetCookie_UserId(Request), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]));
|
|
|
if (result.Success) { ChsettlementDAL.p_update_Amount(billno,billtype); }
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
public ContentResult DelBill(string data, string billno,int billtype)
|
|
|
{
|
|
|
|
|
|
var bodyList = JsonConvert.Deserialize<List<Chfee_do_detail>>(data);
|
|
|
|
|
|
DBResult result = ChsettlementDAL.DelFeeDo(bodyList);
|
|
|
ChsettlementDAL.p_update_Amount(billno, billtype);
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
|
|
|
//
|
|
|
|
|
|
|
|
|
public ContentResult Delete(string data, int settlemode)
|
|
|
{
|
|
|
var headData = JsonConvert.Deserialize<ChSettlement>(data);
|
|
|
var result = new DBResult();
|
|
|
|
|
|
string LAN = Convert.ToString(Session["LANGUAGES"]);
|
|
|
var shanchuchenggong = "删除成功!";
|
|
|
var yiyuemojiezhang = "本期已月末结账,无法删除此单据!";
|
|
|
|
|
|
if (LAN == "en-us")
|
|
|
{
|
|
|
shanchuchenggong = "Successfully deleted!";
|
|
|
yiyuemojiezhang = "The current period has been settled at the end of the month, and this document cannot be deleted!";
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
var period = ChMonthCloseDAL.GetData("", Convert.ToString(Session["COMPANYID"]));
|
|
|
if (Convert.ToDateTime(period.FDAY) > Convert.ToDateTime(headData.SETTLETIME))
|
|
|
{
|
|
|
result.Success = false;
|
|
|
result.Message = yiyuemojiezhang;
|
|
|
}
|
|
|
else result.Success = true;
|
|
|
|
|
|
T_ALL_DA T_ALL_DA = new T_ALL_DA();
|
|
|
var strCT = T_ALL_DA.GetStrSQL("CT", "select COUNT(*) CT from cw_vouno_bs_gl where BSGID='" + headData.GID + "'");
|
|
|
if (strCT != "0" && strCT != "") {
|
|
|
result.Success = false;
|
|
|
result.Message = "已生成凭证,无法删除此单据!";
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (result.Success == true)
|
|
|
{
|
|
|
|
|
|
if (settlemode == 3)
|
|
|
{
|
|
|
var dataList = ChsettlementDAL.GetPayInvDetailList(headData.BILLNO);
|
|
|
result = ChsettlementDAL.DelPayInvAppStl(dataList, headData.BILLNO);
|
|
|
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
var dataList = ChsettlementDAL.GetPayDetailList(headData.BILLNO);
|
|
|
result = ChsettlementDAL.DelAppStl(dataList, headData.BILLNO);
|
|
|
}
|
|
|
|
|
|
|
|
|
var dataList2 = ChsettlementDAL.GetBodyList("BILLNO='" + headData.BILLNO + "'");
|
|
|
result = ChsettlementDAL.DelFeeDo(dataList2);
|
|
|
|
|
|
}
|
|
|
|
|
|
if (result.Success == true) {
|
|
|
var APDList = CWAdvancePaymentDAL.GetBodyList2(" SETTLEBILLNO='"+headData.BILLNO+"'");
|
|
|
result = ChsettlementDAL.DelPaymentDo(APDList);
|
|
|
}
|
|
|
|
|
|
if (result.Success == true)
|
|
|
{
|
|
|
var modb = new ModelObjectDB();
|
|
|
modb.Delete(headData);
|
|
|
MsSysBillNoSetDAL.DeleteBsNo(headData.BILLNO);
|
|
|
ChsettlementDAL.DelRemit(headData.BILLNO);
|
|
|
var blUpSQL = " insert into sys_log(GID,NAME,LOGTYPE,LOGTIME,LOGCONTENT,CREATEUSER) values(NEWID(),'" + headData.BILLNO + "','删除结算','" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "','" + headData.BILLNO + '(' + headData.CUSTOMERNAME + ')' + "','" + Convert.ToString(Session["USERID"]) + "')";
|
|
|
bool bl = T_ALL_DA.GetExecuteSqlCommand(blUpSQL);
|
|
|
|
|
|
}
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
public ContentResult DeleteRecv(string data, int settlemode)
|
|
|
{
|
|
|
var headData = JsonConvert.Deserialize<ChSettlement>(data);
|
|
|
var result = new DBResult();
|
|
|
|
|
|
string LAN = Convert.ToString(Session["LANGUAGES"]);
|
|
|
var shanchuchenggong = "删除成功!";
|
|
|
var yiyuemojiezhang = "本期已月末结账,无法删除此单据!";
|
|
|
|
|
|
if (LAN == "en-us")
|
|
|
{
|
|
|
shanchuchenggong = "Successfully deleted!";
|
|
|
yiyuemojiezhang = "The current period has been settled at the end of the month, and this document cannot be deleted!";
|
|
|
|
|
|
}
|
|
|
|
|
|
var period = ChMonthCloseDAL.GetData("", Convert.ToString(Session["COMPANYID"]));
|
|
|
if (Convert.ToDateTime(period.FDAY) > Convert.ToDateTime(headData.SETTLETIME))
|
|
|
{
|
|
|
result.Success = false;
|
|
|
result.Message = yiyuemojiezhang;
|
|
|
}
|
|
|
else result.Success = true;
|
|
|
|
|
|
T_ALL_DA T_ALL_DA = new T_ALL_DA();
|
|
|
var strCT = T_ALL_DA.GetStrSQL("CT", "select COUNT(*) CT from cw_vouno_bs_gl where BSGID='" + headData.GID + "'");
|
|
|
if (strCT != "0" && strCT != "")
|
|
|
{
|
|
|
result.Success = false;
|
|
|
result.Message = "已生成凭证,无法删除此单据!";
|
|
|
}
|
|
|
|
|
|
|
|
|
if (result.Success == true)
|
|
|
{
|
|
|
if (settlemode == 1)
|
|
|
{
|
|
|
var dataList = ChsettlementDAL.GetRecvDetailList(headData.BILLNO);
|
|
|
result = ChsettlementDAL.DelRecvAppStl(dataList, headData.BILLNO);
|
|
|
|
|
|
}
|
|
|
else if (settlemode == 3)
|
|
|
{
|
|
|
var dataList = ChsettlementDAL.GetRecvInvDetailList(headData.BILLNO);
|
|
|
result = ChsettlementDAL.DelRecvInvAppStl(dataList, headData.BILLNO);
|
|
|
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
var dataList = ChsettlementDAL.GetBodyList("BILLNO='" + headData.BILLNO + "'");
|
|
|
result = ChsettlementDAL.DelFeeDo(dataList);
|
|
|
}
|
|
|
}
|
|
|
if (result.Success == true)
|
|
|
{
|
|
|
var APDList = CWAdvancePaymentDAL.GetBodyList2(" SETTLEBILLNO='" + headData.BILLNO + "'");
|
|
|
result = ChsettlementDAL.DelPaymentDo(APDList);
|
|
|
}
|
|
|
|
|
|
if (result.Success == true)
|
|
|
{
|
|
|
var modb = new ModelObjectDB();
|
|
|
modb.Delete(headData);
|
|
|
|
|
|
var blUpSQL = " insert into sys_log(GID,NAME,LOGTYPE,LOGTIME,LOGCONTENT,CREATEUSER) values(NEWID(),'" + headData.BILLNO + "','删除结算','" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "','" + headData.BILLNO + '(' + headData.CUSTOMERNAME + ')' + "','" + Convert.ToString(Session["USERID"]) + "')";
|
|
|
bool bl = T_ALL_DA.GetExecuteSqlCommand(blUpSQL);
|
|
|
|
|
|
}
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
|
|
|
#region 锁定和撤销锁定
|
|
|
|
|
|
public ContentResult Lock(string bill, string remark,string billtype="0")
|
|
|
{
|
|
|
var headData = ChsettlementDAL.GetData("BILLNO='" + bill + "'");
|
|
|
var errstr = "";
|
|
|
if (headData.AMOUNTRMB != 0 || headData.AMOUNTUSD != 0)
|
|
|
{
|
|
|
if (headData.ACCOUNTS_MONEY == 0 && headData.AHSR_MONEY == 0 && headData.PREPAY_MONEY == 0 && headData.FINANCIAL_MONEY == 0 && headData.ADVANCE_MONEY == 0)
|
|
|
{
|
|
|
errstr = errstr + " 预收付信息有错误不允许锁定!";
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
if (!string.IsNullOrEmpty(errstr))
|
|
|
{
|
|
|
var result2 = new DBResult();
|
|
|
result2.Success = false;
|
|
|
result2.Message = errstr;
|
|
|
var json2 = JsonConvert.Serialize(result2);
|
|
|
return new ContentResult() { Content = json2 };
|
|
|
}
|
|
|
|
|
|
DBResult result = ChsettlementDAL.Lock(bill,remark);
|
|
|
if (result.Success) {
|
|
|
if (billtype == "2") {
|
|
|
|
|
|
if (!string.IsNullOrEmpty(headData.INVOICENO) || !string.IsNullOrEmpty(headData.INVOICEDATE) || !string.IsNullOrEmpty(headData.INVOICEAMOUNT))
|
|
|
{
|
|
|
T_ALL_DA T_ALL_DA = new T_ALL_DA();
|
|
|
var blUpSQL = " update ch_fee_payapplication SET INVNO='" + headData.INVOICENO + "',INVDATE='" + headData.INVOICEDATE + "',INVOICEAMOUNT='" + headData.INVOICEAMOUNT + "' where billno in (select PAYBILLNO FROM CH_FEE_DO_PAYAPPLICATION WHERE BILLNO='" + headData.BILLNO + "')";
|
|
|
bool bl = T_ALL_DA.GetExecuteSqlCommand(blUpSQL);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
var json = JsonConvert.Serialize(result);
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
public ContentResult UnLock(string bill)
|
|
|
{
|
|
|
var result = new DBResult();
|
|
|
T_ALL_DA T_ALL_DA = new T_ALL_DA();
|
|
|
var strCT = T_ALL_DA.GetStrSQL("CT", "select COUNT(*) CT from cw_vouno_bs_gl where BSGID in (SELECT GID FROM ch_fee_settlement WHERE BILLNO='" + bill + "')");
|
|
|
if (strCT != "0" && strCT != "")
|
|
|
{
|
|
|
result.Success = false;
|
|
|
result.Message = "已生成凭证,无法解锁此单据!";
|
|
|
}
|
|
|
var strCT2 = T_ALL_DA.GetStrSQL("CT", "select COUNT(*) CT from op_sale_tc where BSNO in (SELECT BSNO FROM ch_fee_do WHERE BILLNO='" + bill + "')");
|
|
|
if (strCT2 != "0" && strCT2 != "")
|
|
|
{
|
|
|
result.Success = false;
|
|
|
result.Message = "相关业务已发放提成,无法解锁此单据!";
|
|
|
}
|
|
|
|
|
|
|
|
|
result = ChsettlementDAL.UnLock(bill);
|
|
|
|
|
|
var json = JsonConvert.Serialize(result);
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
public ContentResult LockList(string bills)
|
|
|
{
|
|
|
|
|
|
DBResult result = ChsettlementDAL.LockList(bills);
|
|
|
|
|
|
var json = JsonConvert.Serialize(result);
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
public ContentResult LockListNew(string data)
|
|
|
{
|
|
|
var headList = JsonConvert.Deserialize<List<ChSettlement>>(data);
|
|
|
var errstr = "";
|
|
|
foreach (var bill in headList)
|
|
|
{
|
|
|
if (bill.AMOUNTRMB != 0 || bill.AMOUNTUSD != 0) {
|
|
|
if (bill.ACCOUNTS_MONEY == 0 && bill.AHSR_MONEY == 0 && bill.PREPAY_MONEY == 0 && bill.FINANCIAL_MONEY == 0 && bill.ADVANCE_MONEY == 0) {
|
|
|
errstr = errstr + " 单号:" + bill.BILLNO + " 预收付信息有错误";
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
if (!string.IsNullOrEmpty(errstr)) {
|
|
|
var result2 = new DBResult();
|
|
|
result2.Success = false;
|
|
|
result2.Message = errstr+" 不能锁定";
|
|
|
var json2 = JsonConvert.Serialize(result2);
|
|
|
return new ContentResult() { Content = json2 };
|
|
|
}
|
|
|
|
|
|
|
|
|
DBResult result = ChsettlementDAL.LockListNew(headList, CookieConfig.GetCookie_UserId(Request));
|
|
|
|
|
|
var json = JsonConvert.Serialize(result);
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
public ContentResult UnLockList(string bills)
|
|
|
{
|
|
|
|
|
|
var billList = bills.Split(',');
|
|
|
T_ALL_DA T_ALL_DA = new T_ALL_DA();
|
|
|
foreach (var bill in billList)
|
|
|
{
|
|
|
var strCT = T_ALL_DA.GetStrSQL("CT", "select COUNT(*) CT from cw_vouno_bs_gl where BSGID in (SELECT GID FROM ch_fee_settlement WHERE BILLNO='" + bill + "')");
|
|
|
if (strCT != "0" && strCT != "")
|
|
|
{
|
|
|
var result2 = new DBResult();
|
|
|
result2.Success = false;
|
|
|
result2.Message = "已生成凭证,无法解锁此单据!";
|
|
|
var json2 = JsonConvert.Serialize(result2);
|
|
|
return new ContentResult() { Content = json2 };
|
|
|
}
|
|
|
}
|
|
|
|
|
|
DBResult result = ChsettlementDAL.UnLockList(bills, CookieConfig.GetCookie_UserId(Request));
|
|
|
|
|
|
var json = JsonConvert.Serialize(result);
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
#region 付费申请结算
|
|
|
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
public ContentResult GetPayList(int start, int limit, string sort, string condition)
|
|
|
{
|
|
|
var dataList = ChsettlementDAL.GetPayDataList(condition,CookieConfig.GetCookie_UserId(Request), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]), sort);
|
|
|
var list = dataList.Skip(start).Take(limit);
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = list.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetPayDCList(int start, int limit, string sort, string condition)
|
|
|
{
|
|
|
var LOCALCURR = CookieConfig.GetCookie_LocalCurr(Request);
|
|
|
|
|
|
var dataList = ChsettlementDAL.GetPayDCDataList(condition, CookieConfig.GetCookie_UserId(Request), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]), sort, LOCALCURR);
|
|
|
var list = dataList.Skip(start).Take(limit);
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = list.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetPaydetailList(string billno)
|
|
|
{
|
|
|
|
|
|
string LAN = Convert.ToString(Session["LANGUAGES"]);
|
|
|
var dataList = ChsettlementDAL.GetPayDetailList(billno, LAN);
|
|
|
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetAppBodyList(string condition, string sort)
|
|
|
{
|
|
|
string LAN = Convert.ToString(Session["LANGUAGES"]);
|
|
|
var dataList = ChsettlementDAL.GetAppBodyList(condition,sort, LAN);
|
|
|
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
public ContentResult AddAppDetail(string bill, string data, string curr, int billtype)
|
|
|
{
|
|
|
var bodyList = JsonConvert.Deserialize<List<ChPaySettlement>>(data);
|
|
|
|
|
|
var modb = new ModelObjectDB();
|
|
|
DBResult result = ChsettlementDAL.AddAppDetail(bill, bodyList, curr, Convert.ToString(Session["COMPANYID"]));
|
|
|
if (result.Success) { ChsettlementDAL.p_update_Amount(bill, billtype); }
|
|
|
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
public ContentResult AddAppDCDetail(string bill, string data, string curr, string storeCurrExrate, int billtype, string addcurr)
|
|
|
{
|
|
|
var LOCALCURR = CookieConfig.GetCookie_LocalCurr(Request);
|
|
|
var exrateList = JsonConvert.Deserialize<List<ChFeeExrate>>(storeCurrExrate);
|
|
|
var bodyList = JsonConvert.Deserialize<List<ChPaySettlement>>(data);
|
|
|
var isAuditExrate = false;
|
|
|
var PAYAUDITEXRATE = MsSysParamSetDAL.GetData("PARAMNAME='PAYAUDITEXRATE'");
|
|
|
if (PAYAUDITEXRATE.PARAMVALUE == "1") isAuditExrate = true;
|
|
|
T_ALL_DA T_ALL_DA = new EntityDA.T_ALL_DA();
|
|
|
if (((exrateList == null) || (exrateList.Count == 0)) && (addcurr !=curr))
|
|
|
{
|
|
|
|
|
|
exrateList = ChsettlementDAL.GetAppCurrExrateData(bodyList, curr, addcurr, isAuditExrate);
|
|
|
if (exrateList.Count == 0)
|
|
|
{
|
|
|
var modb = new ModelObjectDB();
|
|
|
DBResult result = ChsettlementDAL.AddAppDCDetail(bill, bodyList, curr, Convert.ToString(Session["COMPANYID"]), addcurr, exrateList, isAuditExrate, LOCALCURR);
|
|
|
if (result.Success)
|
|
|
{
|
|
|
ChsettlementDAL.p_update_Amount(bill, billtype);
|
|
|
foreach (var enumValue in bodyList)
|
|
|
{
|
|
|
var blUpSQL1 = " insert into ch_fee_File (GID,BillNo,File_Type,File_Name,File_Path,CreateTime,Operator,File_OriginalName,File_DocType,File_DocNo,RefBillNo) "
|
|
|
+ " SELECT NEWID(),'" + bill + "',File_Type,File_Name,File_Path,CreateTime,Operator,File_OriginalName,File_DocType,File_DocNo,'" + enumValue.BILLNO + "' FROM ch_fee_File WHERE BillNo='" + enumValue.BILLNO + "' ";
|
|
|
bool bl1 = T_ALL_DA.GetExecuteSqlCommand(blUpSQL1);
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
if (isAuditExrate)
|
|
|
{
|
|
|
decimal stlamount = 0;
|
|
|
decimal stlrate = 0;
|
|
|
string stlcurr = "";
|
|
|
if (bodyList != null)
|
|
|
{
|
|
|
foreach (var enumValue in bodyList)
|
|
|
{
|
|
|
stlamount = stlamount + enumValue.AUDITSTLAMOUNT;
|
|
|
stlcurr = enumValue.AUDITSTLCURR;
|
|
|
stlrate = enumValue.AUDITSTLRATE;
|
|
|
|
|
|
}
|
|
|
}
|
|
|
|
|
|
if (stlamount != 0)
|
|
|
{
|
|
|
|
|
|
if (stlamount > 0)
|
|
|
{
|
|
|
var blUpSQL1 = " update ch_fee_settlement set AHSR_CURRENCY='" + stlcurr + "',AHSR_RATE=" + stlrate.ToString() + ",AHSR_MONEY=" + stlamount.ToString() + ",FINANCIAL_MONEY=ACCOUNTS_MONEY-" + stlamount.ToString() + " where BILLNO='" + bill + "' ";
|
|
|
bool bl1 = T_ALL_DA.GetExecuteSqlCommand(blUpSQL1);
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
var blUpSQL1 = " update ch_fee_settlement set AHSR_CURRENCY='" + stlcurr + "',AHSR_RATE=" + stlrate.ToString() + ",AHSR_MONEY=" + stlamount.ToString() + ",FINANCIAL_MONEY=ACCOUNTS_MONEY+" + Math.Abs(stlamount).ToString() + " where BILLNO='" + bill + "' ";
|
|
|
bool bl1 = T_ALL_DA.GetExecuteSqlCommand(blUpSQL1);
|
|
|
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
|
|
|
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
var jsonRespose = new JsonResponse { Success = true, Message = "查询成功", Data = exrateList.ToList() };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
|
|
|
var modb = new ModelObjectDB();
|
|
|
DBResult result = ChsettlementDAL.AddAppDCDetail(bill, bodyList, curr, Convert.ToString(Session["COMPANYID"]), addcurr, exrateList, isAuditExrate, LOCALCURR);
|
|
|
if (result.Success) {
|
|
|
ChsettlementDAL.p_update_Amount(bill, billtype);
|
|
|
foreach (var enumValue in bodyList)
|
|
|
{
|
|
|
|
|
|
var blUpSQL1 = " insert into ch_fee_File (GID,BillNo,File_Type,File_Name,File_Path,CreateTime,Operator,File_OriginalName,File_DocType,File_DocNo,RefBillNo) "
|
|
|
+ " SELECT NEWID(),'" + bill + "',File_Type,File_Name,File_Path,CreateTime,Operator,File_OriginalName,File_DocType,File_DocNo,'" + enumValue.BILLNO + "' FROM ch_fee_File WHERE BillNo='" + enumValue.BILLNO + "' ";
|
|
|
bool bl1 = T_ALL_DA.GetExecuteSqlCommand(blUpSQL1);
|
|
|
}
|
|
|
|
|
|
}
|
|
|
if (isAuditExrate)
|
|
|
{
|
|
|
decimal stlamount = 0;
|
|
|
decimal stlrate = 0;
|
|
|
string stlcurr = "";
|
|
|
if (bodyList != null)
|
|
|
{
|
|
|
foreach (var enumValue in bodyList)
|
|
|
{
|
|
|
stlamount = stlamount + enumValue.AUDITSTLAMOUNT;
|
|
|
stlcurr = enumValue.AUDITSTLCURR;
|
|
|
stlrate = enumValue.AUDITSTLRATE;
|
|
|
|
|
|
}
|
|
|
}
|
|
|
|
|
|
if (stlamount != 0)
|
|
|
{
|
|
|
|
|
|
if (stlamount > 0)
|
|
|
{
|
|
|
var blUpSQL1 = " update ch_fee_settlement set AHSR_CURRENCY='" + stlcurr + "',AHSR_RATE=" + stlrate.ToString() + ",AHSR_MONEY=" + stlamount.ToString() + ",FINANCIAL_MONEY=ACCOUNTS_MONEY-" + stlamount.ToString() + " where BILLNO='" + bill + "' ";
|
|
|
bool bl1 = T_ALL_DA.GetExecuteSqlCommand(blUpSQL1);
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
var blUpSQL1 = " update ch_fee_settlement set AHSR_CURRENCY='" + stlcurr + "',AHSR_RATE=" + stlrate.ToString() + ",AHSR_MONEY=" + stlamount.ToString() + ",FINANCIAL_MONEY=ACCOUNTS_MONEY+" + Math.Abs(stlamount).ToString() + " where BILLNO='" + bill + "' ";
|
|
|
bool bl1 = T_ALL_DA.GetExecuteSqlCommand(blUpSQL1);
|
|
|
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
public ContentResult DelAppBill(string data, string billno, int billtype)
|
|
|
{
|
|
|
|
|
|
var bodyList = JsonConvert.Deserialize<List<ChPaySettlement>>(data);
|
|
|
|
|
|
DBResult result = ChsettlementDAL.DelAppStl(bodyList,billno);
|
|
|
if (result.Success) { ChsettlementDAL.p_update_Amount(billno, billtype); }
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
#region 收费申请结算
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetRecvList(int start, int limit, string sort, string condition)
|
|
|
{
|
|
|
var dataList = ChsettlementDAL.GetRecvDataList(condition, CookieConfig.GetCookie_UserId(Request), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]), sort);
|
|
|
var list = dataList.Skip(start).Take(limit);
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = list.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetRecvDCList(int start, int limit, string sort, string condition)
|
|
|
{
|
|
|
var dataList = ChsettlementDAL.GetRecvDCDataList(condition, CookieConfig.GetCookie_UserId(Request), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]), sort);
|
|
|
var list = dataList.Skip(start).Take(limit);
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = list.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetRecvdetailList(string billno)
|
|
|
{
|
|
|
var dataList = ChsettlementDAL.GetRecvDetailList(billno);
|
|
|
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public ContentResult AddRecvAppDetail(string bill, string data, string curr, int billtype)
|
|
|
{
|
|
|
var bodyList = JsonConvert.Deserialize<List<ChPaySettlement>>(data);
|
|
|
|
|
|
var modb = new ModelObjectDB();
|
|
|
DBResult result = ChsettlementDAL.RecvAddAppDetail(bill, bodyList, curr, Convert.ToString(Session["COMPANYID"]));
|
|
|
if (result.Success) {
|
|
|
|
|
|
ChsettlementDAL.p_update_Amount(bill, billtype);
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
public ContentResult AddRecvAppDCDetail(string bill, string data, string curr, string storeCurrExrate, int billtype, string addcurr)
|
|
|
{
|
|
|
var exrateList = JsonConvert.Deserialize<List<ChFeeExrate>>(storeCurrExrate);
|
|
|
var bodyList = JsonConvert.Deserialize<List<ChPaySettlement>>(data);
|
|
|
T_ALL_DA T_ALL_DA = new EntityDA.T_ALL_DA();
|
|
|
if (((exrateList == null) || (exrateList.Count == 0))&& (addcurr != curr))
|
|
|
{
|
|
|
|
|
|
exrateList = ChsettlementDAL.GetAppCurrExrateData(bodyList, curr, addcurr);
|
|
|
if (exrateList.Count == 0)
|
|
|
{
|
|
|
var modb = new ModelObjectDB();
|
|
|
DBResult result = ChsettlementDAL.AddRecvAppDCDetail(bill, bodyList, curr, Convert.ToString(Session["COMPANYID"]), addcurr, exrateList);
|
|
|
if (result.Success)
|
|
|
{ ChsettlementDAL.p_update_Amount(bill, billtype);
|
|
|
foreach (var enumValue in bodyList)
|
|
|
{
|
|
|
|
|
|
var blUpSQL1 = " insert into ch_fee_File (GID,BillNo,File_Type,File_Name,File_Path,CreateTime,Operator,File_OriginalName,File_DocType,File_DocNo,RefBillNo) "
|
|
|
+ " SELECT NEWID(),'" + bill + "',File_Type,File_Name,File_Path,CreateTime,Operator,File_OriginalName,File_DocType,File_DocNo,'"+ enumValue.BILLNO + "' FROM ch_fee_File WHERE BillNo='" + enumValue.BILLNO + "' ";
|
|
|
bool bl1 = T_ALL_DA.GetExecuteSqlCommand(blUpSQL1);
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
|
|
|
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
var jsonRespose = new JsonResponse { Success = true, Message = "查询成功", Data = exrateList.ToList() };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
|
|
|
var modb = new ModelObjectDB();
|
|
|
DBResult result = ChsettlementDAL.AddRecvAppDCDetail(bill, bodyList, curr, Convert.ToString(Session["COMPANYID"]), addcurr, exrateList);
|
|
|
if (result.Success)
|
|
|
{ ChsettlementDAL.p_update_Amount(bill, billtype);
|
|
|
foreach (var enumValue in bodyList)
|
|
|
{
|
|
|
|
|
|
var blUpSQL1 = " insert into ch_fee_File (GID,BillNo,File_Type,File_Name,File_Path,CreateTime,Operator,File_OriginalName,File_DocType,File_DocNo,RefBillNo) "
|
|
|
+ " SELECT NEWID(),'" + bill + "',File_Type,File_Name,File_Path,CreateTime,Operator,File_OriginalName,File_DocType,File_DocNo,'" + enumValue.BILLNO + "' FROM ch_fee_File WHERE BillNo='" + enumValue.BILLNO + "' ";
|
|
|
bool bl1 = T_ALL_DA.GetExecuteSqlCommand(blUpSQL1);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
public ContentResult DelRecvAppBill(string data, string billno, int billtype)
|
|
|
{
|
|
|
|
|
|
var bodyList = JsonConvert.Deserialize<List<ChPaySettlement>>(data);
|
|
|
|
|
|
DBResult result = ChsettlementDAL.DelRecvAppStl(bodyList, billno);
|
|
|
if (result.Success) {
|
|
|
|
|
|
ChsettlementDAL.p_update_Amount(billno, billtype);
|
|
|
|
|
|
}
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
#region 付费发票结算
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetPayInvList(int start, int limit, string sort, string condition)
|
|
|
{
|
|
|
var dataList = ChsettlementDAL.GetPayInvDataList(condition, CookieConfig.GetCookie_UserId(Request), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]), sort);
|
|
|
var list = dataList.Skip(start).Take(limit);
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = list.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetPayInvdetailList(string billno)
|
|
|
{
|
|
|
var dataList = ChsettlementDAL.GetPayInvDetailList(billno);
|
|
|
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public ContentResult AddPayInvAppDetail(string bill, string data, string curr, int billtype)
|
|
|
{
|
|
|
var bodyList = JsonConvert.Deserialize<List<ChInvoicehexiao>>(data);
|
|
|
|
|
|
var modb = new ModelObjectDB();
|
|
|
DBResult result = ChsettlementDAL.PayInvAddAppDetail(bill, bodyList, curr, Convert.ToString(Session["COMPANYID"]));
|
|
|
if (result.Success)
|
|
|
{
|
|
|
|
|
|
ChsettlementDAL.p_update_Amount(bill, billtype);
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
public ContentResult DelPayInvAppBill(string data, string billno, int billtype)
|
|
|
{
|
|
|
|
|
|
var bodyList = JsonConvert.Deserialize<List<ChInvoicehexiao>>(data);
|
|
|
|
|
|
DBResult result = ChsettlementDAL.DelPayInvAppStl(bodyList, billno);
|
|
|
if (result.Success)
|
|
|
{
|
|
|
|
|
|
ChsettlementDAL.p_update_Amount(billno, billtype);
|
|
|
|
|
|
}
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
#region 收费发票结算
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetRecvInvList(int start, int limit, string sort, string condition)
|
|
|
{
|
|
|
var dataList = ChsettlementDAL.GetRecvInvDataList(condition, CookieConfig.GetCookie_UserId(Request), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]), sort);
|
|
|
var list = dataList.Skip(start).Take(limit);
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = list.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetRecvInvdetailList(string billno)
|
|
|
{
|
|
|
var dataList = ChsettlementDAL.GetRecvInvDetailList(billno);
|
|
|
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public ContentResult AddRecvInvAppDetail(string bill, string data, string curr, string storeCurrExrate, int billtype)
|
|
|
{
|
|
|
var bodyList = JsonConvert.Deserialize<List<ChInvoice>>(data);
|
|
|
var exrateList = JsonConvert.Deserialize<List<ChFeeExrate>>(storeCurrExrate);
|
|
|
var result = new DBResult();
|
|
|
if (((exrateList == null) || (exrateList.Count == 0)))
|
|
|
{
|
|
|
|
|
|
exrateList = ChsettlementDAL.GetInvCurrExrateData(bodyList, curr);
|
|
|
if (exrateList.Count == 0)
|
|
|
{
|
|
|
var modb = new ModelObjectDB();
|
|
|
|
|
|
var STLINVPART = MsSysParamSetDAL.GetData("PARAMNAME='STLINVPART'");
|
|
|
if (STLINVPART.PARAMVALUE == "1")
|
|
|
{
|
|
|
result = ChsettlementDAL.NewRecvInvAddAppDetail(bill, bodyList, curr, Convert.ToString(Session["COMPANYID"]), exrateList);
|
|
|
} else result = ChsettlementDAL.RecvInvAddAppDetail(bill, bodyList, curr, Convert.ToString(Session["COMPANYID"]), exrateList);
|
|
|
if (result.Success)
|
|
|
{
|
|
|
ChsettlementDAL.p_update_Amount(bill, billtype);
|
|
|
}
|
|
|
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
|
|
|
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
var jsonRespose = new JsonResponse { Success = true, Message = "查询成功", Data = exrateList.ToList() };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
|
|
|
var modb = new ModelObjectDB();
|
|
|
var STLINVPART = MsSysParamSetDAL.GetData("PARAMNAME='STLINVPART'");
|
|
|
if (STLINVPART.PARAMVALUE == "1")
|
|
|
{
|
|
|
result = ChsettlementDAL.NewRecvInvAddAppDetail(bill, bodyList, curr, Convert.ToString(Session["COMPANYID"]), exrateList);
|
|
|
} else result = ChsettlementDAL.RecvInvAddAppDetail(bill, bodyList, curr, Convert.ToString(Session["COMPANYID"]), exrateList);
|
|
|
if (result.Success)
|
|
|
{
|
|
|
ChsettlementDAL.p_update_Amount(bill, billtype);
|
|
|
}
|
|
|
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
}
|
|
|
|
|
|
public ContentResult DelRecvInvAppBill(string data, string billno, int billtype)
|
|
|
{
|
|
|
|
|
|
var bodyList = JsonConvert.Deserialize<List<ChInvoice>>(data);
|
|
|
|
|
|
DBResult result = ChsettlementDAL.DelRecvInvAppStl(bodyList, billno);
|
|
|
if (result.Success)
|
|
|
{
|
|
|
|
|
|
ChsettlementDAL.p_update_Amount(billno, billtype);
|
|
|
|
|
|
}
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
#region 预收预付
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetAdvancePayment(int start, int limit, string sort, string condition)
|
|
|
{
|
|
|
var dataList = ChsettlementDAL.GetAPDataList(condition);
|
|
|
var list = dataList.Skip(start).Take(limit);
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = list.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetAPBodyList(string condition)
|
|
|
{
|
|
|
var dataList = ChsettlementDAL.GetAPBodyList(condition);
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
|
|
|
public ContentResult AddAPDetail(string billno, string data, string stlnogid, int feetype)
|
|
|
{
|
|
|
var bodyList = JsonConvert.Deserialize<List<CWAdvancePayment>>(data);
|
|
|
|
|
|
var modb = new ModelObjectDB();
|
|
|
DBResult result = ChsettlementDAL.AddAPDetail(billno, bodyList, stlnogid, feetype, CookieConfig.GetCookie_UserId(Request), Convert.ToString(Session["COMPANYID"]));
|
|
|
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
public ContentResult DelAPBill(string data)
|
|
|
{
|
|
|
|
|
|
var bodyList = JsonConvert.Deserialize<List<CWAdvancePaymentBody>>(data);
|
|
|
|
|
|
DBResult result = ChsettlementDAL.DelPaymentDo(bodyList);
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
#region 汇兑损益
|
|
|
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetRemitList(string condition, string sort, string printstr)
|
|
|
{
|
|
|
if ((!string.IsNullOrEmpty(printstr)) && (printstr == "true"))
|
|
|
{
|
|
|
var strSql = new StringBuilder();
|
|
|
strSql.Append("SELECT r.GID,r.BILLNO,r.BSNO,r.CUSTNO,r.MBLNO,r.HBLNO,r.CUSTOMERNAME,r.SALE");
|
|
|
strSql.Append(",r.REMITTANCE,r.REMITTANCEAMOUNT,r.BUYRATE,r.SELLRATE,r.SETTLRATE,r.FEEID,r.FEENAME");
|
|
|
strSql.Append(",r.CURRENCY,r.AMOUNT,r.BILLSTATUS,r.REMARK,r.CREATETIME,r.COMPANYID,r.FEETYPE");
|
|
|
strSql.Append(",CASE r.FEETYPE WHEN 1 THEN '收' ELSE '付' END FEETYPEREF,s.SETTLETIME,s.CUSTOMERNAME CUSTNAME ");
|
|
|
|
|
|
strSql.Append(" from ch_fee_settlement_remittance r left join ch_fee_settlement s on (s.BILLNO=r.BILLNO) ");
|
|
|
|
|
|
if (!string.IsNullOrEmpty(condition))
|
|
|
{
|
|
|
strSql.Append(" WHERE " + condition);
|
|
|
}
|
|
|
var sortstring = DatasetSort.Getsortstring(sort);
|
|
|
if (!string.IsNullOrEmpty(sortstring))
|
|
|
{
|
|
|
strSql.Append(" order by " + sortstring);
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
strSql.Append(" order by r.BILLNO,r.CUSTNO ");
|
|
|
|
|
|
}
|
|
|
var jsonRespose = new JsonResponse
|
|
|
{
|
|
|
Success = true,
|
|
|
Message = "完成",
|
|
|
Data = strSql.ToString()
|
|
|
};
|
|
|
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
var dataList = ChsettlementDAL.GetRemitList(condition, sort);
|
|
|
var json = JsonConvert.Serialize(
|
|
|
new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
}
|
|
|
public ContentResult DeleteRemit(string data)
|
|
|
{
|
|
|
var headData = JsonConvert.Deserialize < List<ChSettlement_remittance>>(data);
|
|
|
DBResult result;
|
|
|
var billno = "";
|
|
|
if (headData != null)
|
|
|
{
|
|
|
foreach (var enumValue in headData)
|
|
|
{
|
|
|
var modb = new ModelObjectDB();
|
|
|
result = modb.Delete(enumValue);
|
|
|
billno = enumValue.BILLNO;
|
|
|
}
|
|
|
}
|
|
|
ChsettlementDAL.p_update_Remit(billno);
|
|
|
var jsonRespose = new JsonResponse { Success =true, Message ="删除成功!" };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
public ContentResult SaveRemit(string billno,string body)
|
|
|
{
|
|
|
var chfeeBodyList = JsonConvert.Deserialize<List<ChSettlement_remittance>>(body);
|
|
|
var chfeeDelBodyList = JsonConvert.Deserialize<List<ChSettlement_remittance>>("");
|
|
|
|
|
|
var modb = new ModelObjectRepository();
|
|
|
DBResult result = modb.SaveComm("BILLNO", billno,
|
|
|
ModelObjectConvert<ChSettlement_remittance>.ToModelObjectList(chfeeBodyList),
|
|
|
ModelObjectConvert<ChSettlement_remittance>.ToModelObjectList(chfeeDelBodyList)
|
|
|
);
|
|
|
if (result.Success) { ChsettlementDAL.p_update_Remit(billno); }
|
|
|
//刷新父窗口上的父节点
|
|
|
var jsonRespose = new JsonResponse
|
|
|
{
|
|
|
Success = result.Success,
|
|
|
Message = result.Message,
|
|
|
//Data = XXHDAL.GetData("M.ContractNo='" + head.ContractNo + "'")
|
|
|
};
|
|
|
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
public ContentResult UpdateNotVou(string data, bool isnot)
|
|
|
{
|
|
|
var headList = JsonConvert.Deserialize<List<ChSettlement>>(data);
|
|
|
var result = ChsettlementDAL.UpdateNotVou(headList, isnot);
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetDefaulExrate(string billno,string curr)
|
|
|
{
|
|
|
T_ALL_DA T_ALL_DA = new EntityDA.T_ALL_DA();
|
|
|
var EXCHANGERATE = T_ALL_DA.GetStrSQL("EXCHANGERATE", "select top 1 EXCHANGERATE FROM CH_FEE WHERE CURRENCY='" + curr + "' AND GID IN (SELECT FEEID FROM CH_FEE_DO WHERE BILLNO='" + billno + "')");
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = true, Message = "", Data = EXCHANGERATE };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
|
|
|
#region 参照部分
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
#region 生成总账凭证
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult GetCodeCurrencyList(string strGids)
|
|
|
{
|
|
|
var dataList = ChsettlementDAL.GetCodeCurrencyList(strGids, Convert.ToString(Session["COMPANYID"]), CookieConfig.GetCookie_UserId(Request));
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
[SqlKeyWordsFilter(Type = "Action")]//sql 防注入过滤器
|
|
|
|
|
|
public ContentResult onAddCwVouchers(string strGids, string dataDiv, string jsonBody)
|
|
|
{
|
|
|
var headData = JsonConvert.Deserialize<MsCwVouchersGl3>(dataDiv);
|
|
|
List<MsCwVouchersGl4> bodyList = new List<MsCwVouchersGl4>();
|
|
|
if (jsonBody != null)
|
|
|
{
|
|
|
bodyList = JsonConvert.Deserialize<List<MsCwVouchersGl4>>(jsonBody);
|
|
|
}
|
|
|
if (bodyList == null && headData.ISRATE == false)
|
|
|
{
|
|
|
headData.ISRATE = true;
|
|
|
}
|
|
|
//
|
|
|
DBResult result2 = ChsettlementDAL.GetIsVoucher(strGids, CookieConfig.GetCookie_UserId(Request));
|
|
|
if (!result2.Success)
|
|
|
{
|
|
|
var jsonRespose2 = new JsonResponse { Success = result2.Success, Message = result2.Message, Data = "" };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose2) };
|
|
|
}
|
|
|
//
|
|
|
DBResult result = ChsettlementDAL.onAddCwVouchers(strGids, headData, bodyList, CookieConfig.GetCookie_UserId(Request), Convert.ToString(Session["SHOWNAME"]), Convert.ToString(Session["COMPANYID"]));
|
|
|
//
|
|
|
string sGids = "'" + strGids.Trim().Replace(",", "','") + "'";
|
|
|
T_ALL_DA T_ALL_DA = new EntityDA.T_ALL_DA();
|
|
|
string strCwSTARTGID = BasicDataRefDAL.GetCwSTARTGID(CookieConfig.GetCookie_UserId(Request));
|
|
|
string sVOUCHERNO = T_ALL_DA.GetStrSQL("ORDNO", "select top 1 ORDNO from cw_vouno_bs_gl where bsgid in (" + sGids + ") and STARTGID='" + strCwSTARTGID + "'");
|
|
|
//
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message, Data = sVOUCHERNO };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
public ContentResult GetIsVoucher(string strGids)
|
|
|
{
|
|
|
DBResult result = ChsettlementDAL.GetIsVoucher(strGids, CookieConfig.GetCookie_UserId(Request));
|
|
|
var jsonRespose = new JsonResponse{ Success = result.Success, Message = result.Message, Data = "" };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
/// 是否自动弹出结算总账凭证
|
|
|
/// </summary>
|
|
|
/// <returns></returns>
|
|
|
public ContentResult onIsSettlementsopen()
|
|
|
{
|
|
|
DBResult result = ChsettlementDAL.onIsSettlementsopen(CookieConfig.GetCookie_UserId(Request));
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message, Data = "" };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
#endregion
|
|
|
|
|
|
#region 生成接口凭证
|
|
|
//public ContentResult onAddCwVouchersJK(string strGids, string dataDiv, string jsonBody)
|
|
|
//{
|
|
|
// DBResult result2 = ChsettlementDAL.GetIsVoucherJK(strGids);
|
|
|
// if (!result2.Success)
|
|
|
// {
|
|
|
// var jsonRespose2 = new JsonResponse { Success = result2.Success, Message = result2.Message, Data = "" };
|
|
|
// return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose2) };
|
|
|
// }
|
|
|
// //
|
|
|
// var headData = JsonConvert.Deserialize<MsCwVouchersGl3>(dataDiv);
|
|
|
// DBResult result = ChsettlementDAL.onAddCwVouchersJK(strGids, headData, CookieConfig.GetCookie_UserId(Request), Convert.ToString(Session["SHOWNAME"]), Convert.ToString(Session["COMPANYID"]));
|
|
|
// //
|
|
|
// string sGids = "'" + strGids.Trim().Replace(",", "','") + "'";
|
|
|
// T_ALL_DA T_ALL_DA = new EntityDA.T_ALL_DA();
|
|
|
// string sVOUNO = T_ALL_DA.GetStrSQL("VOUNO", "select top 1 VOUNO from ch_fee_settlement where gid in (" + sGids + ")");
|
|
|
// //
|
|
|
// var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message, Data = sVOUNO };
|
|
|
// return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
//}
|
|
|
|
|
|
//public ContentResult GetIsVoucherJK(string strGids)
|
|
|
//{
|
|
|
// DBResult result = ChsettlementDAL.GetIsVoucherJK(strGids);
|
|
|
// var jsonRespose = new JsonResponse{ Success = result.Success, Message = result.Message, Data = "" };
|
|
|
// return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
//}
|
|
|
|
|
|
//public ContentResult GetCodeCurrencyListJK(string sVOUDATE)
|
|
|
//{
|
|
|
// var dataList = ChsettlementDAL.GetCodeCurrencyListJK(sVOUDATE, Convert.ToString(Session["COMPANYID"]));
|
|
|
// var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
|
|
|
// return new ContentResult() { Content = json };
|
|
|
//}
|
|
|
|
|
|
/// <summary>
|
|
|
/// 是否自动弹出结算接口凭证
|
|
|
/// </summary>
|
|
|
/// <returns></returns>
|
|
|
public ContentResult onIsSettlementsopenJK()
|
|
|
{
|
|
|
DBResult result = ChsettlementDAL.onIsSettlementsopenJK();
|
|
|
var jsonRespose = new JsonResponse{ Success = result.Success, Message = result.Message, Data = "" };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
#endregion
|
|
|
}
|
|
|
}
|
|
|
|