You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1227 lines
46 KiB
1227 lines
46 KiB
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Configuration;
|
|
using System.Data;
|
|
using System.IO;
|
|
using Newtonsoft.Json;
|
|
|
|
namespace ICS.WCF.Base
|
|
{
|
|
public class Appconfig
|
|
{
|
|
public static string GetU9ConnStr()
|
|
{
|
|
return ConfigurationManager.AppSettings["MainConnectionString"].ToString();
|
|
}
|
|
public static string GetMESStr()
|
|
{
|
|
return ConfigurationManager.AppSettings["MESConnectionString"].ToString();
|
|
}
|
|
|
|
public static string GetPLMStr()
|
|
{
|
|
return ConfigurationManager.AppSettings["PLMConnectionString"].ToString();
|
|
}
|
|
public static string GetBPMESStr()
|
|
{
|
|
return ConfigurationManager.AppSettings["SQSMESConnectionString"].ToString();
|
|
}
|
|
public static string GetBPERPStr()
|
|
{
|
|
return ConfigurationManager.AppSettings["ERPDB"].ToString();
|
|
}
|
|
//
|
|
|
|
public static DataTable GetPRDocID(string PRDocCode, int PRDocLineCode)
|
|
{
|
|
string sql = @" select A.[ID] as [PRID],
|
|
A1.[ID] as [PRLineID]
|
|
from PR_PR as A
|
|
inner join [PR_PRLine] as A1 on (A.[ID] = A1.[PR])
|
|
where A.[DocNo]='" + PRDocCode + "' and A1.[DocLineNo]='" + PRDocLineCode + "'";
|
|
DataTable dt = DBhlper.Query(sql, GetU9ConnStr());
|
|
return dt;
|
|
}
|
|
|
|
|
|
public static DataTable GetSOData(string SODocCode)
|
|
{
|
|
string sql = @" select A.IsAchievementAllotation,
|
|
A.IsFillDoc,
|
|
A.IsPriceIncludeTax,
|
|
A.IsSaleDiscount,
|
|
A.IsTransOut,
|
|
A.IsAllowBatch,
|
|
A.IsAllowTransfer,
|
|
A.IsRollBack,
|
|
A.AutoCreateSOM,
|
|
A.SOPriority,
|
|
A.DemandType
|
|
from SM_SO as A
|
|
where A.[DocNo]='" + SODocCode + "' ";
|
|
DataTable dt = DBhlper.Query(sql, GetU9ConnStr());
|
|
return dt;
|
|
}
|
|
|
|
public static int GetSOLineNum(string SODocCode)
|
|
{
|
|
string sql = @"select A1.* from SM_SO as A
|
|
left join SM_SOLine A1 on A.ID=A1.SO
|
|
where A.[DocNo]='{0}' ";
|
|
sql = string.Format(sql, SODocCode);
|
|
DataTable dt = DBhlper.Query(sql, GetU9ConnStr());
|
|
|
|
return dt.Rows.Count;
|
|
}
|
|
|
|
public static int GetSOLineData(string SODocCode, int DocLineNo)
|
|
{
|
|
string sql = @"select A1.*
|
|
from SM_SO as A
|
|
left join SM_SOLine A1 on A.ID=A1.SO
|
|
where A.[DocNo]='{0}' and A1.DocLineNo={1}";
|
|
sql = string.Format(sql, SODocCode, DocLineNo);
|
|
DataTable dt = DBhlper.Query(sql, GetU9ConnStr());
|
|
|
|
return dt.Rows.Count;
|
|
}
|
|
|
|
public static string GetSOLineID(string SODocCode, int DocLineNo,int DocShipLineNo)
|
|
{
|
|
string sql = @"select A2.ID
|
|
from SM_SO as A
|
|
left join SM_SOLine A1 on A.ID=A1.SO
|
|
left join SM_SOShipline A2 on A2.SOLine=A1.ID
|
|
where A.[DocNo]='{0}' and A1.DocLineNo={1} and A2.DocSubLineNo={2}";
|
|
sql = string.Format(sql, SODocCode, DocLineNo, DocShipLineNo);
|
|
DataTable dt = DBhlper.Query(sql, GetU9ConnStr());
|
|
|
|
if (dt == null || dt.Rows.Count == 0) return null;
|
|
else return dt.Rows[0]["id"].ToString();
|
|
}
|
|
|
|
|
|
public static string GetOrgID(string SODocCode, int DocLineNo)
|
|
{
|
|
string sql = @"select a.org ID
|
|
from SM_SO as A
|
|
left join SM_SOLine A1 on A.ID=A1.SO
|
|
where A.[DocNo]='{0}' and A1.DocLineNo={1}";
|
|
sql = string.Format(sql, SODocCode, DocLineNo);
|
|
DataTable dt = DBhlper.Query(sql, GetU9ConnStr());
|
|
|
|
if (dt == null || dt.Rows.Count == 0) return null;
|
|
else return dt.Rows[0]["id"].ToString();
|
|
}
|
|
|
|
|
|
public static string GetWhIDByCode(string WHCode, string org)
|
|
{
|
|
string sql = @"SELECT a.ID FROM CBO_Wh a
|
|
where a.Code='"+WHCode+"' AND a.Org='"+org+"' ";
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
if (dt == null || dt.Rows.Count == 0) return null;
|
|
else return dt.Rows[0]["id"].ToString();
|
|
}
|
|
|
|
|
|
|
|
|
|
public static DataTable GetItemRequestList(string LOTNO, string BIN, string ITEM, string WH, string QTY, string ORG, string ERPConStr)
|
|
{
|
|
string sql = @" SELECT
|
|
orgt.name 组织名称,
|
|
ww.iteminfo_itemcode 存货编码 ,
|
|
ww.iteminfo_itemname 存货名称 ,
|
|
wh.code 仓库编码,
|
|
wht.name 仓库名称,
|
|
ww.BinInfo_Code,
|
|
ww.LotInfo_LotCode,
|
|
isnull(SUM ( ((((ww.[StoreQty]-ww.[ResvStQty])-ww.[ResvOccupyStQty])-
|
|
CASE WHEN ((((ww.[IsProdCancel]=1) OR (ww.[MO_EntityID] !=0)) OR ww.[ProductDate] IS NOT NULL) OR (ww.[WP_EntityID] !=0))
|
|
THEN ww.[StoreQty]
|
|
ELSE CONVERT (DECIMAL (24,9),0) END)+
|
|
ww.[SupplyQtySU])-ww.[DemandQtySU] ),0)-(" + QTY + @") 可用量
|
|
FROM [dbo].InvTrans_WhQoh ww WITH (nolock)
|
|
LEFT JOIN [dbo].cbo_wh wh WITH (nolock) ON wh.id=ww.wh
|
|
LEFT JOIN [dbo].cbo_wh_trl wht WITH (nolock) ON wh.id=wht.id AND wht.sysmlflag='zh-CN'
|
|
LEFT JOIN [dbo].Base_Organization org WITH (nolock) ON org.id=wh.org
|
|
LEFT JOIN [dbo].Base_Organization_Trl orgt ON orgt.id=wh.org AND orgt.sysmlflag='zh-CN'
|
|
WHERE 1=1 and
|
|
ww.LotInfo_LotCode='" + LOTNO + @"' and ww.BinInfo_Code='" + BIN + @"' AND ww.iteminfo_itemcode='" + ITEM + "' AND org.Code='" + ORG + @"' and wh.code='" + WH + @"'
|
|
GROUP BY orgt.name,ww.iteminfo_itemcode ,ww.iteminfo_itemname,wh.code,wht.name,ww.BinInfo_Code,
|
|
ww.LotInfo_LotCode ";
|
|
|
|
|
|
DataTable dt = DBhlper.Query(sql, ERPConStr);
|
|
|
|
return dt;
|
|
}
|
|
public static string uomid(string Mark)
|
|
{
|
|
string sql = @"select a.id,code,name from Base_UOM a
|
|
left join Base_UOM_Trl b on a.ID=b.ID
|
|
where Code='" + Mark + "'";
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
if (dt == null || dt.Rows.Count == 0) return null;
|
|
else return dt.Rows[0]["id"].ToString();
|
|
}
|
|
public static string GetBysupid(string BinCode, string org)
|
|
{
|
|
string sql = @"select b.id from CBO_Supplier b where b.code='" + BinCode + "' and b.org='" + org + "'";
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
if (dt == null || dt.Rows.Count == 0) return null;
|
|
else return dt.Rows[0]["id"].ToString();
|
|
}
|
|
public static string GetByBinid(string BinCode, string org)
|
|
{
|
|
string sql = @"select b.id from CBO_Bin b where b.code='" + BinCode + "' and b.org='" + org + "'";
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
if (dt == null || dt.Rows.Count == 0) return null;
|
|
else return dt.Rows[0]["id"].ToString();
|
|
}
|
|
public static string GetWhCodeByBinid(string BinCode, string org)
|
|
{
|
|
string sql = @"select w.id from cbo_wh w
|
|
|
|
where w.code='" + BinCode + "' and w.org='" + org + "'";
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
if (dt == null || dt.Rows.Count == 0) return null;
|
|
else return dt.Rows[0]["id"].ToString();
|
|
}
|
|
public static string GetProjectid(string BinCode, string org)
|
|
{
|
|
string sql = @"select w.id from CBO_Project w
|
|
|
|
where w.code='" + BinCode + "' and w.org='" + org + "'";
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
if (dt == null || dt.Rows.Count == 0) return null;
|
|
else return dt.Rows[0]["id"].ToString();
|
|
}
|
|
public static string Getusername(string Mark)
|
|
{
|
|
string sql = @"select a.code,b.displayname from Base_User a
|
|
left join Base_User_Trl b on a.id=b.id where b.displayname='" + Mark + "'";
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
if (dt == null || dt.Rows.Count == 0) return null;
|
|
else return dt.Rows[0]["displayname"].ToString();
|
|
}
|
|
public static string GetPOID(string Mark, string line)
|
|
{
|
|
string sql = @"select b.ID from PM_PurchaseOrder a
|
|
inner join PM_POLine b on a.ID=b.PurchaseOrder
|
|
where DocNo='" + Mark + "' and DocLineNo='" + line + "'";
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
if (dt == null || dt.Rows.Count == 0) return null;
|
|
else return dt.Rows[0]["ID"].ToString();
|
|
}
|
|
public static string GetMarkid(string Mark)
|
|
{
|
|
string sql = @"select id from CBO_ItemTradeMark where trademark='" + Mark + "'";
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
if (dt == null || dt.Rows.Count == 0) return null;
|
|
else return dt.Rows[0]["id"].ToString();
|
|
}
|
|
|
|
public static string ITEMMATERID(string Mark, string org)
|
|
{
|
|
string sql = @"select ID from CBO_ItemMaster where code='" + Mark + "' and Org='" + org + "'";
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
if (dt == null || dt.Rows.Count == 0) return null;
|
|
else return dt.Rows[0]["ID"].ToString();
|
|
}
|
|
|
|
public static string GetITEMMATERID(string ItemCode, string OrgCode)
|
|
{
|
|
string sql = @"select a.ID from CBO_ItemMaster a INNER JOIN Base_Organization b ON a.Org=b.ID
|
|
where a.Code='" + ItemCode + "' AND b.Code='" + OrgCode + "'";
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
if (dt == null || dt.Rows.Count == 0) return null;
|
|
else return dt.Rows[0]["ID"].ToString();
|
|
}
|
|
|
|
public static string GetSupplierID(string Supplier, string OrgCode)
|
|
{
|
|
string sql = @"select a.ID from CBO_Supplier a
|
|
INNER JOIN Base_Organization b ON a.Org=b.ID
|
|
where a.Code='" + Supplier + "' AND b.Code='" + OrgCode + "'";
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
if (dt == null || dt.Rows.Count == 0) return null;
|
|
else return dt.Rows[0]["ID"].ToString();
|
|
}
|
|
|
|
|
|
|
|
|
|
public static string IsExistsCode(string Code, string TableName)
|
|
{
|
|
string sql = @" select id from " + TableName + @" where code='" + Code + @"' ";
|
|
DataTable dt = DBhlper.Query(sql, GetU9ConnStr());
|
|
if (dt != null && dt.Rows.Count > 0)
|
|
{
|
|
return dt.Rows[0][0].ToString();
|
|
}
|
|
return "";
|
|
}
|
|
|
|
public static DataTable GetITB(string Code)
|
|
{
|
|
string sql = @"
|
|
select a.org ORGID,oo.code ORGCode from MO_MO a
|
|
LEFT JOIN Base_organization oo ON a.ORG=oo.id
|
|
where DocNo='" + Code + @"'";
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
return dt;
|
|
}
|
|
|
|
public class ReturnSupperEntity
|
|
{
|
|
//成功的话code=2000
|
|
//失败的话code=9999
|
|
public string code;
|
|
public string supplierCode;//信息
|
|
public string msg;//信息
|
|
}
|
|
|
|
public static DataTable GetUOMCode(string UOMName)
|
|
{
|
|
string sql = @" select A5.Code from [Base_UOM] as A5
|
|
left join [Base_UOM_Trl] as A6 on (A6.SysMlFlag = 'zh-CN') and A5.ID=A6.ID
|
|
where (A6.[Name] = '" + UOMName + "')";
|
|
DataTable dt = DBhlper.Query(sql, GetU9ConnStr());
|
|
return dt;
|
|
}
|
|
|
|
public static string GetUOMCodeByID(string ID)
|
|
{
|
|
string sql = @" select A5.Code from [Base_UOM] as A5
|
|
left join [Base_UOM_Trl] as A6 on (A6.SysMlFlag = 'zh-CN') and A5.ID=A6.ID
|
|
where (A5.ID = '" + ID + "')";
|
|
DataTable dt = DBhlper.Query(sql, GetU9ConnStr());
|
|
if (dt != null && dt.Rows.Count > 0)
|
|
{
|
|
return dt.Rows[0][0].ToString();
|
|
}
|
|
else
|
|
{
|
|
return null;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
public static string GetPRSupplierCode(string PRCode)
|
|
{
|
|
string sql = @"";
|
|
DataTable dt = DBhlper.Query(sql, GetU9ConnStr());
|
|
if (dt != null && dt.Rows.Count > 0)
|
|
{
|
|
return dt.Rows[0][0].ToString();
|
|
}
|
|
else
|
|
{
|
|
return null;
|
|
}
|
|
}
|
|
|
|
public static string GetTCCodeByID(string ID)
|
|
{
|
|
string sql = @" select Code from [Base_Currency]
|
|
where (ID = '" + ID + "')";
|
|
DataTable dt = DBhlper.Query(sql, GetU9ConnStr());
|
|
if (dt != null && dt.Rows.Count > 0)
|
|
{
|
|
return dt.Rows[0][0].ToString();
|
|
}
|
|
else
|
|
{
|
|
return null;
|
|
}
|
|
}
|
|
|
|
public static string GetProjectCode(long ProID)
|
|
{
|
|
string sql = @" select Code from CBO_Project where ID='" + ProID.ToString() + "'";
|
|
DataTable dt = DBhlper.Query(sql, GetU9ConnStr());
|
|
if (dt != null && dt.Rows.Count > 0)
|
|
{
|
|
return dt.Rows[0][0].ToString();
|
|
}
|
|
return null;
|
|
}
|
|
|
|
public static string GetProjectID(string ProCode)
|
|
{
|
|
string sql = @" select ID from CBO_Project where Code='" + ProCode.ToString() + "'";
|
|
DataTable dt = DBhlper.Query(sql, GetU9ConnStr());
|
|
if (dt != null && dt.Rows.Count > 0)
|
|
{
|
|
return dt.Rows[0][0].ToString();
|
|
}
|
|
return null;
|
|
}
|
|
|
|
public static DateTime TimestampToDateTime(long timestamp)
|
|
{
|
|
DateTime dateTimeStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
|
|
long lTime = timestamp * 10000000;
|
|
TimeSpan nowTimeSpan = new TimeSpan(lTime);
|
|
DateTime resultDateTime = dateTimeStart.Add(nowTimeSpan);
|
|
return resultDateTime;
|
|
}
|
|
public static long ConvertDateTimeToInt(System.DateTime time)
|
|
{
|
|
return long.Parse((time - new DateTime(1970, 1, 1).ToLocalTime()).TotalSeconds.ToString());
|
|
}
|
|
public static string getDBTime()
|
|
{
|
|
DataTable dt = DBhlper.Query("select getdate()", Appconfig.GetU9ConnStr());
|
|
if (dt != null && dt.Rows.Count > 0)
|
|
{
|
|
return dt.Rows[0][0].ToString();
|
|
}
|
|
else
|
|
{ return null; }
|
|
}
|
|
|
|
public static DataTable getPRProject(long DocID, long DocLineID)
|
|
{
|
|
string sql = @"select A1.Project from PR_PR A
|
|
left join PR_PRLine A1 on A.ID=A1.PR
|
|
where A.ID='{0}' and A1.ID={1}";
|
|
sql = string.Format(sql, DocID, DocLineID);
|
|
DataTable d = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
if (d != null && d.Rows.Count > 0 && !string.IsNullOrEmpty(d.Rows[0][0].ToString()))
|
|
return d;
|
|
return null;
|
|
}
|
|
|
|
public static DataTable getPRProject(string DocNo, int DocLineNo)
|
|
{
|
|
string sql = @"select A1.Project from PR_PR A
|
|
left join PR_PRLine A1 on A.ID=A1.PR
|
|
where A.DocNo='{0}' and A1.DocLineNo={1}";
|
|
sql = string.Format(sql, DocNo, DocLineNo);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
if (dt != null && dt.Rows.Count > 0)
|
|
{
|
|
return dt;
|
|
}
|
|
else
|
|
{ return null; }
|
|
}
|
|
public static DataTable getPRProject11(string DocNo, int DocLineNo)
|
|
{
|
|
string sql = @"select A1.DescFlexSegments_PubDescSeg11 from PR_PR A
|
|
left join PR_PRLine A1 on A.ID=A1.PR
|
|
where A.DocNo='{0}' and A1.DocLineNo={1}";
|
|
sql = string.Format(sql, DocNo, DocLineNo);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
if (dt != null && dt.Rows.Count > 0)
|
|
{
|
|
return dt;
|
|
}
|
|
else
|
|
{ return null; }
|
|
}
|
|
public static bool setTotalMny(string DocNo, int DocLineNo)
|
|
{
|
|
try
|
|
{
|
|
string sql = @"update PM_POLine set DescFlexSegments_PrivateDescSeg15=cast((case A.DescFlexSegments_PrivateDescSeg14 when '' then 0 else A.DescFlexSegments_PrivateDescSeg14 end) as decimal(18,2) )+A.TotalMnyAC
|
|
from PM_POLine A
|
|
left join PM_PurchaseOrder A1 on A.PurchaseOrder=A1.ID
|
|
where A1.DocNo='{0}' and A.DocLineNo={1}";
|
|
sql = string.Format(sql, DocNo, DocLineNo);
|
|
DBhlper.ReaerEXecute(sql, Appconfig.GetU9ConnStr());//修改加工费合计
|
|
return true;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
return false;
|
|
}
|
|
}
|
|
|
|
|
|
public static string GetTaxSchedule(string Code)
|
|
{
|
|
try
|
|
{
|
|
string TaxRuleID = "";
|
|
string taxsql = @"select ID from CBO_TaxSchedule
|
|
where Code='{0}'";
|
|
taxsql = string.Format(taxsql, Code);
|
|
DataTable taxdt = DBhlper.Query(taxsql, Appconfig.GetU9ConnStr());
|
|
if (taxdt.Rows.Count != 0)
|
|
{
|
|
TaxRuleID = taxdt.Rows[0]["ID"].ToString();
|
|
}
|
|
else
|
|
{
|
|
throw new Exception("未获取到税组合编码:" + Code + "对应ID");
|
|
}
|
|
return TaxRuleID;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
return ex.ToString();
|
|
}
|
|
}
|
|
|
|
|
|
public static long getTaxSchedule(string Customer, string OrgID)
|
|
{
|
|
try
|
|
{
|
|
string sql = "select TaxSchedule from CBO_Customer where Code='{0}' AND Org='{1}'";
|
|
sql = string.Format(sql, Customer, OrgID);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());//查询U9客户税组合
|
|
if (dt != null && dt.Rows.Count > 0 && !string.IsNullOrEmpty(dt.Rows[0][0].ToString()))
|
|
{
|
|
return long.Parse(dt.Rows[0][0].ToString());
|
|
}
|
|
return 0;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
public static bool setPOProject(string DocNo, int DocLineNo, long project)
|
|
{
|
|
string sql = @"update PM_POLine set Project={0}
|
|
where ID=(select A.ID from PM_POLine A left join PM_PurchaseOrder A1 on A1.ID=A.PurchaseOrder where A1.DocNo='{1}' and A.DocLineNo={2})";
|
|
sql = string.Format(sql, project, DocNo, DocLineNo);
|
|
|
|
string sql1 = @"update PM_POShipLine set project={0}
|
|
where ID=(select A2.ID from PM_PurchaseOrder A
|
|
left join PM_POLine A1 on A.ID=A1.PurchaseOrder
|
|
left join PM_POShipLine A2 on A2.POLine=A1.ID
|
|
where A.DocNo='{1}' and A1.DocLineNo={2})";
|
|
sql1 = string.Format(sql1, project, DocNo, DocLineNo);
|
|
bool m = DBhlper.ReaerEXecute(sql, Appconfig.GetU9ConnStr());//修改行项目号
|
|
try
|
|
{
|
|
DBhlper.EXecute(sql1, Appconfig.GetU9ConnStr());//修改计划行项目号
|
|
}
|
|
catch { }
|
|
return m;
|
|
}
|
|
|
|
public static bool setPOShipProject(string DocNo, int DocLineNo, long project)
|
|
{
|
|
string sql = @"update PM_POShipLine set Project={0} SrcDocPRLine
|
|
where ID=(select A.ID from PM_POLine A left join PM_PurchaseOrder A1 on A1.ID=A.PurchaseOrder where A1.DocNo='{1}' and A.DocLineNo={2})";
|
|
sql = string.Format(sql, project, DocNo, DocLineNo);
|
|
int m = DBhlper.EXecute(sql, Appconfig.GetU9ConnStr());
|
|
if (m > 0) { return true; }
|
|
else { return false; }
|
|
}
|
|
|
|
public static string getOperCodeByName(string name)
|
|
{
|
|
string sql = @"select a.ID,a.Code,Name from CBO_Operators a
|
|
left join CBO_Operators_Trl b on a.ID=b.ID
|
|
left join CBO_Department c on a.Dept=c.ID
|
|
where c.code='02' and a.OperatorType=1 and name='{0}' ";//销售部人员
|
|
sql = string.Format(sql, name);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
if (dt == null || dt.Rows.Count == 0) return null;
|
|
else return dt.Rows[0]["ID"].ToString();
|
|
}
|
|
|
|
public static string getValueCodeByName(string name, long value)
|
|
{
|
|
string sql = @"select A.[ID], A.[Code], A1.[Name], A.[DependantCode] from Base_DefineValue as A
|
|
left join [Base_DefineValue_Trl] as A1 on (A1.SysMlFlag = 'zh-CN') and (A.[ID] = A1.[ID])
|
|
where (A.[ValueSetDef] = {1}) and A1.[Name]='{0}'";//销售部人员
|
|
sql = string.Format(sql, name, value);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
if (dt == null || dt.Rows.Count == 0) return null;
|
|
else return dt.Rows[0]["Code"].ToString();
|
|
}
|
|
|
|
|
|
|
|
public static void WriteLogFile_bak20191021(string input, string txtName)
|
|
{
|
|
try
|
|
{
|
|
string logAdress = ConfigurationManager.AppSettings["logAdress"].ToString();
|
|
/**/
|
|
//string filename = logAdress + "\\Log\\";
|
|
//FileInfo finfo1 = new FileInfo(filename);
|
|
|
|
//if (!finfo1.Exists)
|
|
//{
|
|
// FileStream fs;
|
|
// fs = File.Create(filename);
|
|
// fs.Close();
|
|
//}
|
|
|
|
|
|
|
|
|
|
///指定日志文件的目录
|
|
string fname = logAdress + "\\Log\\" + txtName + ".txt";
|
|
/**/
|
|
///定义文件信息对象
|
|
|
|
FileInfo finfo = new FileInfo(fname);
|
|
|
|
if (!finfo.Exists)
|
|
{
|
|
FileStream fs;
|
|
fs = File.Create(fname);
|
|
fs.Close();
|
|
finfo = new FileInfo(fname);
|
|
}
|
|
|
|
/**/
|
|
///判断文件是否存在以及是否大于2K
|
|
if (finfo.Length > 1024 * 1024 * 10)
|
|
{
|
|
/**/
|
|
///文件超过10MB则重命名
|
|
File.Move(logAdress + "\\Log\\" + txtName + ".txt", Directory.GetCurrentDirectory() + DateTime.Now.TimeOfDay + "\\Log\\" + txtName + ".txt");
|
|
/**/
|
|
///删除该文件
|
|
//finfo.Delete();
|
|
}
|
|
//finfo.AppendText();
|
|
/**/
|
|
///创建只写文件流
|
|
|
|
using (FileStream fs = finfo.OpenWrite())
|
|
{
|
|
/**/
|
|
///根据上面创建的文件流创建写数据流
|
|
StreamWriter w = new StreamWriter(fs);
|
|
|
|
/**/
|
|
///设置写数据流的起始位置为文件流的末尾
|
|
w.BaseStream.Seek(0, SeekOrigin.End);
|
|
|
|
w.Write("\n\r" + " " + "\n\r");
|
|
w.Write("\n\r" + "*****************Start*****************" + "\n\r", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
|
|
|
|
/**/
|
|
///写入当前系统时间并换行
|
|
w.Write("\n\r" + "{0}" + "\n\r", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
|
|
|
|
/**/
|
|
///写入日志内容并换行
|
|
w.Write("\n\r" + input + "\n\r");
|
|
|
|
/**/
|
|
///写入------------------------------------“并换行
|
|
w.Write("\n\r" + "------------------END------------------------" + "\n\r");
|
|
|
|
/**/
|
|
///清空缓冲区内容,并把缓冲区内容写入基础流
|
|
w.Flush();
|
|
|
|
/**/
|
|
///关闭写数据流
|
|
w.Close();
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{ throw ex; }
|
|
|
|
}
|
|
|
|
|
|
public static void WriteLogFile(string input, string txtName)
|
|
{
|
|
try
|
|
{
|
|
string logAdress = ConfigurationManager.AppSettings["logAdress"].ToString() + "\\Log\\";
|
|
if (!System.IO.Directory.Exists(logAdress))
|
|
{
|
|
System.IO.Directory.CreateDirectory(logAdress);//不存在就创建目录
|
|
}
|
|
|
|
string adress = logAdress + txtName;
|
|
if (!System.IO.Directory.Exists(adress))
|
|
{
|
|
System.IO.Directory.CreateDirectory(adress);//不存在就创建目录
|
|
}
|
|
|
|
|
|
// string logAdress = ConfigurationManager.AppSettings["logAdress"].ToString();
|
|
/**/
|
|
///指定日志文件的目录
|
|
string fname = adress + "\\" + "log" + DateTime.Now.ToString("yy-MM-dd") + ".txt";
|
|
/**/
|
|
///定义文件信息对象
|
|
|
|
FileInfo finfo = new FileInfo(fname);
|
|
|
|
if (!finfo.Exists)
|
|
{
|
|
FileStream fs;
|
|
fs = File.Create(fname);
|
|
fs.Close();
|
|
finfo = new FileInfo(fname);
|
|
}
|
|
|
|
/**/
|
|
///判断文件是否存在以及是否大于2K
|
|
if (finfo.Length > 1024 * 1024 * 10)
|
|
{
|
|
/**/
|
|
///文件超过10MB则重命名
|
|
File.Move(logAdress + "\\Log\\" + txtName + ".txt", Directory.GetCurrentDirectory() + DateTime.Now.TimeOfDay + "\\Log\\" + txtName + ".txt");
|
|
/**/
|
|
///删除该文件
|
|
//finfo.Delete();
|
|
}
|
|
//finfo.AppendText();
|
|
/**/
|
|
///创建只写文件流
|
|
|
|
using (FileStream fs = finfo.OpenWrite())
|
|
{
|
|
/**/
|
|
///根据上面创建的文件流创建写数据流
|
|
StreamWriter w = new StreamWriter(fs);
|
|
|
|
/**/
|
|
///设置写数据流的起始位置为文件流的末尾
|
|
w.BaseStream.Seek(0, SeekOrigin.End);
|
|
|
|
w.WriteLine("*****************Start*****************");
|
|
w.WriteLine(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
|
|
/**/
|
|
///写入当前系统时间并换行
|
|
|
|
/**/
|
|
///写入日志内容并换行
|
|
w.WriteLine(input);
|
|
|
|
/**/
|
|
///写入------------------------------------“并换行
|
|
w.WriteLine("------------------END------------------------");
|
|
|
|
/**/
|
|
///清空缓冲区内容,并把缓冲区内容写入基础流
|
|
w.Flush();
|
|
|
|
/**/
|
|
///关闭写数据流
|
|
w.Close();
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{ throw ex; }
|
|
|
|
}
|
|
|
|
|
|
|
|
public static string Serialize(DescData data)
|
|
{
|
|
return JsonConvert.SerializeObject(data);
|
|
}
|
|
public static DescData DeSerialize(string str)
|
|
{
|
|
return JsonConvert.DeserializeObject<DescData>(str); ;
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// 验证料号是否存在
|
|
/// </summary>
|
|
/// <param name="itemCode"></param>
|
|
/// <returns></returns>
|
|
public static int IsExistItem(string itemCode)
|
|
{
|
|
string sql = @"select count(*) from CBO_ItemMaster where code='" + itemCode + "' ";
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, GetU9ConnStr());
|
|
|
|
return dt.Rows.Count;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 验证库位是否存在
|
|
/// </summary>
|
|
/// <param name="cPos"></param>
|
|
/// <returns></returns>
|
|
public static int IsExistcPos(string BinCode)
|
|
{
|
|
string sql = @"select count(*) from CBO_Bin where code='" + BinCode + "'";
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, GetU9ConnStr());
|
|
|
|
return dt.Rows.Count;
|
|
}
|
|
/// <summary>
|
|
/// 获取仓库编码
|
|
/// </summary>
|
|
/// <param name="BinCode"></param>
|
|
/// <returns></returns>
|
|
public static string GetWhCodeByBin(string BinCode)
|
|
{
|
|
string sql = @"select w.code as Code from CBO_Bin b left join cbo_wh w on b.warehouse=w.id where b.code='" + BinCode + "'";
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
if (dt == null || dt.Rows.Count == 0) return null;
|
|
else return dt.Rows[0]["Code"].ToString();
|
|
}
|
|
/// <summary>
|
|
/// 获取单位ID
|
|
/// </summary>
|
|
/// <param name="itemCode"></param>
|
|
/// <returns></returns>
|
|
public static string GetMaterialUOM(string ItemCode)
|
|
{
|
|
string sql = @"select MaterialOutUOM from CBO_ItemMaster where code='" + ItemCode + "'";
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
if (dt == null || dt.Rows.Count == 0) return null;
|
|
else return dt.Rows[0]["MaterialOutUOM"].ToString();
|
|
}
|
|
/// <summary>
|
|
/// 获取mOPick ID
|
|
/// </summary>
|
|
/// <param name="itemCode"></param>
|
|
/// <returns></returns>
|
|
public static string GetMoPickListID(string MoCode, string ItemCode)
|
|
{
|
|
string sql = @"select top 1 id from MO_MOPickList where mo=(select top 1 id from mo_mo where docno='" + MoCode + "') and ItemMaster=(select top 1 id from CBO_ItemMaster where code='" + ItemCode + "')";
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
if (dt == null || dt.Rows.Count == 0) return null;
|
|
else return dt.Rows[0]["id"].ToString();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 根据母料获取子料集合
|
|
/// </summary>
|
|
/// <param name="MCode"></param>
|
|
/// <returns></returns>
|
|
public static DataTable GetCcodeListByMcode(string MCode)
|
|
{
|
|
string sql = @"SELECT
|
|
A.[UsageQty] AS useQty,
|
|
A3.[Code] AS ccode,
|
|
A10.Code AS WhCode,
|
|
A7.Code AS UnitCode,
|
|
A12.Code AS BinCode
|
|
FROM
|
|
CBO_BOMComponent AS A (NOLOCK)
|
|
LEFT JOIN [CBO_BOMMaster] AS A1 (NOLOCK) ON (A.[BOMMaster] = A1.[ID])
|
|
LEFT JOIN [CBO_ItemMaster] AS A2 (NOLOCK) ON (A1.[ItemMaster] = A2.[ID])
|
|
LEFT JOIN [CBO_ItemMaster] AS A3 (NOLOCK) ON (A.[ItemMaster] = A3.[ID])
|
|
LEFT JOIN [Base_UOM] AS A7 (NOLOCK) ON (A3.[CostUOM] = A7.[ID])
|
|
LEFT JOIN [CBO_InventoryInfo] AS A9 (NOLOCK) ON (A3.[InventoryInfo] = A9.[ID])
|
|
LEFT JOIN [CBO_Wh] AS A10 (NOLOCK) ON (A9.[Warehouse] = A10.[ID])
|
|
LEFT JOIN [CBO_Bin] AS A12 (NOLOCK) ON (A9.[Bin] = A12.[ID])
|
|
WHERE
|
|
1 = 1
|
|
AND IsEffective = 1
|
|
AND A2.[Code] = '" + MCode + "' ";
|
|
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
|
|
return dt;
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// 工单备料表获取-已发放数量-领料未发数量
|
|
/// </summary>
|
|
/// <param name="MCode"></param>
|
|
/// <returns></returns>
|
|
public static DataTable GetQtyBymOPickList(string MoCode, string ccode)
|
|
{
|
|
string sql = @" SELECT
|
|
C.ActualReqQty
|
|
FROM
|
|
MO_MOPickList C
|
|
LEFT JOIN MO_IssueDoc a ON A.SourceDoc_SrcDocID = C.MO
|
|
LEFT JOIN MO_IssueDocLine b ON b.IssueDoc = a.ID
|
|
LEFT JOIN MO_MO D ON D.ID = c.MO
|
|
LEFT JOIN CBO_ItemMaster e ON c.ItemMaster=e.ID
|
|
WHERE
|
|
d.DocNo = '" + MoCode + "' AND e.Code='" + ccode + "' ";
|
|
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
|
|
return dt;
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// 根据单据
|
|
/// </summary>
|
|
/// <param name="DocCode"></param>
|
|
/// <returns></returns>
|
|
public static string GetBusinessType(string DocCode)
|
|
{
|
|
string sql = @"SELECT BusinessType from MO_IssueDocType WHERE Code='" + DocCode + "' ";
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
if (dt == null || dt.Rows.Count == 0) return null;
|
|
else return dt.Rows[0]["BusinessType"].ToString();
|
|
}
|
|
|
|
|
|
public static string GetMOQty(string DocCode)
|
|
{
|
|
string sql = @"SELECT a.ProductQty FROM MO_MO a WHERE DocNo='" + DocCode + "' ";
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
if (dt == null || dt.Rows.Count == 0) return null;
|
|
else return dt.Rows[0]["ProductQty"].ToString();
|
|
}
|
|
public static DataTable GetMOQtyAndID(string DocCode)
|
|
{
|
|
string sql = @"SELECT a.ProductQty,ID FROM MO_MO a WHERE DocNo='" + DocCode + "' ";
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
return dt;
|
|
}
|
|
|
|
|
|
public static Decimal GetMOSendQty(string MOCode)
|
|
{
|
|
|
|
// string sql = @"SELECT
|
|
// SUM( b.ApplySetQty) as SendQty
|
|
// FROM
|
|
// MO_IssueDoc a
|
|
// LEFT JOIN MO_IssueDocLine b ON b.IssueDoc = a.ID
|
|
// WHERE
|
|
// a.SourceDoc_SrcDocNo = '" + MOCode + "' ";
|
|
string sql = @"SELECT
|
|
SUM(b.IssuedQty) as SendQty
|
|
FROM
|
|
MO_IssueDoc a
|
|
LEFT JOIN MO_IssueDocLine b ON b.IssueDoc = a.ID
|
|
WHERE
|
|
a.SourceDoc_SrcDocNo = '" + MOCode + "' "; //AND a.DocState=2
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
if (dt == null || dt.Rows.Count == 0)
|
|
{
|
|
return 0;
|
|
}
|
|
else
|
|
{
|
|
if (!string.IsNullOrWhiteSpace(dt.Rows[0]["SendQty"].ToString()))
|
|
{
|
|
return Decimal.Parse(dt.Rows[0]["SendQty"].ToString());
|
|
}
|
|
else
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// 验证库工单中备料表中数据是否存在
|
|
/// </summary>
|
|
/// <param name="cPos"></param>
|
|
/// <returns></returns>
|
|
public static int IsExistcPickList(string MoCode)
|
|
{
|
|
string sql = @"SELECT COUNT (*) FROM MO_MOPickList
|
|
WHERE mo = ( SELECT TOP 1 id FROM mo_mo WHERE docno = '" + MoCode + "' ) ";
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, GetU9ConnStr());
|
|
|
|
return dt.Rows.Count;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 只取11 和 12物料
|
|
/// </summary>
|
|
/// <param name="DocCode"></param>
|
|
/// <returns></returns>
|
|
public static DataTable GetPickList(string MoCode)
|
|
{
|
|
string sql = @"SELECT
|
|
b.Code ccode,
|
|
a.QPA useQty,
|
|
A7.Code UnitCode
|
|
FROM
|
|
MO_MOPickList a
|
|
LEFT JOIN CBO_ItemMaster b ON a.ItemMaster = b.ID
|
|
LEFT JOIN [Base_UOM] AS A7 (NOLOCK) ON (A.[CostUOM] = A7.[ID])
|
|
WHERE
|
|
1=1
|
|
AND (b.Code LIKE '11%' OR b.Code LIKE '12%' )
|
|
and
|
|
|
|
mo = (
|
|
SELECT
|
|
TOP 1 id
|
|
FROM
|
|
mo_mo
|
|
WHERE
|
|
docno = '" + MoCode + "' ) ";
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
return dt;
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// 只取11 和 12物料
|
|
/// </summary>
|
|
/// <param name="DocCode"></param>
|
|
/// <returns></returns>
|
|
public static DataTable GetPickListNew(string MoCode, string Ccode)
|
|
{
|
|
string sql = @"SELECT
|
|
b.Code ccode,
|
|
a.QPA useQty,
|
|
A7.Code UnitCode
|
|
FROM
|
|
MO_MOPickList a
|
|
LEFT JOIN CBO_ItemMaster b ON a.ItemMaster = b.ID
|
|
LEFT JOIN [Base_UOM] AS A7 (NOLOCK) ON (A.[CostUOM] = A7.[ID])
|
|
WHERE
|
|
1=1
|
|
AND (b.Code='" + Ccode + "' ) and mo = ( SELECT TOP 1 id FROM mo_mo WHERE docno = '" + MoCode + "' ) ";
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
return dt;
|
|
}
|
|
|
|
|
|
|
|
public static string GetItemBin(string itemCode)
|
|
{
|
|
string sql = @" select distinct top 1 bininfo_code
|
|
from invtrans_whqoh
|
|
where iteminfo_itemcode ='" + itemCode + @"'
|
|
--and storeqty>0
|
|
and storeqty = (select distinct min(storeqty)
|
|
from invtrans_whqoh
|
|
where iteminfo_itemcode ='" + itemCode + "' and storeqty > 0 )";
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
|
|
//DataSet ds = DBhlper.ExecuteDataset(Appconfig.GetU9ConnStr(), CommandType.Text, sql);
|
|
|
|
if (dt.Rows.Count > 0)
|
|
{
|
|
return dt.Rows[0][0].ToString();
|
|
}
|
|
else
|
|
{
|
|
sql = @" select distinct top 1 h.bininfo_code
|
|
from invtrans_whqoh z inner join invtrans_translinebin h on z.BizKey=h.BizKey
|
|
inner join invtrans_transline p on p.id=h.transline
|
|
where z.iteminfo_itemcode ='" + itemCode + @"'
|
|
--and storeqty=0
|
|
and p.createdon = (select distinct max(createdon)
|
|
from invtrans_transline
|
|
where iteminfo_itemcode='" + itemCode + "')";
|
|
//ds = DBHelper.ExecuteDataset(u9ConnectString, CommandType.Text, sql);
|
|
dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
|
|
if (dt.Rows.Count > 0)
|
|
{
|
|
return dt.Rows[0][0].ToString();
|
|
}
|
|
else
|
|
{
|
|
return "";
|
|
}
|
|
}
|
|
}
|
|
|
|
public static string GetItemWh(string BinCode)
|
|
{
|
|
string sql = @"SELECT DISTINCT b.Code FROM CBO_Bin a
|
|
LEFT JOIN CBO_Wh b ON a.Warehouse=b.ID
|
|
LEFT JOIN InvTrans_WhQoh c ON c.BinInfo_Code=a.Code AND c.Wh=b.ID
|
|
WHERE a.Code='" + BinCode + "' AND c.StoreQty>0";
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
|
|
|
|
if (dt.Rows.Count > 0)
|
|
{
|
|
return dt.Rows[0][0].ToString();
|
|
}
|
|
else
|
|
{
|
|
return "";
|
|
}
|
|
}
|
|
|
|
|
|
public static string GetItemWhID(string BinCode)
|
|
{
|
|
string sql = @"SELECT DISTINCT b.ID FROM CBO_Bin a
|
|
LEFT JOIN CBO_Wh b ON a.Warehouse=b.ID
|
|
LEFT JOIN InvTrans_WhQoh c ON c.BinInfo_Code=a.Code AND c.Wh=b.ID
|
|
WHERE a.ID='" + BinCode + "' AND c.StoreQty>0";
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
|
|
|
|
if (dt.Rows.Count > 0)
|
|
{
|
|
return dt.Rows[0][0].ToString();
|
|
}
|
|
else
|
|
{
|
|
return "";
|
|
}
|
|
}
|
|
|
|
public static bool WHLotCheckState(string WHCode, string OrgCode)
|
|
{
|
|
string sql = @"select IsLot from CBO_WH A
|
|
LEFT JOIN Base_Organization B
|
|
ON B.ID=A.ORG
|
|
where A.Code='{0}' AND B.CODE='{1}'";
|
|
sql = string.Format(sql, WHCode, OrgCode);
|
|
DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr());
|
|
if (dt != null && dt.Rows.Count > 0)
|
|
{
|
|
if (dt.Rows[0]["IsLot"].ToString() == "True")
|
|
{
|
|
return true;
|
|
}
|
|
else
|
|
{
|
|
return false;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
return false;
|
|
}
|
|
}
|
|
|
|
public static void UpdateDocApproveMan(string DocNo, string OrgID, string UserCode, string PrimaryTableName, string SecondaryTableName)
|
|
{
|
|
try
|
|
{
|
|
string usersql = @"select ID,Name from Base_User
|
|
where Code='WMS'";
|
|
string docsql = @"select ID from {2}
|
|
WHERE DocNo='{0}' AND Org='{1}'";
|
|
docsql = string.Format(docsql, DocNo, OrgID, PrimaryTableName);
|
|
DataTable userdt = DBhlper.Query(usersql, Appconfig.GetU9ConnStr());
|
|
DataTable docdt = DBhlper.Query(docsql, Appconfig.GetU9ConnStr());
|
|
if (userdt.Rows.Count != 0 && docdt.Rows.Count != 0)
|
|
{
|
|
string updatesql = @"UPDATE {2} set ModifiedBy='{0}',ApproveMan='{0}'
|
|
where ID='{1}'
|
|
UPDATE {3} set ModifiedBy='{0}',ApproveMan='{0}'
|
|
where {4}='{1}'";
|
|
if (PrimaryTableName == "PM_IssueDoc")
|
|
{
|
|
updatesql = string.Format(updatesql, userdt.Rows[0]["Name"].ToString(), docdt.Rows[0]["ID"].ToString(),
|
|
PrimaryTableName, SecondaryTableName
|
|
, PrimaryTableName.Split('_')[0].ToString() + PrimaryTableName.Split('_')[1].ToString());
|
|
}
|
|
else
|
|
{
|
|
updatesql = string.Format(updatesql, userdt.Rows[0]["Name"].ToString(), docdt.Rows[0]["ID"].ToString(),
|
|
PrimaryTableName, SecondaryTableName, PrimaryTableName.Split('_')[1].ToString());
|
|
}
|
|
DBhlper.EXecute(updatesql, Appconfig.GetU9ConnStr());
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
}
|
|
|
|
|
|
//public static string GetPRID(string PRCode)
|
|
//{
|
|
// string sql = @"select ID,a.Status from PR_PR a where DocNo='{0}' ";
|
|
// sql = string.Format(sql, PRCode);
|
|
// DataTable dt = DBhlper.Query(sql, GetU9ConnStr());
|
|
// if (dt != null && dt.Rows.Count > 0)
|
|
// { return dt.Rows[0][0].ToString(); }
|
|
// return null;
|
|
//}
|
|
|
|
public static DataTable GetPRID(string PRCode)
|
|
{
|
|
string sql = @"select ID,a.Status from PR_PR a where DocNo='{0}' ";
|
|
sql = string.Format(sql, PRCode);
|
|
DataTable dt = DBhlper.Query(sql, GetU9ConnStr());
|
|
return dt;
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
public class DescData
|
|
{
|
|
public string WsCrack_ZJ { get; set; }//无损探伤(铸件)
|
|
public string WsCrack_DJ { get; set; }//无损探伤(锻件)
|
|
public string Delivery_Nature { get; set; }//交期性质
|
|
public bool Ispecial_Paint { get; set; }//是否特殊油漆
|
|
public string Special_Ask { get; set; }//其他特殊要求
|
|
public bool IsDegreasing { get; set; }//是否脱油脱脂
|
|
public string Tap_Model { get; set; }//阀门形式
|
|
public string Sy_Medium { get; set; }//试压介质
|
|
public string Sy_Standard { get; set; }//试压标准
|
|
public string Handle_Press { get; set; }//操作压力
|
|
public string Switch_Time { get; set; }//开关时间
|
|
}
|
|
|
|
public class OperationResult_PRState
|
|
{
|
|
/// <summary>
|
|
/// 结果状态,默认值false
|
|
/// </summary>
|
|
public bool IsSuccess { get; set; }
|
|
|
|
/// <summary>
|
|
///处理消息
|
|
/// </summary>
|
|
public string MESSAGE { get; set; }
|
|
|
|
/// <summary>
|
|
/// 输出ZPList
|
|
/// </summary>
|
|
public string PRCode { get; set; }
|
|
|
|
}
|
|
|
|
public class CommonReturnEntity
|
|
{
|
|
//成功的话code=2000
|
|
//失败的话code=9999
|
|
public string code;
|
|
|
|
public string DocNO;
|
|
|
|
public string msg;//信息
|
|
}
|
|
|
|
}
|