/// <summary>
        /// 根据卡号取得卡信息
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        public static CCMast GetCostCenterCode(WxUserMast param)
        {
            RechargeFactory factory = new RechargeFactory();

            try
            {
                if (param == null)
                {
                    throw new Exception("Param is null");
                }
                CCMast ccm = factory.GetCostCenterCode(param);
                if (ccm == null)
                {
                    throw new Exception("DAL.WeChat.RechargeFactory.GetCostCenterCode()==null");
                }
                return(ccm);
            }
            catch (Exception ex)
            {
                LogHelper.WriteLog(new Log()
                {
                    message = ex.Message
                }, "GetCostCenterCode");
                return(null);
            }
        }
        public Response GetCCMastInfo(string token, [FromBody] SingleField param)
        {
            Response response = new Response();

            if (string.IsNullOrEmpty(token) || !token.Equals(_token))
            {
                response.code    = "404";
                response.message = "Invild token";
            }
            else
            {
                CCMast ccm = CCMastHelper.GetCCMastInfo(param);
                if (ccm == null)
                {
                    response.code    = "500";
                    response.message = "No Data";
                }
                else
                {
                    response.code    = "200";
                    response.content = ccm;
                }
            }
            return(response);
        }
        public Response GetCostCenterCode(string token, [FromBody] WxUserMast param)
        {
            Response response = new Response();

            if (string.IsNullOrEmpty(token) || !token.Equals(_token))
            {
                response.code    = "404";
                response.message = "Invild token";
            }
            else
            {
                CCMast ccm = RechargeHelper.GetCostCenterCode(param);
                if (ccm == null)
                {
                    response.code    = "500";
                    response.message = "Get data failed";
                }
                else
                {
                    response.code    = "200";
                    response.content = ccm;
                }
            }

            return(response);
        }
Ejemplo n.º 4
0
        /// <summary>
        /// 根据WeChatId取得成本中心
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        public CCMast GetCostCenterCode(WxUserMast param)
        {
            string strSql = " SELECT COSTCENTERCODE " +
                            " FROM WXUSERMAST " +
                            " WHERE APPNAME = '{0}' " +
                            " AND WECHATID = '{1}' " +
                            " AND DELETETIME IS NULL ";
            WxUserMast user = SqlServerHelper.GetEntity <WxUserMast>(SqlServerHelper.salesorderConn(), string.Format(strSql, param.appName, param.wechatId));

            if (user != null)
            {
                CCMast cc   = (new CCMastFactory()).GetCCMastInfo(user.costCenterCode);
                string name = (new SalesOrder.MastDataFactory()).GetCostCenterInfo(cc.costCenterCode).costCenterName_ZH;
                cc.costCenterName = string.IsNullOrWhiteSpace(name) ? cc.costCenterName : name;
                return(cc);
            }

            return(null);
        }
Ejemplo n.º 5
0
 /// <summary>
 /// 取得至下个工作日的所有日期 + weekday中文
 /// </summary>
 /// <param name="strDate"></param>
 /// <param name="strCostCenterCode"></param>
 /// <returns></returns>
 public static CCMast GetCCMastInfo(SingleField param)
 {
     try
     {
         CCMast ccm = ccmf.GetCCMastInfo(param.code);
         if (ccm == null)
         {
             throw new Exception("DAL.MastData.CalendarFactory.GetCCMastInfo()==null");
         }
         return(ccm);
     }
     catch (Exception ex)
     {
         LogHelper.WriteLog(new Log()
         {
             message = ex.Message
         }, "GetCCMastInfoParam");
         return(null);
     }
 }
        // 根据成本中心获取相关信息
        public CCMast GetCCMastInfo(string costCenterCode)
        {
            string strSql = " SELECT DBNAME " +
                            " , COSTCENTERCODE " +
                            " , COSTCENTERNAME " +
                            " , WAREHOUSECODE " +
                            " , POITEMENDTIME " +
                            " , RECIPENTSOFMENU " +
                            " , STATUS " +
                            " , POSIP " +
                            " , POSDBNAME " +
                            " , POSDBUSERNAME " +
                            " , POSDBPASSWORD " +
                            " , RECHARGESETTING " +
                            " FROM CCMAST " +
                            " WHERE STATUS = '1' " +
                            " AND COSTCENTERCODE = '{0}' ";

            CCMast ccObj = SqlServerHelper.GetEntity <CCMast>(SqlServerHelper.salesorderConn(), string.Format(strSql, costCenterCode));

            return(ccObj);
        }
Ejemplo n.º 7
0
        private T GetData <T>(string costCenterCode, string cardid, string sqltype)
        {
            if (string.IsNullOrWhiteSpace(cardid))
            {
                return(default(T));
            }

            CCMastFactory ccmf = new CCMastFactory();
            // Table CCMast
            CCMast ccm = ccmf.GetCCMastInfo(costCenterCode);
            // Table SqlMast
            SingleField ccObj = new SingleField();

            ccObj.code = costCenterCode;
            List <SingleField> lstCcObj = new List <SingleField>();

            lstCcObj.Add(ccObj);
            SqlMast sm = ccmf.GetSqlMastInfo(lstCcObj, sqltype)[0];
            // Sql文
            string strSql = string.Format(sm.sqlCommand, cardid);

            #region TCP
            if (string.IsNullOrWhiteSpace(ccm.posDBUserName))
            {
                return(NetTcpHelper.GetEntity <T>(ccm.posIp, ccm.posDBName, strSql));
            }
            #endregion

            #region 连数据

            string strConn = string.Format(string.Format(SqlServerHelper.customerAllConn(),
                                                         ccm.posIp, ccm.posDBName, ccm.posDBUserName, ccm.posDBPassword));

            //strConn = "Data Source=192.168.0.97,1433;Initial Catalog=DWPOS;User ID=sa;Password=gladis0083;Persist Security Info=True;Connection Timeout=10";
            // 取得卡信息
            return(SqlServerHelper.GetEntity <T>(strConn, strSql));

            #endregion
        }
        /// <summary>
        /// 检查服务器维护
        /// </summary>
        /// <param name="costCenterCode"></param>
        /// <returns></returns>
        private bool CheckServerMantain(string costCenterCode)
        {
            CCMast cm = (new CCMastFactory()).GetCCMastInfo(costCenterCode);

            return(string.IsNullOrWhiteSpace(cm.rechargeSetting));
        }
Ejemplo n.º 9
0
        /// <summary>
        /// 入口
        /// </summary>
        /// <returns></returns>
        public static string DoTransfer(string transferGuid)
        {
            string sresult = "";

            try
            {
                // 取得需要导入的基本数据
                List <WxOrder> lstOrder = GetTransferData(transferGuid);

                if (lstOrder == null || !lstOrder.Any())
                {
                    throw new Exception("没有需要导入的记录");
                }

                /***按成本中心分组***/
                var lqOrder = (from order in lstOrder
                               group order by new
                {
                    costCenterCode = order.costCenterCode
                }).ToList();

                #region 取得导入Sql文集合 & 成本中心主数据集合
                List <SingleField> lstCC = lqOrder.Select(q => new SingleField {
                    code = q.Key.costCenterCode
                }).ToList();

                CCMastFactory ccm = new CCMastFactory();
                // Sql文集合
                List <SqlMast> lstSqlTransfer = ccm.GetSqlMastInfo(lstCC, "InsertPOSRecharge");
                // 成本中心主数据集合
                List <CCMast> lstCCMast = ccm.GetCCMastInfo(lstCC);
                #endregion

                foreach (var gOrder in lqOrder)
                {
                    sresult += string.Format("成本中心:{0}\r\n", gOrder.Key.costCenterCode);
                    // Sql文
                    SqlMast sqlObj = lstSqlTransfer.FirstOrDefault(r => string.Format(",{0},", r.costCenterCodes)
                                                                   .Contains(string.Format(",{0},", gOrder.Key.costCenterCode)));
                    // Sql连接相关信息
                    CCMast ccObj = lstCCMast.FirstOrDefault(r => gOrder.Key.costCenterCode.Equals(r.costCenterCode));
                    // Data Source={0};Initial Catalog={1};User ID={2};Password={3};Persist Security Info=True;Connection Timeout=10" providerName="System.Data.SqlClient" />
                    string strConn = string.Format(SqlServerHelper.customerAllConn(), ccObj.posIp, ccObj.posDBName, ccObj.posDBUserName, ccObj.posDBPassword);
                    // 初始化最终Sql文
                    StringBuilder sbSqlFinal = new StringBuilder();

                    /***参数设置***/
                    string[] sArray = sqlObj.sqlParams.Split(',');
                    //int x = 0;
                    foreach (WxOrder wxo in gOrder.ToList())
                    {
                        sbSqlFinal.AppendFormat(sqlObj.sqlCommand, wxo.GetProperties(sArray));
                        sbSqlFinal.AppendLine(";");
                    }

                    if (string.IsNullOrWhiteSpace(sbSqlFinal.ToString()))
                    {
                        continue;
                    }

                    //new System.Threading.Thread(() =>
                    //{
                    int rst = 0;
                    if (string.IsNullOrWhiteSpace(ccObj.posDBUserName))
                    {
                        rst = NetTcpHelper.Execute(ccObj.posIp, ccObj.posDBName, sbSqlFinal.ToString());
                    }
                    else
                    {
                        rst = SqlServerHelper.Execute(strConn, sbSqlFinal.ToString());
                    }
                    //if (rst == 0) return ;

                    Console.WriteLine("成本中心:" + gOrder.Key.costCenterCode + " 记录数:" + rst.ToString() + "条导入成功");
                    sresult += " 记录数:" + rst.ToString() + "条导入成功\r\n";
                    rst      = SqlServerHelper.Execute(SqlServerHelper.salesorderConn(), GetUpdateSql(transferGuid, gOrder.Key.costCenterCode));
                    Console.WriteLine("成本中心:" + gOrder.Key.costCenterCode + " 记录数:" + rst.ToString() + "条回写成功");
                    Console.WriteLine("");
                    sresult += " 记录数:" + rst.ToString() + "条回写成功\r\n\r\n";

                    //}).Start();
                }
                return(sresult);
            }
            catch (Exception e)
            {
                //throw e;
                sresult += e.Message;
            }
            finally {
                /***删除数据导入标志位***/
                SetUpdateGuid(transferGuid, false);
            }
            return(sresult);
            //return result;
        }