You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
DS7/DSWeb/Areas/Account/Controllers/Chfee_recvapplicationContro...

519 lines
21 KiB
C#

2 years ago
using System;
using System.Linq;
using System.Web.Mvc;
using DSWeb.Areas.Account.DAL.Chfee_Recvapplication;
using DSWeb.Areas.Account.Models.Chfee_Recvapplication;
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 DSWeb.MvcShipping.DAL.MsSysBillNoSet;
using DSWeb.MvcShipping.Models.MsSysBillNoSet;
using DSWeb.MvcShipping.DAL.MsSysParamSet;
2 years ago
using DSWeb.Areas.Account.DAL.Chfee_payapplication;
using System.IO;
using DSWeb.Areas.Account.Models.Chfee_payapplication;
using System.Globalization;
using System.Web.Script.Serialization;
2 years ago
namespace DSWeb.Areas.Account.Controllers
{
[JsonRequestBehavior]
public class Chfee_recvapplicationController : Controller
{
//
// GET:
public ActionResult Index()
{
return View();
}
//
// GET: /
public ActionResult Edit()
{
return View();
}
public ActionResult BLEdit()
{
return View();
}
//付费申请审核
public ActionResult Audit()
{
return View();
}
//
// GET
public ContentResult GetDataList(int start, int limit, string sort, string condition)
{
var dataList = ChrecvapplicationDAL.GetDataList(condition, Convert.ToString(Session["USERID"]), 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 };
}
public ContentResult GetData(string handle, string condition)
{
ChRecvapplication head = null;
if (handle == "edit")
{
var list = ChrecvapplicationDAL.GetDataList(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 ChRecvapplication();
}
if (handle == "add")
{
head.APPLICANT = Convert.ToString(Session["USERID"]);
head.APPLICANTNAME = Convert.ToString(Session["SHOWNAME"]);
head.RECVTIME = DateTime.Now.ToString("yyyy-MM-dd");
// head.CURR = Convert.ToString(Session["LOCALCURR"]);
head.SETTLETYPE = 7;
head.COMPANYID = Convert.ToString(Session["COMPANYID"]);
//head.SALECORPID = Convert.ToString(Session["COMPANYID"]);
2 years ago
}
var json = JsonConvert.Serialize(
new { Success = true, Message = "查询成功", data = head });
return new ContentResult() { Content = json };
}
public ContentResult GetBillList(string condition, string sort)
{
var dataList = ChrecvapplicationDAL.GetBodyList(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 = ChrecvapplicationDAL.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 = ChrecvapplicationDAL.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 = ChrecvapplicationDAL.GetAddBillList(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 GetFeeDetailList(string sort, string condition)
{
var dataList = ChrecvapplicationDAL.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 = ChrecvapplicationDAL.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)
{
2 years ago
var headData = JsonConvert.Deserialize<ChRecvapplication>(data);
2 years ago
if (opstatus == "add")
{
headData.GID = Guid.NewGuid().ToString();
headData.COMPANYID = Convert.ToString(Session["COMPANYID"]);
headData.APPLICANT = Convert.ToString(Session["USERID"]);
2 years ago
headData.APPLYTIME = null;
2 years ago
headData.ENTERTIME = DateTime.Now;
2 years ago
headData.SETTLETIME = null;
headData.AUDITTIME = null;
//headData.DELETETIME = null;
2 years ago
headData.DbOperationType = DbOperationType.DbotIns;
var billnoset = MsSysBillNoSetDAL.GetData("OPLBNAME='收费申请'", Convert.ToString(Session["COMPANYID"]));
var RECVAPPBILLISCUSTNO = MsSysParamSetDAL.GetData("PARAMNAME='RECVAPPBILLISCUSTNO'");
if (headData.BILLNO != ""&& RECVAPPBILLISCUSTNO.PARAMVALUE == "1")
{
headData.BILLNO = ChrecvapplicationDAL.GetCustNo(headData.BILLNO); }
else
{
if (billnoset.BILLTYPE != "")
headData.BILLNO = MsSysBillNoSetDAL.GetBillNo(billnoset, headData.RECVTIME.ToString().Trim(), headData.APPLYTIME.ToString());
else
headData.BILLNO = PubSysDAL.GetBillNo("0307");
}
}
else if (opstatus == "edit")
{
headData.DbOperationType = DbOperationType.DbotUpd;
headData.ModelUIStatus = "E";
}
else
{
headData.DbOperationType = DbOperationType.DbotDel;
}
var ct = ChrecvapplicationDAL.GetRdCount("GID<>'" + headData.GID + "' AND BILLNO='" + headData.BILLNO + "' ");
if (ct != 0)
{
var jsonRespose0 = new JsonResponse
{
Success = false,
Message = "收费申请重复,不允许保存!"
};
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose0) };
}
var BILLNO = headData.BILLNO;
var modb = new ModelObjectDB();
DBResult result = modb.Save(headData);
2 years ago
if (result.Success == true) {
//保存后处理
ChrecvapplicationDAL.SetSALECORP(headData.BILLNO);
}
2 years ago
else
{
MsSysBillNoSetDAL.DeleteBsNo(headData.BILLNO);
}
var jsonRespose = new JsonResponse
{
Success = result.Success,
Message = result.Message,
Data = ChrecvapplicationDAL.GetData(" BILLNO='" + BILLNO + "'", Convert.ToString(Session["USERID"]), CookieConfig.GetCookie_UserCode(Request), Convert.ToString(Session["COMPANYID"]))
};
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
}
public ContentResult AddDetail(string bill, string data, string curr)
{
var bodyList = JsonConvert.Deserialize<List<BillChfeeDetail>>(data);
//2023-1-28
//如果此次选择的业务中,销售人员的所属公司分属不同,返回错误
//如果头表所属分部为空 将其设置为所选业务的销售人员所属的公司 并保存;
//如果头表所属分部不为空 判断所属分部与所选业务的销售人员所属的公司是否相同 如否则返回错误;
var bsnoList = bodyList.Select(s => s.BSNO).Distinct().ToList();
2 years ago
var _r = ChrecvapplicationDAL.SetSALECORP(bill, bsnoList);
if (!_r.Success)
{
return BasicDataRefDAL.GetContentResult(_r);
}
var modb = new ModelObjectDB();
2 years ago
DBResult result = ChrecvapplicationDAL.AddDetail(bill, bodyList, curr, Convert.ToString(Session["COMPANYID"]));
if (result.Success) { ChrecvapplicationDAL.p_update_Amount(bill); }
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
}
2 years ago
public ContentResult AddBill(string billno, string billcust, string billcurr, string feesql, string storeCurrExrate, bool custgroup = false)
{
var exrateList = JsonConvert.Deserialize<List<ChFeeExrate>>(storeCurrExrate);
if (!custgroup)
feesql = feesql + " AND CUSTOMERNAME='" + billcust + "'";
var feelist = ChrecvapplicationDAL.GetFeeDetailList(feesql, Convert.ToString(Session["USERID"]), "", Convert.ToString(Session["COMPANYID"]));
//2023-1-28
//如果此次选择的业务中,销售人员的所属公司分属不同,返回错误
//如果头表所属分部为空 将其设置为所选业务的销售人员所属的公司 并保存;
//如果头表所属分部不为空 判断所属分部与所选业务的销售人员所属的公司是否相同 如否则返回错误;
var _r = ChrecvapplicationDAL.SetSALECORP(billno, feesql, billcust, Convert.ToString(Session["COMPANYID"]), Convert.ToString(Session["USERID"]), custgroup);
if (!_r.Success) {
return BasicDataRefDAL.GetContentResult(_r);
}
2 years ago
if ((exrateList == null) || (exrateList.Count == 0))
2 years ago
{
if (billcurr != "")
exrateList = ChrecvapplicationDAL.GetCurrExrateData(billcust, billcurr, feesql, custgroup);
if ((exrateList == null) || (exrateList.Count == 0))
{
var modb = new ModelObjectDB();
DBResult result = ChrecvapplicationDAL.AddBill(billno, billcust, billcurr, feesql, exrateList, Convert.ToString(Session["COMPANYID"]), Convert.ToString(Session["USERID"]), custgroup);
if (result.Success) { ChrecvapplicationDAL.p_update_Amount(billno); }
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 = ChrecvapplicationDAL.AddBill(billno, billcust, billcurr, feesql, exrateList, Convert.ToString(Session["COMPANYID"]), Convert.ToString(Session["USERID"]));
if (result.Success) { ChrecvapplicationDAL.p_update_Amount(billno); }
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
}
}
public ContentResult DelBill(string data, string billno)
{
var bodyList = JsonConvert.Deserialize<List<Chfee_do_detail>>(data);
DBResult result = ChrecvapplicationDAL.DelFeeDo(bodyList);
if (result.Success) { ChrecvapplicationDAL.p_update_Amount(billno); }
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<ChRecvapplication>(data);
var dataList = ChrecvapplicationDAL.GetBodyList("BILLNO='" + headData.BILLNO + "'");
DBResult result = ChrecvapplicationDAL.DelFeeDo(dataList);
if (result.Success == true)
{
var modb = new ModelObjectDB();
modb.Delete(headData);
MsSysBillNoSetDAL.DeleteBsNo(headData.BILLNO);
}
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
}
#region 提交和撤销审核
public ContentResult SubmitAudit(string bill)
{
DBResult result = ChrecvapplicationDAL.SubmitAudit("FeeSettleAudit", Convert.ToString(Session["USERID"]), bill);
var json = JsonConvert.Serialize(result);
return new ContentResult() { Content = json };
}
public ContentResult SubmitAuditBack(string bill)
{
DBResult result = ChrecvapplicationDAL.SubmitAuditBack(bill);
var json = JsonConvert.Serialize(result);
return new ContentResult() { Content = json };
}
public ContentResult SubmitAuditList(string bills)
{
DBResult result = ChrecvapplicationDAL.SubmitAuditList(bills);
var json = JsonConvert.Serialize(result);
return new ContentResult() { Content = json };
}
public ContentResult SubmitAuditBackList(string bills)
{
DBResult result = ChrecvapplicationDAL.SubmitAuditBackList(bills);
var json = JsonConvert.Serialize(result);
return new ContentResult() { Content = json };
}
public ContentResult AuditList(string data)
{
var bodyList = JsonConvert.Deserialize<List<ChRecvapplication>>(data);
2 years ago
DBResult result = ChrecvapplicationDAL.AuditList(bodyList, Convert.ToString(Session["SHOWNAME"]));
2 years ago
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
}
public ContentResult AuditBackList(string data,string ORREASON)
2 years ago
{
var bodyList = JsonConvert.Deserialize<List<ChRecvapplication>>(data);
2 years ago
DBResult result = ChrecvapplicationDAL.AuditBackList(bodyList, ORREASON, Convert.ToString(Session["SHOWNAME"]));
2 years ago
var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
}
public ContentResult UpdatePrint(string billnos)
{
var result = new DBResult();
T_ALL_DA T_ALL_DA = new EntityDA.T_ALL_DA();
string blUpSQL = " update ch_fee_recvapplication set PRINTCOUNT=ISNULL(PRINTCOUNT,0)+1 where BILLNO IN (" + billnos + ")";
bool bl = T_ALL_DA.GetExecuteSqlCommand(blUpSQL);
result.Success = true;
result.Message = "更新成功!";
var jsonRespose = new JsonResponse
{
Success = result.Success,
Message = result.Message,
// Data = MsChFeeDAL.GetDataList(headData.BillNo, Convert.ToString(Session["USERID"]), CookieConfig.GetCookie_UserCode(Request), CookieConfig.GetCookie_OrgCode(Request))
};
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
}
#endregion
#region 参照部分
#endregion
2 years ago
/// <summary>
/// 获取车辆证件信息
/// </summary>
/// <param name="condition"></param>
/// <returns></returns>
public ContentResult GetFileList(string BillNo)
{
var dataList = ChfeeFileDal.GetFileList(BillNo);
//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 };
}
/// <summary>
/// 上传证件照片
/// </summary>
/// <returns></returns>
public ContentResult FileUpload()
{
var jsonRespose = new JsonResponse { Success = false, Message = "" };
if (Request.Files.Count != 1)
{
jsonRespose.Success = false;
jsonRespose.Message = "请选择上传的文件";
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
}
var imgFile = Request.Files["file"];
var BillNo = Request.Form["BillNo"].ToString().Trim();
String strPath = "/Areas/Account/Files/" + BillNo + "/";
String dirPath = System.Web.HttpContext.Current.Server.MapPath(strPath);
if (!Directory.Exists(dirPath))
{
Directory.CreateDirectory(dirPath);
}
string fileOriginalName = Path.GetFileNameWithoutExtension(imgFile.FileName);
String fileExt = Path.GetExtension(imgFile.FileName).ToLower();
String newFileName = DateTime.Now.ToString("yyyyMMddHHmmss_ffff", DateTimeFormatInfo.InvariantInfo) + fileExt;
String filePath = dirPath + newFileName;
imgFile.SaveAs(filePath);
//写入数据库
ChfeeFile model = new ChfeeFile();
model.GID = Guid.NewGuid().ToString();
model.BillNo = BillNo;
model.File_Type = 0;
model.File_Name = newFileName;
model.File_Path = filePath;
model.CreateTime = DateTime.Now.ToShortDateString();
model.Operator = Session["USERID"] != null ? Session["USERID"].ToString() : "";
model.File_OriginalName = fileOriginalName;
model.File_DocNo = Request.Form["File_DocNo"];
model.File_DocType = Request.Form["File_DocType"];
string msg = "";
bool success = ChfeeFileDal.SaveFile(model, 0, out msg);
jsonRespose.Success = success;
jsonRespose.Message = msg;
var json = JsonConvert.Serialize(new { success = success, Message = "上传成功", filePath = filePath });
return new ContentResult() { Content = json };
}
public ContentResult CertDel(string TruckNo)
{
var data = Request["data"];
JavaScriptSerializer json = new JavaScriptSerializer();
List<ChfeeFile> file = json.Deserialize<List<ChfeeFile>>(data);
string msg = "";
bool rst = false;
if (file != null)
{
rst = ChfeeFileDal.DelFile(file, out msg);
2 years ago
//20220823 增加处理 删除路径相同的其他附件数据,
//ChfeeFileDal.DelOtherFile(file, out msg);
2 years ago
}
var jsonstr = JsonConvert.Serialize(new { Success = rst, Message = rst ? "删除成功" : msg });
return new ContentResult() { Content = jsonstr };
}
2 years ago
}
}