using System ;
using System.Collections.Generic ;
using System.Data ;
using System.Data.OleDb ;
using System.IO ;
using System.Linq ;
using System.Text ;
using System.Web.Mvc ;
using System.Web.UI.MobileControls ;
using DSWeb.Areas.CommMng.DAL ;
using DSWeb.Areas.TruckMng.DAL.MsWlBs ;
using DSWeb.Areas.TruckMng.Models.Comm ;
using DSWeb.Areas.TruckMng.Models.MsWlBs ;
using DSWeb.TruckMng.Comm.Cookie ;
using DSWeb.TruckMng.Helper ;
using DSWeb.TruckMng.Helper.Repository ;
using HcUtility.Comm ;
using HcUtility.Core ;
using DSWeb.Areas.RptMng.Comm ;
using DSWeb.MvcShipping.DAL.MsSysBillNoSet ;
using DSWeb.Areas.TruckMng.DAL.MsRptPcHeadEdit ;
namespace DSWeb.Areas.TruckMng.Controllers
{
/// <summary>
/// 托运单
/// </summary>
[JsonRequestBehavior]
public class MsWlBsCtnController : Controller
{
/ /
// GET: /TruckMng/WlBsCard/
public ActionResult Index ( )
{
return View ( ) ;
}
/ /
// GET: /TruckMng/WlBsCard/Edit
public ActionResult Edit ( )
{
return View ( ) ;
}
public ActionResult PcIndex ( )
{
return View ( ) ;
}
public ActionResult PcEdit ( )
{
return View ( ) ;
}
public ActionResult AuditIndex ( )
{
return View ( ) ;
}
public ContentResult GetDataList ( int start , int limit , string sort , string condition )
{
var dataList = MsWlBsDAL . GetDataList ( condition , Convert . ToString ( Session [ "USERID" ] ) , CookieConfig . GetCookie_UserCode ( Request ) , CookieConfig . GetCookie_OrgCode ( Request ) , 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 GetListSum ( string condition )
{
var rangstr = MsWlPcDAL . GetRangDAStr ( "index" , Convert . ToString ( Session [ "USERID" ] ) , CookieConfig . GetCookie_UserCode ( Request ) , CookieConfig . GetCookie_OrgCode ( Request ) ) ;
if ( ! string . IsNullOrEmpty ( rangstr ) )
{
if ( ! string . IsNullOrEmpty ( condition ) )
{
condition = condition + " and " + rangstr ;
}
else
{
condition = rangstr ;
}
}
var strSql = new StringBuilder ( ) ;
strSql . Append ( "SELECT convert(varchar(20),sum(case when isnull(BsStatus,0)=0 then 1 else 0 end))+'/'+convert(varchar(20),sum(case when isnull(BsStatus,0)=0 then KGS else 0 end)) NCOUNT,convert(varchar(20),sum(case when isnull(BsStatus,0)=0 then 0 else 1 end))+'/'+convert(varchar(20),sum(case when isnull(BsStatus,0)=0 then 0 else KGS end)) PCOUNT,SUM(KGS) KGS,SUM(CBM) CBM " ) ;
strSql . Append ( " from tMsWlBsHead " ) ;
// strSql.Append(" left join (select RefBillNoSe,sum(isnull(GOODSCOUNT,0)) PKGS,sum(isnull(CBM,0)) CBM,sum(isnull(Ton,0)) KGS FROM tMsWlPcHead GROUP BY RefBillNoSe ) PC ON (PC.RefBillNoSe=tMsWlBsHead.BillNo)");
if ( ! string . IsNullOrEmpty ( condition ) )
{
strSql . Append ( " where " + condition ) ;
}
var dbparams = new List < CustomDbParamter > ( ) ;
var paramps_sSQL = new CustomDbParamter ( ) ;
paramps_sSQL . ParameterName = "@sSQL" ;
paramps_sSQL . DbType = DbType . String ;
paramps_sSQL . Direction = ParameterDirection . Input ;
paramps_sSQL . Value = strSql . ToString ( ) ;
dbparams . Add ( paramps_sSQL ) ;
var dbRptResult = PubSysDAL . GetMsSqlPrcDataSet ( "sMsExesqlQry" , dbparams , "Result_Set" ) ;
var json = RptHelper . GetRptJsonResult ( 0 , 1 , dbRptResult , "Result_Set" , true ) ;
return new ContentResult ( ) { Content = json } ;
}
/ /
// GET: /TruckMng/WlBsCard/GetData/
public ContentResult GetData ( string handle , string condition )
{
MsWlBsHead head = null ;
if ( handle = = "edit" )
{
var list = MsWlBsDAL . GetDataList ( condition , Convert . ToString ( Session [ "USERID" ] ) , CookieConfig . GetCookie_UserCode ( Request ) , CookieConfig . GetCookie_OrgCode ( Request ) ) ;
if ( list . Count > 0 )
head = list [ 0 ] ;
}
if ( head = = null )
{
head = new MsWlBsHead ( ) ;
head . DispatchCode = CookieConfig . GetCookie_UserCode ( Request ) ;
head . DispatchName = CookieConfig . GetCookie_UserName ( Request ) ;
head . DispatchCode_Ref = head . DispatchCode + "-" + head . DispatchName ;
}
var json = JsonConvert . Serialize (
new { Success = true , Message = "查询成功" , data = head } ) ;
return new ContentResult ( ) { Content = json } ;
}
public JsonResult GetPcBodyList ( string condition , string sort )
{
var list = MsWlBsDAL . GetPcBodyList ( condition , sort ) ;
return Json ( new { Success = true , Message = "查询成功" , totalCount = list . Count , data = list . ToList ( ) } ) ;
}
public ContentResult GetIsPrint ( string billno , string Gid )
{
var IsPring = true ;
IsPring = MsWlBsDAL . GetBsIsPrint ( billno , Gid ) ;
var json = JsonConvert . Serialize (
new { Success = IsPring , Message = "此托单下所有费用都审核通过后,才可以打印托单!" } ) ;
return new ContentResult ( ) { Content = json } ;
}
public ContentResult Delete ( string data )
{
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 head = JsonConvert . Deserialize < MsWlPcHead_WFSDEdit > ( data ) ;
var isfee = MsWlBsDAL . GetFeeCount ( head . gId ) ;
if ( isfee )
{
var jsonRespose = new JsonResponse { Success = false , Message = "此票业务存在费用,请先删除费用才能删除此票业务!" } ;
return new ContentResult ( ) { Content = JsonConvert . Serialize ( jsonRespose ) } ;
}
else
{
var BSNO = head . BillNo ;
var modb = new ModelObjectDB ( ) ;
DBResult result = modb . Delete ( head ) ;
if ( result . Success = = true ) { MsSysBillNoSetDAL . DeleteBsNo ( head . CUSTNO ) ; }
if ( result . Success = = true )
{
var bodylist = MsWlBsDAL . GetPcBodyList ( "d.BSNO='" + head . BillNo + "'" ) ;
if ( bodylist ! = null )
{
foreach ( var enumValue in bodylist )
{
MsWlBsDAL . DeletetruckDetail ( enumValue ) ;
MsWlBsDAL . p_update_status ( enumValue . LogisticsNo ) ;
}
}
}
var jsonRespose = new JsonResponse { Success = result . Success , Message = result . Message } ;
return new ContentResult ( ) { Content = JsonConvert . Serialize ( jsonRespose ) } ;
}
}
public ContentResult DeletetruckDetail ( string data )
{
var head = JsonConvert . Deserialize < MsWlBsHead > ( data ) ;
DBResult result = MsWlBsDAL . DeletetruckDetail ( head ) ;
MsWlBsDAL . p_update_status ( head . LogisticsNo ) ;
var jsonRespose = new JsonResponse { Success = result . Success , Message = result . Message } ;
return new ContentResult ( ) { Content = JsonConvert . Serialize ( jsonRespose ) } ;
}
/ /
// GET: /TruckMng/WlBsCard/Save
public ContentResult SubmitAudit ( string opstatus , string data , string ctnbody , string ctndelbody ,
string fixbody , string fixdelbody , string chfeebody , string chfeedelbody )
{
var head = JsonConvert . Deserialize < MsWlBsHead > ( data ) ;
var ctnBodyList = JsonConvert . Deserialize < List < MsWlBsCtn > > ( ctnbody ) ;
var ctnBodyDelList = JsonConvert . Deserialize < List < MsWlBsCtn > > ( ctndelbody ) ;
var fixBodyList = JsonConvert . Deserialize < List < MsWlBsFixed > > ( fixbody ) ;
var fixBodyDelList = JsonConvert . Deserialize < List < MsWlBsFixed > > ( fixdelbody ) ;
var chfeeBodyList = JsonConvert . Deserialize < List < MsChFee > > ( chfeebody ) ;
var chfeeBodyDelList = JsonConvert . Deserialize < List < MsChFee > > ( chfeedelbody ) ;
if ( opstatus = = "add" )
{
head . BillNo = PubSysDAL . GetBillNo ( "0112" ) ; //获取物流号
head . DbOperationType = DbOperationType . DbotIns ;
head . ModelUIStatus = "I" ;
head . UserCode = CookieConfig . GetCookie_UserCode ( Request ) ;
head . UserName = CookieConfig . GetCookie_UserName ( Request ) ;
head . OrgCode = CookieConfig . GetCookie_OrgCode ( Request ) ;
head . OrgName = CookieConfig . GetCookie_OrgName ( Request ) ;
head . LrDate = DateTime . Now ;
head . TRANSSTATUS = "新建" ;
}
else if ( opstatus = = "edit" )
{
head . DbOperationType = DbOperationType . DbotUpd ;
head . ModelUIStatus = "E" ;
}
else
{
head . DbOperationType = DbOperationType . DbotDel ;
}
var modb = new ModelObjectRepository ( ) ;
DBResult result = modb . Save ( head ,
ModelObjectConvert < MsWlBsCtn > . ToModelObjectList ( ctnBodyList ) ,
ModelObjectConvert < MsWlBsCtn > . ToModelObjectList ( ctnBodyDelList ) ,
ModelObjectConvert < MsWlBsFixed > . ToModelObjectList ( fixBodyList ) ,
ModelObjectConvert < MsWlBsFixed > . ToModelObjectList ( fixBodyDelList ) ,
ModelObjectConvert < MsChFee > . ToModelObjectList ( chfeeBodyList ) ,
ModelObjectConvert < MsChFee > . ToModelObjectList ( chfeeBodyDelList ) ) ;
if ( result . Success = = true ) {
var headList = new List < MsWlBsHead > ( ) ;
headList . Add ( head ) ;
result = MsWlBsDAL . SubmitAudit ( CookieConfig . GetCookie_UserId ( Request ) , headList ) ;
if ( result . Success = = true & & head . CONTRACTNO ! = "" & & head . TEMPLATENAME ! = "" )
{
result = MsWlBsDAL . CreateFeeDetail ( head , ctnBodyList , CookieConfig . GetCookie_UserId ( Request ) ) ;
}
}
var jsonRespose = new JsonResponse
{
Success = result . Success ,
Message = result . Message ,
Data = MsWlBsDAL . GetHeadDataByBillNo ( head . BillNo , Convert . ToString ( Session [ "USERID" ] ) , CookieConfig . GetCookie_UserCode ( Request ) , CookieConfig . GetCookie_OrgCode ( Request ) )
} ;
return new ContentResult ( ) { Content = JsonConvert . Serialize ( jsonRespose ) } ;
}
public ContentResult SubmitAuditBack ( string data )
{
var head = JsonConvert . Deserialize < MsWlBsHead > ( data ) ;
var headList = new List < MsWlBsHead > ( ) ;
headList . Add ( head ) ;
var isfee = MsWlBsDAL . GetFeeCount ( head . GId , " CARGO_GID='" + head . GId + "' and (SETTLEMENT<>0 or INVOICE<>0 and ORDERAMOUNT<>0 and ORDERINVOICE<>0) " ) ;
if ( ! isfee )
{
var jsonRespose2 = new JsonResponse { Success = false , Message = "此票生成费用已做申请或结算或开票,不能驳回!" } ;
return new ContentResult ( ) { Content = JsonConvert . Serialize ( jsonRespose2 ) } ;
}
var result = MsWlBsDAL . SubmitAuditBack ( CookieConfig . GetCookie_UserId ( Request ) , headList ) ;
if ( result . Success = = true )
{
result = MsWlBsDAL . DelCreateFee ( head , Convert . ToString ( Session [ "USERID" ] ) ) ;
}
var jsonRespose = new JsonResponse
{
Success = result . Success ,
Message = result . Message ,
Data = MsWlBsDAL . GetHeadDataByBillNo ( head . BillNo , Convert . ToString ( Session [ "USERID" ] ) , CookieConfig . GetCookie_UserCode ( Request ) , CookieConfig . GetCookie_OrgCode ( Request ) )
} ;
return new ContentResult ( ) { Content = JsonConvert . Serialize ( jsonRespose ) } ;
}
public ContentResult Audit ( string data )
{
var head = JsonConvert . Deserialize < MsWlBsHead > ( data ) ;
var headList = new List < MsWlBsHead > ( ) ;
headList . Add ( head ) ;
var result = MsWlBsDAL . AuditList ( headList , CookieConfig . GetCookie_UserId ( Request ) ) ;
var jsonRespose = new JsonResponse
{
Success = result . Success ,
Message = result . Message ,
Data = MsWlBsDAL . GetHeadDataByBillNo ( head . BillNo , Convert . ToString ( Session [ "USERID" ] ) , CookieConfig . GetCookie_UserCode ( Request ) , CookieConfig . GetCookie_OrgCode ( Request ) )
} ;
return new ContentResult ( ) { Content = JsonConvert . Serialize ( jsonRespose ) } ;
}
public ContentResult AuditList ( string data )
{
var headList = JsonConvert . Deserialize < List < MsWlBsHead > > ( data ) ;
var modb = new ModelObjectDB ( ) ;
DBResult result = MsWlBsDAL . AuditList ( headList , Convert . ToString ( Session [ "USERID" ] ) ) ;
var jsonRespose = new JsonResponse { Success = result . Success , Message = result . Message } ;
return new ContentResult ( ) { Content = JsonConvert . Serialize ( jsonRespose ) } ;
}
public ContentResult AuditBack ( string data , string reason )
{
var head = JsonConvert . Deserialize < MsWlBsHead > ( data ) ;
var headList = new List < MsWlBsHead > ( ) ;
headList . Add ( head ) ;
var result = MsWlBsDAL . AuditBackList ( headList , CookieConfig . GetCookie_UserId ( Request ) , reason ) ;
var jsonRespose = new JsonResponse
{
Success = result . Success ,
Message = result . Message ,
Data = MsWlBsDAL . GetHeadDataByBillNo ( head . BillNo , Convert . ToString ( Session [ "USERID" ] ) , CookieConfig . GetCookie_UserCode ( Request ) , CookieConfig . GetCookie_OrgCode ( Request ) )
} ;
return new ContentResult ( ) { Content = JsonConvert . Serialize ( jsonRespose ) } ;
}
public ContentResult AuditBackList ( string data , string reason )
{
var headList = JsonConvert . Deserialize < List < MsWlBsHead > > ( data ) ;
var modb = new ModelObjectDB ( ) ;
DBResult result = MsWlBsDAL . AuditBackList ( headList , Convert . ToString ( Session [ "USERID" ] ) , reason ) ;
var jsonRespose = new JsonResponse { Success = result . Success , Message = result . Message } ;
return new ContentResult ( ) { Content = JsonConvert . Serialize ( jsonRespose ) } ;
}
public ContentResult AddBill ( string opstatus , string data , string body )
{
var headData = JsonConvert . Deserialize < MsWlPcHead_WFSDEdit > ( data ) ;
var bodyList = JsonConvert . Deserialize < List < MsWlBsHead > > ( body ) ;
var isPost = true ;
var errorstr = "" ;
var custno = "" ;
if ( opstatus = = "add" )
{
var billnoset = MsSysBillNoSetDAL . GetData ( "OPLBNAME='陆运'" , Convert . ToString ( Session [ "COMPANYID" ] ) ) ;
billnoset . BILLTYPE = "0111" ;
billnoset . RULEDATETYPE = "业务日期" ;
var bsdate = headData . ExpDate ;
if ( bsdate = = "" | | bsdate = = null )
bsdate = DateTime . Now . ToString ( "yyyy-MM-dd" ) ;
headData . BillNo = MsSysBillNoSetDAL . GetBillNo ( billnoset , bsdate , DateTime . Now . ToString ( "yyyy-MM" ) ) ; //获取合同号
headData . OrgCode = CookieConfig . GetCookie_OrgCode ( Request ) ;
headData . DbOperationType = DbOperationType . DbotIns ;
headData . TRANSSTATUS = "新建" ;
}
else if ( opstatus = = "edit" )
{
headData . DbOperationType = DbOperationType . DbotUpd ;
headData . ModelUIStatus = "E" ;
}
else
{
headData . DbOperationType = DbOperationType . DbotDel ;
}
//if ( !string.IsNullOrEmpty(headData.ExpDate)){
// headData.ExpDate = headData.ExpDate.Replace("T", " ");
//}
//if ( !string.IsNullOrEmpty(headData.ExpDate))
//{
// headData.ExpDate = headData.ExpDate.Substring(0, 10);
//}
//if ( !string.IsNullOrEmpty(headData.ArriveDate))
//{
// headData.ArriveDate = headData.ArriveDate.Substring(0, 10);
//}
//if (!string.IsNullOrEmpty(headData.ReturnDate))
//{
// headData.ReturnDate = headData.ReturnDate.Substring(0, 10);
//}
if ( ! string . IsNullOrEmpty ( headData . LrDate ) )
{
headData . LrDate = headData . LrDate . Substring ( 0 , 10 ) ;
}
else
{
var currentTime = System . DateTime . Now ;
headData . LrDate = currentTime . ToString ( "d" ) ;
}
var BSNO = headData . gId ;
if ( isPost )
{
var modb = new ModelObjectDB ( ) ;
DBResult result = modb . Save ( headData ) ;
if ( result . Success = = true ) {
result = MsWlBsDAL . AddBill ( headData , bodyList , Convert . ToString ( Session [ "USERID" ] ) ) ;
if ( result . Success = = true )
{
if ( bodyList ! = null )
{
foreach ( var bulk in bodyList )
{
MsWlBsDAL . p_update_status ( bulk . GId ) ;
}
}
}
}
else
{
MsSysBillNoSetDAL . DeleteBsNo ( custno ) ;
}
var jsonRespose = new JsonResponse
{
Success = result . Success ,
Message = result . Message ,
Data = MsRptPcHeadEditDAL . GetWFSDData ( "GID='" + BSNO + "'" )
} ;
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 AddBillAuto ( string data )
{
var head = JsonConvert . Deserialize < MsWlBsHead > ( data ) ;
//var bodyList = JsonConvert.Deserialize<List<MsWlBsHead>>(body);
var headData = new MsWlPcHead_WFSDEdit ( ) ;
var isPost = true ;
var errorstr = "" ;
var custno = "" ;
var billnoset = MsSysBillNoSetDAL . GetData ( "OPLBNAME='陆运'" , Convert . ToString ( Session [ "COMPANYID" ] ) ) ;
billnoset . BILLTYPE = "0111" ;
billnoset . RULEDATETYPE = "业务日期" ;
var bsdate = headData . ExpDate ;
if ( bsdate = = "" | | bsdate = = null )
bsdate = DateTime . Now . ToString ( "yyyy-MM-dd" ) ;
headData . BillNo = MsSysBillNoSetDAL . GetBillNo ( billnoset , bsdate , DateTime . Now . ToString ( "yyyy-MM" ) ) ; //获取合同号
headData . OrgCode = CookieConfig . GetCookie_OrgCode ( Request ) ;
headData . DbOperationType = DbOperationType . DbotIns ;
headData . gId = "PC" + Guid . NewGuid ( ) . ToString ( ) ;
headData . PGid = headData . gId ;
headData . UserCode = CookieConfig . GetCookie_UserCode ( Request ) ;
headData . UserName = Convert . ToString ( Session [ "SHOWNAME" ] ) ;
headData . BLTYPE = "派车单票" ;
headData . TRANSSTATUS = "新建" ;
headData . DstArea = head . DstArea ;
headData . DetiNation = head . PORTLOAD ;
headData . ArriveDate = head . NeedArriveDate ;
headData . LoadPlace = head . DetiNation ;
headData . CUSTNO = head . MblNo ;
headData . CustLikeManName = head . DetiLinkMan ;
headData . VoyVeg = head . VoyVeg ;
headData . EtDate = head . EtDate ;
headData . EndPortDate = head . EndPortDate ;
headData . YardName = head . SendYardCode ;
headData . CustomerName = head . CustName ;
if ( ! string . IsNullOrEmpty ( headData . LrDate ) )
{
headData . LrDate = headData . LrDate . Substring ( 0 , 10 ) ;
}
else
{
var currentTime = System . DateTime . Now ;
headData . LrDate = currentTime . ToString ( "d" ) ;
}
var BSNO = headData . gId ;
if ( isPost )
{
var modb = new ModelObjectDB ( ) ;
DBResult result = modb . Save ( headData ) ;
if ( result . Success = = true )
{
var bodyList = new List < MsWlBsHead > ( ) ;
bodyList . Add ( head ) ;
MsWlBsDAL . AddBill ( headData , bodyList , Convert . ToString ( Session [ "USERID" ] ) ) ;
MsWlBsDAL . p_update_status ( head . GId ) ;
}
else
{
MsSysBillNoSetDAL . DeleteBsNo ( custno ) ;
}
var jsonRespose = new JsonResponse
{
Success = result . Success ,
Message = result . Message ,
Data = MsRptPcHeadEditDAL . GetWFSDData ( "GID='" + BSNO + "'" )
} ;
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 opstatus , string data , string body )
{
var headData = JsonConvert . Deserialize < MsWlPcHead_WFSDEdit > ( data ) ;
var bodyList = JsonConvert . Deserialize < List < MsWlBsCtn > > ( body ) ;
var isPost = true ;
var errorstr = "" ;
var custno = "" ;
if ( opstatus = = "add" )
{
var billnoset = MsSysBillNoSetDAL . GetData ( "OPLBNAME='陆运'" , Convert . ToString ( Session [ "COMPANYID" ] ) ) ;
billnoset . BILLTYPE = "0111" ;
billnoset . RULEDATETYPE = "业务日期" ;
var bsdate = headData . ExpDate ;
if ( bsdate = = "" | | bsdate = = null )
bsdate = DateTime . Now . ToString ( "yyyy-MM-dd" ) ;
headData . BillNo = MsSysBillNoSetDAL . GetBillNo ( billnoset , bsdate , DateTime . Now . ToString ( "yyyy-MM" ) ) ; //获取合同号
headData . OrgCode = CookieConfig . GetCookie_OrgCode ( Request ) ;
headData . DbOperationType = DbOperationType . DbotIns ;
headData . TRANSSTATUS = "新建" ;
}
else if ( opstatus = = "edit" )
{
headData . DbOperationType = DbOperationType . DbotUpd ;
headData . ModelUIStatus = "E" ;
}
else
{
headData . DbOperationType = DbOperationType . DbotDel ;
}
if ( ! string . IsNullOrEmpty ( headData . LrDate ) )
{
headData . LrDate = headData . LrDate . Substring ( 0 , 10 ) ;
}
else
{
var currentTime = System . DateTime . Now ;
headData . LrDate = currentTime . ToString ( "d" ) ;
}
var BSNO = headData . gId ;
if ( isPost )
{
var modb = new ModelObjectDB ( ) ;
DBResult result = modb . Save ( headData ) ;
if ( result . Success = = true )
{
result = MsWlBsDAL . AddDetail ( headData , bodyList , Convert . ToString ( Session [ "USERID" ] ) ) ;
if ( result . Success = = true )
{
MsWlBsDAL . p_update_status ( bodyList [ 0 ] . BillNo ) ;
}
}
else
{
MsSysBillNoSetDAL . DeleteBsNo ( custno ) ;
}
var jsonRespose = new JsonResponse
{
Success = result . Success ,
Message = result . Message ,
Data = MsRptPcHeadEditDAL . GetWFSDData ( "GID='" + BSNO + "'" )
} ;
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 UpTransStatus ( string data , string transstatus )
{
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 OpTruckBulk = JsonConvert . Deserialize < MsWlPcHead_WFSDEdit > ( data ) ;
var bodyList = new List < MsWlPcHead_WFSDEdit > ( ) ;
bodyList . Add ( OpTruckBulk ) ;
var result = MsWlBsDAL . UpTransStatus ( bodyList , transstatus ) ;
//if (transstatus == "已回单" && result.Success == true)
//{
// MsOpTruckBulkPcDAL.UphuidanStatus(OpTruckBulk.BSNO);
var BSNO = OpTruckBulk . gId ;
var jsonRespose = new JsonResponse
{
Success = result . Success ,
Message = result . Message ,
Data = MsRptPcHeadEditDAL . GetWFSDData ( "GID='" + BSNO + "'" )
} ;
return new ContentResult ( ) { Content = JsonConvert . Serialize ( jsonRespose ) } ;
}
public ContentResult UpTransStatusList ( string data , string transstatus )
{
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 bodyList = JsonConvert . Deserialize < List < MsWlPcHead_WFSDEdit > > ( data ) ;
var result = MsWlBsDAL . UpTransStatus ( bodyList , transstatus ) ;
//if (transstatus == "已回单" && result.Success == true)
//{
// if (bodyList != null)
// {
// foreach (var enumValue in bodyList)
// {
// MsOpTruckBulkPcDAL.UphuidanStatus(enumValue.BSNO);
// }
// }
//}
var jsonRespose = new JsonResponse
{
Success = result . Success ,
Message = result . Message
} ;
return new ContentResult ( ) { Content = JsonConvert . Serialize ( jsonRespose ) } ;
}
public ContentResult CreateFeeDetail ( string data , string ctnbody )
{
var head = JsonConvert . Deserialize < MsWlBsHead > ( data ) ;
var ctnBodyList = JsonConvert . Deserialize < List < MsWlBsCtn > > ( ctnbody ) ;
DBResult result = MsWlBsDAL . CreateFeeDetail ( head , ctnBodyList , CookieConfig . GetCookie_UserId ( Request ) ) ;
var jsonRespose = new JsonResponse
{
Success = result . Success ,
Message = result . Message ,
Data = MsWlBsDAL . GetHeadDataByBillNo ( head . BillNo , Convert . ToString ( Session [ "USERID" ] ) , CookieConfig . GetCookie_UserCode ( Request ) , CookieConfig . GetCookie_OrgCode ( Request ) )
} ;
return new ContentResult ( ) { Content = JsonConvert . Serialize ( jsonRespose ) } ;
}
public ContentResult SaveNew ( string opstatus , string data , string ctnbody , string ctndelbody )
{
var head = JsonConvert . Deserialize < MsWlBsHead > ( data ) ;
var ctnBodyList = JsonConvert . Deserialize < List < MsWlBsCtn > > ( ctnbody ) ;
var ctnBodyDelList = JsonConvert . Deserialize < List < MsWlBsCtn > > ( ctndelbody ) ;
if ( opstatus = = "add" )
{
head . BillNo = PubSysDAL . GetBillNo ( "0112" ) ; //获取物流号
head . DbOperationType = DbOperationType . DbotIns ;
head . ModelUIStatus = "I" ;
head . UserCode = CookieConfig . GetCookie_UserCode ( Request ) ;
head . UserName = CookieConfig . GetCookie_UserName ( Request ) ;
head . OrgCode = CookieConfig . GetCookie_OrgCode ( Request ) ;
head . OrgName = CookieConfig . GetCookie_OrgName ( Request ) ;
head . LrDate = DateTime . Now ;
}
else if ( opstatus = = "edit" )
{
head . DbOperationType = DbOperationType . DbotUpd ;
head . ModelUIStatus = "E" ;
}
else
{
head . DbOperationType = DbOperationType . DbotDel ;
}
//判断是否允许提单号重复
if ( head . MblNo ! = "" & & head . MblNo ! = null )
{
if ( ! MsWlBsDAL . checkMBLNOValid ( head . MblNo , head . BillNo ) )
{
var json = JsonConvert . Serialize ( new { Success = false , Message = "提单号不允许重复进行托单录入!" } ) ;
return new ContentResult ( ) { Content = json } ;
}
}
var modb = new ModelObjectRepository ( ) ;
DBResult result = modb . Save ( head ,
ModelObjectConvert < MsWlBsCtn > . ToModelObjectList ( ctnBodyList ) ,
ModelObjectConvert < MsWlBsCtn > . ToModelObjectList ( ctnBodyDelList ) ) ;
var jsonRespose = new JsonResponse
{
Success = result . Success ,
Message = result . Message ,
Data = MsWlBsDAL . GetHeadDataByBillNo ( head . BillNo , Convert . ToString ( Session [ "USERID" ] ) , CookieConfig . GetCookie_UserCode ( Request ) , CookieConfig . GetCookie_OrgCode ( Request ) )
} ;
return new ContentResult ( ) { Content = JsonConvert . Serialize ( jsonRespose ) } ;
}
//public ContentResult Delete(string data)
//{
// var head = JsonConvert.Deserialize<MsWlBsHead>(data);
// var modb = new ModelObjectDBBill();
// DBResult result = modb.Delete(head,
// "delete from tMsWlBsCtn where BillNo='" + head.BillNo + "'",
// "delete from tMsWlBsFixed where BillNo='" + head.BillNo + "'",
// "delete from ch_fee where BsNo='"+head.GId+"'");
// var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message };
// return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
//}
#region 明细表部分
public JsonResult GetCtnBodyList ( string billno )
{
var condition = " BillNo='" + billno + "'" ;
List < MsWlBsCtn > list = MsWlBsDAL . GetCtnBodyList ( condition ) ;
return Json ( new { Success = true , Message = "查询成功" , totalCount = list . Count , data = list . ToList ( ) } ) ;
}
public JsonResult GetFeeBodyList ( string billno )
{
var condition = " BillNo='" + billno + "'" ;
List < MsWlBsFixed > list = MsWlBsDAL . GetBodyList ( condition ) ;
return Json ( new { Success = true , Message = "查询成功" , totalCount = list . Count , data = list . ToList ( ) } ) ;
}
# endregion
#region 相关联部分
# endregion
#region 参照部分
# endregion
//TruckMng/MsWlBs/File
[HttpPost]
public ActionResult FileBak ( )
{
if ( Request . Files . Count ! = 1 )
{
return Json ( new
{
success = false ,
msg = "请选择上传的文件"
} , "text/html" ) ;
}
var file = Request . Files [ "file" ] ;
if ( file = = null )
{
return Json ( new
{
success = false ,
msg = "上传文件发生未知错误,请重新上传"
} , "text/html" ) ;
}
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 ) } ;
}
string ext = Path . GetExtension ( file . FileName ) . ToLower ( ) ;
if ( ext = = ".asp" | | ext = = ".aspx" )
{
return Json ( new
{
success = false ,
msg = "上传文件发生未知错误,请重新上传"
} , "text/html" ) ;
}
var path = Server . MapPath ( "../../UploadFiles/Bs" ) ;
if ( ! Directory . Exists ( path ) )
{
Directory . CreateDirectory ( path ) ;
}
var size = file . ContentLength ;
var name = Path . GetFileName ( file . FileName ) ;
var usercode = CookieConfig . GetCookie_UserCode ( Request ) ;
string filename = path + "\\" + usercode + DateTime . Now . ToString ( "yyyyMMddHHmmssfff" ) + name ;
if ( System . IO . File . Exists ( filename ) )
{
System . IO . File . Delete ( filename ) ;
}
file . SaveAs ( filename ) ;
if ( ! System . IO . File . Exists ( filename ) )
{
return Json ( new
{
success = false ,
msg = "上传的Excel不包含数据"
} , "text/html" ) ;
}
List < string > sheets = ExcelSheetName ( filename ) ;
if ( sheets . Count = = 0 )
{
return Json ( new
{
success = false ,
msg = "上传的Excel不包含数据"
} , "text/html" ) ;
}
try
{
var sheetname = sheets [ 0 ] ;
string excelConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filename +
";Extended Properties=Excel 8.0;" ;
OleDbDataAdapter oada = new OleDbDataAdapter ( "select * from [" + sheetname + "]" , excelConn ) ;
DataSet ds = new DataSet ( ) ;
oada . Fill ( ds ) ;
if ( ds . Tables . Count = = 0 )
{
return Json ( new
{
success = false ,
msg = "上传的Excel不包含数据"
} , "text/html" ) ;
}
var table = ds . Tables [ 0 ] ;
if ( table . Rows . Count = = 0 | | table . Rows . Count = = 1 )
{
return Json ( new
{
success = false ,
msg = "上传的Excel不包含数据"
} , "text/html" ) ;
}
var customerFieldName = table . Columns [ 0 ] . ColumnName ;
if ( customerFieldName ! = "委托单位" )
{
return Json ( new
{
success = false ,
msg = "上传的Excel不是标准的格式, 请重新选择"
} , "text/html" ) ;
}
var message = string . Empty ;
List < MsWlBsHead > headList ;
var isSucess = MsWlBsDAL . ImportExcelData ( Request , table , out message , out headList ) ;
if ( ! isSucess )
{
return Json ( new
{
success = false ,
msg = message
} , "text/html" ) ;
}
return Json ( new
{
success = true ,
msg = "上传成功,共生成" + Convert . ToString ( headList . Count ) + "个托单" ,
dataList = headList . ToList ( )
} , "text/html" ) ;
}
catch ( Exception )
{
return Json ( new
{
success = false ,
msg = "读取Excel文件出错, 请确认文件正确性"
} , "text/html" ) ;
}
}
//TruckMng/MsWlBs/File
[HttpPost]
public ContentResult File ( )
{
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 file = Request . Files [ "file" ] ;
if ( file = = null )
{
jsonRespose . Success = false ;
jsonRespose . Message = "上传文件发生未知错误,请重新上传" ;
return new ContentResult ( ) { Content = JsonConvert . Serialize ( jsonRespose ) } ;
}
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 ) } ;
}
string ext = Path . GetExtension ( file . FileName ) . ToLower ( ) ;
if ( ext = = ".asp" | | ext = = ".aspx" )
{
jsonRespose . Success = false ;
jsonRespose . Message = "不允许上传ASP或ASPX文件" ;
return new ContentResult ( ) { Content = JsonConvert . Serialize ( jsonRespose ) } ;
}
var path = Server . MapPath ( "../../UploadFiles/Bs" ) ;
if ( ! Directory . Exists ( path ) )
{
Directory . CreateDirectory ( path ) ;
}
var size = file . ContentLength ;
var name = Path . GetFileName ( file . FileName ) ;
var usercode = CookieConfig . GetCookie_UserCode ( Request ) ;
string filename = path + "\\" + usercode + DateTime . Now . ToString ( "yyyyMMddHHmmssfff" ) + name ;
if ( System . IO . File . Exists ( filename ) )
{
System . IO . File . Delete ( filename ) ;
}
file . SaveAs ( filename ) ;
if ( ! System . IO . File . Exists ( filename ) )
{
jsonRespose . Success = false ;
jsonRespose . Message = "上传的Excel不包含数据01" ;
return new ContentResult ( ) { Content = JsonConvert . Serialize ( jsonRespose ) } ;
}
List < string > sheets = ExcelSheetName ( filename ) ;
if ( sheets . Count = = 0 )
{
jsonRespose . Success = false ;
jsonRespose . Message = "上传的Excel不包含数据02" ;
return new ContentResult ( ) { Content = JsonConvert . Serialize ( jsonRespose ) } ;
}
try
{
var sheetname = sheets [ 0 ] ;
string excelConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filename +
";Extended Properties=Excel 8.0;" ;
OleDbDataAdapter oada = new OleDbDataAdapter ( "select * from [" + sheetname + "]" , excelConn ) ;
DataSet ds = new DataSet ( ) ;
oada . Fill ( ds ) ;
if ( ds . Tables . Count = = 0 )
{
jsonRespose . Success = false ;
jsonRespose . Message = "上传的Excel不包含数据03" ;
return new ContentResult ( ) { Content = JsonConvert . Serialize ( jsonRespose ) } ;
}
var table = ds . Tables [ 0 ] ;
if ( table . Rows . Count = = 0 | | table . Rows . Count = = 1 )
{
jsonRespose . Success = false ;
jsonRespose . Message = "上传的Excel不包含数据04" ;
return new ContentResult ( ) { Content = JsonConvert . Serialize ( jsonRespose ) } ;
}
var customerFieldName = table . Columns [ 0 ] . ColumnName ;
if ( ( customerFieldName ! = "委托单位" ) & & ( customerFieldName ! = "运单号" ) )
{
jsonRespose . Success = false ;
jsonRespose . Message = "上传的Excel不是标准的格式, 请重新选择" ;
return new ContentResult ( ) { Content = JsonConvert . Serialize ( jsonRespose ) } ;
}
var message = string . Empty ;
List < MsWlBsHead > headList ;
if ( customerFieldName = = "委托单位" )
{
var isSucess = MsWlBsDAL . ImportExcelData ( Request , table , out message , out headList ) ;
if ( ! isSucess )
{
jsonRespose . Success = false ;
jsonRespose . Message = message ;
return new ContentResult ( ) { Content = JsonConvert . Serialize ( jsonRespose ) } ;
}
}
else
{
var isSucess = MsWlBsDAL . ImportExcelUpdateData ( Request , table , out message , out headList ) ;
if ( ! isSucess )
{
jsonRespose . Success = false ;
jsonRespose . Message = message ;
return new ContentResult ( ) { Content = JsonConvert . Serialize ( jsonRespose ) } ;
}
}
//jsonRespose.Success = true;
//jsonRespose.Message = "上传成功,共生成" + Convert.ToString(headList.Count) + "个托单";
//jsonRespose.Data = headList.ToList();
//return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
var json = JsonConvert . Serialize ( new { success = true , Message = "上传成功,共生成" + Convert . ToString ( headList . Count ) + "个托单" , data = headList . ToList ( ) } ) ;
return new ContentResult ( ) { Content = json } ;
}
catch ( Exception )
{
jsonRespose . Success = false ;
jsonRespose . Message = "读取Excel文件出错, 请确认文件正确性" ;
return new ContentResult ( ) { Content = JsonConvert . Serialize ( jsonRespose ) } ;
}
}
public List < string > ExcelSheetName ( string filepath )
{
var al = new List < string > ( ) ;
try
{
string strConn ;
strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filepath + ";Extended Properties=Excel 8.0;" ;
OleDbConnection conn = new OleDbConnection ( strConn ) ;
conn . Open ( ) ;
DataTable sheetNames = conn . GetOleDbSchemaTable
( System . Data . OleDb . OleDbSchemaGuid . Tables , new object [ ] { null , null , null , "TABLE" } ) ;
conn . Close ( ) ;
foreach ( DataRow dr in sheetNames . Rows )
{
al . Add ( dr [ 2 ] . ToString ( ) ) ;
}
}
catch ( Exception )
{
return new List < string > ( ) ;
}
return al ;
}
}
}