Example #1
0
        public string GetListOfPos()
        {
            OperatorPosListResponse operatorPosResponse = new OperatorPosListResponse();

            try
            {
                OperatorPosRequest operatorPosRequest = new OperatorPosRequest
                {
                    Operator = JwtProps.GetOperator()
                };
                HttpResponseMessage responseMessage = HttpClientService.PostAsync("api/pos/OperatorPosList", operatorPosRequest).Result;
                if (responseMessage.IsSuccessStatusCode)
                {
                    operatorPosResponse = responseMessage.Content.ReadAsAsync <OperatorPosListResponse>().Result;
                    if (operatorPosResponse.ErrorCode == 0 && string.IsNullOrEmpty(operatorPosResponse.Message))
                    {
                        PosModel.PosListData data = new PosModel.PosListData();
                        int i = 0;
                        foreach (var c in operatorPosResponse.PosLists)
                        {
                            i++;
                            #region Формируем выпадающий список для списка ТТ
                            var detailList = c.Poses.Aggregate(string.Empty, (current, pos) => current + (@"<tr>
                                        <td colspan='2' style='color:#000;'>" + pos.City + @"</td>
                                        <td colspan='2' style='color:#000;'>" + pos.Address + @"</td>
                                      </tr>"));
                            #endregion
                            Implementation.Data.OperatorPosList g = new Implementation.Data.OperatorPosList
                            {
                                Id            = c.Id,
                                Caption       = c.Caption,
                                Text          = c.Poses.Count().ToString(),
                                Poses         = c.Poses,
                                HtmlForDelete = "<img class='dell-control' data-id=" + c.Id + " src='/img/dell.png'>",
                                details       = detailList
                            };
                            data.data.Add(g);
                        }
                        return(JsonConvert.SerializeObject(data));
                    }
                    return(JsonConvert.SerializeObject(operatorPosResponse));
                }
                operatorPosResponse.ErrorCode = 10;
                operatorPosResponse.Message   = "Ошибка получения данных";
            }
            catch (Exception ex)
            {
                operatorPosResponse.ErrorCode = 2;
                operatorPosResponse.Message   = ex.Message;
            }
            return(JsonConvert.SerializeObject(operatorPosResponse));
        }
Example #2
0
        public string GetOperatorPos()
        {
            OperatorPosResponse operatorPosResponse = new OperatorPosResponse();

            try
            {
                OperatorPosRequest operatorPosRequest = new OperatorPosRequest
                {
                    Operator = JwtProps.GetOperator()
                };
                HttpResponseMessage responseMessage = HttpClientService.PostAsync("api/pos/OperatorPos", operatorPosRequest).Result;
                if (responseMessage.IsSuccessStatusCode)
                {
                    operatorPosResponse = responseMessage.Content.ReadAsAsync <OperatorPosResponse>().Result;
                    if (operatorPosResponse.ErrorCode == 0 && string.IsNullOrEmpty(operatorPosResponse.Message))
                    {
                        PosModel.PosData data = new PosModel.PosData();
                        int i = 0;
                        foreach (var c in operatorPosResponse.Poses)
                        {
                            i++;
                            var item = new LC_Manager.Implementation.Data.Pos
                            {
                                Check   = "<input type='checkbox' class='checkbox checkbox-for-shop' name='checkbox[]" + c.Id + "' id='checkbox" + c.Id + "' value='" + c.Id + "'><label for='checkbox" + c.Id + "'></label>",
                                Id      = c.Id,
                                Address = c.Address,
                                City    = c.City,
                                Region  = c.Region
                            };
                            data.data.Add(item);
                        }
                        return(JsonConvert.SerializeObject(data));
                    }
                    return(JsonConvert.SerializeObject(operatorPosResponse));
                }
                else
                {
                    operatorPosResponse.ErrorCode = 10;
                    operatorPosResponse.Message   = "Ошибка получения данных";
                }
            }
            catch (Exception ex)
            {
                operatorPosResponse.ErrorCode = 2;
                operatorPosResponse.Message   = ex.Message;
            }
            return(JsonConvert.SerializeObject(operatorPosResponse));
        }
Example #3
0
 public OperatorPosResponse OperatorPos(OperatorPosRequest request)
 {
     return(_operatorPosService.GetPosByOperator(request));
 }
Example #4
0
        /// <summary>
        /// Получает список ТТ доступных оператору
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public OperatorPosResponse GetPosByOperator(OperatorPosRequest request)
        {
            var returnValue = new OperatorPosResponse();

            try
            {
                _cnn.Open();
                SqlCommand cmd = _cnn.CreateCommand();
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.CommandText = "OperatorGetPos";
                if (request.Operator == 0)
                {
                    request.Operator = Convert.ToInt16(ConfigurationManager.AppSettings["Operator"]);
                }
                cmd.Parameters.AddWithValue("@operator", request.Operator);
                cmd.Parameters.Add("@errormessage", SqlDbType.NVarChar, 100);
                cmd.Parameters["@errormessage"].Direction = ParameterDirection.Output;
                cmd.Parameters.Add("@result", SqlDbType.Int);
                cmd.Parameters["@result"].Direction = ParameterDirection.ReturnValue;
                SqlDataReader reader = cmd.ExecuteReader();
                while (reader.Read())
                {
                    Pos pos = new Pos();
                    if (!reader.IsDBNull(0))
                    {
                        pos.Region = reader.GetString(0);
                    }
                    if (!reader.IsDBNull(1))
                    {
                        pos.City = reader.GetString(1);
                    }
                    if (!reader.IsDBNull(2))
                    {
                        pos.Address = reader.GetString(2);
                    }
                    if (!reader.IsDBNull(3))
                    {
                        pos.Id = reader.GetInt16(3);
                    }
                    returnValue.Poses.Add(pos);
                }
                reader.Close();



                cmd.Parameters.Clear();
                cmd.CommandType = CommandType.Text;
                cmd.CommandText = "select id, caption, operator from poslist where operator=@id";
                cmd.Parameters.AddWithValue("@id", request.Operator);

                var result = new List <OperatorPosList>();
                var buf    = new List <OperatorPosList>();

                #region Получаем списки магазинов, созданных оператором

                reader = cmd.ExecuteReader();
                while (reader.Read())
                {
                    var posList = new OperatorPosList {
                        Id = reader.GetInt16(0)
                    };
                    if (!reader.IsDBNull(1))
                    {
                        posList.Caption = reader.GetString(1);
                    }
                    if (!reader.IsDBNull(2))
                    {
                        posList.Operator = reader.GetInt16(2);
                    }
                    buf.Add(posList);
                }
                reader.Close();

                #endregion

                #region Получаем содержимое списков магазинов

                cmd.CommandText =
                    @"select p.id, c.name, p.address from poslistitems pli 
                    join poslist pl on pl.id = pli.poslist and pl.id=@id 
                    join pos p on p.id = pli.pos 
                    join city c on c.id=p.city";

                foreach (var item in buf)
                {
                    cmd.Parameters.Clear();
                    cmd.Parameters.AddWithValue("@id", item.Id);
                    var listOfPos = new List <Pos>();
                    reader = cmd.ExecuteReader();

                    while (reader.Read())
                    {
                        var pos = new Pos {
                            Id = reader.GetInt16(0)
                        };
                        if (!reader.IsDBNull(1))
                        {
                            pos.City = reader.GetString(1);
                        }
                        if (!reader.IsDBNull(2))
                        {
                            pos.Address = reader.GetString(2);
                        }
                        listOfPos.Add(pos);
                    }
                    reader.Close();
                    result.Add(new OperatorPosList
                    {
                        Id       = item.Id,
                        Operator = item.Operator,
                        Caption  = item.Caption,
                        Poses    = listOfPos
                    });
                }
                #endregion
                returnValue.PosLists = result;
            }
            catch (Exception e)
            {
                returnValue.ErrorCode = 3;
                returnValue.Message   = e.Message;
            }
            finally
            {
                _cnn.Close();
            }
            return(returnValue);
        }