This commit is contained in:
2026-08-21 17:03:02 +08:00
commit f065129b20
2292 changed files with 666241 additions and 0 deletions
+206
View File
@@ -0,0 +1,206 @@
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using GThinking.N_MISPRO.Utility;
using GThinking.N_MISPRO.Data;
using GThinking.N_MISPRO;
using GThinking.N_MODEL.ModelBase;
using GThinking.N_MISPROAS.Web.AjaxServices;
using GThinking.N_MISPROAS;
using GThinking.N_MISPROAS.Services;
using System.Collections.Generic;
using GThinking.N_MISPRO.Caching;
namespace GThinking.N_XLXSBJ
{
public class XSJGBTJService : ServiceBase
{
[AjaxMethod]
public static void AsyncDoJGBTJ(JGBTJXX objJGB)
{
LogicContext lgc = LogicContext.Current;
CMISproSession tSession = CMISproSessionManager.GetCurrentSession();
TDatabase DBERP = TContextDatabases.GetDatabase("DBERP");
TSQL sql = new TSQL(DBERP);
sql.Clear();
sql.Add("update XLXSJGB set XLXSJGB_TJZT='J',");//J|计算中
sql.Add(" XLXSJGB_TJKSSJ=:pTJKSSJ");
sql.Add(" where XLXSJGB_MXBH=:pMXBH");
sql.Add(" and XLXSJGB_JGBID=:pJGBID");
sql.Add(" and isnull(XLXSJGB_TJZT,' ')='W'");//W|等待
sql.ParamByName("pMXBH").Value = objJGB.MXBH;
sql.ParamByName("pJGBID").Value = objJGB.JGBID;
sql.ParamByName("pTJKSSJ").Value = MISproUtils.GetServerTime();
DBERP.ExecSQL(sql);
bool bSuccess = true;
try
{
DBERP.BeginTrans();
string sMessage = "";
if (objJGB.JJLY.Equals("D"))
{
XLJGB_CLJGTZList.DoCPJJ(DBERP, objJGB.MXBH, objJGB.JGBID, false,
objJGB.XSWS, objJGB.JSBLFS, tSession.UserId, tSession.UserName, objJGB.sBJU003);
}
else
{
if (objJGB.bUpdateByJCZB)
XLJGB_CLJGTZList.DoCLCB(DBERP, objJGB.MXBH, objJGB.JGBID, tSession.UserId, tSession.UserName, objJGB.JGCZBID, objJGB.JGCZBBBID, objJGB.XSWS, objJGB.JSBLFS, objJGB.sBJU003);
else
XLJGB_CLJGTZList.DoCLCB(DBERP, objJGB.MXBH, objJGB.JGBID, tSession.UserId, tSession.UserName, objJGB.XSWS, objJGB.JSBLFS, objJGB.sBJU003);
}
if (CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from XLXSJGBMX where XLXSJGBMX_SYXH<>0 and XLXSJGBMX_JGBID={0}", objJGB.JGBID)))
XLJGB_JGBMXList.XHJDDZKC_TJYS1(DBERP, sql, objJGB.JGBID, objJGB.JSBLFS, objJGB.XSWS.ToString(), tSession.UserName, tSession.UserId, ref sMessage, objJGB.XLJGU007);
if (objJGB.bNeedTB && objJGB.dicJGB2 != null)//需要同步区域价
{
foreach (string sKey in objJGB.dicJGB2.Keys)
{
XLJGB_CLJGTZList.TBCLCB_2(DBERP, objJGB.MXBH, sKey,
objJGB.dicJGB2[sKey], objJGB.XSWS, objJGB.JSBLFS, tSession.UserId, tSession.UserName, objJGB.sBJU003);
}
}
DBERP.CommitTrans();
if (!sMessage.Equals(""))
{
string sMsg = "同步完成!" + sMessage;
Mac.MacLog.TraceFormat(string.Format("价格表{0}:{1}", objJGB.JGBID, sMsg));
}
}
catch (Exception ex)
{
bSuccess = false;
Mac.MacLog.TraceFormat(string.Format("价格表{0}调价_异常:{1}", objJGB.JGBID, ex.Message));
DBERP.RollbackTrans();
}
finally
{
if (bSuccess)
{
sql.Clear();
sql.Add("update XLXSJGB set XLXSJGB_TJZT='S',");//S|完成
sql.Add(" XLXSJGB_TJWCSJ=:pTJWCSJ");
sql.Add(" where XLXSJGB_MXBH=:pMXBH");
sql.Add(" and XLXSJGB_JGBID=:pJGBID");
sql.ParamByName("pMXBH").Value = objJGB.MXBH;
sql.ParamByName("pJGBID").Value = objJGB.JGBID;
sql.ParamByName("pTJWCSJ").Value = MISproUtils.GetServerTime();
DBERP.ExecSQL(sql);
}
else
{
sql.Clear();
sql.Add("update XLXSJGB set XLXSJGB_TJZT='F'");//F|失败
sql.Add(" where XLXSJGB_MXBH=:pMXBH");
sql.Add(" and XLXSJGB_JGBID=:pJGBID");
sql.ParamByName("pMXBH").Value = objJGB.MXBH;
sql.ParamByName("pJGBID").Value = objJGB.JGBID;
DBERP.ExecSQL(sql);
}
}
CacheNotify.TableIsUpdated("DBERP", "XLXSJGB");
}
}
public class JGBTJXX
{
public JGBTJXX()
{
}
private string _JGBID;//价格表ID
public string JGBID
{
get { return _JGBID; }
set { _JGBID = value; }
}
private string _MXBH;
public string MXBH
{
get { return _MXBH; }
set { _MXBH = value; }
}
private string _JJLY;//基价来源
public string JJLY
{
get { return _JJLY; }
set { _JJLY = value; }
}
private int _XSWS;//小数位数
public int XSWS
{
get { return _XSWS; }
set { _XSWS = value; }
}
private string _JGCZBID;//结构尺重表ID
public string JGCZBID
{
get { return _JGCZBID; }
set { _JGCZBID = value; }
}
private string _JGCZBBBID;//结构尺重表版本ID
public string JGCZBBBID
{
get { return _JGCZBBBID; }
set { _JGCZBBBID = value; }
}
private string _JSBLFS;//计算保留方式
public string JSBLFS
{
get { return _JSBLFS; }
set { _JSBLFS = value; }
}
private Dictionary<string, string> _dicJGB2;//区域价价格表<JGBID,JGBIDS>
public Dictionary<string, string> dicJGB2
{
get { return _dicJGB2; }
set { _dicJGB2 = value; }
}
private bool _bUpdateByJCZB;//按尺重表同步
public bool bUpdateByJCZB
{
get { return _bUpdateByJCZB; }
set { _bUpdateByJCZB = value; }
}
private bool _bNeedTB;//是否同步区域价
public bool bNeedTB
{
get { return _bNeedTB; }
set { _bNeedTB = value; }
}
private string _XLJGU007;
public string XLJGU007
{
get { return _XLJGU007; }
set { _XLJGU007 = value; }
}
private string _sBJU003;
public string sBJU003
{
get { return _sBJU003; }
set { _sBJU003 = value; }
}
}
}