Files
envi-code/SourceCode/Code2026/PipelineSpecCmd/AecPipeSupport.h
T
2026-09-28 15:28:50 +08:00

95 lines
5.9 KiB
C++

#pragma once
#include "earthwormdef.h"
class CUIISQLiteServer;
class TDbPipeSupport
{
public:
TDbPipeSupport(void);
~TDbPipeSupport(void);
static double MakeSureMMUnit(double& dDn);
static BOOL XData2PipeParam(WPipe::PipeParam* pParamL,const AecDbObjXDataMap* pXDataMapSrc);
static BOOL QueryElbowL(CUIISQLiteServer *pDb, double dDN, double &dL, double dRadio, int nCn, LPCTSTR pszLevel, AecDbObjXDataMap *pXData);
static BOOL QueryRElbowL(CUIISQLiteServer *pDb, double dDNL, double dDNs, double &dL, double dRadio, int nCn, LPCTSTR pszLevel, AecDbObjXDataMap *pXData);
//QueryElbowL内部调用
static BOOL Query45ElbowL(CUIISQLiteServer *pDb, double dDN, double &dL, double dRadio, int nCn, LPCTSTR pszLevel, LPCTSTR pszDNo, AecDbObjXDataMap *pXData);
static BOOL Query225ElbowL(CUIISQLiteServer *pDb, double dDN, double &dL, double dRadio, int nCn, LPCTSTR pszLevel, LPCTSTR pszDNo, AecDbObjXDataMap *pXData);
static BOOL Query30ElbowL(CUIISQLiteServer *pDb, double dDN, double &dL, double dRadio, int nCn, LPCTSTR pszLevel, LPCTSTR pszDNo, AecDbObjXDataMap *pXData);
static BOOL Query60ElbowL(CUIISQLiteServer *pDb, double dDN, double &dL, double dRadio, int nCn, LPCTSTR pszLevel, LPCTSTR pszDNo, AecDbObjXDataMap *pXData);
static BOOL QueryTeeData(CUIISQLiteServer* pDb,double dDn1,double dDn2,double& dL,double& dS, LPCTSTR pszProName = NULL, LPCTSTR pszPreSpecName = NULL);
static BOOL QueryCrossData(CUIISQLiteServer* pDb,double dDN1,double dDN2,double& dL,double& dB, LPCTSTR pszProName = NULL, LPCTSTR pszPreSpecName = NULL);
static BOOL QueryFlangSpecs(CUIISQLiteServer *pDb, double dDN, WPipe::Trade &eTrade, CString &sStd, CString &sTyp, LPCTSTR pszProName, LPCTSTR pszPreSpecName);
static BOOL QueryFlangData(CUIISQLiteServer* pDb,double dDN,double dPre,double& dWD,double& dWh,double& dThk,double& dN, LPCTSTR pszProName = NULL, LPCTSTR pszPreSpecName = NULL);
static BOOL QueryFlangData(CUIISQLiteServer *pDb, double dDn, double dPress, AecDbObjXDataMap *pXDataMap);
//法兰spec信息
static BOOL QueryFlangSpec(CUIISQLiteServer *pDb, double dDn, double dPress,LPCTSTR pszLevel, AecDbObjXDataMap*pXDataMap);
static BOOL QuerySBFlange(CUIISQLiteServer *pDb, double dDn, double dPress, AecDbObjXDataMap *pXDataMap);
static BOOL QueryGasketSpec(CUIISQLiteServer *pDb, WPipe::Trade &eTrade,double dDN, double dPre, LPCTSTR pszProName, LPCTSTR pszPreSpecName);
static BOOL QueryGasketData(CUIISQLiteServer* pDb,double dDN,double dPre,CStringArray& GasketG, LPCTSTR pszProName = NULL, LPCTSTR pszPreSpecName = NULL);
static BOOL QueryLateralData(CUIISQLiteServer* pDb,double dDn,double& dE,double& dM,double& dB,double& dInsL,double& dInfD,int nType, LPCTSTR pszProName = NULL, LPCTSTR pszPreSpecName = NULL);
static BOOL QueryWYeData(CUIISQLiteServer* pDb,double dDn,double& dM,double& dB,double& dInsL,double& dInfD,int nType, LPCTSTR pszProName = NULL, LPCTSTR pszPreSpecName = NULL);
static BOOL QueryCapData(CUIISQLiteServer* pDb,double dDn,double& dL);
static BOOL QueryReduceData(CUIISQLiteServer *pDb, int nCntype, double dDn, double dTDN, double &dL, AecDbObjXDataMap *pXData, LPCTSTR pszSDN = _T("A"));
static BOOL QueryFlxJoinData(CUIISQLiteServer *pDb, double dDN, double dPre, AecDbObjXDataMap *pXDataMap);
//查询 弯头,三通,变径 的螺纹,承插尺寸
static BOOL QueryInfFDFL(CUIISQLiteServer* pDb,int nObjectKind,int nCntype,double dDN,double& dFD,double& dFL, LPCTSTR pszProName = NULL, LPCTSTR pszPreSpecName = NULL);
static BOOL IsPointHitWPipe(ads_point ptRes,AcDbObjectId& id);
static BOOL InsertFlangeAndGasketData(CUIISQLiteServer* pDb, const int &Dn, CString &sPro, CString &sLevel);
static BOOL QueryFitSpecInf(CUIISQLiteServer *pDb, double dDn, WPipe::FITSPEC &fitSpec, WPipe::Trade &eTrade, LPCTSTR pszFitName, LPCTSTR pszProName, LPCTSTR pszPreSpecName);
static BOOL QueryPipeSpecInf(CUIISQLiteServer *pDb, double dDn, WPipe::PIPESPEC &pipeSpec, WPipe::Trade &eTrade, LPCTSTR pszProName, LPCTSTR pszPreSpecName);
static BOOL QueryFitSpecsNo(CUIISQLiteServer *pDb, double dDn1, double dDn2, CString &sSNo, WPipe::Trade &eTrade, LPCTSTR pszFitName, LPCTSTR pszProName, LPCTSTR pszPreSpecName);
static BOOL QueryFitSpecsNo(CUIISQLiteServer *pDb, double dDn, CString &sSNo, WPipe::Trade &eTrade, LPCTSTR pszFitName, LPCTSTR pszProName, LPCTSTR pszPreSpecName);
//法兰上螺栓信息
static BOOL QueryFBoltData(CUIISQLiteServer *pDb, double dDn, double dPre, LPCTSTR pszProj, LPCTSTR pszLevel, CStringArray &arBoltData);
//螺栓 数量 和 规格
static BOOL QueryBoltData(CUIISQLiteServer *pDb, double dDn, double dPre, CStringArray &arBoltData);
//设置法兰垫片
static BOOL SetGasketData(CUIISQLiteServer *pDb, int iInf, double dDn, double dPre, LPCTSTR pszProj, LPCTSTR pszLevel, AecDbObjXDataMap *pXDataMap);
//设置法兰螺栓
static BOOL SetBoltData(CUIISQLiteServer *pDb, int iInf,double dDn, double dPre, LPCTSTR pszProj, LPCTSTR pszLevel, AecDbObjXDataMap *pXDataMap);
//补强圈 或 半管接头补强
static int QueryRPorHP(CUIISQLiteServer *pDb,LPCTSTR pszLevel,double dDn,double ddn);
static BOOL QueryRP(CUIISQLiteServer *pDb, double dDn, AecDbObjXDataMap * pXDataMap);
static BOOL QueryHP(CUIISQLiteServer *pDb, double dDn, AecDbObjXDataMap *pXDataMap);
static BOOL QuerySBFSpec(CUIISQLiteServer *pDb,const CString& sLevel,double dDn, AecDbObjXDataMap * pXDataMap);
static bool IsPlasticsMat(LPCTSTR pszODNO);
static BOOL QueryPVCReducerData(CUIISQLiteServer *pDb, double dDN, double dEDN, AecDbObjXDataMap *pXDataMap, LPCTSTR pszSDNo = _T("UPVC"));
static BOOL QueryPVCElbow(CUIISQLiteServer *pDb, double dDN, AecDbObjXDataMap *pXDataMap, LPCTSTR pszSDNo = _T("UPVC"));
static BOOL QueryPVCTeeData(CUIISQLiteServer *pDb, double dDn1, double dDn2, AecDbObjXDataMap *pXDataMap, LPCTSTR pszSDNo = _T("UPVC"));
static BOOL QueryPVCCrossData(CUIISQLiteServer *pDb, double dDn1, double dDn2, AecDbObjXDataMap *pXDataMap, LPCTSTR pszSDNo = _T("UPVC"));
static BOOL QueryPVCSpecFit(CUIISQLiteServer *pDb, double dDN, LPCTSTR pszSDNo, EFittingType eType, AecDbObjXDataMap *pXDFit);
};