using System ;
using System.Data ;
using System.Collections.Generic ;
using System.Text ;
using DSWeb.MvcContainer.Models.MsOpCtnTkFitings ;
using Microsoft.Practices.EnterpriseLibrary.Data ;
using DSWeb.Areas.CommMng.Models ;
using HcUtility.Comm ;
using DSWeb.MvcShipping.DAL.MsBaseInfoDAL ;
using DSWeb.EntityDA ;
using DSWeb.Areas.CommMng.DAL ;
using DSWeb.MvcContainer.DAL.MsOpCtnBsCard ;
using DSWeb.MvcContainer.Models.MsOpCtnBsCard ;
namespace DSWeb.MvcContainer.DAL.MsOpCtnTkFitings
{
public class MsOpCtnTkFitingsDAL
{
#region Inquery DataList
static public List < OpCtnTkFitings > GetDataList ( string strCondition , string sort = null )
{
var strSql = new StringBuilder ( ) ;
strSql . Append ( "SELECT GID,BSNO,CUSTOMERNAME,OPTYPE,OPDATE,OPDATE2,BSSTATUS,YARD,DESTYARD,REMARK,CREATEUSER,CREATETIME" ) ;
strSql . Append ( ",MODIFIEDUSER,SUBMITUSER,SUBMITTIME,MODIFIEDTIME,AUDITUSER,AUDITTIME,REASON " ) ;
strSql . Append ( ",(select ShowName from [user] where GID=b.CREATEUSER) as CREATEUSERREF" ) ;
strSql . Append ( ",(select ShowName from [user] where GID=b.MODIFIEDUSER) as MODIFIEDUSERREF" ) ;
strSql . Append ( ",(select ShowName from [user] where GID=b.SUBMITUSER) as SUBMITUSERREF" ) ;
strSql . Append ( ",(select ShowName from [user] where GID=b.AUDITUSER) as AUDITUSERREF" ) ;
strSql . Append ( " from op_ctntkFiting b " ) ;
if ( ! string . IsNullOrEmpty ( strCondition ) )
{
strSql . Append ( " where " + strCondition ) ;
}
var sortstring = DatasetSort . Getsortstring ( sort ) ;
if ( ! string . IsNullOrEmpty ( sortstring ) )
{
strSql . Append ( " order by " + sortstring ) ;
}
else {
strSql . Append ( " order by CREATETIME DESC " ) ;
}
return SetData ( strSql ) ;
}
static public List < OpCtnTkFitings > GetAuditDataList ( string strCondition , string sort = null )
{
var strSql = new StringBuilder ( ) ;
strSql . Append ( "SELECT b.GID,b.BSNO,b.CUSTOMERNAME,b.OPTYPE,b.OPDATE,b.OPDATE2,b.BSSTATUS,b.YARD,b.DESTYARD,b.REMARK,b.CREATEUSER,b.CREATETIME" ) ;
strSql . Append ( ",b.MODIFIEDUSER,b.SUBMITUSER,b.SUBMITTIME,b.MODIFIEDTIME,b.AUDITUSER,b.AUDITTIME,b.REASON " ) ;
strSql . Append ( ",(select ShowName from [user] where GID=b.CREATEUSER) as CREATEUSERREF" ) ;
strSql . Append ( ",(select ShowName from [user] where GID=b.MODIFIEDUSER) as MODIFIEDUSERREF" ) ;
strSql . Append ( ",(select ShowName from [user] where GID=b.SUBMITUSER) as SUBMITUSERREF" ) ;
strSql . Append ( ",(select ShowName from [user] where GID=b.AUDITUSER) as AUDITUSERREF" ) ;
strSql . Append ( " from op_ctntkFiting b left join workflow_using wu on wu.bsno=b.GID " ) ;
if ( ! string . IsNullOrEmpty ( strCondition ) )
{
strSql . Append ( " where " + strCondition ) ;
}
var sortstring = DatasetSort . Getsortstring ( sort ) ;
if ( ! string . IsNullOrEmpty ( sortstring ) )
{
strSql . Append ( " order by " + sortstring ) ;
}
else
{
strSql . Append ( " order by b.CREATETIME DESC " ) ;
}
return SetData ( strSql ) ;
}
static public string GetDataListStr ( string strCondition , string sort = null )
{
var strSql = new StringBuilder ( ) ;
strSql . Append ( "SELECT GID,BSNO,CUSTOMERNAME,OPTYPE,OPDATE,OPDATE2,BSSTATUS,YARD,DESTYARD,REMARK,CREATEUSER,CREATETIME" ) ;
strSql . Append ( ",MODIFIEDUSER,SUBMITUSER,SUBMITTIME,MODIFIEDTIME,AUDITUSER,AUDITTIME,REASON " ) ;
strSql . Append ( ",(select ShowName from [user] where GID=b.CREATEUSER) as CREATEUSERREF" ) ;
strSql . Append ( ",(select ShowName from [user] where GID=b.MODIFIEDUSER) as MODIFIEDUSERREF" ) ;
strSql . Append ( ",(select ShowName from [user] where GID=b.SUBMITUSER) as SUBMITUSERREF" ) ;
strSql . Append ( ",(select ShowName from [user] where GID=b.AUDITUSER) as AUDITUSERREF" ) ;
strSql . Append ( " from op_ctntkFiting b " ) ;
if ( ! string . IsNullOrEmpty ( strCondition ) )
{
strSql . Append ( " where " + strCondition ) ;
}
var sortstring = DatasetSort . Getsortstring ( sort ) ;
if ( ! string . IsNullOrEmpty ( sortstring ) )
{
strSql . Append ( " order by " + sortstring ) ;
}
else
{
strSql . Append ( " order by CREATETIME DESC " ) ;
}
return strSql . ToString ( ) ;
}
static public OpCtnTkFitings GetData ( string condition )
{
OpCtnTkFitings data = null ;
var list = GetDataList ( condition ) ;
if ( list . Count > 0 )
data = list [ 0 ] ;
if ( data = = null )
{
data = new OpCtnTkFitings ( ) ;
//data.COMPANYID = companyid;
}
return data ;
}
static public OpCtnTkFitings GetData ( string condition , string userid )
{
var strSql = new StringBuilder ( ) ;
strSql . Append ( "SELECT GID,BSNO,CUSTOMERNAME,OPTYPE,OPDATE,OPDATE2,BSSTATUS,YARD,DESTYARD,REMARK,CREATEUSER,CREATETIME" ) ;
strSql . Append ( ",MODIFIEDUSER,SUBMITUSER,SUBMITTIME,MODIFIEDTIME,AUDITUSER,AUDITTIME,REASON " ) ;
strSql . Append ( ",(select ShowName from [user] where GID=b.CREATEUSER) as CREATEUSERREF" ) ;
strSql . Append ( ",(select ShowName from [user] where GID=b.MODIFIEDUSER) as MODIFIEDUSERREF" ) ;
strSql . Append ( ",(select ShowName from [user] where GID=b.SUBMITUSER) as SUBMITUSERREF" ) ;
strSql . Append ( ",(select ShowName from [user] where GID=b.AUDITUSER) as AUDITUSERREF" ) ;
strSql . Append ( " from op_ctntkFiting b " ) ;
if ( ! string . IsNullOrEmpty ( condition ) )
{
strSql . Append ( " where " + condition ) ;
}
var list = SetData ( strSql ) ;
if ( list . Count > 0 )
return list [ 0 ] ;
return new OpCtnTkFitings ( ) ;
}
private static List < OpCtnTkFitings > SetData ( StringBuilder strSql )
{
var headList = new List < OpCtnTkFitings > ( ) ;
Database db = DatabaseFactory . CreateDatabase ( ) ;
using ( IDataReader reader = db . ExecuteReader ( CommandType . Text , strSql . ToString ( ) ) )
{
while ( reader . Read ( ) )
{
OpCtnTkFitings data = new OpCtnTkFitings ( ) ;
#region Set DB data to Object
data . GID = Convert . ToString ( reader [ "GID" ] ) ;
data . BSNO = Convert . ToString ( reader [ "BSNO" ] ) ;
data . CUSTOMERNAME = Convert . ToString ( reader [ "CUSTOMERNAME" ] ) ;
data . BSSTATUS = Convert . ToString ( reader [ "BSSTATUS" ] ) ;
data . OPTYPE = Convert . ToString ( reader [ "OPTYPE" ] ) ;
if ( reader [ "OPDATE" ] ! = DBNull . Value )
data . OPDATE = Convert . ToDateTime ( reader [ "OPDATE" ] ) . ToString ( "yyyy-MM-dd" ) ;
if ( reader [ "OPDATE2" ] ! = DBNull . Value )
data . OPDATE2 = Convert . ToDateTime ( reader [ "OPDATE2" ] ) . ToString ( "yyyy-MM-dd" ) ;
data . YARD = Convert . ToString ( reader [ "YARD" ] ) ;
data . DESTYARD = Convert . ToString ( reader [ "DESTYARD" ] ) ;
data . REMARK = Convert . ToString ( reader [ "REMARK" ] ) ;
data . CREATEUSER = Convert . ToString ( reader [ "CREATEUSER" ] ) ;
data . CREATEUSERREF = Convert . ToString ( reader [ "CREATEUSERREF" ] ) ;
if ( reader [ "CREATETIME" ] ! = DBNull . Value )
data . CREATETIME = Convert . ToDateTime ( reader [ "CREATETIME" ] ) . ToString ( "yyyy-MM-dd HH:mm:ss" ) ;
data . MODIFIEDUSER = Convert . ToString ( reader [ "MODIFIEDUSER" ] ) ;
data . MODIFIEDUSERREF = Convert . ToString ( reader [ "MODIFIEDUSERREF" ] ) ;
if ( reader [ "MODIFIEDTIME" ] ! = DBNull . Value )
data . MODIFIEDTIME = Convert . ToDateTime ( reader [ "MODIFIEDTIME" ] ) . ToString ( "yyyy-MM-dd HH:mm:ss" ) ;
data . SUBMITUSER = Convert . ToString ( reader [ "SUBMITUSER" ] ) ;
data . SUBMITUSERREF = Convert . ToString ( reader [ "SUBMITUSERREF" ] ) ;
if ( reader [ "SUBMITTIME" ] ! = DBNull . Value )
data . SUBMITTIME = Convert . ToDateTime ( reader [ "SUBMITTIME" ] ) . ToString ( "yyyy-MM-dd HH:mm:ss" ) ;
data . AUDITUSER = Convert . ToString ( reader [ "AUDITUSER" ] ) ;
data . AUDITUSERREF = Convert . ToString ( reader [ "AUDITUSERREF" ] ) ;
if ( reader [ "AUDITTIME" ] ! = DBNull . Value )
data . AUDITTIME = Convert . ToDateTime ( reader [ "AUDITTIME" ] ) . ToString ( "yyyy-MM-dd HH:mm:ss" ) ;
data . REASON = Convert . ToString ( reader [ "REASON" ] ) ;
# endregion
headList . Add ( data ) ;
}
reader . Close ( ) ;
}
return headList ;
}
public static DBResult SubmitAuditBillNew ( OpCtnTkFitings head , string userid )
{
var result = new DBResult ( ) ;
result . Success = true ;
var msg = "" ;
Database db = DatabaseFactory . CreateDatabase ( ) ;
using ( var conn = db . CreateConnection ( ) )
{
conn . Open ( ) ;
var tran = conn . BeginTransaction ( ) ;
try
{
if ( head . OPTYPE = = "采购" ) {
var _Comm = "update op_ctntkFiting set BSSTATUS='锁定' where GID=@GID" ;
var cmdupdate = db . GetSqlStringCommand ( _Comm ) ;
cmdupdate . Parameters . Clear ( ) ;
db . AddInParameter ( cmdupdate , "@GID" , DbType . String , head . GID ) ;
db . ExecuteNonQuery ( cmdupdate , tran ) ;
result . Message2 = "1" ;
}
else
if ( head . OPTYPE = = "调拨" | | head . OPTYPE = = "报损" )
{
var tmpWorkFlowName = "CtnTkFitingsDb" ;
if ( head . OPTYPE = = "报损" ) tmpWorkFlowName = "CtnTkFitingsBs" ;
Resultmb WorkResult = WorkFlowDAL . WorkFlowStart ( tmpWorkFlowName , head . GID , userid , head . BSNO , "" , "" , "" ) ;
if ( WorkResult . Success = = true )
{
if ( WorkResult . islast = = true )
{
if ( head . OPTYPE = = "报损" )
{
var _Comm = "update op_ctntkFiting set BSSTATUS='确认报损',SUBMITUSER='" + userid + "',SUBMITTIME=GETDATE(),AUDITUSER='" + userid + "',AUDITTIME=GETDATE() where GID=@GID" ;
var cmdupdate = db . GetSqlStringCommand ( _Comm ) ;
cmdupdate . Parameters . Clear ( ) ;
db . AddInParameter ( cmdupdate , "@GID" , DbType . String , head . GID ) ;
db . ExecuteNonQuery ( cmdupdate , tran ) ;
}
else
{
var _Comm = "update op_ctntkFiting set BSSTATUS='确认调拨',SUBMITUSER='" + userid + "',SUBMITTIME=GETDATE(),AUDITUSER='" + userid + "',AUDITTIME=GETDATE() where GID=@GID" ;
var cmdupdate = db . GetSqlStringCommand ( _Comm ) ;
cmdupdate . Parameters . Clear ( ) ;
db . AddInParameter ( cmdupdate , "@GID" , DbType . String , head . GID ) ;
db . ExecuteNonQuery ( cmdupdate , tran ) ;
}
result . Message2 = "1" ;
}
else
{
if ( head . OPTYPE = = "报损" )
{
var _Comm = "update op_ctntkFiting set BSSTATUS='提交报损',SUBMITUSER='" + userid + "',SUBMITTIME=GETDATE() where GID=@GID" ;
var cmdupdate = db . GetSqlStringCommand ( _Comm ) ;
cmdupdate . Parameters . Clear ( ) ;
db . AddInParameter ( cmdupdate , "@GID" , DbType . String , head . GID ) ;
db . ExecuteNonQuery ( cmdupdate , tran ) ;
}
else
{
var _Comm = "update op_ctntkFiting set BSSTATUS='提交调拨',SUBMITUSER='" + userid + "',SUBMITTIME=GETDATE() where GID=@GID" ;
var cmdupdate = db . GetSqlStringCommand ( _Comm ) ;
cmdupdate . Parameters . Clear ( ) ;
db . AddInParameter ( cmdupdate , "@GID" , DbType . String , head . GID ) ;
db . ExecuteNonQuery ( cmdupdate , tran ) ;
}
}
}
else
{
result . Success = false ;
result . Message = "提交审核错误!" ;
}
}
result . Success = true ;
result . Message = "提交审核成功" ;
result . Data = msg ;
tran . Commit ( ) ;
}
catch ( Exception )
{
tran . Rollback ( ) ;
result . Success = false ;
result . Message = "提交审核错误,请重试或联系系统管理员" ;
return result ;
}
}
return result ;
}
public static DBResult CancelAuditBill ( OpCtnTkFitings head , String USERID )
{
var result = new DBResult ( ) ;
var WorkFlowName = "PriceProjectAudit" ;
Database db = DatabaseFactory . CreateDatabase ( ) ;
using ( var conn = db . CreateConnection ( ) )
{
conn . Open ( ) ;
var tran = conn . BeginTransaction ( ) ;
try
{
var cmdupdate = db . GetSqlStringCommand ( "update op_ctntkFiting set BSSTATUS='未提交' where GID=@GID" ) ;
cmdupdate . Parameters . Clear ( ) ;
db . AddInParameter ( cmdupdate , "@GID" , DbType . String , head . GID ) ;
db . ExecuteNonQuery ( cmdupdate , tran ) ;
var cmduDelete = db . GetSqlStringCommand ( "delete from op_ctntkFiting_detail where LINKGID IN (SELECT GID FROM op_ctntkFiting_body where LINKGID=@GID)" ) ;
cmduDelete . Parameters . Clear ( ) ;
db . AddInParameter ( cmduDelete , "@GID" , DbType . String , head . GID ) ;
db . ExecuteNonQuery ( cmduDelete , tran ) ;
//var saleid = "";
// if (saleid == "") saleid = USERID;
// Resultmb WorkResult = WorkFlowDAL.WorkFlowReset(WorkFlowName, GID, saleid);
// if (WorkResult.Success == true)
// {
// var cmdupdate = db.GetSqlStringCommand("update op_price set BSSTATUS='未提交',AUDITOPERATOR='',AUDITDATE=null where GID=@GID");
// cmdupdate.Parameters.Clear();
// db.AddInParameter(cmdupdate, "@GID", DbType.String, GID);
// db.ExecuteNonQuery(cmdupdate, tran);
// }
// else
// {
// result.Success = false;
// result.Message = "撤销提交错误!";
// }
result = new DBResult ( ) ;
result . Success = true ;
result . Message = "撤销提交成功" ;
tran . Commit ( ) ;
}
catch ( Exception )
{
tran . Rollback ( ) ;
result . Success = false ;
result . Message = "撤销提交错误,请重试或联系系统管理员" ;
return result ;
}
}
return result ;
}
public static DBResult AuditBillList ( List < OpCtnTkFitings > billList , string userid )
{
var result = new DBResult ( ) ;
Database db = DatabaseFactory . CreateDatabase ( ) ;
using ( var conn = db . CreateConnection ( ) )
{
conn . Open ( ) ;
try
{
foreach ( var bill in billList )
{
var WorkFlowName = "CtnTkFitingsDb" ;
if ( bill . OPTYPE = = "报损" ) WorkFlowName = "CtnTkFitingsBs" ;
var tran = conn . BeginTransaction ( ) ;
Resultmb WorkResult = WorkFlowDAL . InsertWorkFlowDo ( WorkFlowName , bill . GID , userid , tran , "" , bill . GID , "" ) ;
if ( WorkResult . Success = = true )
{
try
{
if ( WorkResult . islast = = true )
{
if ( bill . OPTYPE = = "报损" )
{
var _Comm = "update op_ctntkFiting set BSSTATUS='确认报损',AUDITUSER='" + userid + "',AUDITTIME=GETDATE() where GID=@GID" ;
var cmdupdate = db . GetSqlStringCommand ( _Comm ) ;
cmdupdate . Parameters . Clear ( ) ;
db . AddInParameter ( cmdupdate , "@GID" , DbType . String , bill . GID ) ;
db . ExecuteNonQuery ( cmdupdate , tran ) ;
bill . BSSTATUS = "确认报损" ;
}
else
{
var _Comm = "update op_ctntkFiting set BSSTATUS='确认调拨',AUDITUSER='" + userid + "',AUDITTIME=GETDATE() where GID=@GID" ;
var cmdupdate = db . GetSqlStringCommand ( _Comm ) ;
cmdupdate . Parameters . Clear ( ) ;
db . AddInParameter ( cmdupdate , "@GID" , DbType . String , bill . GID ) ;
db . ExecuteNonQuery ( cmdupdate , tran ) ;
bill . BSSTATUS = "确认调拨" ;
}
result . Message2 = "1" ;
}
else
{
var cmdupdate = db . GetSqlStringCommand ( "update op_ctntkFiting set AUDITUSER='" + userid + "',AUDITTIME=GETDATE() where GID=@GID" ) ;
cmdupdate . Parameters . Clear ( ) ;
db . AddInParameter ( cmdupdate , "@GID" , DbType . String , bill . GID ) ;
db . ExecuteNonQuery ( cmdupdate , tran ) ;
}
}
catch ( Exception e )
{
result . Success = false ;
result . Message = "审核错误!<" + WorkResult . Message + ">" ;
tran . Rollback ( ) ;
}
if ( bill . BSSTATUS = = "确认报损" | | bill . BSSTATUS = = "确认调拨" ) {
SaveCgFitingsDetail ( bill , bill . OPTYPE , userid ) ;
UpdateFitingsKc ( ) ;
}
result = new DBResult ( ) ;
result . Success = true ;
result . Message = "审核成功" ;
tran . Commit ( ) ;
}
else
{
result . Success = false ;
result . Message = "审核错误!<" + WorkResult . Message + ">" ;
tran . Rollback ( ) ;
//return result;
}
//}
}
}
catch ( Exception e )
{
//tran.Rollback();
result . Success = false ;
result . Message = "审核错误<" + e . Message + ">,请重试或联系系统管理员" ;
return result ;
}
}
return result ;
}
public static DBResult AuditBillDbOverList ( List < OpCtnTkFitings > billList , string OPDATE2 , string userid )
{
var result = new DBResult ( ) ;
Database db = DatabaseFactory . CreateDatabase ( ) ;
using ( var conn = db . CreateConnection ( ) )
{
conn . Open ( ) ;
try
{
foreach ( var bill in billList )
{
var tran = conn . BeginTransaction ( ) ;
var _Comm = "update op_ctntkFiting set BSSTATUS='调拨完成', OPDATE2='" + OPDATE2 + "',MODIFIEDUSER='" + userid + "',MODIFIEDTIME=GETDATE() where GID=@GID" ;
var cmdupdate = db . GetSqlStringCommand ( _Comm ) ;
cmdupdate . Parameters . Clear ( ) ;
db . AddInParameter ( cmdupdate , "@GID" , DbType . String , bill . GID ) ;
db . ExecuteNonQuery ( cmdupdate , tran ) ;
bill . BSSTATUS = "调拨完成" ;
result . Success = true ;
result . Message = "调拨完成" ;
tran . Commit ( ) ;
SaveCgFitingsDetail ( bill , "调入" , userid ) ;
UpdateFitingsKc ( ) ;
//}
}
}
catch ( Exception e )
{
//tran.Rollback();
result . Success = false ;
result . Message = "审核错误<" + e . Message + ">,请重试或联系系统管理员" ;
return result ;
}
}
return result ;
}
public static DBResult AuditBillBack ( List < OpCtnTkFitings > billList , String USERID , string reasean , string companyid )
{
var result = new DBResult ( ) ;
var i = 0 ;
T_ALL_DA T_ALL_DA = new T_ALL_DA ( ) ;
var mblno = "" ;
result . Success = true ;
Database db = DatabaseFactory . CreateDatabase ( ) ;
using ( var conn = db . CreateConnection ( ) )
{
conn . Open ( ) ;
var tran = conn . BeginTransaction ( ) ;
try
{
foreach ( var bill in billList )
{
Resultmb WorkResult = null ;
var WorkFlowName = "CtnTkFitingsDb" ;
if ( bill . OPTYPE = = "报损" ) WorkFlowName = "CtnTkFitingsBs" ;
var BLCOUNT = T_ALL_DA . GetStrSQL ( "BLCOUNT" , "select count(*) BLCOUNT from workflow_using WHERE BSNO='" + bill . GID + "'" ) ;
if ( BLCOUNT ! = "0" )
{
WorkResult = WorkFlowDAL . DeleteWorkFlowDo ( WorkFlowName , bill . GID , USERID , reasean , mblno , bill . GID , "" , "" ) ;
}
if ( BLCOUNT = = "0" | | WorkResult . Success = = true )
{
var cmdupdate = db . GetSqlStringCommand ( "update op_ctntkFiting set BSSTATUS='驳回提交',REASON='" + reasean + "' where GID=@GID" ) ;
cmdupdate . Parameters . Clear ( ) ;
db . AddInParameter ( cmdupdate , "@GID" , DbType . String , bill . GID ) ;
db . ExecuteNonQuery ( cmdupdate , tran ) ;
var cmduDelete = db . GetSqlStringCommand ( "delete from op_ctntkFiting_detail where LINKGID IN (SELECT GID FROM op_ctntkFiting_body where LINKGID=@GID)" ) ;
cmduDelete . Parameters . Clear ( ) ;
db . AddInParameter ( cmduDelete , "@GID" , DbType . String , bill . GID ) ;
db . ExecuteNonQuery ( cmduDelete , tran ) ;
result . Message2 = "1" ;
}
else
{
i = i + 1 ;
result . Success = WorkResult . Success ;
result . Message = WorkResult . Message ;
}
}
if ( result . Success = = true )
{
result . Success = true ;
result . Message = "驳回提交成功" ;
tran . Commit ( ) ;
}
else
{
result . Success = true ;
result . Message = "驳回完成,其中" + i . ToString ( ) + "票驳回错误,错误信息" + result . Message ;
tran . Commit ( ) ;
}
}
catch ( Exception e )
{
tran . Rollback ( ) ;
result . Success = false ;
result . Message = "驳回提交错误,请重试或联系系统管理员" + e . Message ;
return result ;
}
}
return result ;
}
public static DBResult SetStop ( List < OpCtnTkFitings > billList , string userid , string isstop )
{
var result = new DBResult ( ) ;
var i = 0 ;
var mblno = "" ;
result . Success = true ;
Database db = DatabaseFactory . CreateDatabase ( ) ;
using ( var conn = db . CreateConnection ( ) )
{
conn . Open ( ) ;
var tran = conn . BeginTransaction ( ) ;
try
{
foreach ( var bill in billList )
{
var cmdupdate = db . GetSqlStringCommand ( "update op_price set ISSTOP='" + isstop + "' where GID=@GID" ) ;
cmdupdate . Parameters . Clear ( ) ;
db . AddInParameter ( cmdupdate , "@GID" , DbType . String , bill . GID ) ;
db . ExecuteNonQuery ( cmdupdate , tran ) ;
}
if ( result . Success = = true )
{
result = new DBResult ( ) ;
result . Success = true ;
result . Message = "提交成功" ;
tran . Commit ( ) ;
}
else
{
result . Success = true ;
result . Message = "完成,其中" + i . ToString ( ) + "票驳回错误,错误信息" + result . Message ;
tran . Commit ( ) ;
}
}
catch ( Exception e )
{
tran . Rollback ( ) ;
result . Success = false ;
result . Message = "提交错误,请重试或联系系统管理员" + e . Message ;
return result ;
}
}
return result ;
}
public static DBResult DeleteOpCtnTkFitings ( List < OpCtnTkFitings > headData )
{
var result = new DBResult ( ) ;
Database db = DatabaseFactory . CreateDatabase ( ) ;
using ( var conn = db . CreateConnection ( ) )
{
conn . Open ( ) ;
var tran = conn . BeginTransaction ( ) ;
try
{
if ( headData ! = null )
{
foreach ( var enumValue in headData )
{
var cmdDelete = db . GetSqlStringCommand ( "delete from op_ctntkFiting where GID='" + enumValue . GID + "'" ) ;
db . ExecuteNonQuery ( cmdDelete , tran ) ;
}
}
tran . Commit ( ) ;
}
catch ( Exception )
{
tran . Rollback ( ) ;
result . Success = false ;
result . Message = "删除出现错误,请重试或联系系统管理员" ;
return result ;
}
}
result . Success = true ;
result . Message = "删除成功" ;
return result ;
}
public static bool GetBodyCount ( string BSNO )
{
var isfee = false ;
var strSql = new StringBuilder ( ) ;
strSql . Append ( "Select count(*) as count " ) ;
strSql . Append ( " from op_ctntkFiting_body " ) ;
strSql . Append ( " where LINKGID='" + BSNO + "'" ) ;
Database db = DatabaseFactory . CreateDatabase ( ) ;
using ( IDataReader reader = db . ExecuteReader ( CommandType . Text , strSql . ToString ( ) ) )
{
while ( reader . Read ( ) )
{
var evData = Convert . ToInt32 ( reader [ "count" ] ) ;
if ( evData > 0 ) { isfee = true ; } ;
}
reader . Close ( ) ;
}
return isfee ;
}
# endregion
#region FitingsDetail
static public List < OpCtnTkFitingsDetail > GetFitingsDetailList ( string strCondition , string sort = null )
{
var strSql = new StringBuilder ( ) ;
strSql . Append ( "SELECT GID,[LINKGID],[FITINGGID],[FITINGCODE],[FITINGNAME],[CTNGID],[CTNNO],[MODEL],DSTATUS" ) ;
strSql . Append ( ",[WMSTYPE],[OPDATE],[YARD],[PKGS],[NPKGS],[REMARK],[CREATEUSER],[CREATETIME],[MODIFIEDUSER],[MODIFIEDTIME]" ) ;
strSql . Append ( ",(select ShowName from [user] where GID=op_ctntkFiting_detail.CREATEUSER) as CREATEUSERREF" ) ;
strSql . Append ( ",(select ShowName from [user] where GID=op_ctntkFiting_detail.MODIFIEDUSER) as MODIFIEDUSERREF" ) ;
strSql . Append ( " from op_ctntkFiting_detail " ) ;
if ( ! string . IsNullOrEmpty ( strCondition ) )
{
strSql . Append ( " where " + strCondition ) ;
}
var sortstring = DatasetSort . Getsortstring ( sort ) ;
if ( ! string . IsNullOrEmpty ( sortstring ) )
{
strSql . Append ( " order by " + sortstring ) ;
}
else
{
strSql . Append ( " order by CREATETIME DESC" ) ;
}
return SetFitingsDetailData ( strSql ) ;
}
static public string GetFitingsDetailListStr ( string strCondition , string sort = null )
{
var strSql = new StringBuilder ( ) ;
strSql . Append ( "SELECT GID,[LINKGID],[FITINGGID],[FITINGCODE],[FITINGNAME],[CTNGID],[CTNNO],[MODEL],DSTATUS" ) ;
strSql . Append ( ",[WMSTYPE],[OPDATE],[YARD],[PKGS],[NPKGS],[REMARK],[CREATEUSER],[CREATETIME],[MODIFIEDUSER],[MODIFIEDTIME]" ) ;
strSql . Append ( ",(select ShowName from [user] where GID=op_ctntkFiting_detail.CREATEUSER) as CREATEUSERREF" ) ;
strSql . Append ( ",(select ShowName from [user] where GID=op_ctntkFiting_detail.MODIFIEDUSER) as MODIFIEDUSERREF" ) ;
strSql . Append ( " from op_ctntkFiting_detail " ) ;
if ( ! string . IsNullOrEmpty ( strCondition ) )
{
strSql . Append ( " where " + strCondition ) ;
}
var sortstring = DatasetSort . Getsortstring ( sort ) ;
if ( ! string . IsNullOrEmpty ( sortstring ) )
{
strSql . Append ( " order by " + sortstring ) ;
}
else
{
strSql . Append ( " order by CREATETIME DESC" ) ;
}
return strSql . ToString ( ) ;
}
static public OpCtnTkFitingsDetail GetOpFitingsDetailData ( string condition , string userid )
{
var strSql = new StringBuilder ( ) ;
strSql . Append ( "SELECT GID,[LINKGID],[FITINGGID],[FITINGCODE],[FITINGNAME],[CTNGID],[CTNNO],[MODEL],DSTATUS" ) ;
strSql . Append ( ",[WMSTYPE],[OPDATE],[YARD],[PKGS],[NPKGS],[REMARK],[CREATEUSER],[CREATETIME],[MODIFIEDUSER],[MODIFIEDTIME]" ) ;
strSql . Append ( ",(select ShowName from [user] where GID=op_ctntkFiting_detail.CREATEUSER) as CREATEUSERREF" ) ;
strSql . Append ( ",(select ShowName from [user] where GID=op_ctntkFiting_detail.MODIFIEDUSER) as MODIFIEDUSERREF" ) ;
strSql . Append ( " from op_ctntkFiting_detail " ) ;
if ( ! string . IsNullOrEmpty ( condition ) )
{
strSql . Append ( " where " + condition ) ;
}
var list = SetFitingsDetailData ( strSql ) ;
if ( list . Count > 0 )
return list [ 0 ] ;
return new OpCtnTkFitingsDetail ( ) ;
}
private static List < OpCtnTkFitingsDetail > SetFitingsDetailData ( StringBuilder strSql )
{
var headList = new List < OpCtnTkFitingsDetail > ( ) ;
Database db = DatabaseFactory . CreateDatabase ( ) ;
using ( IDataReader reader = db . ExecuteReader ( CommandType . Text , strSql . ToString ( ) ) )
{
while ( reader . Read ( ) )
{
OpCtnTkFitingsDetail data = new OpCtnTkFitingsDetail ( ) ;
#region Set DB data to Object
data . GID = Convert . ToString ( reader [ "GID" ] ) ;
data . LINKGID = Convert . ToString ( reader [ "LINKGID" ] ) ;
data . FITINGGID = Convert . ToString ( reader [ "FITINGGID" ] ) ;
data . FITINGCODE = Convert . ToString ( reader [ "FITINGCODE" ] ) ;
data . FITINGNAME = Convert . ToString ( reader [ "FITINGNAME" ] ) ;
data . CTNGID = Convert . ToString ( reader [ "CTNGID" ] ) ;
data . CTNNO = Convert . ToString ( reader [ "CTNNO" ] ) ;
data . MODEL = Convert . ToString ( reader [ "MODEL" ] ) ;
data . DSTATUS = Convert . ToString ( reader [ "DSTATUS" ] ) ;
if ( reader [ "PKGS" ] ! = DBNull . Value )
data . PKGS = Convert . ToDecimal ( reader [ "PKGS" ] ) ;
if ( reader [ "NPKGS" ] ! = DBNull . Value )
data . NPKGS = Convert . ToDecimal ( reader [ "NPKGS" ] ) ;
data . WMSTYPE = Convert . ToString ( reader [ "WMSTYPE" ] ) ;
if ( reader [ "OPDATE" ] ! = DBNull . Value )
data . OPDATE = Convert . ToDateTime ( reader [ "OPDATE" ] ) . ToString ( "yyyy-MM-dd" ) ;
data . YARD = Convert . ToString ( reader [ "YARD" ] ) ;
data . REMARK = Convert . ToString ( reader [ "REMARK" ] ) ;
data . CREATEUSER = Convert . ToString ( reader [ "CREATEUSER" ] ) ;
data . CREATEUSERREF = Convert . ToString ( reader [ "CREATEUSERREF" ] ) ;
if ( reader [ "CREATETIME" ] ! = DBNull . Value )
data . CREATETIME = Convert . ToDateTime ( reader [ "CREATETIME" ] ) . ToString ( "yyyy-MM-dd HH:mm:ss" ) ;
data . MODIFIEDUSER = Convert . ToString ( reader [ "MODIFIEDUSER" ] ) ;
data . MODIFIEDUSERREF = Convert . ToString ( reader [ "MODIFIEDUSERREF" ] ) ;
if ( reader [ "MODIFIEDTIME" ] ! = DBNull . Value )
data . MODIFIEDTIME = Convert . ToDateTime ( reader [ "MODIFIEDTIME" ] ) . ToString ( "yyyy-MM-dd HH:mm:ss" ) ;
# endregion
headList . Add ( data ) ;
}
reader . Close ( ) ;
}
return headList ;
}
public static DBResult SaveCgFitingsDetail ( OpCtnTkFitings HeadData , string OPTYPE , string userid )
{
var result = new DBResult ( ) ;
var bodyList = GetFitingsBodyList ( "LINKGID='" + HeadData . GID + "'" , OPTYPE ) ;
Database db = DatabaseFactory . CreateDatabase ( ) ;
using ( var conn = db . CreateConnection ( ) )
{
conn . Open ( ) ;
var tran = conn . BeginTransaction ( ) ;
try
{
var cmdInsert =
db . GetSqlStringCommand (
@ "insert into op_ctntkFiting_detail (GID,[LINKGID],[FITINGGID],[FITINGCODE],[FITINGNAME],[CTNGID],[CTNNO],[MODEL]
, [ WMSTYPE ] , [ OPDATE ] , [ YARD ] , [ PKGS ] , [ REMARK ] , [ CREATEUSER ] , [ CREATETIME ] , [ MODIFIEDUSER ] , [ MODIFIEDTIME ] )
values ( @GID , @LINKGID , @FITINGGID , @FITINGCODE , @FITINGNAME , @CTNGID , @CTNNO , @MODEL
, @WMSTYPE , @OPDATE , @YARD , @PKGS , @REMARK , @CREATEUSER , @CREATETIME , @MODIFIEDUSER , @MODIFIEDTIME ) ");
var cmdUpdate =
db . GetSqlStringCommand (
@ "update op_ctntkFiting_detail set FITINGGID=@FITINGGID,FITINGCODE=@FITINGCODE,FITINGNAME=@FITINGNAME,CTNGID=@CTNGID,CTNNO=@CTNNO,MODEL=@MODEL,
WMSTYPE = @WMSTYPE , OPDATE = @OPDATE , YARD = @YARD , PKGS = @PKGS , REMARK = @REMARK , MODIFIEDUSER = @MODIFIEDUSER , MODIFIEDTIME = @MODIFIEDTIME where GID = @GID ");
if ( bodyList ! = null )
{
foreach ( var enumValue in bodyList )
{
if ( string . IsNullOrEmpty ( enumValue . DETAILGID ) )
{
cmdInsert . Parameters . Clear ( ) ;
db . AddInParameter ( cmdInsert , "@GID" , DbType . String , Guid . NewGuid ( ) . ToString ( ) ) ;
db . AddInParameter ( cmdInsert , "@LINKGID" , DbType . String , enumValue . GID ) ;
db . AddInParameter ( cmdInsert , "@FITINGGID" , DbType . String , enumValue . FITINGGID ) ;
db . AddInParameter ( cmdInsert , "@FITINGCODE" , DbType . String , enumValue . FITINGCODE ) ;
db . AddInParameter ( cmdInsert , "@FITINGNAME" , DbType . String , enumValue . FITINGNAME ) ;
db . AddInParameter ( cmdInsert , "@CTNGID" , DbType . String , "" ) ;
db . AddInParameter ( cmdInsert , "@CTNNO" , DbType . String , "" ) ;
db . AddInParameter ( cmdInsert , "@MODEL" , DbType . String , enumValue . MODEL ) ;
db . AddInParameter ( cmdInsert , "@WMSTYPE" , DbType . String , OPTYPE ) ;
if ( string . IsNullOrEmpty ( HeadData . OPDATE ) )
db . AddInParameter ( cmdInsert , "@OPDATE" , DbType . String , null ) ;
else
db . AddInParameter ( cmdInsert , "@OPDATE" , DbType . String , HeadData . OPDATE ) ;
if ( HeadData . BSSTATUS = = "调拨完成" )
db . AddInParameter ( cmdInsert , "@YARD" , DbType . String , HeadData . DESTYARD ) ;
else
db . AddInParameter ( cmdInsert , "@YARD" , DbType . String , HeadData . YARD ) ;
if ( HeadData . OPTYPE = = "采购" | | ( HeadData . OPTYPE = = "调拨" & & HeadData . BSSTATUS = = "调拨完成" ) )
db . AddInParameter ( cmdInsert , "@PKGS" , DbType . Decimal , enumValue . PKGS ) ;
else
db . AddInParameter ( cmdInsert , "@PKGS" , DbType . Decimal , - enumValue . PKGS ) ;
db . AddInParameter ( cmdInsert , "@REMARK" , DbType . String , enumValue . REMARK ) ;
db . AddInParameter ( cmdInsert , "@CREATEUSER" , DbType . String , userid ) ;
db . AddInParameter ( cmdInsert , "@CREATETIME" , DbType . String , DateTime . Now . ToString ( "yyyy-MM-dd HH:mm:ss" ) ) ;
db . AddInParameter ( cmdInsert , "@MODIFIEDUSER" , DbType . String , userid ) ;
db . AddInParameter ( cmdInsert , "@MODIFIEDTIME" , DbType . String , DateTime . Now . ToString ( "yyyy-MM-dd HH:mm:ss" ) ) ;
db . ExecuteNonQuery ( cmdInsert , tran ) ;
}
else
{
cmdUpdate . Parameters . Clear ( ) ;
db . AddInParameter ( cmdUpdate , "@GID" , DbType . String , enumValue . DETAILGID ) ;
db . AddInParameter ( cmdUpdate , "@FITINGGID" , DbType . String , enumValue . FITINGGID ) ;
db . AddInParameter ( cmdUpdate , "@FITINGCODE" , DbType . String , enumValue . FITINGCODE ) ;
db . AddInParameter ( cmdUpdate , "@FITINGNAME" , DbType . String , enumValue . FITINGNAME ) ;
db . AddInParameter ( cmdUpdate , "@CTNGID" , DbType . String , "" ) ;
db . AddInParameter ( cmdUpdate , "@CTNNO" , DbType . String , "" ) ;
db . AddInParameter ( cmdUpdate , "@MODEL" , DbType . String , enumValue . MODEL ) ;
db . AddInParameter ( cmdUpdate , "@WMSTYPE" , DbType . String , OPTYPE ) ;
if ( string . IsNullOrEmpty ( HeadData . OPDATE ) )
db . AddInParameter ( cmdUpdate , "@OPDATE" , DbType . String , null ) ;
else
db . AddInParameter ( cmdUpdate , "@OPDATE" , DbType . String , HeadData . OPDATE ) ;
if ( HeadData . BSSTATUS = = "调拨完成" )
db . AddInParameter ( cmdUpdate , "@YARD" , DbType . String , HeadData . DESTYARD ) ;
else
db . AddInParameter ( cmdUpdate , "@YARD" , DbType . String , HeadData . YARD ) ;
if ( HeadData . OPTYPE = = "采购" | | HeadData . BSSTATUS = = "调拨完成" )
db . AddInParameter ( cmdUpdate , "@PKGS" , DbType . Decimal , enumValue . PKGS ) ;
else
db . AddInParameter ( cmdUpdate , "@PKGS" , DbType . Decimal , - enumValue . PKGS ) ;
db . AddInParameter ( cmdUpdate , "@REMARK" , DbType . String , enumValue . REMARK ) ;
db . AddInParameter ( cmdUpdate , "@MODIFIEDUSER" , DbType . String , userid ) ;
db . AddInParameter ( cmdUpdate , "@MODIFIEDTIME" , DbType . String , DateTime . Now . ToString ( "yyyy-MM-dd HH:mm:ss" ) ) ;
db . ExecuteNonQuery ( cmdUpdate , tran ) ;
}
}
}
tran . Commit ( ) ;
}
catch ( Exception e )
{
tran . Rollback ( ) ;
result . Success = false ;
result . Message = "保存出现错误,请重试或联系系统管理员" + e . Message ;
return result ;
}
}
result . Success = true ;
result . Message = "保存成功" + result . Message ;
return result ;
}
public static DBResult SaveFitingsDetail ( OpCtnBsCard opctnbscard , List < OpCtnTkFitingsDetail > bodyList , string LINKGID , string userid )
{
var result = new DBResult ( ) ;
var CtnKcList = GetFitingsCtnKcList ( "F.CTNGID='" + opctnbscard . CTNGID + "'" ) ;
Database db = DatabaseFactory . CreateDatabase ( ) ;
using ( var conn = db . CreateConnection ( ) )
{
conn . Open ( ) ;
var tran = conn . BeginTransaction ( ) ;
try
{
var cmdInsert =
db . GetSqlStringCommand (
@ "insert into op_ctntkFiting_detail (GID,[LINKGID],[FITINGGID],[FITINGCODE],[FITINGNAME],[CTNGID],[CTNNO],[MODEL]
, [ WMSTYPE ] , [ OPDATE ] , [ YARD ] , [ PKGS ] , [ NPKGS ] , [ REMARK ] , [ CREATEUSER ] , [ CREATETIME ] , [ MODIFIEDUSER ] , [ MODIFIEDTIME ] , DSTATUS )
values ( @GID , @LINKGID , @FITINGGID , @FITINGCODE , @FITINGNAME , @CTNGID , @CTNNO , @MODEL
, @WMSTYPE , @OPDATE , @YARD , @PKGS , @NPKGS , @REMARK , @CREATEUSER , @CREATETIME , @MODIFIEDUSER , @MODIFIEDTIME , @DSTATUS ) ");
// var cmdInsertCtnFitings =
//db.GetSqlStringCommand(
// @"insert into code_ctntk_Fiting (GID,[LINKGID],BODYGID,[FITINGGID],[FITINGCODE],[FITINGNAME],[MODEL]
// ,[OPDATE],[YARD],[PKGS],[REMARK],[CREATEUSER],[CREATETIME],[MODIFIEDUSER],[MODIFIEDTIME])
// values (@GID,@LINKGID,@BODYGID,@FITINGGID,@FITINGCODE,@FITINGNAME,@MODEL
// ,@OPDATE,@YARD,@PKGS,@REMARK,@CREATEUSER,@CREATETIME,@MODIFIEDUSER,@MODIFIEDTIME) ");
if ( bodyList ! = null )
{
foreach ( var enumValue in bodyList )
{
cmdInsert . Parameters . Clear ( ) ;
db . AddInParameter ( cmdInsert , "@GID" , DbType . String , Guid . NewGuid ( ) . ToString ( ) ) ;
db . AddInParameter ( cmdInsert , "@LINKGID" , DbType . String , LINKGID ) ;
db . AddInParameter ( cmdInsert , "@FITINGGID" , DbType . String , enumValue . FITINGGID ) ;
db . AddInParameter ( cmdInsert , "@FITINGCODE" , DbType . String , enumValue . FITINGCODE ) ;
db . AddInParameter ( cmdInsert , "@FITINGNAME" , DbType . String , enumValue . FITINGNAME ) ;
db . AddInParameter ( cmdInsert , "@CTNGID" , DbType . String , opctnbscard . CTNGID ) ;
db . AddInParameter ( cmdInsert , "@CTNNO" , DbType . String , opctnbscard . CTNNO ) ;
db . AddInParameter ( cmdInsert , "@MODEL" , DbType . String , enumValue . MODEL ) ;
db . AddInParameter ( cmdInsert , "@WMSTYPE" , DbType . String , enumValue . WMSTYPE ) ;
db . AddInParameter ( cmdInsert , "@OPDATE" , DbType . String , enumValue . OPDATE ) ;
db . AddInParameter ( cmdInsert , "@YARD" , DbType . String , enumValue . YARD ) ;
if ( enumValue . WMSTYPE = = "拆" )
db . AddInParameter ( cmdInsert , "@PKGS" , DbType . Decimal , enumValue . PKGS ) ;
else if ( enumValue . WMSTYPE = = "装" )
db . AddInParameter ( cmdInsert , "@PKGS" , DbType . Decimal , - enumValue . PKGS ) ;
else if ( enumValue . WMSTYPE = = "损坏" )
db . AddInParameter ( cmdInsert , "@PKGS" , DbType . Decimal , 0 ) ;
db . AddInParameter ( cmdInsert , "@NPKGS" , DbType . Decimal , enumValue . PKGS ) ;
db . AddInParameter ( cmdInsert , "@REMARK" , DbType . String , enumValue . REMARK ) ;
db . AddInParameter ( cmdInsert , "@CREATEUSER" , DbType . String , userid ) ;
db . AddInParameter ( cmdInsert , "@CREATETIME" , DbType . String , DateTime . Now . ToString ( "yyyy-MM-dd HH:mm:ss" ) ) ;
db . AddInParameter ( cmdInsert , "@MODIFIEDUSER" , DbType . String , userid ) ;
db . AddInParameter ( cmdInsert , "@MODIFIEDTIME" , DbType . String , DateTime . Now . ToString ( "yyyy-MM-dd HH:mm:ss" ) ) ;
if ( enumValue . WMSTYPE = = "损坏" )
db . AddInParameter ( cmdInsert , "@DSTATUS" , DbType . String , "提交审核" ) ;
else
db . AddInParameter ( cmdInsert , "@DSTATUS" , DbType . String , "" ) ;
db . ExecuteNonQuery ( cmdInsert , tran ) ;
if ( enumValue . WMSTYPE ! = "损坏" )
{
var ctnkc = CtnKcList . Find ( x = > x . FITINGGID = = enumValue . FITINGGID ) ;
if ( ctnkc ! = null )
{
if ( enumValue . WMSTYPE = = "拆" )
ctnkc . PKGS = ctnkc . PKGS - enumValue . PKGS ;
else if ( enumValue . WMSTYPE = = "装" )
ctnkc . PKGS = ctnkc . PKGS + enumValue . PKGS ;
//else if (enumValue.WMSTYPE == "损坏")
// ctnkc.PKGS = ctnkc.PKGS - enumValue.PKGS;
}
else
{
var newctnck = new OpCtnTkFitingsDetail ( ) ;
newctnck . GID = "*" ;
newctnck . CTNGID = opctnbscard . CTNGID ;
newctnck . FITINGCODE = enumValue . FITINGCODE ;
newctnck . FITINGGID = enumValue . FITINGGID ;
newctnck . FITINGNAME = enumValue . FITINGNAME ;
newctnck . MODEL = enumValue . MODEL ;
if ( enumValue . WMSTYPE = = "拆" )
newctnck . PKGS = - enumValue . PKGS ;
else if ( enumValue . WMSTYPE = = "装" )
newctnck . PKGS = enumValue . PKGS ;
//else if (enumValue.WMSTYPE == "损坏")
// newctnck.PKGS =- enumValue.PKGS;
CtnKcList . Add ( newctnck ) ;
}
}
//if (enumValue.WMSTYPE == "装")
//{
// cmdInsertCtnFitings.Parameters.Clear();
// db.AddInParameter(cmdInsertCtnFitings, "@GID", DbType.String, Guid.NewGuid().ToString());
// db.AddInParameter(cmdInsertCtnFitings, "@LINKGID", DbType.String, opctnbscard.CTNGID);
// db.AddInParameter(cmdInsertCtnFitings, "@FITINGGID", DbType.String, enumValue.FITINGGID);
// db.AddInParameter(cmdInsertCtnFitings, "@FITINGCODE", DbType.String, enumValue.FITINGCODE);
// db.AddInParameter(cmdInsertCtnFitings, "@FITINGNAME", DbType.String, enumValue.FITINGNAME);
// db.AddInParameter(cmdInsertCtnFitings, "@MODEL", DbType.String, enumValue.MODEL);
// db.AddInParameter(cmdInsertCtnFitings, "@OPDATE", DbType.String, enumValue.OPDATE);
// db.AddInParameter(cmdInsertCtnFitings, "@YARD", DbType.String, enumValue.YARD);
// if (enumValue.WMSTYPE == "拆")
// db.AddInParameter(cmdInsertCtnFitings, "@PKGS", DbType.Decimal, enumValue.PKGS);
// else
// db.AddInParameter(cmdInsertCtnFitings, "@PKGS", DbType.Decimal, -enumValue.PKGS);
// db.AddInParameter(cmdInsertCtnFitings, "@REMARK", DbType.String, enumValue.REMARK);
// db.AddInParameter(cmdInsertCtnFitings, "@CREATEUSER", DbType.String, userid);
// db.AddInParameter(cmdInsertCtnFitings, "@CREATETIME", DbType.String, DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
// db.AddInParameter(cmdInsertCtnFitings, "@MODIFIEDUSER", DbType.String, userid);
// db.AddInParameter(cmdInsertCtnFitings, "@MODIFIEDTIME", DbType.String, DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
// db.ExecuteNonQuery(cmdInsertCtnFitings, tran);
//}
}
}
SaveFitingsCtnKc ( CtnKcList ) ;
tran . Commit ( ) ;
}
catch ( Exception e )
{
tran . Rollback ( ) ;
result . Success = false ;
result . Message = "保存出现错误,请重试或联系系统管理员" + e . Message ;
return result ;
}
}
result . Success = true ;
result . Message = "保存成功" + result . Message ;
return result ;
}
public static DBResult DeleteFitingsDetail ( List < OpCtnTkFitingsDetail > headData )
{
var result = new DBResult ( ) ;
Database db = DatabaseFactory . CreateDatabase ( ) ;
using ( var conn = db . CreateConnection ( ) )
{
conn . Open ( ) ;
var tran = conn . BeginTransaction ( ) ;
try
{
if ( headData ! = null )
{
foreach ( var enumValue in headData )
{
var cmdDelete = db . GetSqlStringCommand ( "delete from op_ctntkFiting_detail where GID='" + enumValue . GID + "'" ) ;
db . ExecuteNonQuery ( cmdDelete , tran ) ;
}
}
tran . Commit ( ) ;
}
catch ( Exception )
{
tran . Rollback ( ) ;
result . Success = false ;
result . Message = "删除出现错误,请重试或联系系统管理员" ;
return result ;
}
}
result . Success = true ;
result . Message = "删除成功" ;
return result ;
}
# endregion
#region FitingsBody
static public List < OpCtnTkFitingsBody > GetFitingsBodyList ( string strCondition , string optype = "" , string sort = null )
{
var strSql = new StringBuilder ( ) ;
strSql . Append ( "SELECT GID,[LINKGID],[FITINGGID],[FITINGCODE],[FITINGNAME],[MODEL]" ) ;
strSql . Append ( ",[PKGS],[REMARK],[CREATEUSER],[CREATETIME],[MODIFIEDUSER],[MODIFIEDTIME]" ) ;
strSql . Append ( ",(select ShowName from [user] where GID=op_ctntkFiting_body.CREATEUSER) as CREATEUSERREF" ) ;
strSql . Append ( ",(select ShowName from [user] where GID=op_ctntkFiting_body.MODIFIEDUSER) as MODIFIEDUSERREF" ) ;
if ( string . IsNullOrEmpty ( optype ) )
{
strSql . Append ( ",isnull((select top 1 GID from op_ctntkFiting_detail where LINKGID=op_ctntkFiting_body.GID),'') as DETAILGID" ) ;
}
else {
strSql . Append ( ",isnull((select top 1 GID from op_ctntkFiting_detail where LINKGID=op_ctntkFiting_body.GID and WMSTYPE='" + optype + "'),'') as DETAILGID" ) ;
}
strSql . Append ( " from op_ctntkFiting_body " ) ;
if ( ! string . IsNullOrEmpty ( strCondition ) )
{
strSql . Append ( " where " + strCondition ) ;
}
var sortstring = DatasetSort . Getsortstring ( sort ) ;
if ( ! string . IsNullOrEmpty ( sortstring ) )
{
strSql . Append ( " order by " + sortstring ) ;
}
else
{
strSql . Append ( " order by CREATETIME DESC" ) ;
}
return SetFitingsBodyData ( strSql ) ;
}
static public string GetFitingsBodyListStr ( string strCondition , string sort = null )
{
var strSql = new StringBuilder ( ) ;
strSql . Append ( "SELECT GID,[LINKGID],[FITINGGID],[FITINGCODE],[FITINGNAME],[MODEL]" ) ;
strSql . Append ( ",[PKGS],[REMARK],[CREATEUSER],[CREATETIME],[MODIFIEDUSER],[MODIFIEDTIME]" ) ;
strSql . Append ( ",(select ShowName from [user] where GID=op_ctntkFiting_body.CREATEUSER) as CREATEUSERREF" ) ;
strSql . Append ( ",(select ShowName from [user] where GID=op_ctntkFiting_body.MODIFIEDUSER) as MODIFIEDUSERREF" ) ;
strSql . Append ( ",isnull((select top 1 GID from op_ctntkFiting_detail where LINKGID=op_ctntkFiting_body.GID),'') as DETAILGID" ) ;
strSql . Append ( " from op_ctntkFiting_body " ) ;
if ( ! string . IsNullOrEmpty ( strCondition ) )
{
strSql . Append ( " where " + strCondition ) ;
}
var sortstring = DatasetSort . Getsortstring ( sort ) ;
if ( ! string . IsNullOrEmpty ( sortstring ) )
{
strSql . Append ( " order by " + sortstring ) ;
}
else
{
strSql . Append ( " order by CREATETIME DESC" ) ;
}
return strSql . ToString ( ) ;
}
static public OpCtnTkFitingsBody GetOpFitingsBodyData ( string condition , string userid )
{
var strSql = new StringBuilder ( ) ;
strSql . Append ( "SELECT GID,[LINKGID],[FITINGGID],[FITINGCODE],[FITINGNAME],[MODEL]" ) ;
strSql . Append ( ",[PKGS],[REMARK],[CREATEUSER],[CREATETIME],[MODIFIEDUSER],[MODIFIEDTIME]" ) ;
strSql . Append ( ",(select ShowName from [user] where GID=op_ctntkFiting_body.CREATEUSER) as CREATEUSERREF" ) ;
strSql . Append ( ",(select ShowName from [user] where GID=op_ctntkFiting_body.MODIFIEDUSER) as MODIFIEDUSERREF" ) ;
strSql . Append ( ",isnull((select top 1 GID from op_ctntkFiting_detail where LINKGID=op_ctntkFiting_body.GID),'') as DETAILGID" ) ;
strSql . Append ( " from op_ctntkFiting_body " ) ;
if ( ! string . IsNullOrEmpty ( condition ) )
{
strSql . Append ( " where " + condition ) ;
}
var list = SetFitingsBodyData ( strSql ) ;
if ( list . Count > 0 )
return list [ 0 ] ;
return new OpCtnTkFitingsBody ( ) ;
}
private static List < OpCtnTkFitingsBody > SetFitingsBodyData ( StringBuilder strSql )
{
var headList = new List < OpCtnTkFitingsBody > ( ) ;
Database db = DatabaseFactory . CreateDatabase ( ) ;
using ( IDataReader reader = db . ExecuteReader ( CommandType . Text , strSql . ToString ( ) ) )
{
while ( reader . Read ( ) )
{
OpCtnTkFitingsBody data = new OpCtnTkFitingsBody ( ) ;
#region Set DB data to Object
data . GID = Convert . ToString ( reader [ "GID" ] ) ;
data . LINKGID = Convert . ToString ( reader [ "LINKGID" ] ) ;
data . FITINGGID = Convert . ToString ( reader [ "FITINGGID" ] ) ;
data . FITINGCODE = Convert . ToString ( reader [ "FITINGCODE" ] ) ;
data . FITINGNAME = Convert . ToString ( reader [ "FITINGNAME" ] ) ;
data . MODEL = Convert . ToString ( reader [ "MODEL" ] ) ;
if ( reader [ "PKGS" ] ! = DBNull . Value )
data . PKGS = Convert . ToDecimal ( reader [ "PKGS" ] ) ;
data . REMARK = Convert . ToString ( reader [ "REMARK" ] ) ;
data . CREATEUSER = Convert . ToString ( reader [ "CREATEUSER" ] ) ;
data . CREATEUSERREF = Convert . ToString ( reader [ "CREATEUSERREF" ] ) ;
if ( reader [ "CREATETIME" ] ! = DBNull . Value )
data . CREATETIME = Convert . ToDateTime ( reader [ "CREATETIME" ] ) . ToString ( "yyyy-MM-dd HH:mm:ss" ) ;
data . MODIFIEDUSER = Convert . ToString ( reader [ "MODIFIEDUSER" ] ) ;
data . MODIFIEDUSERREF = Convert . ToString ( reader [ "MODIFIEDUSERREF" ] ) ;
if ( reader [ "MODIFIEDTIME" ] ! = DBNull . Value )
data . MODIFIEDTIME = Convert . ToDateTime ( reader [ "MODIFIEDTIME" ] ) . ToString ( "yyyy-MM-dd HH:mm:ss" ) ;
data . DETAILGID = Convert . ToString ( reader [ "DETAILGID" ] ) ;
# endregion
headList . Add ( data ) ;
}
reader . Close ( ) ;
}
return headList ;
}
public static DBResult SaveFitingsBody ( List < OpCtnTkFitingsBody > bodyList , string PID , string userid )
{
var result = new DBResult ( ) ;
Database db = DatabaseFactory . CreateDatabase ( ) ;
using ( var conn = db . CreateConnection ( ) )
{
conn . Open ( ) ;
var tran = conn . BeginTransaction ( ) ;
try
{
var cmdInsert =
db . GetSqlStringCommand (
@ "insert into op_ctntkFiting_body (GID,[LINKGID],[FITINGGID],[FITINGCODE],[FITINGNAME],[MODEL]
, [ PKGS ] , [ REMARK ] , [ CREATEUSER ] , [ CREATETIME ] , [ MODIFIEDUSER ] , [ MODIFIEDTIME ] )
values ( @GID , @LINKGID , @FITINGGID , @FITINGCODE , @FITINGNAME , @MODEL
, @PKGS , @REMARK , @CREATEUSER , @CREATETIME , @MODIFIEDUSER , @MODIFIEDTIME ) ");
var cmdUpdate =
db . GetSqlStringCommand (
@ "update op_ctntkFiting_body set FITINGGID=@FITINGGID,FITINGCODE=@FITINGCODE,FITINGNAME=@FITINGNAME,MODEL=@MODEL,
PKGS = @PKGS , REMARK = @REMARK , MODIFIEDUSER = @MODIFIEDUSER , MODIFIEDTIME = @MODIFIEDTIME where GID = @GID ");
if ( bodyList ! = null )
{
foreach ( var enumValue in bodyList )
{
if ( enumValue . LINKGID = = "*" | | enumValue . LINKGID = = "" )
{
cmdInsert . Parameters . Clear ( ) ;
db . AddInParameter ( cmdInsert , "@GID" , DbType . String , Guid . NewGuid ( ) . ToString ( ) ) ;
db . AddInParameter ( cmdInsert , "@LINKGID" , DbType . String , PID ) ;
db . AddInParameter ( cmdInsert , "@FITINGGID" , DbType . String , enumValue . FITINGGID ) ;
db . AddInParameter ( cmdInsert , "@FITINGCODE" , DbType . String , enumValue . FITINGCODE ) ;
db . AddInParameter ( cmdInsert , "@FITINGNAME" , DbType . String , enumValue . FITINGNAME ) ;
db . AddInParameter ( cmdInsert , "@MODEL" , DbType . String , enumValue . MODEL ) ;
db . AddInParameter ( cmdInsert , "@PKGS" , DbType . Decimal , enumValue . PKGS ) ;
db . AddInParameter ( cmdInsert , "@REMARK" , DbType . String , enumValue . REMARK ) ;
db . AddInParameter ( cmdInsert , "@CREATEUSER" , DbType . String , userid ) ;
db . AddInParameter ( cmdInsert , "@CREATETIME" , DbType . String , DateTime . Now . ToString ( "yyyy-MM-dd HH:mm:ss" ) ) ;
db . AddInParameter ( cmdInsert , "@MODIFIEDUSER" , DbType . String , userid ) ;
db . AddInParameter ( cmdInsert , "@MODIFIEDTIME" , DbType . String , DateTime . Now . ToString ( "yyyy-MM-dd HH:mm:ss" ) ) ;
db . ExecuteNonQuery ( cmdInsert , tran ) ;
}
else
{
cmdUpdate . Parameters . Clear ( ) ;
db . AddInParameter ( cmdUpdate , "@GID" , DbType . String , enumValue . GID ) ;
db . AddInParameter ( cmdUpdate , "@FITINGGID" , DbType . String , enumValue . FITINGGID ) ;
db . AddInParameter ( cmdUpdate , "@FITINGCODE" , DbType . String , enumValue . FITINGCODE ) ;
db . AddInParameter ( cmdUpdate , "@FITINGNAME" , DbType . String , enumValue . FITINGNAME ) ;
db . AddInParameter ( cmdUpdate , "@MODEL" , DbType . String , enumValue . MODEL ) ;
db . AddInParameter ( cmdUpdate , "@PKGS" , DbType . Decimal , enumValue . PKGS ) ;
db . AddInParameter ( cmdUpdate , "@REMARK" , DbType . String , enumValue . REMARK ) ;
db . AddInParameter ( cmdUpdate , "@MODIFIEDUSER" , DbType . String , userid ) ;
db . AddInParameter ( cmdUpdate , "@MODIFIEDTIME" , DbType . String , DateTime . Now . ToString ( "yyyy-MM-dd HH:mm:ss" ) ) ;
db . ExecuteNonQuery ( cmdUpdate , tran ) ;
}
}
}
tran . Commit ( ) ;
}
catch ( Exception E )
{
tran . Rollback ( ) ;
result . Success = false ;
result . Message = "保存出现错误,请重试或联系系统管理员" + E . Message ;
return result ;
}
}
result . Success = true ;
result . Message = "保存成功" + result . Message ;
return result ;
}
public static DBResult DeleteFitingsBody ( List < OpCtnTkFitingsBody > headData )
{
var result = new DBResult ( ) ;
Database db = DatabaseFactory . CreateDatabase ( ) ;
using ( var conn = db . CreateConnection ( ) )
{
conn . Open ( ) ;
var tran = conn . BeginTransaction ( ) ;
try
{
if ( headData ! = null )
{
foreach ( var enumValue in headData )
{
var cmdDelete = db . GetSqlStringCommand ( "delete from op_ctntkFiting_body where GID='" + enumValue . GID + "'" ) ;
db . ExecuteNonQuery ( cmdDelete , tran ) ;
}
}
tran . Commit ( ) ;
}
catch ( Exception )
{
tran . Rollback ( ) ;
result . Success = false ;
result . Message = "删除出现错误,请重试或联系系统管理员" ;
return result ;
}
}
result . Success = true ;
result . Message = "删除成功" ;
return result ;
}
# endregion
#region FitingsKc
static public List < OpCtnTkFitingsKc > GetFitingsKcList ( string strCondition , string sort = null )
{
var strSql = new StringBuilder ( ) ;
strSql . Append ( "SELECT GID,[FITINGGID],[FITINGCODE],[FITINGNAME],[MODEL]" ) ;
strSql . Append ( ",[PKGS],[YARD]" ) ;
strSql . Append ( ",(FITINGCODE+'-'+FITINGNAME+'-'+MODEL) as FITINGFULL" ) ;
strSql . Append ( " from op_ctntkFiting_kc " ) ;
if ( ! string . IsNullOrEmpty ( strCondition ) )
{
strSql . Append ( " where " + strCondition ) ;
}
var sortstring = DatasetSort . Getsortstring ( sort ) ;
if ( ! string . IsNullOrEmpty ( sortstring ) )
{
strSql . Append ( " order by " + sortstring ) ;
}
else
{
strSql . Append ( " order by FITINGNAME " ) ;
}
return SetFitingsKcData ( strSql ) ;
}
static public string GetFitingsKcListStr ( string strCondition , string sort = null )
{
var strSql = new StringBuilder ( ) ;
strSql . Append ( "SELECT GID,[FITINGGID],[FITINGCODE],[FITINGNAME],[MODEL]" ) ;
strSql . Append ( ",[PKGS],[YARD]" ) ;
strSql . Append ( ",(FITINGNAME+'-'+MODEL) as FITINGFULL" ) ;
strSql . Append ( " from op_ctntkFiting_kc " ) ;
if ( ! string . IsNullOrEmpty ( strCondition ) )
{
strSql . Append ( " where " + strCondition ) ;
}
var sortstring = DatasetSort . Getsortstring ( sort ) ;
if ( ! string . IsNullOrEmpty ( sortstring ) )
{
strSql . Append ( " order by " + sortstring ) ;
}
else
{
strSql . Append ( " order by FITINGNAME" ) ;
}
return strSql . ToString ( ) ;
}
static public List < OpCtnTkFitingsKc > GetFitingsKcSum ( )
{
var strSql = new StringBuilder ( ) ;
strSql . Append ( "SELECT '' GID,[FITINGGID],[FITINGCODE],[FITINGNAME],[MODEL]" ) ;
strSql . Append ( ",sum([PKGS]) PKGS,[YARD]" ) ;
strSql . Append ( ",'' as FITINGFULL" ) ;
strSql . Append ( " from op_ctntkFiting_detail " ) ;
strSql . Append ( " GROUP BY [FITINGGID],[FITINGCODE],[FITINGNAME],[MODEL],[YARD] " ) ;
return SetFitingsKcData ( strSql ) ;
}
static public List < OpCtnTkFitingsKc > GetFitingsCtnKcSum ( string CTNGID )
{
var strSql = new StringBuilder ( ) ;
strSql . Append ( "SELECT '' GID,[FITINGGID],[FITINGCODE],[FITINGNAME],[MODEL]" ) ;
strSql . Append ( ",sum(CASE WHEN WMSTYPE='装' THEN NPKGS ELSE -NPKGS END) PKGS" ) ;
strSql . Append ( ",'' as FITINGFULL,'' YARD " ) ;
strSql . Append ( " from op_ctntkFiting_detail WHERE CTNGID='" + CTNGID + "' " ) ;
strSql . Append ( " GROUP BY [FITINGGID],[FITINGCODE],[FITINGNAME],[MODEL],[YARD] " ) ;
return SetFitingsKcData ( strSql ) ;
}
private static List < OpCtnTkFitingsKc > SetFitingsKcData ( StringBuilder strSql )
{
var headList = new List < OpCtnTkFitingsKc > ( ) ;
Database db = DatabaseFactory . CreateDatabase ( ) ;
using ( IDataReader reader = db . ExecuteReader ( CommandType . Text , strSql . ToString ( ) ) )
{
while ( reader . Read ( ) )
{
OpCtnTkFitingsKc data = new OpCtnTkFitingsKc ( ) ;
#region Set DB data to Object
data . GID = Convert . ToString ( reader [ "GID" ] ) ;
data . FITINGGID = Convert . ToString ( reader [ "FITINGGID" ] ) ;
data . FITINGCODE = Convert . ToString ( reader [ "FITINGCODE" ] ) ;
data . FITINGNAME = Convert . ToString ( reader [ "FITINGNAME" ] ) ;
data . MODEL = Convert . ToString ( reader [ "MODEL" ] ) ;
if ( reader [ "PKGS" ] ! = DBNull . Value )
data . PKGS = Convert . ToDecimal ( reader [ "PKGS" ] ) ;
data . YARD = Convert . ToString ( reader [ "YARD" ] ) ;
data . FITINGFULL = Convert . ToString ( reader [ "FITINGFULL" ] ) ;
# endregion
headList . Add ( data ) ;
}
reader . Close ( ) ;
}
return headList ;
}
public static DBResult UpdateFitingsKc ( )
{
var result = new DBResult ( ) ;
var bodyList = GetFitingsKcSum ( ) ;
Database db = DatabaseFactory . CreateDatabase ( ) ;
using ( var conn = db . CreateConnection ( ) )
{
conn . Open ( ) ;
var tran = conn . BeginTransaction ( ) ;
try
{
var cmdInsert =
db . GetSqlStringCommand (
@ "insert into op_ctntkFiting_kc (GID,[FITINGGID],[FITINGCODE],[FITINGNAME],[MODEL]
, [ PKGS ] , [ YARD ] )
values ( @GID , @FITINGGID , @FITINGCODE , @FITINGNAME , @MODEL
, @PKGS , @YARD ) ");
var cmdDelete =
db . GetSqlStringCommand (
@"delete from op_ctntkFiting_kc " ) ;
cmdDelete . Parameters . Clear ( ) ;
db . ExecuteNonQuery ( cmdDelete , tran ) ;
if ( bodyList ! = null )
{
foreach ( var enumValue in bodyList )
{
cmdInsert . Parameters . Clear ( ) ;
db . AddInParameter ( cmdInsert , "@GID" , DbType . String , Guid . NewGuid ( ) . ToString ( ) ) ;
db . AddInParameter ( cmdInsert , "@FITINGGID" , DbType . String , enumValue . FITINGGID ) ;
db . AddInParameter ( cmdInsert , "@FITINGCODE" , DbType . String , enumValue . FITINGCODE ) ;
db . AddInParameter ( cmdInsert , "@FITINGNAME" , DbType . String , enumValue . FITINGNAME ) ;
db . AddInParameter ( cmdInsert , "@MODEL" , DbType . String , enumValue . MODEL ) ;
db . AddInParameter ( cmdInsert , "@PKGS" , DbType . Decimal , enumValue . PKGS ) ;
db . AddInParameter ( cmdInsert , "@YARD" , DbType . String , enumValue . YARD ) ;
db . ExecuteNonQuery ( cmdInsert , tran ) ;
}
}
tran . Commit ( ) ;
}
catch ( Exception E )
{
tran . Rollback ( ) ;
result . Success = false ;
result . Message = "保存出现错误,请重试或联系系统管理员" + E . Message ;
return result ;
}
}
result . Success = true ;
result . Message = "保存成功" + result . Message ;
return result ;
}
//public static DBResult UpdateFitingsCtnKc(string CTNGID)
//{
// var result = new DBResult();
// var bodyList = GetFitingsCtnKcSum(CTNGID);
// Database db = DatabaseFactory.CreateDatabase();
// using (var conn = db.CreateConnection())
// {
// conn.Open();
// var tran = conn.BeginTransaction();
// try
// {
// var cmdInsert =
// db.GetSqlStringCommand(
// @"insert into op_ctntkFiting_Ctnkc (GID,[FITINGGID],[FITINGCODE],[FITINGNAME],[MODEL]
// ,[PKGS],[CTNGID])
// values (@GID,@FITINGGID,@FITINGCODE,@FITINGNAME,@MODEL
// ,@PKGS,@CTNGID) ");
// var cmdDelete =
// db.GetSqlStringCommand(
// @"delete from op_ctntkFiting_Ctnkc WHERE CTNGID='"+CTNGID+"' ");
// cmdDelete.Parameters.Clear();
// db.ExecuteNonQuery(cmdDelete, tran);
// if (bodyList != null)
// {
// foreach (var enumValue in bodyList)
// {
// cmdInsert.Parameters.Clear();
// db.AddInParameter(cmdInsert, "@GID", DbType.String, Guid.NewGuid().ToString());
// db.AddInParameter(cmdInsert, "@FITINGGID", DbType.String, enumValue.FITINGGID);
// db.AddInParameter(cmdInsert, "@FITINGCODE", DbType.String, enumValue.FITINGCODE);
// db.AddInParameter(cmdInsert, "@FITINGNAME", DbType.String, enumValue.FITINGNAME);
// db.AddInParameter(cmdInsert, "@MODEL", DbType.String, enumValue.MODEL);
// db.AddInParameter(cmdInsert, "@PKGS", DbType.Decimal, enumValue.PKGS);
// db.AddInParameter(cmdInsert, "@CTNGID", DbType.String, CTNGID);
// db.ExecuteNonQuery(cmdInsert, tran);
// }
// }
// tran.Commit();
// }
// catch (Exception E)
// {
// tran.Rollback();
// result.Success = false;
// result.Message = "保存出现错误,请重试或联系系统管理员" + E.Message;
// return result;
// }
// }
// result.Success = true;
// result.Message = "保存成功" + result.Message;
// return result;
//}
public static DBResult UpdateFitingsCtnKc ( string CTNGID , List < OpCtnTkFitingsDetail > DetailList )
{
var result = new DBResult ( ) ;
var bodyList = GetFitingsCtnKcList ( "F.CTNGID='" + CTNGID + "'" ) ;
Database db = DatabaseFactory . CreateDatabase ( ) ;
using ( var conn = db . CreateConnection ( ) )
{
conn . Open ( ) ;
var tran = conn . BeginTransaction ( ) ;
try
{
var cmdInsert =
db . GetSqlStringCommand (
@ "insert into op_ctntkFiting_Ctnkc (GID,[FITINGGID],[FITINGCODE],[FITINGNAME],[MODEL]
, [ PKGS ] , [ CTNGID ] )
values ( @GID , @FITINGGID , @FITINGCODE , @FITINGNAME , @MODEL
, @PKGS , @CTNGID ) ");
var cmdDelete =
db . GetSqlStringCommand (
@"delete from op_ctntkFiting_Ctnkc WHERE CTNGID='" + CTNGID + "' " ) ;
cmdDelete . Parameters . Clear ( ) ;
db . ExecuteNonQuery ( cmdDelete , tran ) ;
if ( bodyList ! = null )
{
foreach ( var enumValue in bodyList )
{
cmdInsert . Parameters . Clear ( ) ;
db . AddInParameter ( cmdInsert , "@GID" , DbType . String , Guid . NewGuid ( ) . ToString ( ) ) ;
db . AddInParameter ( cmdInsert , "@FITINGGID" , DbType . String , enumValue . FITINGGID ) ;
db . AddInParameter ( cmdInsert , "@FITINGCODE" , DbType . String , enumValue . FITINGCODE ) ;
db . AddInParameter ( cmdInsert , "@FITINGNAME" , DbType . String , enumValue . FITINGNAME ) ;
db . AddInParameter ( cmdInsert , "@MODEL" , DbType . String , enumValue . MODEL ) ;
db . AddInParameter ( cmdInsert , "@PKGS" , DbType . Decimal , enumValue . PKGS ) ;
db . AddInParameter ( cmdInsert , "@CTNGID" , DbType . String , CTNGID ) ;
db . ExecuteNonQuery ( cmdInsert , tran ) ;
}
}
tran . Commit ( ) ;
}
catch ( Exception E )
{
tran . Rollback ( ) ;
result . Success = false ;
result . Message = "保存出现错误,请重试或联系系统管理员" + E . Message ;
return result ;
}
}
result . Success = true ;
result . Message = "保存成功" + result . Message ;
return result ;
}
public static DBResult SaveFitingsCtnKc ( List < OpCtnTkFitingsDetail > bodyList )
{
var result = new DBResult ( ) ;
Database db = DatabaseFactory . CreateDatabase ( ) ;
using ( var conn = db . CreateConnection ( ) )
{
conn . Open ( ) ;
var tran = conn . BeginTransaction ( ) ;
try
{
var cmdInsert =
db . GetSqlStringCommand (
@ "insert into op_ctntkFiting_Ctnkc (GID,[FITINGGID],[FITINGCODE],[FITINGNAME],[MODEL]
, [ PKGS ] , [ CTNGID ] )
values ( @GID , @FITINGGID , @FITINGCODE , @FITINGNAME , @MODEL
, @PKGS , @CTNGID ) ");
var cmdUpdate =
db . GetSqlStringCommand (
@ "update op_ctntkFiting_Ctnkc set FITINGGID=@FITINGGID,FITINGCODE=@FITINGCODE,FITINGNAME=@FITINGNAME,MODEL=@MODEL,
PKGS = @PKGS where GID = @GID ");
var cmdDelete =
db . GetSqlStringCommand (
@"delete from op_ctntkFiting_Ctnkc WHERE CTNGID=@CTNGID AND FITINGGID=@FITINGGID " ) ;
if ( bodyList ! = null )
{
foreach ( var enumValue in bodyList )
{
if ( enumValue . PKGS = = 0 )
{
cmdDelete . Parameters . Clear ( ) ;
db . AddInParameter ( cmdDelete , "@CTNGID" , DbType . String , enumValue . CTNGID ) ;
db . AddInParameter ( cmdDelete , "@FITINGGID" , DbType . String , enumValue . FITINGGID ) ;
db . ExecuteNonQuery ( cmdDelete , tran ) ;
}
else
{
if ( enumValue . GID = = "*" )
{
cmdInsert . Parameters . Clear ( ) ;
db . AddInParameter ( cmdInsert , "@GID" , DbType . String , Guid . NewGuid ( ) . ToString ( ) ) ;
db . AddInParameter ( cmdInsert , "@FITINGGID" , DbType . String , enumValue . FITINGGID ) ;
db . AddInParameter ( cmdInsert , "@FITINGCODE" , DbType . String , enumValue . FITINGCODE ) ;
db . AddInParameter ( cmdInsert , "@FITINGNAME" , DbType . String , enumValue . FITINGNAME ) ;
db . AddInParameter ( cmdInsert , "@MODEL" , DbType . String , enumValue . MODEL ) ;
db . AddInParameter ( cmdInsert , "@PKGS" , DbType . Decimal , enumValue . PKGS ) ;
db . AddInParameter ( cmdInsert , "@CTNGID" , DbType . String , enumValue . CTNGID ) ;
db . ExecuteNonQuery ( cmdInsert , tran ) ;
}
else
{
cmdUpdate . Parameters . Clear ( ) ;
db . AddInParameter ( cmdUpdate , "@GID" , DbType . String , enumValue . GID ) ;
db . AddInParameter ( cmdUpdate , "@FITINGGID" , DbType . String , enumValue . FITINGGID ) ;
db . AddInParameter ( cmdUpdate , "@FITINGCODE" , DbType . String , enumValue . FITINGCODE ) ;
db . AddInParameter ( cmdUpdate , "@FITINGNAME" , DbType . String , enumValue . FITINGNAME ) ;
db . AddInParameter ( cmdUpdate , "@MODEL" , DbType . String , enumValue . MODEL ) ;
db . AddInParameter ( cmdUpdate , "@PKGS" , DbType . Decimal , enumValue . PKGS ) ;
db . ExecuteNonQuery ( cmdUpdate , tran ) ;
}
}
}
}
tran . Commit ( ) ;
}
catch ( Exception E )
{
tran . Rollback ( ) ;
result . Success = false ;
result . Message = "保存出现错误,请重试或联系系统管理员" + E . Message ;
return result ;
}
}
result . Success = true ;
result . Message = "保存成功" + result . Message ;
return result ;
}
static public List < OpCtnTkFitingsDetail > GetFitingsCtnKcList ( string strCondition , string sort = null )
{
var strSql = new StringBuilder ( ) ;
strSql . Append ( "SELECT F.GID,F.[FITINGGID],F.[FITINGCODE],F.[FITINGNAME],F.[MODEL]" ) ;
strSql . Append ( ",F.[PKGS],F.[CTNGID]" ) ;
strSql . Append ( ",(F.FITINGNAME+'-'+F.MODEL) as FITINGFULL,C.CTNNO" ) ;
strSql . Append ( " from op_ctntkFiting_Ctnkc F left join code_ctntk c on (c.GID=F.CTNGID)" ) ;
if ( ! string . IsNullOrEmpty ( strCondition ) )
{
strSql . Append ( " where " + strCondition ) ;
}
var sortstring = DatasetSort . Getsortstring ( sort ) ;
if ( ! string . IsNullOrEmpty ( sortstring ) )
{
strSql . Append ( " order by " + sortstring ) ;
}
else
{
strSql . Append ( " order by CTNGID,FITINGNAME " ) ;
}
return SetFitingsCtnKcData ( strSql ) ;
}
static public List < OpCtnTkFitingsDetail > GetFitingsCtnKcSumList ( string strCondition , string sort = null )
{
var strSql = new StringBuilder ( ) ;
strSql . Append ( "SELECT '' GID,F.[FITINGGID],F.[FITINGCODE],F.[FITINGNAME],F.[MODEL]" ) ;
strSql . Append ( ",SUM(F.[PKGS]) PKGS, '' CTNGID" ) ;
strSql . Append ( ",(F.FITINGNAME+'-'+F.MODEL) as FITINGFULL,'' CTNNO" ) ;
strSql . Append ( " from op_ctntkFiting_Ctnkc F left join code_ctntk c on (c.GID=F.CTNGID) " ) ;
if ( ! string . IsNullOrEmpty ( strCondition ) )
{
strSql . Append ( " where " + strCondition ) ;
}
strSql . Append ( " GROUP BY F.[FITINGGID],F.[FITINGCODE],F.[FITINGNAME],F.[MODEL] " ) ;
var sortstring = DatasetSort . Getsortstring ( sort ) ;
if ( ! string . IsNullOrEmpty ( sortstring ) )
{
strSql . Append ( " order by " + sortstring ) ;
}
else
{
strSql . Append ( " order by FITINGNAME " ) ;
}
return SetFitingsCtnKcData ( strSql ) ;
}
static public OpCtnTkFitingsDetail GetFitingsCtnKc ( string strCondition , string sort = null )
{
var strSql = new StringBuilder ( ) ;
strSql . Append ( "SELECT F.GID,F.[FITINGGID],F.[FITINGCODE],F.[FITINGNAME],F.[MODEL]" ) ;
strSql . Append ( ",F.[PKGS],F.[CTNGID]" ) ;
strSql . Append ( ",(F.FITINGNAME+'-'+F.MODEL) as FITINGFULL,C.CTNNO" ) ;
strSql . Append ( " from op_ctntkFiting_Ctnkc F left join code_ctntk c on (c.GID=F.CTNGID)" ) ;
if ( ! string . IsNullOrEmpty ( strCondition ) )
{
strSql . Append ( " where " + strCondition ) ;
}
var list = SetFitingsCtnKcData ( strSql ) ;
if ( list . Count > 0 )
return list [ 0 ] ;
return new OpCtnTkFitingsDetail ( ) ;
}
static public string GetFitingsCtnKcListStr ( string strCondition , string sort = null )
{
var strSql = new StringBuilder ( ) ;
strSql . Append ( "SELECT F.GID,F.[FITINGGID],F.[FITINGCODE],F.[FITINGNAME],F.[MODEL]" ) ;
strSql . Append ( ",F.[PKGS],F.[CTNGID]" ) ;
strSql . Append ( ",(F.FITINGNAME+'-'+F.MODEL) as FITINGFULL,C.CTNNO" ) ;
strSql . Append ( " from op_ctntkFiting_Ctnkc F left join code_ctntk c on (c.GID=F.CTNGID)" ) ;
if ( ! string . IsNullOrEmpty ( strCondition ) )
{
strSql . Append ( " where " + strCondition ) ;
}
var sortstring = DatasetSort . Getsortstring ( sort ) ;
if ( ! string . IsNullOrEmpty ( sortstring ) )
{
strSql . Append ( " order by " + sortstring ) ;
}
else
{
strSql . Append ( " order by CTNGID,FITINGNAME " ) ;
}
return strSql . ToString ( ) ;
}
private static List < OpCtnTkFitingsDetail > SetFitingsCtnKcData ( StringBuilder strSql )
{
var headList = new List < OpCtnTkFitingsDetail > ( ) ;
Database db = DatabaseFactory . CreateDatabase ( ) ;
using ( IDataReader reader = db . ExecuteReader ( CommandType . Text , strSql . ToString ( ) ) )
{
while ( reader . Read ( ) )
{
OpCtnTkFitingsDetail data = new OpCtnTkFitingsDetail ( ) ;
#region Set DB data to Object
data . GID = Convert . ToString ( reader [ "GID" ] ) ;
data . FITINGGID = Convert . ToString ( reader [ "FITINGGID" ] ) ;
data . FITINGCODE = Convert . ToString ( reader [ "FITINGCODE" ] ) ;
data . FITINGNAME = Convert . ToString ( reader [ "FITINGNAME" ] ) ;
data . FITINGFULL = Convert . ToString ( reader [ "FITINGFULL" ] ) ;
data . CTNGID = Convert . ToString ( reader [ "CTNGID" ] ) ;
data . CTNNO = Convert . ToString ( reader [ "CTNNO" ] ) ;
data . MODEL = Convert . ToString ( reader [ "MODEL" ] ) ;
if ( reader [ "PKGS" ] ! = DBNull . Value )
data . PKGS = Convert . ToDecimal ( reader [ "PKGS" ] ) ;
# endregion
headList . Add ( data ) ;
}
reader . Close ( ) ;
}
return headList ;
}
static public List < OpCtnTkFitingsDetail > GetFitingsBsCardCtnKcList ( string strCondition , string sort = null )
{
var strSql = new StringBuilder ( ) ;
strSql . Append ( "SELECT F.GID,F.[FITINGGID],F.[FITINGCODE],F.[FITINGNAME],F.[MODEL]" ) ;
strSql . Append ( ",F.[PKGS],F.[CTNGID]" ) ;
strSql . Append ( ",(F.FITINGNAME+'-'+F.MODEL) as FITINGFULL,B.CTNNO" ) ;
strSql . Append ( ",B.GID LINKGID,F.[CTNGID]" ) ;
strSql . Append ( ",D.PKGS MPKGS,D.YARD,D.WMSTYPE,D.OPDATE,D.OPSTATUS,D.GID BODYGID " ) ;
strSql . Append ( " from op_ctntkFiting_Ctnkc F left join op_ctnbscard B on (B.CTNGID=F.CTNGID)" ) ;
strSql . Append ( " left join op_ctntkFiting_body D on (D.LINKGID=B.GID AND F.FITINGGID=D.FITINGGID)" ) ;
if ( ! string . IsNullOrEmpty ( strCondition ) )
{
strSql . Append ( " where " + strCondition ) ;
}
var sortstring = DatasetSort . Getsortstring ( sort ) ;
if ( ! string . IsNullOrEmpty ( sortstring ) )
{
strSql . Append ( " order by " + sortstring ) ;
}
else
{
strSql . Append ( " order by F.CTNGID,F.FITINGNAME " ) ;
}
return SetFitingsBsCardCtnKcData ( strSql ) ;
}
static public string GetFitingsBsCardCtnKcListStr ( string strCondition , string sort = null )
{
var strSql = new StringBuilder ( ) ;
strSql . Append ( "SELECT F.GID,F.[FITINGGID],F.[FITINGCODE],F.[FITINGNAME],F.[MODEL]" ) ;
strSql . Append ( ",F.[PKGS],F.[CTNGID]" ) ;
strSql . Append ( ",(F.FITINGNAME+'-'+F.MODEL) as FITINGFULL,B.CTNNO" ) ;
strSql . Append ( ",B.GID LINKGID,F.[CTNGID]" ) ;
strSql . Append ( ",D.PKGS MPKGS,D.YARD,D.WMSTYPE,D.OPDATE,D.OPSTATUS,D.GID BODYGID " ) ;
strSql . Append ( " from op_ctntkFiting_Ctnkc F left join op_ctnbscard B on (B.CTNGID=F.CTNGID)" ) ;
strSql . Append ( " left join op_ctntkFiting_body D on (D.LINKGID=B.GID AND F.FITINGGID=D.FITINGGID)" ) ;
if ( ! string . IsNullOrEmpty ( strCondition ) )
{
strSql . Append ( " where " + strCondition ) ;
}
var sortstring = DatasetSort . Getsortstring ( sort ) ;
if ( ! string . IsNullOrEmpty ( sortstring ) )
{
strSql . Append ( " order by " + sortstring ) ;
}
else
{
strSql . Append ( " order by F.CTNGID,F.FITINGNAME " ) ;
}
return strSql . ToString ( ) ;
}
private static List < OpCtnTkFitingsDetail > SetFitingsBsCardCtnKcData ( StringBuilder strSql )
{
var headList = new List < OpCtnTkFitingsDetail > ( ) ;
Database db = DatabaseFactory . CreateDatabase ( ) ;
using ( IDataReader reader = db . ExecuteReader ( CommandType . Text , strSql . ToString ( ) ) )
{
while ( reader . Read ( ) )
{
OpCtnTkFitingsDetail data = new OpCtnTkFitingsDetail ( ) ;
#region Set DB data to Object
data . GID = Convert . ToString ( reader [ "GID" ] ) ;
data . FITINGGID = Convert . ToString ( reader [ "FITINGGID" ] ) ;
data . FITINGCODE = Convert . ToString ( reader [ "FITINGCODE" ] ) ;
data . FITINGNAME = Convert . ToString ( reader [ "FITINGNAME" ] ) ;
data . FITINGFULL = Convert . ToString ( reader [ "FITINGFULL" ] ) ;
data . CTNGID = Convert . ToString ( reader [ "CTNGID" ] ) ;
data . CTNNO = Convert . ToString ( reader [ "CTNNO" ] ) ;
data . MODEL = Convert . ToString ( reader [ "MODEL" ] ) ;
if ( reader [ "PKGS" ] ! = DBNull . Value )
data . PKGS = Convert . ToDecimal ( reader [ "PKGS" ] ) ;
if ( reader [ "MPKGS" ] ! = DBNull . Value )
data . NPKGS = Convert . ToDecimal ( reader [ "MPKGS" ] ) ;
data . WMSTYPE = Convert . ToString ( reader [ "WMSTYPE" ] ) ;
if ( reader [ "OPDATE" ] ! = DBNull . Value )
data . OPDATE = Convert . ToDateTime ( reader [ "OPDATE" ] ) . ToString ( "yyyy-MM-dd" ) ;
data . YARD = Convert . ToString ( reader [ "YARD" ] ) ;
data . BODYGID = Convert . ToString ( reader [ "BODYGID" ] ) ;
data . LINKGID = Convert . ToString ( reader [ "LINKGID" ] ) ;
data . OPSTATUS = Convert . ToString ( reader [ "OPSTATUS" ] ) ;
# endregion
headList . Add ( data ) ;
}
reader . Close ( ) ;
}
return headList ;
}
public static DBResult SaveBsCardFitingsBody ( List < OpCtnTkFitingsDetail > bodyList , string userid )
{
var result = new DBResult ( ) ;
Database db = DatabaseFactory . CreateDatabase ( ) ;
using ( var conn = db . CreateConnection ( ) )
{
conn . Open ( ) ;
var tran = conn . BeginTransaction ( ) ;
try
{
var cmdInsert =
db . GetSqlStringCommand (
@ "insert into op_ctntkFiting_body (GID,[LINKGID],[FITINGGID],[FITINGCODE],[FITINGNAME],[MODEL]
, [ PKGS ] , [ REMARK ] , [ CREATEUSER ] , [ CREATETIME ] , [ MODIFIEDUSER ] , [ MODIFIEDTIME ] , WMSTYPE , OPDATE , YARD , OPSTATUS )
values ( @GID , @LINKGID , @FITINGGID , @FITINGCODE , @FITINGNAME , @MODEL
, @PKGS , @REMARK , @CREATEUSER , @CREATETIME , @MODIFIEDUSER , @MODIFIEDTIME , @WMSTYPE , @OPDATE , @YARD , @OPSTATUS ) ");
var cmdUpdate =
db . GetSqlStringCommand (
@ "update op_ctntkFiting_body set FITINGGID=@FITINGGID,FITINGCODE=@FITINGCODE,FITINGNAME=@FITINGNAME,MODEL=@MODEL,
PKGS = @PKGS , REMARK = @REMARK , MODIFIEDUSER = @MODIFIEDUSER , MODIFIEDTIME = @MODIFIEDTIME , WMSTYPE = @WMSTYPE , OPDATE = @OPDATE ,
YARD = @YARD where GID = @GID ");
var cmdDelete =
db . GetSqlStringCommand (
@"delete from op_ctntkFiting_body WHERE CTNGID=@CTNGID " ) ;
if ( bodyList ! = null )
{
foreach ( var enumValue in bodyList )
{
if ( enumValue . NPKGS ! = 0 )
{
if ( string . IsNullOrEmpty ( enumValue . BODYGID ) )
{
cmdInsert . Parameters . Clear ( ) ;
db . AddInParameter ( cmdInsert , "@GID" , DbType . String , Guid . NewGuid ( ) . ToString ( ) ) ;
db . AddInParameter ( cmdInsert , "@LINKGID" , DbType . String , enumValue . LINKGID ) ;
db . AddInParameter ( cmdInsert , "@FITINGGID" , DbType . String , enumValue . FITINGGID ) ;
db . AddInParameter ( cmdInsert , "@FITINGCODE" , DbType . String , enumValue . FITINGCODE ) ;
db . AddInParameter ( cmdInsert , "@FITINGNAME" , DbType . String , enumValue . FITINGNAME ) ;
db . AddInParameter ( cmdInsert , "@MODEL" , DbType . String , enumValue . MODEL ) ;
db . AddInParameter ( cmdInsert , "@PKGS" , DbType . Decimal , enumValue . NPKGS ) ;
db . AddInParameter ( cmdInsert , "@REMARK" , DbType . String , enumValue . REMARK ) ;
db . AddInParameter ( cmdInsert , "@CREATEUSER" , DbType . String , userid ) ;
db . AddInParameter ( cmdInsert , "@CREATETIME" , DbType . String , DateTime . Now . ToString ( "yyyy-MM-dd HH:mm:ss" ) ) ;
db . AddInParameter ( cmdInsert , "@MODIFIEDUSER" , DbType . String , userid ) ;
db . AddInParameter ( cmdInsert , "@MODIFIEDTIME" , DbType . String , DateTime . Now . ToString ( "yyyy-MM-dd HH:mm:ss" ) ) ;
db . AddInParameter ( cmdInsert , "@WMSTYPE" , DbType . String , enumValue . WMSTYPE ) ;
db . AddInParameter ( cmdInsert , "@OPDATE" , DbType . String , enumValue . OPDATE ) ;
db . AddInParameter ( cmdInsert , "@YARD" , DbType . String , enumValue . YARD ) ;
db . AddInParameter ( cmdInsert , "@OPSTATUS" , DbType . String , "0" ) ;
db . ExecuteNonQuery ( cmdInsert , tran ) ;
}
else
{
cmdUpdate . Parameters . Clear ( ) ;
db . AddInParameter ( cmdUpdate , "@GID" , DbType . String , enumValue . GID ) ;
db . AddInParameter ( cmdUpdate , "@FITINGGID" , DbType . String , enumValue . FITINGGID ) ;
db . AddInParameter ( cmdUpdate , "@FITINGCODE" , DbType . String , enumValue . FITINGCODE ) ;
db . AddInParameter ( cmdUpdate , "@FITINGNAME" , DbType . String , enumValue . FITINGNAME ) ;
db . AddInParameter ( cmdUpdate , "@MODEL" , DbType . String , enumValue . MODEL ) ;
db . AddInParameter ( cmdUpdate , "@PKGS" , DbType . Decimal , enumValue . NPKGS ) ;
db . AddInParameter ( cmdUpdate , "@REMARK" , DbType . String , enumValue . REMARK ) ;
db . AddInParameter ( cmdUpdate , "@MODIFIEDUSER" , DbType . String , userid ) ;
db . AddInParameter ( cmdUpdate , "@MODIFIEDTIME" , DbType . String , DateTime . Now . ToString ( "yyyy-MM-dd HH:mm:ss" ) ) ;
db . AddInParameter ( cmdUpdate , "@WMSTYPE" , DbType . String , enumValue . WMSTYPE ) ;
db . AddInParameter ( cmdUpdate , "@OPDATE" , DbType . String , enumValue . OPDATE ) ;
db . AddInParameter ( cmdUpdate , "@YARD" , DbType . String , enumValue . YARD ) ;
db . ExecuteNonQuery ( cmdUpdate , tran ) ;
}
}
else {
//if (!string.IsNullOrEmpty(enumValue.BODYGID))
//{
// cmdDelete.Parameters.Clear();
// db.AddInParameter(cmdDelete, "@GID", DbType.String, enumValue.BODYGID);
// db.ExecuteNonQuery(cmdDelete, tran);
//}
}
}
}
tran . Commit ( ) ;
}
catch ( Exception E )
{
tran . Rollback ( ) ;
result . Success = false ;
result . Message = "保存出现错误,请重试或联系系统管理员" + E . Message ;
return result ;
}
}
result . Success = true ;
result . Message = "保存成功" + result . Message ;
return result ;
}
public static DBResult AuditBsCardFitingsBody ( List < OpCtnTkFitingsDetail > bodyList , string userid )
{
var result = new DBResult ( ) ;
var CtnKcList = new List < OpCtnTkFitingsDetail > ( ) ;
Database db = DatabaseFactory . CreateDatabase ( ) ;
using ( var conn = db . CreateConnection ( ) )
{
conn . Open ( ) ;
var tran = conn . BeginTransaction ( ) ;
try
{
var cmdInsert =
db . GetSqlStringCommand (
@ "insert into op_ctntkFiting_body (GID,[LINKGID],[FITINGGID],[FITINGCODE],[FITINGNAME],[MODEL]
, [ PKGS ] , [ REMARK ] , [ CREATEUSER ] , [ CREATETIME ] , [ MODIFIEDUSER ] , [ MODIFIEDTIME ] , WMSTYPE , OPDATE , YARD , OPSTATUS )
values ( @GID , @LINKGID , @FITINGGID , @FITINGCODE , @FITINGNAME , @MODEL
, @PKGS , @REMARK , @CREATEUSER , @CREATETIME , @MODIFIEDUSER , @MODIFIEDTIME , @WMSTYPE , @OPDATE , @YARD , @OPSTATUS ) ");
var cmdUpdate =
db . GetSqlStringCommand (
@ "update op_ctntkFiting_body set FITINGGID=@FITINGGID,FITINGCODE=@FITINGCODE,FITINGNAME=@FITINGNAME,MODEL=@MODEL,
PKGS = @PKGS , REMARK = @REMARK , MODIFIEDUSER = @MODIFIEDUSER , MODIFIEDTIME = @MODIFIEDTIME , WMSTYPE = @WMSTYPE , OPDATE = @OPDATE ,
YARD = @YARD , OPSTATUS = @OPSTATUS where GID = @GID ");
var cmdDelete =
db . GetSqlStringCommand (
@"delete from op_ctntkFiting_body WHERE CTNGID=@CTNGID " ) ;
var cmdInsertDetail =
db . GetSqlStringCommand (
@ "insert into op_ctntkFiting_detail (GID,[LINKGID],[FITINGGID],[FITINGCODE],[FITINGNAME],[CTNGID],[CTNNO],[MODEL]
, [ WMSTYPE ] , [ OPDATE ] , [ YARD ] , [ PKGS ] , [ NPKGS ] , [ REMARK ] , [ CREATEUSER ] , [ CREATETIME ] , [ MODIFIEDUSER ] , [ MODIFIEDTIME ] , DSTATUS )
values ( @GID , @LINKGID , @FITINGGID , @FITINGCODE , @FITINGNAME , @CTNGID , @CTNNO , @MODEL
, @WMSTYPE , @OPDATE , @YARD , @PKGS , @NPKGS , @REMARK , @CREATEUSER , @CREATETIME , @MODIFIEDUSER , @MODIFIEDTIME , @DSTATUS ) ");
if ( bodyList ! = null )
{
foreach ( var enumValue in bodyList )
{
if ( enumValue . NPKGS ! = 0 )
{
if ( string . IsNullOrEmpty ( enumValue . BODYGID ) )
{
cmdInsert . Parameters . Clear ( ) ;
db . AddInParameter ( cmdInsert , "@GID" , DbType . String , Guid . NewGuid ( ) . ToString ( ) ) ;
db . AddInParameter ( cmdInsert , "@LINKGID" , DbType . String , enumValue . LINKGID ) ;
db . AddInParameter ( cmdInsert , "@FITINGGID" , DbType . String , enumValue . FITINGGID ) ;
db . AddInParameter ( cmdInsert , "@FITINGCODE" , DbType . String , enumValue . FITINGCODE ) ;
db . AddInParameter ( cmdInsert , "@FITINGNAME" , DbType . String , enumValue . FITINGNAME ) ;
db . AddInParameter ( cmdInsert , "@MODEL" , DbType . String , enumValue . MODEL ) ;
db . AddInParameter ( cmdInsert , "@PKGS" , DbType . Decimal , enumValue . NPKGS ) ;
db . AddInParameter ( cmdInsert , "@REMARK" , DbType . String , enumValue . REMARK ) ;
db . AddInParameter ( cmdInsert , "@CREATEUSER" , DbType . String , userid ) ;
db . AddInParameter ( cmdInsert , "@CREATETIME" , DbType . String , DateTime . Now . ToString ( "yyyy-MM-dd HH:mm:ss" ) ) ;
db . AddInParameter ( cmdInsert , "@MODIFIEDUSER" , DbType . String , userid ) ;
db . AddInParameter ( cmdInsert , "@MODIFIEDTIME" , DbType . String , DateTime . Now . ToString ( "yyyy-MM-dd HH:mm:ss" ) ) ;
db . AddInParameter ( cmdInsert , "@WMSTYPE" , DbType . String , enumValue . WMSTYPE ) ;
db . AddInParameter ( cmdInsert , "@OPDATE" , DbType . String , enumValue . OPDATE ) ;
db . AddInParameter ( cmdInsert , "@YARD" , DbType . String , enumValue . YARD ) ;
db . AddInParameter ( cmdInsert , "@OPSTATUS" , DbType . String , "1" ) ;
db . ExecuteNonQuery ( cmdInsert , tran ) ;
}
else
{
cmdUpdate . Parameters . Clear ( ) ;
db . AddInParameter ( cmdUpdate , "@GID" , DbType . String , enumValue . GID ) ;
db . AddInParameter ( cmdUpdate , "@FITINGGID" , DbType . String , enumValue . FITINGGID ) ;
db . AddInParameter ( cmdUpdate , "@FITINGCODE" , DbType . String , enumValue . FITINGCODE ) ;
db . AddInParameter ( cmdUpdate , "@FITINGNAME" , DbType . String , enumValue . FITINGNAME ) ;
db . AddInParameter ( cmdUpdate , "@MODEL" , DbType . String , enumValue . MODEL ) ;
db . AddInParameter ( cmdUpdate , "@PKGS" , DbType . Decimal , enumValue . NPKGS ) ;
db . AddInParameter ( cmdUpdate , "@REMARK" , DbType . String , enumValue . REMARK ) ;
db . AddInParameter ( cmdUpdate , "@MODIFIEDUSER" , DbType . String , userid ) ;
db . AddInParameter ( cmdUpdate , "@MODIFIEDTIME" , DbType . String , DateTime . Now . ToString ( "yyyy-MM-dd HH:mm:ss" ) ) ;
db . AddInParameter ( cmdUpdate , "@WMSTYPE" , DbType . String , enumValue . WMSTYPE ) ;
db . AddInParameter ( cmdUpdate , "@OPDATE" , DbType . String , enumValue . OPDATE ) ;
db . AddInParameter ( cmdUpdate , "@YARD" , DbType . String , enumValue . YARD ) ;
db . AddInParameter ( cmdUpdate , "@OPSTATUS" , DbType . String , "1" ) ;
db . ExecuteNonQuery ( cmdUpdate , tran ) ;
}
cmdInsertDetail . Parameters . Clear ( ) ;
db . AddInParameter ( cmdInsertDetail , "@GID" , DbType . String , Guid . NewGuid ( ) . ToString ( ) ) ;
db . AddInParameter ( cmdInsertDetail , "@LINKGID" , DbType . String , enumValue . LINKGID ) ;
db . AddInParameter ( cmdInsertDetail , "@FITINGGID" , DbType . String , enumValue . FITINGGID ) ;
db . AddInParameter ( cmdInsertDetail , "@FITINGCODE" , DbType . String , enumValue . FITINGCODE ) ;
db . AddInParameter ( cmdInsertDetail , "@FITINGNAME" , DbType . String , enumValue . FITINGNAME ) ;
db . AddInParameter ( cmdInsertDetail , "@CTNGID" , DbType . String , enumValue . CTNGID ) ;
db . AddInParameter ( cmdInsertDetail , "@CTNNO" , DbType . String , enumValue . CTNNO ) ;
db . AddInParameter ( cmdInsertDetail , "@MODEL" , DbType . String , enumValue . MODEL ) ;
db . AddInParameter ( cmdInsertDetail , "@WMSTYPE" , DbType . String , enumValue . WMSTYPE ) ;
db . AddInParameter ( cmdInsertDetail , "@OPDATE" , DbType . String , enumValue . OPDATE ) ;
db . AddInParameter ( cmdInsertDetail , "@YARD" , DbType . String , enumValue . YARD ) ;
if ( enumValue . WMSTYPE = = "拆" )
db . AddInParameter ( cmdInsertDetail , "@PKGS" , DbType . Decimal , enumValue . NPKGS ) ;
else if ( enumValue . WMSTYPE = = "装" )
db . AddInParameter ( cmdInsertDetail , "@PKGS" , DbType . Decimal , - enumValue . NPKGS ) ;
else if ( enumValue . WMSTYPE = = "损坏" )
db . AddInParameter ( cmdInsertDetail , "@PKGS" , DbType . Decimal , 0 ) ;
db . AddInParameter ( cmdInsertDetail , "@NPKGS" , DbType . Decimal , enumValue . NPKGS ) ;
db . AddInParameter ( cmdInsertDetail , "@REMARK" , DbType . String , enumValue . REMARK ) ;
db . AddInParameter ( cmdInsertDetail , "@CREATEUSER" , DbType . String , userid ) ;
db . AddInParameter ( cmdInsertDetail , "@CREATETIME" , DbType . String , DateTime . Now . ToString ( "yyyy-MM-dd HH:mm:ss" ) ) ;
db . AddInParameter ( cmdInsertDetail , "@MODIFIEDUSER" , DbType . String , userid ) ;
db . AddInParameter ( cmdInsertDetail , "@MODIFIEDTIME" , DbType . String , DateTime . Now . ToString ( "yyyy-MM-dd HH:mm:ss" ) ) ;
if ( enumValue . WMSTYPE = = "损坏" )
db . AddInParameter ( cmdInsertDetail , "@DSTATUS" , DbType . String , "提交审核" ) ;
else
db . AddInParameter ( cmdInsertDetail , "@DSTATUS" , DbType . String , "" ) ;
db . ExecuteNonQuery ( cmdInsertDetail , tran ) ;
if ( enumValue . WMSTYPE ! = "损坏" )
{
var ctnkc = GetFitingsCtnKc ( "F.CTNGID='" + enumValue . CTNGID + "' AND F.FITINGGID='" + enumValue . FITINGGID + "'" ) ;
if ( ctnkc ! = null & & ! string . IsNullOrEmpty ( ctnkc . FITINGGID ) )
{
if ( enumValue . WMSTYPE = = "拆" )
ctnkc . PKGS = ctnkc . PKGS - enumValue . NPKGS ;
else if ( enumValue . WMSTYPE = = "装" )
ctnkc . PKGS = ctnkc . PKGS + enumValue . NPKGS ;
//else if (enumValue.WMSTYPE == "损坏")
// ctnkc.PKGS = ctnkc.PKGS - enumValue.NPKGS;
CtnKcList . Add ( ctnkc ) ;
}
else
{
var newctnck = new OpCtnTkFitingsDetail ( ) ;
newctnck . GID = "*" ;
newctnck . CTNGID = enumValue . CTNGID ;
newctnck . FITINGCODE = enumValue . FITINGCODE ;
newctnck . FITINGGID = enumValue . FITINGGID ;
newctnck . FITINGNAME = enumValue . FITINGNAME ;
newctnck . MODEL = enumValue . MODEL ;
if ( enumValue . WMSTYPE = = "拆" )
newctnck . PKGS = - enumValue . NPKGS ;
else if ( enumValue . WMSTYPE = = "装" )
newctnck . PKGS = enumValue . NPKGS ;
//else if (enumValue.WMSTYPE == "损坏")
// newctnck.PKGS = -enumValue.NPKGS;
CtnKcList . Add ( newctnck ) ;
}
}
}
else
{
//if (!string.IsNullOrEmpty(enumValue.BODYGID))
//{
// cmdDelete.Parameters.Clear();
// db.AddInParameter(cmdDelete, "@GID", DbType.String, enumValue.BODYGID);
// db.ExecuteNonQuery(cmdDelete, tran);
//}
}
}
}
tran . Commit ( ) ;
if ( CtnKcList . Count ! = 0 )
SaveFitingsCtnKc ( CtnKcList ) ;
}
catch ( Exception E )
{
tran . Rollback ( ) ;
result . Success = false ;
result . Message = "保存出现错误,请重试或联系系统管理员" + E . Message ;
return result ;
}
}
result . Success = true ;
result . Message = "保存成功" + result . Message ;
return result ;
}
public static DBResult AuditFitingsDetail ( List < OpCtnTkFitingsDetail > bodyList , string userid )
{
var result = new DBResult ( ) ;
var CtnKcList = new List < OpCtnTkFitingsDetail > ( ) ;
Database db = DatabaseFactory . CreateDatabase ( ) ;
using ( var conn = db . CreateConnection ( ) )
{
conn . Open ( ) ;
var tran = conn . BeginTransaction ( ) ;
try
{
var cmdUpdate =
db . GetSqlStringCommand (
@"update op_ctntkFiting_detail set DSTATUS=@DSTATUS,AUDITUSER=@AUDITUSER,AUDITTIME=@AUDITTIME where GID=@GID " ) ;
var cmdDelete =
db . GetSqlStringCommand (
@"delete from op_ctntkFiting_body WHERE CTNGID=@CTNGID " ) ;
var cmdInsertDetail =
db . GetSqlStringCommand (
@ "insert into op_ctntkFiting_detail (GID,[LINKGID],[FITINGGID],[FITINGCODE],[FITINGNAME],[CTNGID],[CTNNO],[MODEL]
, [ WMSTYPE ] , [ OPDATE ] , [ YARD ] , [ PKGS ] , [ NPKGS ] , [ REMARK ] , [ CREATEUSER ] , [ CREATETIME ] , [ MODIFIEDUSER ] , [ MODIFIEDTIME ] , DSTATUS )
values ( @GID , @LINKGID , @FITINGGID , @FITINGCODE , @FITINGNAME , @CTNGID , @CTNNO , @MODEL
, @WMSTYPE , @OPDATE , @YARD , @PKGS , @NPKGS , @REMARK , @CREATEUSER , @CREATETIME , @MODIFIEDUSER , @MODIFIEDTIME , @DSTATUS ) ");
if ( bodyList ! = null )
{
foreach ( var enumValue in bodyList )
{
cmdUpdate . Parameters . Clear ( ) ;
db . AddInParameter ( cmdUpdate , "@GID" , DbType . String , enumValue . GID ) ;
db . AddInParameter ( cmdUpdate , "@AUDITUSER" , DbType . String , userid ) ;
db . AddInParameter ( cmdUpdate , "@AUDITTIME" , DbType . String , DateTime . Now . ToString ( "yyyy-MM-dd HH:mm:ss" ) ) ;
db . AddInParameter ( cmdUpdate , "@DSTATUS" , DbType . String , "审核通过" ) ;
db . ExecuteNonQuery ( cmdUpdate , tran ) ;
var ctnkc = GetFitingsCtnKc ( "F.CTNGID='" + enumValue . CTNGID + "' AND F.FITINGGID='" + enumValue . FITINGGID + "'" ) ;
if ( ctnkc ! = null & & ! string . IsNullOrEmpty ( ctnkc . FITINGGID ) )
{
if ( enumValue . WMSTYPE = = "损坏" )
ctnkc . PKGS = ctnkc . PKGS - enumValue . NPKGS ;
CtnKcList . Add ( ctnkc ) ;
}
else
{
var newctnck = new OpCtnTkFitingsDetail ( ) ;
newctnck . GID = "*" ;
newctnck . CTNGID = enumValue . CTNGID ;
newctnck . FITINGCODE = enumValue . FITINGCODE ;
newctnck . FITINGGID = enumValue . FITINGGID ;
newctnck . FITINGNAME = enumValue . FITINGNAME ;
newctnck . MODEL = enumValue . MODEL ;
if ( enumValue . WMSTYPE = = "损坏" )
newctnck . PKGS = - enumValue . NPKGS ;
CtnKcList . Add ( newctnck ) ;
}
}
}
tran . Commit ( ) ;
if ( CtnKcList . Count ! = 0 )
SaveFitingsCtnKc ( CtnKcList ) ;
}
catch ( Exception E )
{
tran . Rollback ( ) ;
result . Success = false ;
result . Message = "保存出现错误,请重试或联系系统管理员" + E . Message ;
return result ;
}
}
result . Success = true ;
result . Message = "保存成功" + result . Message ;
return result ;
}
# endregion
}
}