Esempio n. 1
0
        ///// <summary>
        ///// 快速插入关联关系-用于关联关系初始化导入
        ///// </summary>
        ///// <param name="ProjectNo"></param>
        ///// <param name="BidNo"></param>
        ///// <param name="WbsName"></param>
        ///// <param name="TotalAmount"></param>
        ///// <param name="AddList"></param>
        ///// <param name="UpdateList"></param>
        ///// <param name="DeleteItemNoList"></param>
        ///// <param name="AddRelation"></param>
        ///// <param name="UpdateRelation"></param>
        ///// <param name="DeleteRelation"></param>
        ///// <returns></returns>
        //public WBSBoq Save(string ProjectNo, string BidNo, String WbsName, decimal TotalAmount
        //                              , List<WBSline> AddList, List<WBSline> UpdateList, List<string> DeleteItemNoList
        //                              , List<WBSline_boi> AddRelation, List<WBSline_boi> UpdateRelation, List<WBSline_boi> DeleteRelation)
        //{
        //    WBSBoq result = new WBSBoq();
        //    String strWbsNo = null;
        //    strWbsNo = GetWbsNo(ProjectNo);

        //    //修改
        //    if (UpdateList != null)
        //    {
        //        UpdateList.ForEach(m =>
        //        {
        //            UpdateWBSline(m, ServiceContext.LoginName);
        //        });
        //    }

        //    //新增关联关系
        //    if (AddRelation != null)
        //    {
        //        AddRelation.ForEach(m =>
        //        {
        //            m.WbsNo = strWbsNo;
        //            if (String.IsNullOrEmpty(m.WBSLineNo))
        //            {
        //                WBSline line = result.WBSlineList.Find(n => n.WbsSysCode == m.WbsSysCode);
        //                m.WBSLineNo = line != null ? line.WbsLineNo : null;
        //            }
        //            //result.AllRelationList.Add(AddWBSlineBoi(strWbsNo, m, ServiceContext.LoginName));
        //        });

        //        //剔除类中DBField = false的属性名
        //        List<string> ingorePropetiesName = new List<string>();
        //        System.Reflection.PropertyInfo[] properties = typeof(WBSline_boi).GetProperties();

        //        foreach (System.Reflection.PropertyInfo item in properties)
        //        {
        //            var classAttribute = (DBFieldAttribute)Attribute.GetCustomAttribute(item, typeof(DBFieldAttribute));

        //            if (classAttribute != null && !classAttribute.IsField)  //剔除Dbfield = False的属性
        //            {
        //                ingorePropetiesName.Add(item.Name);
        //            }

        //            if (item.Name == "id" || item.Name == "Id" || item.Name == "ID")  //如果存在ID属性,同样剔除
        //            {
        //                ingorePropetiesName.Add(item.Name);
        //            }
        //            if (item.Name == "TypeOfDataModified")  //如果存在TypeOfDataModified属性,同样剔除
        //            {
        //                ingorePropetiesName.Add("TypeOfDataModified");
        //            }
        //        }
        //        //批量插入
        //        HdSqlCommand.GetInstance().BulkInsert<WBSline_boi>("ERP_BoQ.dbo.gl_cntrct_wbsline_boi", AddRelation, ingorePropetiesName.ToArray());


        //    }
        //    return result;
        //}

        /// <summary>
        /// 修改清单头的状态字段
        /// </summary>
        /// <param name="boq"></param>
        public void ChangeStat(WBSBoq boq)
        {
            Commit(boq.WbsNo, ServiceContext.LoginName);
            List <CmdParameter> cmds = new List <CmdParameter>();

            cmds.Add(new CmdParameter("@WbsNo", boq.WbsNo));
            cmds.Add(new CmdParameter("@ApprovalBy", boq.ApprovalBy));
            cmds.Add(new CmdParameter("@ApprovalDate", boq.ApprovalDate));
            cmds.Add(new CmdParameter("@ApprovalStat", boq.ApprovalStat));
            cmds.Add(new CmdParameter("@ExecuteStat", boq.ExecuteStat));
            cmds.Add(new CmdParameter("@WfdefId", boq.WfdefId));
            cmds.Add(new CmdParameter("@RefCategory", boq.RefCategory));
            cmds.Add(new CmdParameter("@inWorkflow", boq.inWorkflow));
            cmds.Add(new CmdParameter("@OperationBy", ServiceContext.LoginName));

            cmds.Add(new CmdParameter("@Infor", "", System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@Ok", 0, System.Data.ParameterDirection.Output));

            ParameterResult pResult = new ParameterResult()
            {
                Parameters = cmds.ToArray()
            };

            HdDbCmdManager.GetInstance().Execute("ERP_BoQ.dbo.Gl_Cntrct_Wbs_ChangeBusinessStat", CommandType.StoredProcedure, pResult.Parameters);
            if (!Convert.ToBoolean(pResult["@Ok"]))
            {
                throw new FaultException <ApplicationServiceError>(new ApplicationServiceError()
                {
                    ErrorMessage = pResult["@Infor"].ToString()
                });
            }
        }
        public void ChangeStat(String BoqNo, int ExecuteStat)
        {
            Commit(BoqNo, ServiceContext.LoginName);
            List <CmdParameter> cmds = new List <CmdParameter>();

            cmds.Add(new CmdParameter("@BoqNo", BoqNo));
            cmds.Add(new CmdParameter("@Infor", "", System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@Ok", 0, System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@ApprovalStat", 1));
            cmds.Add(new CmdParameter("@ExecuteStat", ExecuteStat));
            cmds.Add(new CmdParameter("@OperationBy", ServiceContext.LoginName));

            ParameterResult pResult = new ParameterResult()
            {
                Parameters = cmds.ToArray()
            };

            HdDbCmdManager.GetInstance().Execute("ERP_BoQ.dbo.Gl_Cntrct_Boq_ChangeBusinessStat", CommandType.StoredProcedure, pResult.Parameters);
            if (!Convert.ToBoolean(pResult["@Ok"]))
            {
                throw new FaultException <ApplicationServiceError>(new ApplicationServiceError()
                {
                    ErrorMessage = pResult["@Infor"].ToString()
                });
            }
        }
Esempio n. 3
0
        /// <summary>
        /// 更新清单头
        /// </summary>
        /// <param name="BoqNo"></param>
        /// <param name="BoqName"></param>
        /// <param name="TotalAmount"></param>
        /// <param name="Tran"></param>
        private void Update(ContractBoqChange ChangeData, String OperationBy, SqlTransaction Tran)
        {
            List <CmdParameter> cmds = new List <CmdParameter>();

            cmds.Add(new CmdParameter("@ChangeNo", ChangeData.ChangeNo));
            cmds.Add(new CmdParameter("@Remark", ChangeData.Remark));
            cmds.Add(new CmdParameter("@OperationBy", OperationBy));
            cmds.Add(new CmdParameter("@Infor", "", System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@Ok", 0, System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@ProjectNo", ChangeData.ProjectNo));
            cmds.Add(new CmdParameter("@ChangeCode", ChangeData.ChangeCode));
            cmds.Add(new CmdParameter("@ChangeName", ChangeData.ChangeName));
            cmds.Add(new CmdParameter("@Type", ChangeData.Type));
            cmds.Add(new CmdParameter("@ChangeDate", ChangeData.ChangeDate));
            cmds.Add(new CmdParameter("@ChangeAmount", ChangeData.ChangeAmount));
            cmds.Add(new CmdParameter("@BoiNum", ChangeData.BoiNum));
            cmds.Add(new CmdParameter("@Description", ChangeData.Description));

            ParameterResult pResult = new ParameterResult()
            {
                Parameters = cmds.ToArray()
            };

            HdDbCmdManager.GetInstance().Execute("ERP_BoQ.dbo.Gl_Cntrct_Change_Update", CommandType.StoredProcedure, pResult.Parameters, Tran);
            if (!Convert.ToBoolean(pResult["@Ok"]))
            {
                throw new FaultException <ApplicationServiceError>(new ApplicationServiceError()
                {
                    ErrorMessage = pResult["@Infor"].ToString()
                });
            }
        }
Esempio n. 4
0
        /// <summary>
        /// 发布
        /// </summary>
        /// <param name="m"></param>
        public void Release(WBSBoq m)
        {
            Commit(m.WbsNo, ServiceContext.LoginName);
            List <CmdParameter> cmds = new List <CmdParameter>();

            cmds.Add(new CmdParameter("@WbsNo", m.WbsNo));
            cmds.Add(new CmdParameter("@ReleaseBy", m.ReleaseBy));
            cmds.Add(new CmdParameter("@ReleaseDate", m.ReleaseDate));
            cmds.Add(new CmdParameter("@OperationBy", ServiceContext.LoginName));
            cmds.Add(new CmdParameter("@Infor", "", System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@Ok", 0, System.Data.ParameterDirection.Output));

            ParameterResult pResult = new ParameterResult()
            {
                Parameters = cmds.ToArray()
            };

            HdDbCmdManager.GetInstance().Execute("ERP_BoQ.dbo.Gl_Cntrct_Wbs_Release", CommandType.StoredProcedure, pResult.Parameters);
            if (!Convert.ToBoolean(pResult["@Ok"]))
            {
                throw new FaultException <ApplicationServiceError>(new ApplicationServiceError()
                {
                    ErrorMessage = pResult["@Infor"].ToString()
                });
            }
        }
Esempio n. 5
0
        /// <summary>
        /// 提交清单
        /// </summary>
        /// <param name="BoqNo"></param>
        /// <param name="OperationBy"></param>
        /// <param name="Tran"></param>
        /// <returns></returns>
        private int Commit(String WbsNo, String OperationBy, SqlTransaction Tran = null)
        {
            List <CmdParameter> cmds = new List <CmdParameter>();

            cmds.Add(new CmdParameter("@WbsNo", WbsNo));
            cmds.Add(new CmdParameter("@OperationBy", OperationBy));
            cmds.Add(new CmdParameter("@Version", "", System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@Infor", "", System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@Ok", 0, System.Data.ParameterDirection.Output));

            ParameterResult pResult = new ParameterResult()
            {
                Parameters = cmds.ToArray()
            };

            HdDbCmdManager.GetInstance().Execute("ERP_BoQ.dbo.Gl_Cntrct_Wbs_Commit", CommandType.StoredProcedure, pResult.Parameters, Tran);
            if (!Convert.ToBoolean(pResult["@Ok"]))
            {
                throw new FaultException <ApplicationServiceError>(new ApplicationServiceError()
                {
                    ErrorMessage = pResult["@Infor"].ToString()
                });
            }
            return(Convert.ToInt32(pResult["@Version"]));
        }
Esempio n. 6
0
        /// <summary>
        /// 更新清单头
        /// </summary>
        /// <param name="BoqNo"></param>
        /// <param name="BoqName"></param>
        /// <param name="TotalAmount"></param>
        /// <param name="Tran"></param>
        private void UpdateBoq(String BidNo, String WbsNo, String WbsName, Decimal TotalAmount, String OperationBy, SqlTransaction Tran)
        {
            List <CmdParameter> cmds = new List <CmdParameter>();

            cmds.Add(new CmdParameter("@BidNo", BidNo));
            cmds.Add(new CmdParameter("@WbsNo", WbsNo));
            cmds.Add(new CmdParameter("@WbsName", WbsName));
            cmds.Add(new CmdParameter("@TotalAmount", TotalAmount));
            cmds.Add(new CmdParameter("@TotalAmountEx", null));
            cmds.Add(new CmdParameter("@OperationBy", OperationBy));
            cmds.Add(new CmdParameter("@Infor", "", System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@Ok", 0, System.Data.ParameterDirection.Output));

            ParameterResult pResult = new ParameterResult()
            {
                Parameters = cmds.ToArray()
            };

            HdDbCmdManager.GetInstance().Execute("ERP_BoQ.dbo.Gl_Cntrct_Wbs_Update", CommandType.StoredProcedure, pResult.Parameters, Tran);
            if (!Convert.ToBoolean(pResult["@Ok"]))
            {
                throw new FaultException <ApplicationServiceError>(new ApplicationServiceError()
                {
                    ErrorMessage = pResult["@Infor"].ToString()
                });
            }
        }
Esempio n. 7
0
        private void ChangeDataStat(String ChangeDetailNo, int StatId, String OperationBy, SqlTransaction Tran)
        {
            List <CmdParameter> cmds = new List <CmdParameter>();

            cmds.Add(new CmdParameter("@ChangeDetailNo", ChangeDetailNo));
            cmds.Add(new CmdParameter("@StatId", StatId));
            cmds.Add(new CmdParameter("@RecordValidity", StatId));
            cmds.Add(new CmdParameter("@OperationBy", OperationBy));
            cmds.Add(new CmdParameter("@Infor", "", System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@Ok", 0, System.Data.ParameterDirection.Output));

            ParameterResult pResult = new ParameterResult()
            {
                Parameters = cmds.ToArray()
            };

            HdDbCmdManager.GetInstance().Execute("ERP_BoQ.dbo.Gl_Cntrct_ChangeDetail_ChangeDataStat", CommandType.StoredProcedure, pResult.Parameters, Tran);
            if (!Convert.ToBoolean(pResult["@Ok"]))
            {
                throw new FaultException <ApplicationServiceError>(new ApplicationServiceError()
                {
                    ErrorMessage = pResult["@Infor"].ToString()
                });
            }
        }
        /// <summary>
        /// 插入清单
        /// </summary>
        /// <param name="ProjectNo"></param>
        /// <param name="BoqName"></param>
        /// <param name="TotalAmount"></param>
        /// <param name="OperationBy">操作人</param>
        private String InsertBoq(String ProjectNo, String BidNo, String BoqName, decimal TotalAmount, String OperationBy, SqlTransaction tran = null)
        {
            List <CmdParameter> cmds = new List <CmdParameter>();

            cmds.Add(new CmdParameter("@ProjectNo", ProjectNo));
            cmds.Add(new CmdParameter("@BidNo", BidNo));
            cmds.Add(new CmdParameter("@BoQName", BoqName));
            cmds.Add(new CmdParameter("@Description", null));
            cmds.Add(new CmdParameter("@TotalAmount", TotalAmount));
            cmds.Add(new CmdParameter("@TotalAmountEx", null));
            cmds.Add(new CmdParameter("@OperationBy", OperationBy));
            cmds.Add(new CmdParameter("@Id", 0, System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@BoqNo", "", System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@Infor", "", System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@Ok", 0, System.Data.ParameterDirection.Output));

            ParameterResult pResult = new ParameterResult()
            {
                Parameters = cmds.ToArray()
            };

            HdDbCmdManager.GetInstance().Execute("ERP_BoQ.dbo.Gl_Cntrct_Boq_Add", CommandType.StoredProcedure, pResult.Parameters);
            if (!Convert.ToBoolean(pResult["@Ok"]))
            {
                throw new FaultException <ApplicationServiceError>(new ApplicationServiceError()
                {
                    ErrorMessage = pResult["@Infor"].ToString()
                });
            }
            return(pResult["@BoqNo"].ToString());
        }
Esempio n. 9
0
        public int Commit(string ChangeNo)
        {
            List <CmdParameter> cmds = new List <CmdParameter>();

            cmds.Add(new CmdParameter("@ChangeNo", ChangeNo));
            cmds.Add(new CmdParameter("@OperationBy", ServiceContext.LoginName));
            cmds.Add(new CmdParameter("@Version", "", System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@Infor", "", System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@Ok", 0, System.Data.ParameterDirection.Output));

            ParameterResult pResult = new ParameterResult()
            {
                Parameters = cmds.ToArray()
            };

            HdDbCmdManager.GetInstance().Execute("ERP_BoQ.dbo.Gl_Cntrct_Change_Commit", CommandType.StoredProcedure, pResult.Parameters);
            if (!Convert.ToBoolean(pResult["@Ok"]))
            {
                throw new FaultException <ApplicationServiceError>(new ApplicationServiceError()
                {
                    ErrorMessage = pResult["@Infor"].ToString()
                });
            }
            return(Convert.ToInt32(pResult["@Version"]));
        }
Esempio n. 10
0
        /// <summary>
        /// 插入关联关系项
        /// </summary>
        /// <param name="BoqNo"></param>
        /// <param name="Boi"></param>
        /// <param name="OperationBy">操作人</param>
        /// <returns>No信息</returns>
        private WBSline_boi AddWBSlineBoi(string WbsNo, WBSline_boi Boi, String OperationBy, SqlTransaction Tran = null)
        {
            List <CmdParameter> cmds = new List <CmdParameter>();

            cmds.Add(new CmdParameter("@ProjectNo", Boi.ProjectNo));
            cmds.Add(new CmdParameter("@BidNo", Boi.BidNo));
            cmds.Add(new CmdParameter("@WbsNo", WbsNo));
            cmds.Add(new CmdParameter("@BoQNo", Boi.BoQNo));
            cmds.Add(new CmdParameter("@ItemNo", Boi.ItemNo));
            cmds.Add(new CmdParameter("@ItemName", Boi.ItemName));
            cmds.Add(new CmdParameter("@WBSLineNo", Boi.WBSLineNo));
            cmds.Add(new CmdParameter("@WbsSysCode", Boi.WbsSysCode));
            cmds.Add(new CmdParameter("@Currency", Boi.Currency));
            cmds.Add(new CmdParameter("@CurrencyCode", Boi.CurrencyCode));
            cmds.Add(new CmdParameter("@ExchangeRate", Boi.ExchangeRate));

            cmds.Add(new CmdParameter("@Uom", Boi.Uom));
            cmds.Add(new CmdParameter("@Qty", Boi.Qty));
            cmds.Add(new CmdParameter("@Amount", Boi.Amount));

            cmds.Add(new CmdParameter("@CtrctQty", Boi.CtrctQty));
            cmds.Add(new CmdParameter("@CtrctPrjPrice", Boi.CtrctPrjPrice));
            cmds.Add(new CmdParameter("@CtrctAmount", Boi.CtrctAmount));
            cmds.Add(new CmdParameter("@LatestQty", Boi.LatestQty));
            cmds.Add(new CmdParameter("@LatestPrice", Boi.LatestPrice));
            cmds.Add(new CmdParameter("@LatestAmount", Boi.LatestAmount));
            cmds.Add(new CmdParameter("@ChangeQty", Boi.ChangeQty));
            cmds.Add(new CmdParameter("@ChangePrice", Boi.ChangePrice));
            cmds.Add(new CmdParameter("@ChangeAmount", Boi.ChangeAmount));
            cmds.Add(new CmdParameter("@Description", Boi.Description));
            cmds.Add(new CmdParameter("@CategoryNo", Boi.CategoryNo));
            cmds.Add(new CmdParameter("@isCntrcItem", Boi.isCntrcItem));
            cmds.Add(new CmdParameter("@isImportant", Boi.isImportant));
            cmds.Add(new CmdParameter("@IsTax", Boi.IsTax));
            cmds.Add(new CmdParameter("@EndingComputeQty", Boi.EndingComputeQty));
            cmds.Add(new CmdParameter("@EndingComputeAmount", Boi.EndingComputeAmount));

            cmds.Add(new CmdParameter("@OperationBy", OperationBy));
            cmds.Add(new CmdParameter("@Id", 0, System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@Infor", "", System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@Ok", 0, System.Data.ParameterDirection.Output));
            ParameterResult pResult = new ParameterResult()
            {
                Parameters = cmds.ToArray()
            };

            HdDbCmdManager.GetInstance().Execute("ERP_BoQ.dbo.Gl_Cntrct_WbsLine_Boi_Add", CommandType.StoredProcedure, pResult.Parameters, Tran);
            if (!Convert.ToBoolean(pResult["@Ok"]))
            {
                throw new FaultException <ApplicationServiceError>(new ApplicationServiceError()
                {
                    ErrorMessage = pResult["@Infor"].ToString()
                });
            }
            Boi.WbsNo = WbsNo;
            return(Boi);
        }
Esempio n. 11
0
        /// <summary>
        /// 插入清单项
        /// </summary>
        /// <param name="BoqNo"></param>
        /// <param name="Detail"></param>
        /// <param name="OperationBy">操作人</param>
        /// <returns>No信息</returns>
        private ContractBoqChangeDetail InsertDetail(ContractBoqChangeDetail Detail, String OperationBy, SqlTransaction Tran = null)
        {
            List <CmdParameter> cmds = new List <CmdParameter>();

            cmds.Add(new CmdParameter("@ProjectNo", Detail.ProjectNo));
            cmds.Add(new CmdParameter("@ChangeNo", Detail.ChangeNo));
            cmds.Add(new CmdParameter("@Type", Detail.Type));
            cmds.Add(new CmdParameter("@IsUpInfo", Detail.IsUpInfo));
            cmds.Add(new CmdParameter("@IsUpQty", Detail.IsUpQty));
            cmds.Add(new CmdParameter("@IsUpPrice", Detail.IsUpPrice));

            cmds.Add(new CmdParameter("@ItemNo", Detail.ItemNo));
            cmds.Add(new CmdParameter("@ItemCode", Detail.ItemCode));
            cmds.Add(new CmdParameter("@IItemCoe", Detail.IItemCoe));
            cmds.Add(new CmdParameter("@ItemName", Detail.ItemName));

            cmds.Add(new CmdParameter("@ParentCode", Detail.ParentCode));
            cmds.Add(new CmdParameter("@Currency", Detail.Currency));
            cmds.Add(new CmdParameter("@CurrencyCode", Detail.CurrencyCode));
            cmds.Add(new CmdParameter("@ExchangeRate", Detail.ExchangeRate));
            cmds.Add(new CmdParameter("@Uom", Detail.Uom));
            cmds.Add(new CmdParameter("@BefQty", Detail.BefQty));
            cmds.Add(new CmdParameter("@BefPrjPrice", Detail.BefPrjPrice));
            cmds.Add(new CmdParameter("@BefAmount", Detail.BefAmount));
            cmds.Add(new CmdParameter("@AfQty", Detail.AfQty));
            cmds.Add(new CmdParameter("@AfPrice", Detail.AfPrice));
            cmds.Add(new CmdParameter("@AfAmount", Detail.AfAmount));

            cmds.Add(new CmdParameter("@ChangeQty", Detail.ChangeQty));
            cmds.Add(new CmdParameter("@ChangePrice", Detail.ChangePrice));
            cmds.Add(new CmdParameter("@ChangeAmount", Detail.ChangeAmount));
            cmds.Add(new CmdParameter("@Description", Detail.Description));
            cmds.Add(new CmdParameter("@Remark", Detail.Remark));
            cmds.Add(new CmdParameter("@OperationBy", OperationBy));
            cmds.Add(new CmdParameter("@Id", 0, System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@ChangeDetailNo", "", System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@Infor", "", System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@Ok", 0, System.Data.ParameterDirection.Output));

            ParameterResult pResult = new ParameterResult()
            {
                Parameters = cmds.ToArray()
            };

            HdDbCmdManager.GetInstance().Execute("ERP_BoQ.dbo.Gl_Cntrct_ChangeDetail_Add", CommandType.StoredProcedure, pResult.Parameters, Tran);
            if (!Convert.ToBoolean(pResult["@Ok"]))
            {
                throw new FaultException <ApplicationServiceError>(new ApplicationServiceError()
                {
                    ErrorMessage = pResult["@Infor"].ToString()
                });
            }
            Detail.ChangeDetailNo = pResult["@ChangeDetailNo"].ToString();
            return(Detail);
        }
Esempio n. 12
0
        public List <CacheGpuser> GetList(string key)
        {
            //return HdDbCmdManager.GetInstance
            //    ().QueryForList<CacheGpuser>(String.Format(@"Select LoginName,UserName
            //                                                From ERP_Identity.Auth.Gpuser
            //                                                Where CreateByOrgNo in
            //                                                (Select OrgNo From ERP_Identity.Org.Org
            //                                                Where OrgCode like '{0}%')", key), CommandType.Text, null);
            return(HdDbCmdManager.GetInstance().QueryForList <CacheGpuser>(String.Format(@"SELECT LoginName, UserName FROM ERP_Identity.Auth.Gpuser
WHERE LoginName in (SELECT LoginName FROM ERP_Identity.Org.OrgMember where OrgNo in (SELECT OrgNo from ERP_Identity.Org.Org where OrgCode like '{0}%'))", key), CommandType.Text, null));
        }
Esempio n. 13
0
        /// <summary>
        /// 获取清单No数据
        /// </summary>
        /// <param name="ProjectNo"></param>
        /// <returns></returns>
        private String GetWbsNo(String ProjectNo, SqlTransaction tran = null)
        {
            String strWbsNo  = null;
            WBSBoq boqHeader = HdDbCmdManager.GetInstance().QueryForFirstRow <WBSBoq>(WBS_BY_PROJECTNO, CommandType.Text, new CmdParameter[] {
                new CmdParameter("@ProjectNo", ProjectNo)
            }, tran);

            if (boqHeader != null)
            {
                strWbsNo = boqHeader.WbsNo;
            }
            return(strWbsNo);
        }
Esempio n. 14
0
        /// <summary>
        /// 获取Boq
        /// </summary>
        /// <param name="ProjectNo">项目No</param>
        /// <returns></returns>
        public ContractBoq GetByProjectNo(string ProjectNo)
        {
            ContractBoq boqResult = HdDbCmdManager.GetInstance().QueryForFirstRow <ContractBoq>(CHANGE_BY_PROJECTNO, System.Data.CommandType.Text, new CmdParameter[] {
                new CmdParameter("@ProjectNo", ProjectNo)
            });

            if (boqResult != null)
            {
                boqResult.BoiList = HdDbCmdManager.GetInstance().QueryForList <ContractBoi>(CHANGE_BY_CHANGENO, System.Data.CommandType.Text, new CmdParameter[] {
                    new CmdParameter("@BoqNo", boqResult.BoQNo)
                });
            }
            return(boqResult);
        }
Esempio n. 15
0
        public ContractBoqChange Get(string ChangeNo)
        {
            ContractBoqChange boqResult = HdDbCmdManager.GetInstance().QueryForFirstRow <ContractBoqChange>(CHANGE_BY_CHANGENO, System.Data.CommandType.Text, new CmdParameter[] {
                new CmdParameter("@ChangeNo", ChangeNo)
            });

            if (boqResult != null)
            {
                boqResult.Details = HdDbCmdManager.GetInstance().QueryForList <ContractBoqChangeDetail>(CHANGE_DETAIL_BY_CHANGENO, System.Data.CommandType.Text, new CmdParameter[] {
                    new CmdParameter("@ChangeNo", boqResult.ChangeNo)
                });
            }
            return(boqResult);
        }
Esempio n. 16
0
 public ContractBoqChange Save(ContractBoqChange BoqChange)
 {
     if (String.IsNullOrEmpty(BoqChange.ChangeNo))
     {
         //新增
         HdDbCmdManager.GetInstance().ExecuteTran(Tran => {
             Insert(BoqChange, ServiceContext.LoginName, Tran);
             BoqChange.Details.ForEach(m => {
                 m.ChangeNo = BoqChange.ChangeNo;
                 InsertDetail(m, ServiceContext.LoginName, Tran);
             });
         });
     }
     else
     {
         //临时变量
         ContractBoqChangeDetail temp = null;
         //修改
         ContractBoqChange oldData = Get(BoqChange.ChangeNo);
         HdDbCmdManager.GetInstance().ExecuteTran(Tran => {
             Update(BoqChange, ServiceContext.LoginName, Tran);
             List <ContractBoqChangeDetail> lstDelete  = oldData.Details.FindAll(m => !BoqChange.Details.Exists(n => n.ChangeDetailNo == m.ChangeDetailNo));
             List <ContractBoqChangeDetail> lstAdd     = BoqChange.Details.FindAll(m => String.IsNullOrEmpty(m.ChangeDetailNo));
             List <ContractBoqChangeDetail> lstDisable = BoqChange.Details.FindAll(m => (temp = oldData.Details.FirstOrDefault(n => n.ChangeDetailNo == m.ChangeDetailNo)) != null && temp.StatId == 1 && m.StatId == 0);
             List <ContractBoqChangeDetail> lstEnable  = BoqChange.Details.FindAll(m => (temp = oldData.Details.FirstOrDefault(n => n.ChangeDetailNo == m.ChangeDetailNo)) != null && temp.StatId == 0 && m.StatId == 1);
             List <ContractBoqChangeDetail> lstUpdate  = BoqChange.Details.FindAll(m => (temp = oldData.Details.FirstOrDefault(n => n.ChangeDetailNo == m.ChangeDetailNo)) != null && temp.StatId == m.StatId);
             lstDelete.ForEach(m => {
                 DeleteDetail(m.ChangeDetailNo, ServiceContext.LoginName, Tran);
             });
             lstAdd.ForEach(m =>
             {
                 m.ChangeNo = BoqChange.ChangeNo;
                 InsertDetail(m, ServiceContext.LoginName, Tran);
             });
             lstUpdate.ForEach(m =>
             {
                 UpdateDetail(m, ServiceContext.LoginName, Tran);
             });
             lstEnable.ForEach(m =>
             {
                 ChangeDataStat(m.ChangeDetailNo, 1, ServiceContext.LoginName, Tran);
             });
             lstDisable.ForEach(m =>
             {
                 ChangeDataStat(m.ChangeDetailNo, 0, ServiceContext.LoginName, Tran);
             });
         });
     }
     return(Get(BoqChange.ChangeNo));
 }
Esempio n. 17
0
        /// <summary>
        /// 获取Boq
        /// </summary>
        /// <param name="ProjectNo">项目No</param>
        /// <returns></returns>
        public ContractBoq GetByProjectNo(string ProjectNo)
        {
            ContractBoq boqResult = HdDbCmdManager.GetInstance().QueryForFirstRow <ContractBoq>(BOQ_BY_PROJECTNO, System.Data.CommandType.Text, new CmdParameter[] {
                new CmdParameter("@ProjectNo", ProjectNo)
            });

            if (boqResult != null)
            {
                string strOrderString = " ORDER BY ItemCode ASC";
                boqResult.BoiList = HdDbCmdManager.GetInstance().QueryForList <ContractBoi>(BOI_BY_BOQNO + strOrderString, System.Data.CommandType.Text, new CmdParameter[] {
                    new CmdParameter("@BoqNo", boqResult.BoQNo)
                });
            }
            return(boqResult);
        }
Esempio n. 18
0
        public void Fixed(string ChangeNo, bool Fixed)
        {
            Commit(ChangeNo);
            if (Fixed)
            {
                List <CmdParameter> cmds = new List <CmdParameter>();
                cmds.Add(new CmdParameter("@ChangeNo", ChangeNo));
                cmds.Add(new CmdParameter("@ReleaseBy", ServiceContext.UserName));
                cmds.Add(new CmdParameter("@ReleaseDate", DateTime.Now));
                cmds.Add(new CmdParameter("@OperationBy", ServiceContext.LoginName));
                cmds.Add(new CmdParameter("@Infor", "", System.Data.ParameterDirection.Output));
                cmds.Add(new CmdParameter("@Ok", 0, System.Data.ParameterDirection.Output));

                ParameterResult pResult = new ParameterResult()
                {
                    Parameters = cmds.ToArray()
                };
                HdDbCmdManager.GetInstance().Execute("ERP_BoQ.dbo.Gl_Cntrct_Change_Release", CommandType.StoredProcedure, pResult.Parameters);
                if (!Convert.ToBoolean(pResult["@Ok"]))
                {
                    throw new FaultException <ApplicationServiceError>(new ApplicationServiceError()
                    {
                        ErrorMessage = pResult["@Infor"].ToString()
                    });
                }
            }
            else
            {
                List <CmdParameter> cmds = new List <CmdParameter>();
                cmds.Add(new CmdParameter("@ChangeNo", ChangeNo));
                cmds.Add(new CmdParameter("@OperationBy", ServiceContext.LoginName));
                cmds.Add(new CmdParameter("@Infor", "", System.Data.ParameterDirection.Output));
                cmds.Add(new CmdParameter("@Ok", 0, System.Data.ParameterDirection.Output));

                ParameterResult pResult = new ParameterResult()
                {
                    Parameters = cmds.ToArray()
                };
                HdDbCmdManager.GetInstance().Execute("ERP_BoQ.dbo.Gl_Cntrct_Change_UnFix", CommandType.StoredProcedure, pResult.Parameters);
                if (!Convert.ToBoolean(pResult["@Ok"]))
                {
                    throw new FaultException <ApplicationServiceError>(new ApplicationServiceError()
                    {
                        ErrorMessage = pResult["@Infor"].ToString()
                    });
                }
            }
        }
Esempio n. 19
0
        /// <summary>
        /// 插入清单项
        /// </summary>
        /// <param name="BoqNo"></param>
        /// <param name="Boi"></param>
        /// <param name="OperationBy">操作人</param>
        /// <returns>No信息</returns>
        private ContractBoiNoInfo InsertBoi(String BoqNo, ContractBoi Boi, String OperationBy, SqlTransaction Tran = null)
        {
            List <CmdParameter> cmds = new List <CmdParameter>();

            cmds.Add(new CmdParameter("@ProjectNo", Boi.ProjectNo));
            cmds.Add(new CmdParameter("@BidNo", Boi.BidNo));
            cmds.Add(new CmdParameter("@BoQNo", BoqNo));
            cmds.Add(new CmdParameter("@IItemCoe", Boi.IItemCoe));
            cmds.Add(new CmdParameter("@ItemName", Boi.ItemName));
            cmds.Add(new CmdParameter("@ParentCode", Boi.ParentCode));
            cmds.Add(new CmdParameter("@Currency", Boi.Currency));
            cmds.Add(new CmdParameter("@CurrencyCode", Boi.CurrencyCode));
            cmds.Add(new CmdParameter("@ExchangeRate", Boi.ExchangeRate));
            cmds.Add(new CmdParameter("@Uom", Boi.Uom));
            cmds.Add(new CmdParameter("@CtrctQty", Boi.CtrctQty));
            cmds.Add(new CmdParameter("@CtrctPrjPrice", Boi.CtrctPrjPrice));
            cmds.Add(new CmdParameter("@CtrctAmount", Boi.CtrctAmount));
            cmds.Add(new CmdParameter("@Description", Boi.Description));
            cmds.Add(new CmdParameter("@CategoryNo", Boi.CategoryNo));
            cmds.Add(new CmdParameter("@isCntrctItem", Boi.isCntrctItem));
            cmds.Add(new CmdParameter("@isImportant", Boi.isImportant));
            cmds.Add(new CmdParameter("@isTax", Boi.isTax));
            cmds.Add(new CmdParameter("@OperationBy", OperationBy));
            cmds.Add(new CmdParameter("@Id", 0, System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@ItemNo", "", System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@ItemCode", Boi.ItemCode, System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@Infor", "", System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@Ok", 0, System.Data.ParameterDirection.Output));
            ParameterResult pResult = new ParameterResult()
            {
                Parameters = cmds.ToArray()
            };

            HdDbCmdManager.GetInstance().Execute("ERP_BoQ.dbo.Gl_Cntrct_Boi_Add", CommandType.StoredProcedure, pResult.Parameters, Tran);
            if (!Convert.ToBoolean(pResult["@Ok"]))
            {
                throw new FaultException <ApplicationServiceError>(new ApplicationServiceError()
                {
                    ErrorMessage = pResult["@Infor"].ToString()
                });
            }
            ContractBoiNoInfo BoiInfo = new ContractBoiNoInfo();

            BoiInfo.ItemCode = Boi.ItemCode;
            BoiInfo.ItemNo   = pResult["@ItemNo"].ToString();
            return(BoiInfo);
        }
Esempio n. 20
0
        /// <summary>
        /// 获取Boq
        /// </summary>
        /// <param name="ProjectNo">项目No</param>
        /// <returns></returns>
        public WBSBoq GetByProjectNo(string ProjectNo)
        {
            WBSBoq WBSResult = HdDbCmdManager.GetInstance().QueryForFirstRow <WBSBoq>(WBS_BY_PROJECTNO, System.Data.CommandType.Text, new CmdParameter[] {
                new CmdParameter("@ProjectNo", ProjectNo)
            });

            if (WBSResult != null)
            {
                string strOrderString = " ORDER BY WbsSysCode ASC";
                WBSResult.WBSlineList = HdDbCmdManager.GetInstance().QueryForList <WBSline>(WBSLINE_BY_BOQNO + strOrderString, System.Data.CommandType.Text, new CmdParameter[] {
                    new CmdParameter("@WbsNo", WBSResult.WbsNo)
                });

                WBSResult.AllRelationList = HdDbCmdManager.GetInstance().QueryForList <WBSline_boi>(RELATION_BY_BOQNO, System.Data.CommandType.Text, new CmdParameter[] {
                    new CmdParameter("@WbsNo", WBSResult.WbsNo)
                });
            }
            return(WBSResult);
        }
Esempio n. 21
0
        /// <summary>
        /// 插入清单项
        /// </summary>
        /// <param name="BoqNo"></param>
        /// <param name="Boi"></param>
        /// <param name="OperationBy">操作人</param>
        /// <returns>No信息</returns>
        private WBSline InsertWBSline(String WbsNo, WBSline Boi, String OperationBy, SqlTransaction Tran = null)
        {
            List <CmdParameter> cmds = new List <CmdParameter>();

            cmds.Add(new CmdParameter("@ProjectNo", Boi.ProjectNo));
            cmds.Add(new CmdParameter("@BidNo", Boi.BidNo));
            cmds.Add(new CmdParameter("@WbsNo", WbsNo));
            cmds.Add(new CmdParameter("@WbsLineCode", Boi.WbsLineCode));
            cmds.Add(new CmdParameter("@WbsLineName", Boi.WbsLineName));
            cmds.Add(new CmdParameter("@WbsSysCode", Boi.WbsSysCode));
            cmds.Add(new CmdParameter("@ParentCode", Boi.ParentCode));
            cmds.Add(new CmdParameter("@Amount", Boi.Amount));
            cmds.Add(new CmdParameter("@AmountEx", Boi.AmountEx));
            cmds.Add(new CmdParameter("@Currency", Boi.Currency));
            cmds.Add(new CmdParameter("@CurrencyCode", Boi.CurrencyCode));
            cmds.Add(new CmdParameter("@ExchangeRate", Boi.ExchangeRate));
            cmds.Add(new CmdParameter("@DrawNo", Boi.DrawNo));
            cmds.Add(new CmdParameter("@StartStakesNo", Boi.StartStakesNo));
            cmds.Add(new CmdParameter("@EndStakesNo", Boi.EndStakesNo));
            cmds.Add(new CmdParameter("@OperationBy", OperationBy));
            cmds.Add(new CmdParameter("@Id", 0, System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@WbsLineNo", "", System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@Infor", "", System.Data.ParameterDirection.Output));
            cmds.Add(new CmdParameter("@Ok", 0, System.Data.ParameterDirection.Output));
            ParameterResult pResult = new ParameterResult()
            {
                Parameters = cmds.ToArray()
            };

            HdDbCmdManager.GetInstance().Execute("ERP_BoQ.dbo.Gl_Cntrct_Wbsline_Add", CommandType.StoredProcedure, pResult.Parameters, Tran);
            if (!Convert.ToBoolean(pResult["@Ok"]))
            {
                throw new FaultException <ApplicationServiceError>(new ApplicationServiceError()
                {
                    ErrorMessage = pResult["@Infor"].ToString()
                });
            }
            Boi.WbsNo     = WbsNo;
            Boi.WbsLineNo = pResult["@WbsLineNo"].ToString();
            return(Boi);
        }
Esempio n. 22
0
        public List <ContractBoiNoInfo> Save(string ProjectNo, string BidNo, String BoqName, decimal TotalAmount, List <ContractBoi> AddList, List <ContractBoi> UpdateList, List <string> DeleteItemNoList)
        {
            List <ContractBoiNoInfo> lstBoiNoInfo = new List <ContractBoiNoInfo>();
            String strBoqNo = null;

            HdDbCmdManager.GetInstance().ExecuteTran(Tran => {
                strBoqNo = GetBoqNo(ProjectNo, Tran);
                if (String.IsNullOrEmpty(strBoqNo))
                {
                    strBoqNo = InsertBoq(ProjectNo, BidNo, BoqName, TotalAmount, ServiceContext.LoginName, Tran);
                }
                else
                {
                    UpdateBoq(strBoqNo, BoqName, TotalAmount, ServiceContext.LoginName, Tran);
                }
                //删除明细
                if (DeleteItemNoList != null)
                {
                    DeleteItemNoList.ForEach(m => {
                        DeleteBoi(m, ServiceContext.LoginName, Tran);
                    });
                }
                //修改
                if (UpdateList != null)
                {
                    UpdateList.ForEach(m => {
                        UpdateBoi(m, ServiceContext.LoginName, Tran);
                    });
                }
                //新增
                if (AddList != null)
                {
                    AddList.ForEach(m => {
                        lstBoiNoInfo.Add(InsertBoi(strBoqNo, m, ServiceContext.LoginName, Tran));
                    });
                }
            });
            return(lstBoiNoInfo);
        }
Esempio n. 23
0
        /// <summary>
        /// 获取Boq并将其压缩成字节流
        /// </summary>
        /// <param name="ProjectNo"></param>
        /// <returns></returns>
        public Byte[] GetBytesByProjectNo(string ProjectNo)
        {
            DataSet ds = HdDbCmdManager.GetInstance().QueryForDataSet(WBS_BY_PROJECTNO, System.Data.CommandType.Text, new CmdParameter[] {
                new CmdParameter("@ProjectNo", ProjectNo)
            });

            try
            {
                if (ds.Tables[0].Rows.Count > 0)
                {
                    string WbsNo            = ds.Tables[0].Rows[0]["WbsNo"].ToString();
                    string strOrderString   = " ORDER BY WbsSysCode ASC";
                    string strOrderString01 = " ORDER BY WbsSysCode,ERP_BoQ.dbo.formatstr(IItemCoe,'-') ASC";

                    DataTable dtWbsline = HdDbCmdManager.GetInstance().QueryForDataSet(WBSLINE_BY_BOQNO + strOrderString, System.Data.CommandType.Text, new CmdParameter[] {
                        new CmdParameter("@WbsNo", WbsNo)
                    }).Tables[0].Copy();
                    dtWbsline.TableName = "change_applywbs";

                    DataTable dtAllRelation = HdDbCmdManager.GetInstance().QueryForDataSet(RELATION_BY_BOQNO + strOrderString01, System.Data.CommandType.Text, new CmdParameter[] {
                        new CmdParameter("@WbsNo", WbsNo)
                    }).Tables[0].Copy();
                    dtAllRelation.TableName = "change_applydetail";

                    ds.Tables.Add(dtWbsline);
                    ds.Tables.Add(dtAllRelation);
                }
            }
            catch (Exception ex)
            {
                throw new FaultException <ApplicationServiceError>(new ApplicationServiceError()
                {
                    ErrorMessage = ex.ToString()
                });
            }

            return(Erp.CommonData.DataZip.CompressConvertToBytes(ds));
        }
Esempio n. 24
0
 public void ImportWBS(String WbsNo, List <WBSline> ImportList)
 {
     HdDbCmdManager.GetInstance().ExecuteTran(Tran => {
         ImportList.ForEach(m => { InsertWBSline(WbsNo, m, ServiceContext.LoginName, Tran); });
     });
 }
Esempio n. 25
0
 public List <ContractBoqChangeInfo> GetList(string BoqNo)
 {
     return(HdDbCmdManager.GetInstance().QueryForList <ContractBoqChangeInfo>(CHANGE_BY_BOQNO, System.Data.CommandType.Text, new CmdParameter[] {
         new CmdParameter("@BoqNo", BoqNo)
     }));
 }
Esempio n. 26
0
 public List <ContractBoqChangeInfo> GetListByProjectNo(string ProjectNo)
 {
     return(HdDbCmdManager.GetInstance().QueryForList <ContractBoqChangeInfo>(CHANGE_BY_PROJECTNO, System.Data.CommandType.Text, new CmdParameter[] {
         new CmdParameter("@ProjectNo", ProjectNo)
     }));
 }
Esempio n. 27
0
 /// <summary>
 /// 获取清单项变更记录
 /// </summary>
 /// <param name="ItemNo"></param>
 /// <returns></returns>
 public List <ContractBoqChangeLog> GetItemChangeLog(string ItemNo)
 {
     return(HdDbCmdManager.GetInstance().QueryForList <ContractBoqChangeLog>(CHANGE_LOG_BYITEMNO, System.Data.CommandType.Text, new CmdParameter[] {
         new CmdParameter("@ItemNo", ItemNo)
     }));
 }
Esempio n. 28
0
        public WBSBoq Save(string ProjectNo, string BidNo, String WbsName, decimal TotalAmount
                           , List <WBSline> AddList, List <WBSline> UpdateList, List <string> DeleteItemNoList
                           , List <WBSline_boi> AddRelation, List <WBSline_boi> UpdateRelation, List <WBSline_boi> DeleteRelation)
        {
            WBSBoq result   = new WBSBoq();
            String strWbsNo = null;

            HdDbCmdManager.GetInstance().ExecuteTran(Tran =>
            {
                strWbsNo = GetWbsNo(ProjectNo, Tran);
                if (String.IsNullOrEmpty(strWbsNo))
                {
                    strWbsNo = InsertBoq(ProjectNo, BidNo, WbsName, TotalAmount, ServiceContext.LoginName, Tran);
                }
                else
                {
                    UpdateBoq(BidNo, strWbsNo, WbsName, TotalAmount, ServiceContext.LoginName, Tran);
                }

                //删除关联关系
                if (DeleteRelation != null)
                {
                    DeleteRelation.ForEach(m =>
                    {
                        DeleteWBSlineBoi(m.ItemNo, m.WBSLineNo, ServiceContext.LoginName, Tran);
                    });
                }

                //删除明细
                if (DeleteItemNoList != null)
                {
                    DeleteItemNoList.ForEach(m =>
                    {
                        DeleteWBSline(m, ServiceContext.LoginName, Tran);
                    });
                }

                //修改关联关系
                if (UpdateRelation != null)
                {
                    UpdateRelation.ForEach(m =>
                    {
                        if (DeleteRelation.Find(n => n.WBSLineNo == m.WBSLineNo && n.ItemNo == m.ItemNo) == null)
                        {
                            UpdateWBSlineBoi(m, ServiceContext.LoginName, Tran);
                        }
                    });
                }

                //修改
                if (UpdateList != null)
                {
                    UpdateList.ForEach(m =>
                    {
                        UpdateWBSline(m, ServiceContext.LoginName, Tran);
                    });
                }

                //新增WBS清单项
                if (AddList != null)
                {
                    AddList.ForEach(m =>
                    {
                        result.WBSlineList.Add(InsertWBSline(strWbsNo, m, ServiceContext.LoginName, Tran));
                    });
                }

                //新增关联关系
                if (AddRelation != null)
                {
                    AddRelation.ForEach(m =>
                    {
                        m.WbsNo = strWbsNo;
                        if (String.IsNullOrEmpty(m.WBSLineNo))
                        {
                            WBSline line = result.WBSlineList.Find(n => n.WbsSysCode == m.WbsSysCode);
                            m.WBSLineNo  = line != null ? line.WbsLineNo : null;
                        }
                        result.AllRelationList.Add(AddWBSlineBoi(strWbsNo, m, ServiceContext.LoginName, Tran));
                    });
                }
            });
            return(result);
        }