|
|
using System;
|
|
|
using System.Linq;
|
|
|
using System.Web.Mvc;
|
|
|
using DSWeb.Areas.Account.DAL.Chfee_Invoice;
|
|
|
using DSWeb.Areas.Account.DAL.Chfee_Invoiceapplication;
|
|
|
using DSWeb.Areas.Account.Models.Chfee_Invoiceapplication;
|
|
|
using DSWeb.Areas.Account.Models.Chfee_Invoice;
|
|
|
using DSWeb.Areas.Account.Models.Chfee_do_detail;
|
|
|
using DSWeb.Areas.Account.Models.BillChfeeDetail;
|
|
|
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 System.IO;
|
|
|
using Microsoft.Practices.EnterpriseLibrary.Data;
|
|
|
using System.Text;
|
|
|
using System.Data;
|
|
|
using InvokeWebService;
|
|
|
using DSWeb.Areas.Account.Models.RytInvoice;
|
|
|
using System.Xml.Serialization;
|
|
|
using System.Xml;
|
|
|
using DSWeb.MvcShipping.DAL.MsSysParamSet;
|
|
|
using DSWeb.MvcShipping.DAL.MsInfoClient;
|
|
|
|
|
|
namespace DSWeb.Areas.Account.Controllers
|
|
|
{
|
|
|
[JsonRequestBehavior]
|
|
|
public class Chfee_invoiceController : Controller
|
|
|
{
|
|
|
//
|
|
|
// GET:
|
|
|
public ActionResult Index()
|
|
|
{
|
|
|
return View();
|
|
|
}
|
|
|
|
|
|
//
|
|
|
// GET: /
|
|
|
public ActionResult Edit()
|
|
|
{
|
|
|
return View();
|
|
|
}
|
|
|
|
|
|
public ActionResult BLEdit()
|
|
|
{
|
|
|
return View();
|
|
|
}
|
|
|
|
|
|
public ActionResult AppEdit()
|
|
|
{
|
|
|
return View();
|
|
|
}
|
|
|
public ActionResult BookEdit()
|
|
|
{
|
|
|
return View();
|
|
|
}
|
|
|
|
|
|
public ActionResult BookIndex()
|
|
|
{
|
|
|
return View();
|
|
|
}
|
|
|
public ActionResult DetailView()
|
|
|
{
|
|
|
return View();
|
|
|
}
|
|
|
|
|
|
//
|
|
|
// GET:
|
|
|
|
|
|
public ContentResult GetDataList(int start, int limit, string sort, string condition)
|
|
|
{
|
|
|
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) };
|
|
|
}
|
|
|
if (sort != null)
|
|
|
{
|
|
|
sort = sort.Replace("OPERATORNAME", "OPERATOR");
|
|
|
sort = sort.Replace("DELOPERATORNAME", "DELETEOPERATOR");
|
|
|
sort = sort.Replace("SALECORP", "SALECORPID");
|
|
|
sort = sort.Replace("INVOICECATEGORYREF", "INVOICECATEGORY");
|
|
|
sort = sort.Replace("INVOICETYPEREF", "INVOICETYPE");
|
|
|
sort = sort.Replace("APPLICANT", "(select top 1 (select ShowName from [user] where GID=ap.applicant) APPLICANT from ch_fee_invoiceapplication ap where invbillno=cm.BILLNO)");
|
|
|
}
|
|
|
|
|
|
|
|
|
var dataList = ChinvoiceDAL.GetDataList(start, limit,condition, Convert.ToString(Session["USERID"]), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]), sort);
|
|
|
int count = ChinvoiceDAL.getTotalCount(condition, CookieConfig.GetCookie_UserId(Request), Convert.ToString(Session["SHOWNAME"]), Convert.ToString(Session["COMPANYID"]));
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = count, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
public ContentResult GetDataListStr(int start, int limit, string sort, string condition, int billtype)
|
|
|
{
|
|
|
var dataListStr = ChinvoiceDAL.GetDataListStr(condition, Convert.ToString(Session["USERID"]), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]), sort);
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", data = dataListStr });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
public ContentResult GetData(string handle, string condition,bool isapp)
|
|
|
{
|
|
|
ChInvoice head = null;
|
|
|
|
|
|
if (handle == "edit" || handle == "copyadd")
|
|
|
{
|
|
|
var list = ChinvoiceDAL.GetDataList(0,1,condition, Convert.ToString(Session["USERID"]), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]));
|
|
|
if (list.Count > 0)
|
|
|
head = list[0];
|
|
|
}
|
|
|
|
|
|
if (head == null)
|
|
|
{
|
|
|
head = new ChInvoice();
|
|
|
}
|
|
|
|
|
|
if (handle == "add")
|
|
|
{
|
|
|
head.OPERATOR = Convert.ToString(Session["USERID"]);
|
|
|
head.OPERATORNAME = Convert.ToString(Session["SHOWNAME"]);
|
|
|
head.CREATEUSER = Convert.ToString(Session["USERID"]);
|
|
|
|
|
|
if (isapp)
|
|
|
{
|
|
|
head.INVOICETYPE = 2;
|
|
|
head.INVOICETYPEREF = "申请发票";
|
|
|
}
|
|
|
else {
|
|
|
head.INVOICETYPE = 1;
|
|
|
head.INVOICETYPEREF = "自由发票";
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
var json = JsonConvert.Serialize(
|
|
|
new { Success = true, Message = "查询成功", data = head });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
|
|
|
public ContentResult GetDetailList(string condition)
|
|
|
{
|
|
|
var dataList = ChinvoiceDAL.GetDetailList(condition);
|
|
|
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
public ContentResult GetBillList(string condition, string sort)
|
|
|
{
|
|
|
var dataList = ChinvoiceDAL.GetBodyList(condition,sort);
|
|
|
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
public ContentResult GetTruckBillList(string condition, string sort)
|
|
|
{
|
|
|
var dataList = ChinvoiceDAL.GetTruckBodyList(condition, sort);
|
|
|
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
public ContentResult GetBillSum(string condition)
|
|
|
{
|
|
|
var dataList = ChinvoiceDAL.GetBodySumList(condition);
|
|
|
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
public ContentResult GetFeeDataList(int start, int limit, string sort, string condition)
|
|
|
{
|
|
|
var dataList = ChinvoiceDAL.GetFeeDataList(condition, Convert.ToString(Session["USERID"]), Convert.ToString(Session["SHOWNAME"]), 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 };
|
|
|
}
|
|
|
|
|
|
public ContentResult GetBillDataList(int start, int limit, string sort, string condition)
|
|
|
{
|
|
|
var dataList = ChinvoiceDAL.GetAddBillList(start, limit,condition, Convert.ToString(Session["USERID"]), Convert.ToString(Session["SHOWNAME"]), Convert.ToString(Session["COMPANYID"]), sort);
|
|
|
int count = ChinvoiceDAL.getAddBillTotalCount(condition, Convert.ToString(Session["USERID"]), Convert.ToString(Session["SHOWNAME"]), Convert.ToString(Session["COMPANYID"]));
|
|
|
var json = JsonConvert.Serialize(
|
|
|
new { Success = true, Message = "查询成功", totalCount = count, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
public ContentResult GetTruckBillDataList(int start, int limit, string sort, string condition)
|
|
|
{
|
|
|
var dataList = ChinvoiceDAL.GetAddTruckBillList(start, limit, condition, Convert.ToString(Session["USERID"]), Convert.ToString(Session["SHOWNAME"]), Convert.ToString(Session["COMPANYID"]), sort);
|
|
|
int count = ChinvoiceDAL.getAddTruckBillTotalCount(condition, Convert.ToString(Session["USERID"]), Convert.ToString(Session["SHOWNAME"]), Convert.ToString(Session["COMPANYID"]));
|
|
|
var json = JsonConvert.Serialize(
|
|
|
new { Success = true, Message = "查询成功", totalCount = count, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
public ContentResult GetFeeDetailList(string sort, string condition)
|
|
|
{
|
|
|
var dataList = ChinvoiceDAL.GetFeeDetailList(condition, Convert.ToString(Session["USERID"]), Convert.ToString(Session["SHOWNAME"]), Convert.ToString(Session["COMPANYID"]), sort);
|
|
|
var json = JsonConvert.Serialize(
|
|
|
new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
public ContentResult GetAddSum(string condition)
|
|
|
{
|
|
|
var dataList = ChinvoiceDAL.GetAddSum(condition, Convert.ToString(Session["USERID"]), Convert.ToString(Session["SHOWNAME"]), Convert.ToString(Session["COMPANYID"]));
|
|
|
|
|
|
|
|
|
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 body)
|
|
|
{
|
|
|
|
|
|
|
|
|
var headData = JsonConvert.Deserialize<ChInvoice>(data);
|
|
|
|
|
|
var bodyList = JsonConvert.Deserialize<List<ChInvoiceDetail>>(body);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (opstatus == "add")
|
|
|
{
|
|
|
headData.GID = Guid.NewGuid().ToString();
|
|
|
headData.BILLNO = PubSysDAL.GetBillNo("0308");
|
|
|
headData.COMPANYID = Convert.ToString(Session["COMPANYID"]);
|
|
|
headData.OPERATOR = Convert.ToString(Session["USERID"]);
|
|
|
headData.OPERATETIME = DateTime.Now;
|
|
|
headData.CREATEUSER = Convert.ToString(Session["USERID"]);
|
|
|
headData.CREATETIME = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
|
|
|
headData.DbOperationType = DbOperationType.DbotIns;
|
|
|
}
|
|
|
else if (opstatus == "edit")
|
|
|
{
|
|
|
headData.DbOperationType = DbOperationType.DbotUpd;
|
|
|
headData.ModelUIStatus = "E";
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
headData.DbOperationType = DbOperationType.DbotDel;
|
|
|
}
|
|
|
|
|
|
|
|
|
if (headData.INVOICECUSTNAME == "")
|
|
|
{
|
|
|
T_ALL_DA T_ALL_DA = new T_ALL_DA();
|
|
|
DataSet dsHSCODE = T_ALL_DA.GetAllSQL("SELECT Gid,CODENAME as CustCode,SHORTNAME as CustName,CODENAME+'-'+SHORTNAME as CodeAndName,BillRises1,INVADDRTEL,[DESCRIPTION],RmbBillRises,(select top 1 BANKNAME+' '+ACCOUNT FROM info_client_bank WHERE CURRENCY='RMB' AND LINKID=info_client.GID) Rmbbank,Rmbaccount,usdBillRises,(select top 1 BANKNAME+' '+ACCOUNT FROM info_client_bank WHERE CURRENCY='USD' AND LINKID=info_client.GID) usdbank,usdaccount,TaxNo,Addr,Tel from info_client WHERE SHORTNAME='" + headData.CUSTOMERNAME + "'");
|
|
|
if (dsHSCODE != null)
|
|
|
{
|
|
|
if (dsHSCODE.Tables[0].Rows.Count > 0)
|
|
|
{
|
|
|
if (dsHSCODE.Tables[0].Rows[0]["BillRises1"].ToString() != "")
|
|
|
headData.INVOICECUSTNAME = dsHSCODE.Tables[0].Rows[0]["BillRises1"].ToString();
|
|
|
else headData.INVOICECUSTNAME = dsHSCODE.Tables[0].Rows[0]["DESCRIPTION"].ToString();
|
|
|
if (headData.CUSTRATENO == "") headData.CUSTRATENO = dsHSCODE.Tables[0].Rows[0]["TaxNo"].ToString();
|
|
|
if (headData.CUSTADDRTEL == "")
|
|
|
{
|
|
|
if (dsHSCODE.Tables[0].Rows[0]["INVADDRTEL"].ToString() != "")
|
|
|
headData.CUSTADDRTEL = dsHSCODE.Tables[0].Rows[0]["INVADDRTEL"].ToString();
|
|
|
else headData.CUSTADDRTEL = dsHSCODE.Tables[0].Rows[0]["Addr"].ToString() + " " + dsHSCODE.Tables[0].Rows[0]["Tel"].ToString();
|
|
|
}
|
|
|
if (headData.CUSTBANK == "")
|
|
|
{
|
|
|
if (headData.RECVCURR == "USD")
|
|
|
headData.CUSTBANK = dsHSCODE.Tables[0].Rows[0]["usdbank"].ToString();
|
|
|
else
|
|
|
headData.CUSTBANK = dsHSCODE.Tables[0].Rows[0]["Rmbbank"].ToString();
|
|
|
}
|
|
|
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
if (!string.IsNullOrEmpty(headData.RECVCURR) && string.IsNullOrEmpty(headData.CUSTBANK) && !string.IsNullOrEmpty(headData.CUSTOMERNAME))
|
|
|
{
|
|
|
|
|
|
var bankList = MsInfoClientDAL.GetBankList("LINKID in (select GID FROM info_client WHERE SHORTNAME='" + headData.CUSTOMERNAME + "')");
|
|
|
if (bankList != null && bankList.Count != 0)
|
|
|
{
|
|
|
foreach (var bank in bankList)
|
|
|
{
|
|
|
if ((bank.CURRENCY == headData.RECVCURR) && (bank.ISINVDEF == "1"))
|
|
|
headData.CUSTBANK = bank.BANKNAME_ACCOUNT;
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
var isPost = true;
|
|
|
var errorstr = "";
|
|
|
if (headData.INVOICENO != "")
|
|
|
{
|
|
|
var ct = ChinvoiceDAL.GetRdCount("GID<>'" + headData.GID + "' AND INVOICENO='" + headData.INVOICENO + "' and COMPANYID='" + Convert.ToString(Session["COMPANYID"]) + "'");
|
|
|
if (ct != 0)
|
|
|
{
|
|
|
isPost = false;
|
|
|
errorstr = "发票号";
|
|
|
}
|
|
|
}
|
|
|
|
|
|
if (isPost)
|
|
|
{
|
|
|
if (headData.INVOICEMAKETIME == "") headData.INVOICEMAKETIME = null;
|
|
|
if (headData.ETD == "") headData.ETD = null;
|
|
|
headData.CUSTRATENO = headData.CUSTRATENO.Trim();
|
|
|
headData.CUSTBANK = headData.CUSTBANK.Trim();
|
|
|
headData.REMARK = headData.REMARK.Trim();
|
|
|
var BILLNO = headData.BILLNO;
|
|
|
var modb = new ModelObjectDB();
|
|
|
DBResult result = ChinvoiceDAL.SaveInvDetail(headData.GID, bodyList);
|
|
|
if (result.Success == true)
|
|
|
{
|
|
|
|
|
|
result = modb.Save(headData);
|
|
|
ChinvoiceDAL.UpdateInvNoUse(headData.INVOICENO, Convert.ToString(Session["USERID"]),headData.BILLNO);
|
|
|
if (headData.EXCHANGERATE != 0)
|
|
|
{
|
|
|
ChinvoiceDAL.updateFeeTax(headData.BILLNO, headData.EXCHANGERATE);
|
|
|
|
|
|
}
|
|
|
|
|
|
};
|
|
|
|
|
|
var jsonRespose = new JsonResponse
|
|
|
{
|
|
|
Success = result.Success,
|
|
|
Message = result.Message,
|
|
|
Data = ChinvoiceDAL.GetData(" BILLNO='" + BILLNO + "'", Convert.ToString(Session["USERID"]), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]))
|
|
|
};
|
|
|
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
else {
|
|
|
var jsonRespose = new JsonResponse { Success = false, Message = errorstr + "重复,不允许保存!" };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
public ContentResult AddDetail(string bill, string data, string curr,bool islist,string GID,string invoiceno)
|
|
|
{
|
|
|
var bodyList = JsonConvert.Deserialize<List<BillChfeeDetail>>(data);
|
|
|
var headdata = ChinvoiceDAL.GetData(" BILLNO='" + bill + "'", Convert.ToString(Session["USERID"]), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]));
|
|
|
var modb = new ModelObjectDB();
|
|
|
DBResult result = ChinvoiceDAL.AddDetail(bill, bodyList, curr, Convert.ToString(Session["COMPANYID"]), islist, GID,headdata);
|
|
|
if (result.Success) { ChinvoiceDAL.p_update_Amount(bill, GID); }
|
|
|
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
public ContentResult AddBill(string bill, string feesql, string storeCurrExrate, bool islist, string GID, bool custgroup = false)
|
|
|
{
|
|
|
var headData = JsonConvert.Deserialize<ChInvoice>(bill);
|
|
|
var exrateList = JsonConvert.Deserialize<List<ChFeeExrate>>(storeCurrExrate);
|
|
|
|
|
|
if ((exrateList == null) || (exrateList.Count == 0))
|
|
|
{
|
|
|
|
|
|
exrateList = ChinvoiceDAL.GetCurrExrateData(headData.CUSTOMERNAME, headData.CURRENCY, feesql, custgroup);
|
|
|
if (exrateList.Count == 0)
|
|
|
{
|
|
|
var modb = new ModelObjectDB();
|
|
|
DBResult result = ChinvoiceDAL.AddBill(headData, feesql, exrateList, Convert.ToString(Session["COMPANYID"]), islist, GID, Convert.ToString(Session["USERID"]), custgroup);
|
|
|
if (result.Success) { ChinvoiceDAL.p_update_Amount(headData.BILLNO, GID); }
|
|
|
|
|
|
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 = ChinvoiceDAL.AddBill(headData, feesql, exrateList, Convert.ToString(Session["COMPANYID"]), islist, GID, Convert.ToString(Session["USERID"]));
|
|
|
if (result.Success) { ChinvoiceDAL.p_update_Amount(headData.BILLNO, GID); }
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
public ContentResult DelBill(string data, string billno,string GID)
|
|
|
{
|
|
|
|
|
|
var bodyList = JsonConvert.Deserialize<List<Chfee_do_detail>>(data);
|
|
|
|
|
|
DBResult result = ChinvoiceDAL.DelFeeDo(bodyList,GID);
|
|
|
if (result.Success) { ChinvoiceDAL.p_update_Amount(billno, GID); }
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
|
|
|
//
|
|
|
|
|
|
|
|
|
public ContentResult Delete(string data)
|
|
|
{
|
|
|
var headData = JsonConvert.Deserialize<ChInvoice>(data);
|
|
|
DBResult result;
|
|
|
var isfee = ChinvoiceDAL.GetStCount("PAYBILLNO='" + headData.BILLNO + "'");
|
|
|
if (isfee!=0)
|
|
|
{
|
|
|
|
|
|
var jsonRespose2 = new JsonResponse { Success =false, Message ="已发票结算,不允许删除发票" };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose2) };
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
if (headData.INVOICETYPE == 2)
|
|
|
{
|
|
|
var dataList = ChinvoiceapplicationDAL.GetDataListAll("INVBILLNO='"+headData.BILLNO+"'", Convert.ToString(Session["USERID"]), CookieConfig.GetCookie_UserCode(Request),Convert.ToString(Session["COMPANYID"]));
|
|
|
result = ChinvoiceDAL.DelAppList(dataList,headData.BILLNO);
|
|
|
}
|
|
|
else {
|
|
|
var dataList = ChinvoiceDAL.GetBodyList("BILLNO='" + headData.BILLNO + "'");
|
|
|
result = ChinvoiceDAL.DelFeeDo(dataList, headData.GID);
|
|
|
|
|
|
}
|
|
|
|
|
|
if (result.Success == true)
|
|
|
{
|
|
|
var modb = new ModelObjectDB();
|
|
|
modb.Delete(headData);
|
|
|
ChinvoiceDAL.UpdateInvNoCancelUse(headData.INVOICENO);
|
|
|
T_ALL_DA T_ALL_DA = new EntityDA.T_ALL_DA();
|
|
|
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.INVOICENO + '(' + 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 DeleteUp(string data)
|
|
|
{
|
|
|
var headData = JsonConvert.Deserialize<ChInvoice>(data);
|
|
|
DBResult result;
|
|
|
T_ALL_DA T_ALL_DA = new T_ALL_DA();
|
|
|
var strCT = T_ALL_DA.GetStrSQL("CT", "select COUNT(*) CT from ch_fee_do_payapplication where PAYBILLNO='" + headData.BILLNO + "'");
|
|
|
if (strCT != "0" && strCT != "")
|
|
|
{
|
|
|
var jsonRespose2 = new JsonResponse { Success = false, Message = "已发票结算,不允许作废" };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose2) };
|
|
|
}
|
|
|
|
|
|
|
|
|
if (headData.INVOICETYPE == 2)
|
|
|
{
|
|
|
var dataList = ChinvoiceapplicationDAL.GetDataListAll("INVBILLNO='" + headData.BILLNO + "'", Convert.ToString(Session["USERID"]), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]));
|
|
|
result = ChinvoiceDAL.DelAppList(dataList, headData.BILLNO);
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
var dataList = ChinvoiceDAL.GetBodyList("BILLNO='" + headData.BILLNO + "'");
|
|
|
result = ChinvoiceDAL.DelFeeDo(dataList,headData.GID);
|
|
|
|
|
|
}
|
|
|
|
|
|
if (result.Success == true)
|
|
|
{
|
|
|
|
|
|
ChinvoiceDAL.UpdateDelete(headData.BILLNO, Convert.ToString(Session["USERID"]));
|
|
|
ChinvoiceDAL.UpdateInvNoDelete(headData.INVOICENO, Convert.ToString(Session["USERID"]));
|
|
|
}
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
|
|
|
public ContentResult CancelDeleteUp(string data)
|
|
|
{
|
|
|
var headData = JsonConvert.Deserialize<ChInvoice>(data);
|
|
|
DBResult result;
|
|
|
result = ChinvoiceDAL.UpdateDelete(headData.BILLNO, Convert.ToString(Session["USERID"]),false);
|
|
|
if (result.Success == true)
|
|
|
{
|
|
|
ChinvoiceDAL.UpdateInvNoDelete(headData.INVOICENO, Convert.ToString(Session["USERID"]),false);
|
|
|
}
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
public ContentResult GetInvoiceNo(string condition)
|
|
|
{
|
|
|
var dataList = ChinvoiceDAL.GetInvoiceNo(Convert.ToString(Session["COMPANYID"]), Convert.ToString(Session["USERID"]));
|
|
|
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
#region 发票申请添加
|
|
|
public ContentResult AddAppDetail(string bill, string data, string invoiceno, string GID)
|
|
|
{
|
|
|
var bodyList = JsonConvert.Deserialize<List<ChInvoiceapplication>>(data);
|
|
|
var StrGid="";
|
|
|
if (bodyList != null)
|
|
|
{
|
|
|
foreach (var enumValue in bodyList)
|
|
|
{
|
|
|
if (StrGid=="")
|
|
|
StrGid="'"+enumValue.GID+"'";
|
|
|
else
|
|
|
StrGid=StrGid+",'"+enumValue.GID+"'";
|
|
|
|
|
|
}
|
|
|
}
|
|
|
if (StrGid != "")
|
|
|
{
|
|
|
StrGid = "(" + StrGid + ")";
|
|
|
var dataList = ChinvoiceapplicationDAL.GetDataInvList(" BILLSTATUS=0 and GID IN " + StrGid, Convert.ToString(Session["USERID"]), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]));
|
|
|
if (dataList != null && dataList.Count != 0)
|
|
|
{
|
|
|
var modb = new ModelObjectDB();
|
|
|
DBResult result = ChinvoiceDAL.AddAppDetail(bill, dataList, invoiceno, Convert.ToString(Session["COMPANYID"]), GID);
|
|
|
if (result.Success) { ChinvoiceDAL.p_update_Amount(bill, GID); }
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
else {
|
|
|
var jsonRespose = new JsonResponse { Success = false, Message = "发票申请已生成发票,请刷新!" };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
}
|
|
|
else {
|
|
|
var jsonRespose = new JsonResponse { Success =false, Message ="无需要添加的发票申请!" };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
|
|
|
|
|
|
}
|
|
|
}
|
|
|
|
|
|
public ContentResult DelAppBill(string data, string billno, string GID)
|
|
|
{
|
|
|
|
|
|
var bodyList = JsonConvert.Deserialize<List<ChInvoiceapplication>>(data);
|
|
|
|
|
|
DBResult result = ChinvoiceDAL.DelAppList(bodyList,billno);
|
|
|
if (result.Success) { ChinvoiceDAL.p_update_Amount(billno, GID); }
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
public ContentResult DelInvDetail(string billno, string body,string GID)
|
|
|
{
|
|
|
|
|
|
var bodyList = JsonConvert.Deserialize<List<ChInvoiceDetail>>(body);
|
|
|
|
|
|
DBResult result = ChinvoiceDAL.DelInvDetail(bodyList);
|
|
|
if (result.Success) { ChinvoiceDAL.p_update_Amount(billno, GID); }
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
//public ContentResult UpdateCustInvHead(string data)
|
|
|
//{
|
|
|
|
|
|
// var headdata = JsonConvert.Deserialize<ChInvoice>(data);
|
|
|
|
|
|
// var result = new DBResult();
|
|
|
|
|
|
|
|
|
// Database db = DatabaseFactory.CreateDatabase();
|
|
|
// using (var conn = db.CreateConnection())
|
|
|
// {
|
|
|
// conn.Open();
|
|
|
// var tran = conn.BeginTransaction();
|
|
|
|
|
|
// try
|
|
|
// {
|
|
|
// var strSql = new StringBuilder();
|
|
|
// strSql.Append("update info_client set CODENAME=CODENAME ");
|
|
|
// if (headdata.INVOICECUSTNAME!="")
|
|
|
// strSql.Append(",BillRises1='"+headdata.INVOICECUSTNAME+"'");
|
|
|
// if (headdata.CUSTRATENO != "")
|
|
|
// strSql.Append(",TaxNo='" + headdata.CUSTRATENO + "'");
|
|
|
// if (headdata.CUSTADDRTEL != "")
|
|
|
// strSql.Append(",BillRises1='" + headdata.CUSTADDRTEL + "'");
|
|
|
|
|
|
// strSql.Append(" where BSNO=@BSNO ");
|
|
|
|
|
|
|
|
|
|
|
|
// tran.Commit();
|
|
|
// }
|
|
|
// catch (Exception)
|
|
|
// {
|
|
|
// tran.Rollback();
|
|
|
|
|
|
// result.Success = false;
|
|
|
// result.Message = "修改出现错误,请重试或联系系统管理员";
|
|
|
|
|
|
// return result;
|
|
|
// }
|
|
|
// }
|
|
|
|
|
|
// result.Success = true;
|
|
|
// result.Message = "修改成功" + result.Message;
|
|
|
// var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
// return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
//}
|
|
|
|
|
|
#region 锁定和撤销锁定
|
|
|
|
|
|
public ContentResult Lock(string bill)
|
|
|
{
|
|
|
|
|
|
DBResult result = ChinvoiceDAL.Lock(bill, Convert.ToString(Session["USERID"]));
|
|
|
|
|
|
var json = JsonConvert.Serialize(result);
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
public ContentResult UnLock(string bill)
|
|
|
{
|
|
|
|
|
|
DBResult result = ChinvoiceDAL.UnLock(bill, Convert.ToString(Session["USERID"]));
|
|
|
|
|
|
var json = JsonConvert.Serialize(result);
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
public ContentResult LockList(string bills)
|
|
|
{
|
|
|
|
|
|
DBResult result = ChinvoiceDAL.LockList(bills, Convert.ToString(Session["USERID"]));
|
|
|
|
|
|
var json = JsonConvert.Serialize(result);
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
public ContentResult UnLockList(string bills)
|
|
|
{
|
|
|
|
|
|
DBResult result = ChinvoiceDAL.UnLockList(bills, Convert.ToString(Session["USERID"]));
|
|
|
|
|
|
var json = JsonConvert.Serialize(result);
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
public ContentResult ExpInv(string bills)
|
|
|
{
|
|
|
var bodyList = JsonConvert.Deserialize<List<ChInvoice>>(bills);
|
|
|
var path = Server.MapPath("../../EDIFiles/ExportInv");
|
|
|
if (!Directory.Exists(path))
|
|
|
{
|
|
|
Directory.CreateDirectory(path);
|
|
|
}
|
|
|
//
|
|
|
var result = new DBResult();
|
|
|
|
|
|
var filename = "";
|
|
|
filename = ChinvoiceDAL.CreateInvList(bodyList, path);
|
|
|
if (filename != "")
|
|
|
{
|
|
|
//result.Data = "../../EDIFiles/ExportInv/" + filename;
|
|
|
result.Data =filename;
|
|
|
filename = Path.GetFileName(filename);
|
|
|
result.Success = true;
|
|
|
result.Message = filename;
|
|
|
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
result.Success = false;
|
|
|
result.Message = "无当前匹配的导出文件!";
|
|
|
}
|
|
|
|
|
|
//
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message, Data = result.Data };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
public ContentResult ExpDZInv(string bills)
|
|
|
{
|
|
|
var bodyList = JsonConvert.Deserialize<List<ChInvoice>>(bills);
|
|
|
var path = Server.MapPath("../../EDIFiles/ExportInv");
|
|
|
if (!Directory.Exists(path))
|
|
|
{
|
|
|
Directory.CreateDirectory(path);
|
|
|
}
|
|
|
//
|
|
|
var result = new DBResult();
|
|
|
|
|
|
var filename = "";
|
|
|
filename = ChinvoiceDAL.CreateDZInvList(bodyList, path, Convert.ToString(Session["COMPANYID"]));
|
|
|
if (filename != "")
|
|
|
{
|
|
|
//result.Data = "../../EDIFiles/ExportInv/" + filename;
|
|
|
result.Data = filename;
|
|
|
filename = Path.GetFileName(filename);
|
|
|
result.Success = true;
|
|
|
result.Message = filename;
|
|
|
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
result.Success = false;
|
|
|
result.Message = "无当前匹配的导出文件!";
|
|
|
}
|
|
|
|
|
|
//
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message, Data = result.Data };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
public ContentResult ExpInvForm(string bill)
|
|
|
{
|
|
|
var bodyList = ChinvoiceDAL.GetDataList(0,1,"BILLNO='"+bill+"'", Convert.ToString(Session["USERID"]), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]));
|
|
|
|
|
|
var path = Server.MapPath("../../EDIFiles/ExportInv");
|
|
|
if (!Directory.Exists(path))
|
|
|
{
|
|
|
Directory.CreateDirectory(path);
|
|
|
}
|
|
|
//
|
|
|
var result = new DBResult();
|
|
|
|
|
|
var filename = "";
|
|
|
filename = ChinvoiceDAL.CreateInvList(bodyList, path);
|
|
|
if (filename != "")
|
|
|
{
|
|
|
|
|
|
result.Data = filename;
|
|
|
filename = Path.GetFileName(filename);
|
|
|
result.Success = true;
|
|
|
result.Message = filename;
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
result.Success = false;
|
|
|
result.Message = "无当前匹配的导出文件!";
|
|
|
}
|
|
|
|
|
|
//
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message, Data = result.Data };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
public ContentResult ExpDZInvForm(string bill)
|
|
|
{
|
|
|
var bodyList = ChinvoiceDAL.GetDataList(0, 1, "BILLNO='" + bill + "'", Convert.ToString(Session["USERID"]), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]));
|
|
|
|
|
|
var path = Server.MapPath("../../EDIFiles/ExportInv");
|
|
|
if (!Directory.Exists(path))
|
|
|
{
|
|
|
Directory.CreateDirectory(path);
|
|
|
}
|
|
|
//
|
|
|
var result = new DBResult();
|
|
|
|
|
|
var filename = "";
|
|
|
filename = ChinvoiceDAL.CreateDZInvList(bodyList, path, Convert.ToString(Session["COMPANYID"]));
|
|
|
if (filename != "")
|
|
|
{
|
|
|
|
|
|
result.Data = filename;
|
|
|
filename = Path.GetFileName(filename);
|
|
|
result.Success = true;
|
|
|
result.Message = filename;
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
result.Success = false;
|
|
|
result.Message = "无当前匹配的导出文件!";
|
|
|
}
|
|
|
|
|
|
//
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message, Data = result.Data };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
public ContentResult ExpRYDInv(string gid,string email)
|
|
|
{
|
|
|
var bodyList = ChinvoiceDAL.GetDataList(0, 1,"cm.GID='"+gid+"'", Convert.ToString(Session["USERID"]), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"])); ;
|
|
|
var path = Server.MapPath("../../EDIFiles/ExportInv");
|
|
|
if (!Directory.Exists(path))
|
|
|
{
|
|
|
Directory.CreateDirectory(path);
|
|
|
}
|
|
|
var error = "";
|
|
|
if (bodyList == null) {
|
|
|
var jsonerror = JsonConvert.Serialize(new { Success = false, Message ="请登录后重试!" });
|
|
|
return new ContentResult() { Content = jsonerror };
|
|
|
}
|
|
|
|
|
|
if (email == "")
|
|
|
{ error = error + "<br />客户邮箱不能为空!"; }
|
|
|
//
|
|
|
var result = new DBResult();
|
|
|
|
|
|
var INVACCOUNT = MsSysParamSetDAL.GetData("PARAMNAME='INVACCOUNT'").PARAMVALUE;
|
|
|
var INVPSW = MsSysParamSetDAL.GetData("PARAMNAME='INVPSW'").PARAMVALUE;
|
|
|
if (INVACCOUNT == "")
|
|
|
{ error = error + "<br />电子发票用户ID不能为空"; }
|
|
|
if (INVPSW == "")
|
|
|
{ error = error + "<br />电子发票用户秘钥不能为空"; }
|
|
|
if (bodyList[0].INVOICECUSTNAME=="")
|
|
|
{ error = error + "<br />发票抬头不能为空"; }
|
|
|
if (bodyList[0].CUSTRATENO == "")
|
|
|
{ error = error + "<br />客户纳税识别号不能为空"; }
|
|
|
if (bodyList[0].CUSTBANK == "")
|
|
|
{ error = error + "<br />客户开户行及账号不能为空"; }
|
|
|
var banklist = bodyList[0].CUSTBANK.Split(' ');
|
|
|
if (banklist.Length!= 2)
|
|
|
{
|
|
|
{ error = error + "<br />客户开户行及账号不完整"; }
|
|
|
}
|
|
|
if (bodyList[0].ACCOUNT == "")
|
|
|
{ error = error + "<br />销货方银行及账号不能为空"; }
|
|
|
var banklist2 = bodyList[0].ACCOUNT.Split('-');
|
|
|
if (banklist.Length != 2)
|
|
|
{
|
|
|
{ error = error + "<br />销货方银行及账号不完整"; }
|
|
|
}
|
|
|
if (bodyList[0].CURRENCY == "")
|
|
|
{ error = error + "<br />发票币别不能为空"; }
|
|
|
if (bodyList[0].AMOUNT ==0)
|
|
|
{ error = error + "<br />开票金额不能为0"; }
|
|
|
if (error != "")
|
|
|
{
|
|
|
var jsonerror = JsonConvert.Serialize(new { Success = false, Message = error });
|
|
|
return new ContentResult() { Content = jsonerror };
|
|
|
}
|
|
|
|
|
|
var filename = "";
|
|
|
filename = ChinvoiceDAL.CreateInvRYORDERTList(bodyList, path,"", INVACCOUNT, INVPSW);
|
|
|
if (filename != "")
|
|
|
{
|
|
|
filename = filename.Replace("<Request xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">","<Request version=\"1.3\">");
|
|
|
|
|
|
|
|
|
ServiceReference1.WebInterFace neworder = new ServiceReference1.WebInterFace();
|
|
|
var returnstr = AES.AesDecrypt(neworder.V1_OP_NewOrder(AES.AesEncrypt(filename)));
|
|
|
|
|
|
//string[] args = new string[1];
|
|
|
//args[0] = AES.AesEncrypt(filename);
|
|
|
//object resultXml = WebServiceHelper.InvokeWebService("http://z23242k066.imwork.net/WebService/WebInterFace.asmx", "V1_OP_NewOrder", args);
|
|
|
//var returnstr = AES.AesDecrypt(resultXml.ToString());
|
|
|
|
|
|
returnstr = returnstr.Replace(" version=\"2.1\"", "").Replace("\0", "").Replace("\r\n", "");
|
|
|
returnstr = returnstr.Substring(39);
|
|
|
returnstr = @"<?xml version=""1.0""?>" + returnstr;
|
|
|
//XmlDocument xobj = new XmlDocument();
|
|
|
//xobj.LoadXml(returnstr);
|
|
|
//returnstr = ChinvoiceDAL.Xml2String(xobj);
|
|
|
|
|
|
StringReader rdr = new StringReader(returnstr.Trim());
|
|
|
XmlSerializer serializer = new XmlSerializer(typeof(Response));
|
|
|
|
|
|
Response xmlDoc = (Response)serializer.Deserialize(rdr);
|
|
|
if (xmlDoc.Head.Code == "000000")
|
|
|
{
|
|
|
// ChinvoiceDAL.UpInvListDZStauts(bodyList,"已发订单");
|
|
|
|
|
|
|
|
|
var Xmlexpenses = xmlDoc.OrderBody.expenses;
|
|
|
List<Xmlexpense> expenses = Xmlexpenses.expenses;
|
|
|
var returninvstr= ChinvoiceDAL.CreateInvRYTList(bodyList, path, "",expenses, INVACCOUNT, INVPSW,email);
|
|
|
returninvstr = returninvstr.Replace("Xmlinvoice", "Request");
|
|
|
returninvstr = returninvstr.Replace("<Request xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">", "<Request version=\"1.3\">");
|
|
|
|
|
|
returnstr = AES.AesDecrypt(neworder.V1_OP_DrawInvoice(AES.AesEncrypt(returninvstr)));
|
|
|
|
|
|
//args[0] = AES.AesEncrypt(returninvstr);
|
|
|
//resultXml = WebServiceHelper.InvokeWebService("http://z23242k066.imwork.net/WebService/WebInterFace.asmx", "V1_OP_DrawInvoice", args);
|
|
|
//returnstr = AES.AesDecrypt(resultXml.ToString());
|
|
|
|
|
|
returnstr = returnstr.Replace(" version=\"2.1\"", "").Replace("\0", "").Replace("\r\n", "");
|
|
|
returnstr = returnstr.Substring(39);
|
|
|
returnstr = @"<?xml version=""1.0""?>" + returnstr;
|
|
|
StringReader rdr2 = new StringReader(returnstr.Trim());
|
|
|
XmlSerializer serializer2 = new XmlSerializer(typeof(Response));
|
|
|
Response xmlDoc2 = (Response)serializer.Deserialize(rdr2);
|
|
|
|
|
|
if (xmlDoc2.Head.Code == "000000")
|
|
|
{
|
|
|
ChinvoiceDAL.UpInvListDZStauts(bodyList, "已开票");
|
|
|
result.Success = true;
|
|
|
result.Message = returnstr;
|
|
|
}
|
|
|
else {
|
|
|
|
|
|
var delorderstr= new StringBuilder();
|
|
|
delorderstr.Append("<?xml version=\"1.0\" encoding=\"utf - 8\"?>");
|
|
|
delorderstr.Append("<Request version=\"1.3\">");
|
|
|
delorderstr.Append("<head>");
|
|
|
delorderstr.Append("<PbAccount>"+ INVACCOUNT + "</PbAccount>");
|
|
|
delorderstr.Append("<PbPassWord>" + INVPSW + "</PbPassWord>");
|
|
|
delorderstr.Append("<ReCode>OP03</ReCode>");
|
|
|
delorderstr.Append("<SerialNo>"+ Guid.NewGuid().ToString() + "</SerialNo>");
|
|
|
delorderstr.Append("<PostTime>"+ DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "</PostTime>");
|
|
|
delorderstr.Append("</head>");
|
|
|
delorderstr.Append("<body>");
|
|
|
delorderstr.Append("<orders>");
|
|
|
delorderstr.Append("<order>");
|
|
|
delorderstr.Append("<order_id>" + xmlDoc.OrderBody.OrderDetail.order_id + "</order_id>");
|
|
|
delorderstr.Append("</order>");
|
|
|
delorderstr.Append("</orders>");
|
|
|
delorderstr.Append("</body>");
|
|
|
delorderstr.Append("</Request>");
|
|
|
returnstr = AES.AesDecrypt(neworder.V1_OP_DeleteOrder(AES.AesEncrypt(delorderstr.ToString())));
|
|
|
|
|
|
result.Success = false;
|
|
|
result.Message = xmlDoc2.Head.Message;
|
|
|
}
|
|
|
|
|
|
}
|
|
|
else {
|
|
|
result.Success = false;
|
|
|
result.Message = xmlDoc.Head.Message;
|
|
|
}
|
|
|
|
|
|
//result.Data = returnstr;
|
|
|
//filename = Path.GetFileName(filename);
|
|
|
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
result.Success = false;
|
|
|
result.Message = "无当前匹配的导出文件!";
|
|
|
}
|
|
|
|
|
|
//
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message, Data = result.Data };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
|
|
|
public ContentResult UpdatePrint(string billno)
|
|
|
{
|
|
|
|
|
|
DBResult result = ChinvoiceDAL.UpdatePrint(billno);
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
#region 发票模板
|
|
|
|
|
|
public ContentResult GetRemarksTemplate(string TemplateName)
|
|
|
{
|
|
|
|
|
|
DBResult result = ChinvoiceDAL.GetRemarksTemplate(Convert.ToString(Session["COMPANYID"]), TemplateName);
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message,Data=result.Data };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
public ContentResult SaveRemarksTemplate(string Template,string TemplateName)
|
|
|
{
|
|
|
|
|
|
DBResult result = ChinvoiceDAL.SaveRemarksTemplate(Template, Convert.ToString(Session["COMPANYID"]), TemplateName);
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
public ContentResult GetRemarksData(string billno, string TemplateName,string invdate="",bool isapp=false)
|
|
|
{
|
|
|
var dataList = ChinvoiceDAL.GetBsList("c.BILLNO='" + billno + "'");
|
|
|
|
|
|
DBResult result = ChinvoiceDAL.GetRemarksData(dataList, Convert.ToString(Session["COMPANYID"]), billno, TemplateName, invdate,isapp);
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message, Data = result.Data };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
#region 发票票册
|
|
|
public ContentResult GetBookDataList(int start, int limit, string sort, string condition)
|
|
|
{
|
|
|
var dataList = ChinvoiceDAL.GetBookDataList(condition, 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 };
|
|
|
}
|
|
|
|
|
|
public ContentResult GetBookData(string handle, string condition)
|
|
|
{
|
|
|
ChInvoiceBook head = null;
|
|
|
|
|
|
if (handle == "edit")
|
|
|
{
|
|
|
var list = ChinvoiceDAL.GetBookDataList(condition, Convert.ToString(Session["COMPANYID"]));
|
|
|
if (list.Count > 0)
|
|
|
head = list[0];
|
|
|
}
|
|
|
|
|
|
if (head == null)
|
|
|
{
|
|
|
head = new ChInvoiceBook();
|
|
|
}
|
|
|
|
|
|
if (handle == "add")
|
|
|
{
|
|
|
head.CREATEUSER = Convert.ToString(Session["USERID"]);
|
|
|
head.CREATEUSERREF = Convert.ToString(Session["SHOWNAME"]);
|
|
|
head.COMPANYID = Convert.ToString(Session["COMPANYID"]);
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
var json = JsonConvert.Serialize(
|
|
|
new { Success = true, Message = "查询成功", data = head });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
|
|
|
|
|
|
public ContentResult SaveBook(string opstatus, string data)
|
|
|
{
|
|
|
|
|
|
|
|
|
var headData = JsonConvert.Deserialize<ChInvoiceBook>(data);
|
|
|
|
|
|
|
|
|
if (opstatus == "add")
|
|
|
{
|
|
|
headData.GID = Guid.NewGuid().ToString();
|
|
|
headData.COMPANYID = Convert.ToString(Session["COMPANYID"]);
|
|
|
headData.CREATEUSER = Convert.ToString(Session["USERID"]);
|
|
|
headData.CREATETIME = DateTime.Now.ToString();
|
|
|
headData.DbOperationType = DbOperationType.DbotIns;
|
|
|
}
|
|
|
else if (opstatus == "edit")
|
|
|
{
|
|
|
headData.DbOperationType = DbOperationType.DbotUpd;
|
|
|
headData.ModelUIStatus = "E";
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
headData.DbOperationType = DbOperationType.DbotDel;
|
|
|
}
|
|
|
if (headData.TYPE == "") headData.TYPE ="0";
|
|
|
|
|
|
var BILLNO = headData.GID;
|
|
|
var modb = new ModelObjectDB();
|
|
|
|
|
|
DBResult result = modb.Save(headData);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var jsonRespose = new JsonResponse
|
|
|
{
|
|
|
Success = result.Success,
|
|
|
Message = result.Message,
|
|
|
Data = ChinvoiceDAL.GetBookData(" GID='" + BILLNO + "'", Convert.ToString(Session["COMPANYID"]))
|
|
|
};
|
|
|
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
|
|
|
}
|
|
|
|
|
|
public ContentResult DeleteBook(string data)
|
|
|
{
|
|
|
var headData = JsonConvert.Deserialize<ChInvoiceBook>(data);
|
|
|
var isfee = ChinvoiceDAL.GetMakeOutCount(headData.GID);
|
|
|
if (isfee)
|
|
|
{
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = false, Message = "此票册已有开出发票,不允许删除!" };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
|
|
|
DBResult result;
|
|
|
var modb = new ModelObjectDB();
|
|
|
result = modb.Delete(headData);
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
}
|
|
|
|
|
|
public ContentResult CreateBookitems(string data)
|
|
|
{
|
|
|
var headData = JsonConvert.Deserialize<ChInvoiceBook>(data);
|
|
|
|
|
|
DBResult result = ChinvoiceDAL.CreateBookitems(headData, Convert.ToString(Session["USERID"]));
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
public ContentResult LockBookitems(string data)
|
|
|
{
|
|
|
var headData = JsonConvert.Deserialize<List<ChInvoiceBookdetail>>(data);
|
|
|
|
|
|
DBResult result = ChinvoiceDAL.LockBookitems(headData);
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
public ContentResult CancelLockBookitems(string data)
|
|
|
{
|
|
|
var headData = JsonConvert.Deserialize<List<ChInvoiceBookdetail>>(data);
|
|
|
|
|
|
DBResult result = ChinvoiceDAL.CancelLockBookitems(headData);
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
public ContentResult GetBookitemsDataList(string condition, string sort)
|
|
|
{
|
|
|
var dataList = ChinvoiceDAL.GetBookitemsDataList(condition, sort);
|
|
|
|
|
|
|
|
|
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
|
|
|
return new ContentResult() { Content = json };
|
|
|
}
|
|
|
public ContentResult DeleteUpBook(string data)
|
|
|
{
|
|
|
var headData = JsonConvert.Deserialize<ChInvoiceBook>(data);
|
|
|
DBResult result;
|
|
|
|
|
|
result = ChinvoiceDAL.DeleteUpBook(headData.GID, Convert.ToString(Session["USERID"]));
|
|
|
|
|
|
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
|
|
|
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
|
|
|
}
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
#region 参照部分
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
}
|
|
|
}
|
|
|
|