/// <summary>
        /// 获取医院匹配数据
        /// </summary>
        /// <param name="erpHisCode"></param>
        /// <param name="orgId"></param>
        /// <returns></returns>
        public string GetCorpMapData(string erpHisCode, string orgId)
        {
            //string sql = "select ORG_ID from ERP_CORP_MAP p where p.saler_orgid=:orgId and p.CODE = :code and p.PROCESS_FLAG = '1'";
            string sql    = "select ORG_ID from GPO_CORP_MAP p where p.MAP_ORGID=:orgId and p.CODE = :code and p.MAP_ORGTYPE = '2'";
            string result = null;


            DbParameter paramBuyer = base.DbFacade.CreateParameter();

            paramBuyer.ParameterName = "orgId";
            paramBuyer.DbType        = DbType.String;
            paramBuyer.Value         = orgId;
            DbParameter paramPlat = base.DbFacade.CreateParameter();

            paramPlat.ParameterName = "code";
            paramPlat.DbType        = DbType.String;
            paramPlat.Value         = erpHisCode;

            try
            {
                object o = DbFacade.SQLExecuteDataTable(sql.ToString(), paramBuyer, paramPlat);
                if (o != null)
                {
                    result = o.ToString();
                }
            }
            catch (Exception e)
            {
                //throw e;
            }
            return(result);
        }
        /// <summary>
        /// 获取买方匹配数据
        /// </summary>
        /// <param name="erpHisCode"></param>
        /// <param name="orgId"></param>
        /// <returns></returns>
        public string GetCorpMapData(string erpHisCode, string orgId, out object crpnum)
        {
            StringBuilder sb = new StringBuilder();

            sb.Append("select org_id from gpo_corp_map p ");
            sb.AppendFormat(" where p.map_orgid ='{0}'", orgId);
            sb.AppendFormat(" and p.code ='{0}'", erpHisCode);
            string result = null;

            try
            {
                object o = DbFacade.SQLExecuteScalar(sb.ToString());
                if (o != null)
                {
                    result = o.ToString();
                }
            }
            catch (Exception e)
            {
                //throw e;
            }
            StringBuilder sbNum = new StringBuilder();

            sbNum.Append("select count(1) from gpo_corp_map p");
            sbNum.AppendFormat(" where p.map_orgid ='{0}'", orgId);
            sbNum.AppendFormat(" and p.code ='{0}'", erpHisCode);
            crpnum = DbFacade.SQLExecuteScalar(sbNum.ToString());
            return(result);
        }
Esempio n. 3
0
        //检查是否可删除采购单明细记录

        public bool CheckPurchaseItemForDelete(DataRow dr, out string strInvalid)
        {
            bool        flag = true;
            string      sql  = "select state from hc_ord_purchase hop, hc_ord_purchase_item hopi where hop.id = hopi.PURCHASE_ID and hopi.id=:ID";
            DbParameter para = this.DbFacade.CreateParameter();

            para.ParameterName = "ID";
            para.DbType        = DbType.UInt64;
            para.Value         = dr["ID"];
            object o = DbFacade.SQLExecuteScalar(sql, para);

            strInvalid = "";
            if (o != null)
            {
                string state = o.ToString();

                //if (state.Equals("2"))
                //{
                //    strInvalid = "table:hc_ord_purchase/id:" + dr["PURCHASE_ID"] + "/采购单主表状态字段为2(送审),不能进行删除操作";
                //    flag = false;
                //}
                if (state.Equals("4"))
                {
                    strInvalid = "table:hc_ord_purchase/id:" + dr["PURCHASE_ID"] + "/采购单主表状态字段为4(发送),不能进行删除操作";
                    flag       = false;
                }
            }
            return(flag);
        }
Esempio n. 4
0
        //检查是否插入采购单记录
        public bool CheckPurchaseForInsert(DataRow dr, out string strInvalid)
        {
            bool        flag = true;
            string      sql  = "select state from hc_ord_purchase where id=:id";
            DbParameter para = this.DbFacade.CreateParameter();

            para.ParameterName = "id";
            para.DbType        = DbType.UInt64;
            para.Value         = dr["id"];
            object o = DbFacade.SQLExecuteScalar(sql, para);

            strInvalid = "";
            if (o != null)
            {
                //获取状态标记

                string state = o.ToString();
                if (state.Equals("4"))
                {
                    strInvalid = "table:hc_ord_purchase/id:" + dr["id"] + "/状态字段为4(发送),不能进行新增操作";
                    flag       = false;
                }
                //if (state.Equals("2"))
                //{
                //    strInvalid = "table:hc_ord_purchase/id:" + dr["id"] + "/状态字段为2(送审),不能进行新增操作";
                //    flag = false;
                //}
            }
            return(flag);
        }
        /// <summary>
        /// 得到所有交易场ID
        /// </summary>
        /// <param name="plat3"></param>
        /// <returns></returns>
        public List <string> findAllExchange(List <string> plat3)
        {
            if (plat3.Count == 0)
            {
                return(null);
            }
            string sql = "select id from plt_plat where plat_father = ";

            foreach (string subPlatId in plat3)
            {
                sql += "'" + subPlatId + "'" + " union";
            }
            sql = sql.Substring(0, sql.Length - 5);

            List <string> result = null;

            try
            {
                result = (List <string>)DbFacade.SQLExecuteList <string>(sql, new MapRow <string>(MapPlatId));
            }
            catch (Exception e)
            {
                throw e;
            }
            return(result);
        }
        /// <summary>
        /// 判断该明细所有记录是否已确认
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public bool IsAffirmInvoiceFromItemState(string StrInvoiceFromId, DbTransaction transaction)
        {
            bool flag = false;

            StringBuilder strSql = new StringBuilder();

            strSql.AppendFormat(@"Select 
                                Count(1) 
                                From HC_ORD_INVOICE_FROM_ITEM 
                                Where INVOICE_FROM_ID={0} And State='1'", StrInvoiceFromId);

            try
            {
                int Count = Convert.ToInt16(DbFacade.SQLExecuteScalar(strSql.ToString(), transaction).ToString());
                if (Count > 0)
                {
                    //已添加
                    flag = true;
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(flag);
        }
        /// <summary>
        /// 根据UserId和平台ID查询角色ID
        /// </summary>
        /// <param name="userId"></param>
        /// <param name="platId"></param>
        /// <returns></returns>
        public List <string> findRolesByUserIdAndPlatId(string userId, string platId)
        {
            string             sql        = "select usr_user_role.role_id as ID from usr_user_role , usr_role_plat where usr_user_role.user_id = :user_id and usr_role_plat.plat_id = :plat_id and usr_user_role.role_id = usr_role_plat.role_id ";
            List <DbParameter> parameters = new List <DbParameter>();
            DbParameter        param      = this.DbFacade.CreateParameter();

            param.ParameterName = "user_id";
            param.DbType        = DbType.String;
            param.Value         = userId;
            parameters.Add(param);

            param = this.DbFacade.CreateParameter();
            param.ParameterName = "plat_id";
            param.DbType        = DbType.String;
            param.Value         = platId;
            parameters.Add(param);

            List <string> result = null;

            try
            {
                result = (List <string>)DbFacade.SQLExecuteList <string>(sql, new MapRow <string>(MapPlatId), parameters.ToArray());
            }
            catch (Exception e)
            {
                throw e;
            }
            return(result);
        }
        /// <summary>
        /// 根绝角色ID查询平台ID
        /// </summary>
        /// <param name="roleList"></param>
        /// <returns></returns>
        public List <string> findPlatsByRoleId(List <string> roleList)
        {
            if (roleList.Count == 0)
            {
                return(null);
            }
            string sql = "select plat_id as ID from usr_role_plat where role_id = ";

            foreach (string subRoleId in roleList)
            {
                sql += "'" + subRoleId + "'" + " union";
            }
            sql = sql.Substring(0, sql.Length - 5);

            List <string> result = null;

            try
            {
                result = (List <string>)DbFacade.SQLExecuteList <string>(sql, new MapRow <string>(MapPlatId));
            }
            catch (Exception e)
            {
                throw e;
            }
            return(result);
        }
Esempio n. 9
0
        /// <summary>
        /// 判断备货单明细中是否都已确认
        /// </summary>
        /// <param name="strStockUpID"></param>
        /// <returns></returns>
        public bool IsAllAffirmByItem(string strStockUpID, DbTransaction transaction)
        {
            bool flag = false;

            StringBuilder strSql = new StringBuilder();

            strSql.AppendFormat(@"Select 
                                Count(1) 
                                From HC_ORD_ORD_STOCK_ITEM 
                                Where STATE Not In('2','4') And STOCK_ID={0}", strStockUpID);

            try
            {
                int Count = Convert.ToInt16(DbFacade.SQLExecuteScalar(strSql.ToString(), transaction).ToString());
                if (Count > 0)
                {
                    flag = true;
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(flag);
        }
        /// <summary>
        /// 去用户数量


        /// </summary>
        /// <returns></returns>
        public int GetUserCount(string userCode)
        {
            int           count;
            object        obj = null;
            StringBuilder sql = new StringBuilder();

            sql.Append("SELECT count(*) FROM cen_usr_user where  mail = '");
            sql.Append(userCode).Append("' ");
            try
            {
                obj = DbFacade.SQLExecuteScalar(sql.ToString());
            }
            catch (Exception ex)
            {
                throw ex;
            }
            if (obj != null)
            {
                count = (int)obj;
            }
            else
            {
                count = 0;
            }
            return(count);
        }
        /// <summary>
        /// 根据项目类型获取项目信息
        /// </summary>
        /// <param name="ProjectType"></param>
        /// <returns></returns>
        public DataTable GetProjectInfoByProjectType(string ProjectType)
        {
            List <DbParameter> parameters = new List <DbParameter>();

            DataTable dt = new DataTable();

            StringBuilder strSql = new StringBuilder();

            strSql.Append(@"Select cast(ID As int) As ID,PROJECT_NAME  From HC_ORD_PROJECT Where 1=1");

            if (!string.IsNullOrEmpty(ProjectType))
            {
                strSql.Append(" And PROJECT_TYPE = @ProjectType");

                DbParameter strProjectType = DbFacade.CreateParameter();
                strProjectType.ParameterName = "ProjectType";
                strProjectType.DbType        = DbType.String;
                strProjectType.Value         = ProjectType;
                parameters.Add(strProjectType);
            }

            strSql.Append(" Order By ID DESC");

            try
            {
                dt = base.DbFacade.SQLExecuteDataTable(strSql.ToString(), parameters.ToArray());
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(dt);
        }
        /// <summary>
        /// 删除数据
        /// </summary>
        /// <param name="dr"></param>
        /// <param name="tran"></param>
        private void deleteData(DataRow dr, DbTransaction tran)
        {
            string sql = "delete from " + dr["Table_Name"].ToString() + " where " + dr["PK_NAME"].ToString() + "='" + dr["Id"].ToString() + "'";

            SaveDelLog(dr["Table_Name"].ToString(), dr["Id"].ToString(), dr["CREATE_USERID"].ToString(), tran);
            DbFacade.SQLExecuteNonQuery(sql.ToString(), tran);
        }
 /// <summary>
 /// 更新数据
 /// </summary>
 /// <param name="dr"></param>
 /// <param name="updateSql"></param>
 /// <param name="tran"></param>
 private void UpdateData(DataRow dr, string updateSql, DbTransaction tran)
 {
     try
     {
         StringBuilder sql    = new StringBuilder();
         object[]      values = dr.ItemArray;
         //dr.ItemArray.CopyTo(values, 0);
         string        id      = "";
         List <string> valuesL = new List <string>();
         for (int i = 0; i < values.Length; i++)
         {
             if (i != dr.Table.PrimaryKey[0].Ordinal)
             {
                 valuesL.Add(values[i].ToString().Trim());
             }
             else
             {
                 id = values[i].ToString().Trim();
             }
         }
         sql.AppendFormat(updateSql, valuesL.ToArray());
         sql.AppendFormat(" where " + dr.Table.PrimaryKey[0].ColumnName + "='{0}'", id);
         DbFacade.SQLExecuteNonQuery(sql.ToString(), tran);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Esempio n. 14
0
        /// <summary>
        /// 采购单
        /// </summary>
        /// <returns></returns>
        public DataTable GetPurchaseReportData(string sPurchaseId)
        {
            StringBuilder sbSql = new StringBuilder();

            sbSql.Append(" select hi.product_name,");
            sbSql.Append(" hi.common_name,");
            sbSql.Append(" hi.brand,");
            sbSql.Append(" hi.spec,");
            sbSql.Append(" hi.model,");
            sbSql.Append(" hi.manufacture_name,");
            sbSql.Append(" hi.sender_name,");
            sbSql.Append(" hi.trade_price,");
            sbSql.Append(" hi.amount,");
            sbSql.Append(" hp.code,");
            sbSql.Append(" hp.create_user_name,");
            sbSql.Append(" hp.create_date,");
            sbSql.Append(" hp.total_sum,");
            sbSql.Append(" case hp.state when '1' then '准备' when '2' then '送审' when '3' then '拒绝' when '4' then '审核通过' end as state,");
            sbSql.Append(" case hp.quicksend_level when '1' then '普通' when '2' then '部分紧急' when '3' then '紧急' end as quicksend_level ");
            sbSql.Append(" from hc_ord_purchase hp left join hc_ord_purchase_item hi on hp.id = hi.purchase_id ");
            sbSql.AppendFormat(" where hp.id = '{0}'", sPurchaseId);
            DataTable dt = new DataTable();

            try
            {
                dt = DbFacade.SQLExecuteDataTable(sbSql.ToString());
            }
            catch
            {
                throw;
            }
            return(dt);
        }
Esempio n. 15
0
        /// <summary>
        /// 订单主表更新校验
        /// </summary>
        /// <param name="dr"></param>
        /// <param name="strInvalid"></param>
        /// <returns></returns>
        public bool CheckRequest(string requestID, out string strInvalid)
        {
            strInvalid = "";
            bool        flag = false;
            string      sql  = "select REQUEST_STATE from GPO_REQUEST where ID = :ID";
            DbParameter para = this.DbFacade.CreateParameter();

            para.ParameterName = "ID";
            para.DbType        = DbType.AnsiString;
            para.Value         = requestID;

            Object o = DbFacade.SQLExecuteScalar(sql, para);

            //判断 ord_order表订单状态 ORDER_STATE 为 3(完成)则不能修改

            if (o != null)
            {
                string state = o.ToString();
                if (state.Equals("8"))
                {
                    strInvalid = "table:GPO_REQUEST/ID:" + requestID + "/采购申请状态字段为8(作废),不能修改";
                    flag       = false;
                }
                else
                {
                    flag = true;
                }
            }

            return(flag);
        }
        /// <summary>
        /// 判断自定义编码表中 编码是否已存在
        /// </summary>
        /// <param name="strProductMnemonic"></param>
        /// <param name="strHit_Comm_Id"></param>
        /// <returns></returns>
        public bool DefineCodeIsAddProductMnemonic(string strProductMnemonic, string strHit_Comm_Id)
        {
            bool flag = false;

            StringBuilder strSql = new StringBuilder();

            strSql.AppendFormat(@"Select 
                                Count(1) 
                                From hc_self_define_info 
                                Where PRODUCT_MNEMONIC='{0}'", strProductMnemonic);

            if (!string.IsNullOrEmpty(strHit_Comm_Id))
            {
                strSql.AppendFormat("  And HIT_COMM_ID<>'{0}'", strHit_Comm_Id);
            }

            try
            {
                int Count = Convert.ToInt16(DbFacade.SQLExecuteScalar(strSql.ToString()).ToString());
                if (Count > 0)
                {
                    //已添加
                    flag = true;
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(flag);
        }
Esempio n. 17
0
        /// <summary>
        /// 备货
        /// </summary>
        /// <returns></returns>
        public DataTable GetStokReportData(string sStockId)
        {
            StringBuilder sbSql = new StringBuilder();

            sbSql.Append("select hs.code,");
            sbSql.Append("hs.remark,");
            sbSql.Append("hs.sender_name,");
            sbSql.Append("case hs.state when '1' then '未发送' when '2' then '已发送' when '3' then '买方已确认' when '4' then '作废' when '5' then '确认中' when '6' then '完成' end as state,");
            sbSql.Append("hs.create_user_name,");
            sbSql.Append("hs.create_date,");      //
            sbSql.Append("hi.product_name,");     //
            sbSql.Append("hi.barcode,");
            sbSql.Append("hi.manufacture_name,"); //
            sbSql.Append("hi.batch_no,");
            sbSql.Append("hi.valid_date,");
            sbSql.Append("hi.spec,");  //
            sbSql.Append("hi.model,"); //
            sbSql.Append("hop.price,");
            sbSql.Append("hi.num ");
            sbSql.Append("from hc_ord_ord_stock hs left join hc_ord_ord_stock_item hi on hs.id = hi.stock_id ");
            sbSql.Append(" left join hc_ord_product hop on hi.project_prod_id = hop.id ");
            sbSql.AppendFormat(" where hs.id = '{0}'", sStockId);
            DataTable dt = new DataTable();

            try
            {
                dt = DbFacade.SQLExecuteDataTable(sbSql.ToString());
            }
            catch
            {
                throw;
            }
            return(dt);
        }
Esempio n. 18
0
        /// <summary>
        /// 判断该项目中产品分类是否 允许订单流程
        /// </summary>
        /// <param name="model"></param>
        /// <param name="logedinUser"></param>
        /// <returns></returns>
        public bool IsOrdFlagByProductIDAndSalerID(OrdHitCommMode model, DbTransaction transaction)
        {
            bool flag = false;

            StringBuilder strSql = new StringBuilder();

            strSql.AppendFormat(@"Select 
                                  COUNT(1) 
                                  From HC_PROJECT_PROD_CLASS_CONTENT ppcc,HC_PROJECT_PROD_CLASS_CONFIG pcc
                                  Where ppcc.CLASS_ID=pcc.CLASS_ID And pcc.ORDER_FLAG='1' 
                                  And ppcc.PRODUCT_ID='{0}' And pcc.SALER_ID='{1}'", model.Project_Product_Id, model.Saler_Id);

            try
            {
                int Count = Convert.ToInt16(DbFacade.SQLExecuteScalar(strSql.ToString(), transaction).ToString());
                if (Count > 0)
                {
                    //允许订单流程
                    flag = true;
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(flag);
        }
        /// <summary>
        /// 判断自定义编码产品表中该产品是否已添加
        /// </summary>
        /// <param name="productcode"></param>
        /// <returns></returns>
        public bool DefineCodeIsAddProductId(DefineInfoModel model, DbTransaction transaction)
        {
            bool flag = false;

            StringBuilder strSql = new StringBuilder();

            strSql.AppendFormat(@"Select 
                                Count(1) 
                                From hc_self_define_info 
                                Where HIT_COMM_ID='{0}'", model.Hit_Comm_Id);

            try
            {
                int Count = Convert.ToInt16(DbFacade.SQLExecuteScalar(strSql.ToString(), transaction).ToString());
                if (Count > 0)
                {
                    //已添加
                    flag = true;
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(flag);
        }
        /// <summary>
        /// 订单退货表数据插入校验
        /// </summary>
        /// <param name="dr"></param>
        /// <param name="strInvalid"></param>
        /// <returns></returns>
        public bool CheckOrderReturnForInsert(DataRow dr, out string strInvalid)
        {
            strInvalid = "";
            bool        flag = true;
            string      sql  = "select FACT_AMOUNT,RETURN_AMOUNT from HC_ORD_ORDER_RECEIVE where ID = :RECEIVE_ID";
            DbParameter para = this.DbFacade.CreateParameter();

            para.ParameterName = "RECEIVE_ID";
            para.DbType        = DbType.AnsiString;
            para.Value         = dr["RECEIVE_ID"];

            DataTable dt = DbFacade.SQLExecuteDataTable(sql, para);

            if (dt.Rows.Count > 0)
            {
                //实际到货量

                Decimal ReceiveQty   = Convert.ToDecimal(dt.Rows[0]["FACT_AMOUNT"].ToString());
                Decimal returnAmount = Convert.ToDecimal(dt.Rows[0]["RETURN_AMOUNT"].ToString());
                //退货数量

                Decimal ReturnQty = Convert.ToDecimal(dr["AMOUNT"].ToString());
                //退货数量不能大于实际到货量
                if (ReturnQty + returnAmount > ReceiveQty)
                {
                    strInvalid = "table:HC_ORD_ORDER_RECEIVE/id:" + dr["RECEIVE_ID"] + "/中到货数量不得小于新增退货数量,不能修改";
                    flag       = false;
                }
            }

            return(flag);
        }
Esempio n. 21
0
        /// <summary>
        /// 判断该项目中产品是否已添加到常用采购目录中
        /// </summary>
        /// <param name="model"></param>
        /// <param name="logedinUser"></param>
        /// <returns></returns>
        public bool OrdHitCommIsAdd(OrdHitCommMode model, DbTransaction transaction)
        {
            bool flag = false;

            StringBuilder strSql = new StringBuilder();

            strSql.AppendFormat(@"Select 
                                Count(1) 
                                From HC_ORD_HIT_COMM 
                                Where PROJECT_PROD_ID='{0}' And SPEC_ID='{1}' And MODEL_ID='{2}'", model.Project_Product_Id, model.Spec_Id, model.Model_Id);

            try
            {
                int Count = Convert.ToInt16(DbFacade.SQLExecuteScalar(strSql.ToString(), transaction).ToString());
                if (Count > 0)
                {
                    //已添加
                    flag = true;
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(flag);
        }
        /// <summary>
        /// 订单退货表数据更新校验
        /// </summary>
        /// <param name="dr"></param>
        /// <param name="strInvalid"></param>
        /// <returns></returns>
        public bool CheckOrderReturnForUpdate(DataRow dr, out string strInvalid)
        {
            strInvalid = "";
            bool        flag = true;
            string      sql  = "select return_state from Gpo_Order_Return where id = :id";
            DbParameter para = this.DbFacade.CreateParameter();

            para.ParameterName = "id";
            para.DbType        = DbType.AnsiString;
            para.Value         = dr["id"];

            Object o = DbFacade.SQLExecuteScalar(sql, para);

            if (o != null)
            {
                string state = o.ToString();
                //判断 退货明细表ord_order_return中RETURN_STATE(退货状态)为3 (同意)时,不能进行修改
                if (state.Equals("3"))
                {
                    strInvalid = "table:Ord_Order_Return/id:" + dr["id"] + "/状态字段为3(同意),不能修改";
                    flag       = false;
                }
            }

            return(flag);
        }
        /// <summary>
        /// 订单主表更新校验
        /// </summary>
        /// <param name="dr"></param>
        /// <param name="strInvalid"></param>
        /// <returns></returns>
        public bool CheckOrderForUpdate(DataRow dr, out string strInvalid)
        {
            strInvalid = "";
            bool        flag = true;
            string      sql  = "select state from hc_ord_Order where id = :order_id";
            DbParameter para = this.DbFacade.CreateParameter();

            para.ParameterName = "order_id";
            para.DbType        = DbType.UInt64;
            para.Value         = dr["ID"];

            Object o = DbFacade.SQLExecuteScalar(sql, para);

            //判断 ord_order表订单状态 ORDER_STATE 为 5(完成)6(作废)则不能修改

            if (o != null)
            {
                string state = o.ToString();
                if (state.Equals("5") || state.Equals("6"))
                {
                    strInvalid = "table:hc_ord_Order/id:" + dr["id"] + "/订单状态字段为5(完成)或6(作废),不能修改";
                    flag       = false;
                }
            }

            return(flag);
        }
Esempio n. 24
0
        //获取导出产品信息
        public DataTable GetExportGpoProductMapList()
        {
            DataTable dt = new DataTable();

            StringBuilder sqlstr = new StringBuilder();

            sqlstr.Append("Select ");
            sqlstr.Append(" cp.MEDICAL_NAME,cp.TRADE_NAME,ci.DOSEAGE_FORM");
            sqlstr.Append(" ,(isnull(ci.SPEC,'-') +  '*' + cast( isnull(ci.STAND_RATE,'0') as varchar(10)) + isnull(ci.USE_UNIT,'')  +  '/'  +  isnull(ci.SPEC_UNIT,'' ))As unc_spec,ci.FACTORY_NAME,");
            sqlstr.Append(" GPM.PRODUCT_ID,GPM.PRODUCT_CODE,GPM.PRODUCT_NAME,GPM.COMMON_NAME,GPM.MODE_NAME,");
            sqlstr.Append(" GPM.MEDICAL_SPEC,GPM.SPEC_UNIT,GPM.USE_UNIT,GPM.PACKAGE_RATE,GPM.STAND_RATE,");
            sqlstr.Append(" GPM.FACTORY_NAME,GPM.REMARK,GPM.PROCESS_FLAG");
            sqlstr.Append(" ,case when GPM.IsMap = '1' then '已匹配' else '未匹配' end  as IsMap");
            sqlstr.Append(" From Cont_Item ci ,CONT_PRODUCT cp, GPO_PRODUCT_MAP_VIEW GPM");
            sqlstr.Append(" Where cp.product_id=ci.product_id And cp.PROJECT_ID=ci.PROJECT_ID");
            sqlstr.Append(" And GPM.product_id=ci.product_id");

            try
            {
                dt = DbFacade.SQLExecuteDataTable(sqlstr.ToString());
            }
            catch (Exception ex)
            {
                throw ex;
                return(null);
            }

            return(dt);
        }
        /// <summary>
        /// 订单到货表数据更新校验

        /// </summary>
        /// <param name="dr"></param>
        /// <param name="strInvalid"></param>
        /// <returns></returns>
        public bool CheckOrderReceiveForUpdate(DataRow dr, out string strInvalid)
        {
            strInvalid = "";
            bool        flag = true;
            string      sql  = "select state from HC_ORD_ORDER_ITEM where ID = :RECORD_ID";
            DbParameter para = this.DbFacade.CreateParameter();

            para.ParameterName = "RECORD_ID";
            para.DbType        = DbType.UInt64;
            para.Value         = dr["ORDER_ITEM_ID"];

            Object o = DbFacade.SQLExecuteScalar(sql, para);

            if (o != null)
            {
                string state = o.ToString();
                //1、判断订单明细标记状态字段为3(作废)或者5(完成),不能修改

                if (state.Equals("3") || state.Equals("5"))
                {
                    strInvalid = "table:HC_ORD_ORDER_ITEM/ID:" + dr["ORDER_ITEM_ID"] + "/状态字段为3(作废)或5(完成),不能更新订单到货表数据!";
                    flag       = false;
                }
            }
            return(flag);
        }
Esempio n. 26
0
        //取消匹配
        public bool CancelComparion(string strId)
        {
            int  rownum;
            bool flag = true;

            using (DbTransaction transaction = base.DbFacade.BeginTransaction(base.DbFacade.OpenConnection()))
            {
                StringBuilder sqlstr = new StringBuilder("Update GPO_PRODUCT_MAP");
                sqlstr.AppendFormat(" Set PRODUCT_ID=null,Data_PRODUCT_ID=null,SYNC_STATE = 0,IsMap='0' ");
                sqlstr.AppendFormat(" Where ID='{0}'", strId);

                try
                {
                    rownum = DbFacade.SQLExecuteNonQuery(sqlstr.ToString(), transaction);

                    if (rownum > 0)
                    {
                        base.DbFacade.CommitTransaction(transaction);
                    }
                    else
                    {
                        flag = false;
                        base.DbFacade.RollbackTransaction(transaction);
                    }
                }
                catch (Exception ex)
                {
                    base.DbFacade.RollbackTransaction(transaction);
                    return(flag);
                }
            }

            return(flag);
        }
Esempio n. 27
0
        /// <summary>
        ///获得一条HIS产品记录
        /// </summary>
        /// <param name="productcode"></param>
        /// <returns></returns>
        public Gpo_Product_MapModel GetGpoMapModelById(string strId)
        {
            StringBuilder strsql = new StringBuilder("SELECT *");

            strsql.Append(" from GPO_PRODUCT_MAP where ID = '" + strId + "'");

            DataTable            dt = null;
            Gpo_Product_MapModel product_MapModel = null;

            try
            {
                dt = DbFacade.SQLExecuteDataTable(strsql.ToString());

                if (dt != null && dt.Rows.Count > 0)
                {
                    product_MapModel = GetModelByRow(dt.Rows[0]);
                }
            }
            catch (Exception e)
            {
                throw e;
                return(null);
            }
            return(product_MapModel);
        }
        public bool CheckCorpForInsert(DataRow dr, DbTransaction tran, out string strInvalid)
        {
            strInvalid = "";
            bool        flag = false;
            string      sql  = "select count(*) from gpo_corp_map g where g.map_orgid = :map_orgid and g.code = :code";
            DbParameter para = this.DbFacade.CreateParameter();

            para.ParameterName = "map_orgid";
            para.DbType        = DbType.AnsiString;
            para.Value         = dr["map_orgid"].ToString();

            DbParameter para1 = this.DbFacade.CreateParameter();

            para1.ParameterName = "code";
            para1.DbType        = DbType.AnsiString;
            para1.Value         = dr["code"].ToString();

            Object o = DbFacade.SQLExecuteScalar(sql, tran, para, para1);

            if (o != null && !o.ToString().Equals("0"))
            {
                strInvalid = "table:gpo_corp_map/ID:" + dr["ID"].ToString() + "/机构编码:" + dr["code"].ToString() + "已存在不能新增";
                flag       = false;
            }
            else
            {
                flag = true;
            }


            return(flag);
        }
Esempio n. 29
0
        /// <summary>
        /// 通过序列获取Id
        /// </summary>
        /// <returns>序列产生的新Id</returns>
        protected virtual string GenId(string prefix, string sequece)
        {
            String id = string.Empty;

            String sql = OracleHelper.GenIdFromSequece(prefix, sequece);

            return(DbFacade.SQLQueryForScalar(sql, null) as string);
        }
Esempio n. 30
0
        /// <summary>
        /// 通过序列获取Id
        /// </summary>
        /// <returns>序列产生的新Id</returns>
        protected virtual string GenId()
        {
            String id = string.Empty;

            String sql = OracleHelper.GenIdFromSequece("TRADE000", "s_id");

            return(DbFacade.SQLQueryForScalar(sql, null) as string);
        }