public async static Task<PRO_tblWarehouseDRO> InsertUpdateWarehouse(string url, string json_data)
        {
            PRO_tblWarehouseDRO result = new PRO_tblWarehouseDRO();
            try
            {
                var response_data = await HttpPost(url, json_data);
                if (response_data.ToLower().StartsWith("error"))
                {
                    result.ResponseItem.IsError = true;
                    string[] tmp = response_data.Split('|');
                    result.ResponseItem.ErrorCode = tmp[1];
                    result.ResponseItem.ErrorMessage = tmp[2];
                }
                else
                {
                    var response_collection = JsonConvert.DeserializeObject<PRO_tblWarehouseDRO>(response_data + "");

                    if (response_collection != null)
                    {
                        result.ResponseItem.Message = response_collection.ResponseItem.Message;
                    }
                }
            }
            catch (Exception ex)
            {
                logger.Error(ex);
                result.ResponseItem.Message = ex.Message;
            }

            return result;
        }
        public async static Task<PRO_tblWarehouseDRO> GetWarehouseItem(string username, string language_id, string warehouse_id)
        {
            PRO_tblWarehouseDRO result = new PRO_tblWarehouseDRO();
            try
            {
                string url = string.Format(@"{0}/GetWarehouseByID?Username={1}&LanguageID={2}&WarehouseID={3}", GetBaseUrl(), username, language_id, warehouse_id);

                result = await PRO_tblWarehouseDAO.GetWarehouseItem(url);
            }
            catch (Exception ex)
            {
                logger.Error(ex);
                result.ResponseItem.Message = ex.Message;
            }

            return result;
        }
        public async static Task<PRO_tblWarehouseDRO> GetAllWarehouses(string username, string language_id, bool is_combobox, string store_id, string province_id, string district_id, SYS_tblActionLogDTO actionLog)
        {
            PRO_tblWarehouseDRO result = new PRO_tblWarehouseDRO();
            try
            {
                string url = string.Format(@"{0}/GetAllWarehouses?Username={1}&LanguageID={2}&StoreID={3}&ProvinceID={4}&DistrictID={5}&GetCombobox={6}", GetBaseUrl(), username, language_id, store_id, province_id, district_id, is_combobox ? "True" : "False");

                result = await PRO_tblWarehouseDAO.GetAllWarehouses(url);
                if (string.IsNullOrEmpty(result.ResponseItem.Message))
                    if (actionLog != null) result.ResponseItem = await SYS_tblActionLogBUS.InsertUpdateLog(actionLog);
            }
            catch (Exception ex)
            {
                logger.Error(ex);
                result.ResponseItem.Message = ex.Message;
            }

            return result;
        }
        public async static Task<PRO_tblWarehouseDRO> InsertUpdateStore(PRO_tblWarehouseDTO item, SYS_tblActionLogDTO actionLog)
        {
            PRO_tblWarehouseDRO result = new PRO_tblWarehouseDRO();
            try
            {
                string url = string.Format(@"{0}/InsertUpdateWarehouse", GetBaseUrl());
                var postData = new PRO_tblWarehouseDCO
                {
                    WarehouseID = item.WarehouseID,
                    WarehouseCode = item.WarehouseCode,
                    VNName = item.VNName,
                    ENName = item.ENName,
                    StoreID = item.StoreID,
                    AddressVN = item.AddressVN,
                    AddressEN = item.AddressEN,
                    Phone = item.Phone,
                    Fax = item.Fax,
                    ProvinceID = string.IsNullOrEmpty(item.ProvinceID) ? null : item.ProvinceID,
                    DistrictID = string.IsNullOrEmpty(item.DistrictID) ? null : item.DistrictID,
                    Rank = item.Rank,
                    Used = item.Used,
                    Note = item.Note,
                    UserID = item.UserID,
                    Activity = item.Activity,
                    LanguageID = item.LanguageID
                };
                var json_data = "{\"warehouse\":" + JsonConvert.SerializeObject(postData, new JsonSerializerSettings
                {
                    DateFormatHandling = DateFormatHandling.MicrosoftDateFormat
                }) + "}";

                result = await PRO_tblWarehouseDAO.InsertUpdateWarehouse(url, json_data);
                if (string.IsNullOrEmpty(result.ResponseItem.Message)) result.ResponseItem = await SYS_tblActionLogBUS.InsertUpdateLog(actionLog);
            }
            catch (Exception ex)
            {
                logger.Error(ex);
                result.ResponseItem.Message = ex.Message;
            }

            return result;
        }
        private async Task<bool> SaveWarehouse(bool isEdit)
        {
            PRO_tblWarehouseDRO result = new PRO_tblWarehouseDRO();
            try
            {
                result = await iPOS.BUS.Products.PRO_tblWarehouseBUS.InsertUpdateStore(new PRO_tblWarehouseDTO
                {
                    WarehouseID = isEdit ? txtWarehouseID.Text : "0",
                    WarehouseCode = txtWarehouseCode.Text,
                    VNName = txtVNName.Text.Trim(),
                    ENName = txtENName.Text.Trim(),
                    StoreID = gluStore.EditValue + "",
                    AddressVN = txtAddressVN.Text.Trim(),
                    AddressEN = txtAddressEN.Text.Trim(),
                    Phone = txtPhone.Text.Trim(),
                    Fax = txtFax.Text.Trim(),
                    ProvinceID = gluProvince.EditValue + "",
                    DistrictID = gluDistrict.EditValue + "",
                    Rank = (string.IsNullOrEmpty(speRank.EditValue + "")) ? (Int32?)null : Convert.ToInt32(speRank.EditValue),
                    Used = chkUsed.Checked,
                    Note = mmoNote.Text.Trim(),
                    UserID = CommonEngine.userInfo.UserID,
                    Activity = isEdit ? BaseConstant.COMMAND_UPDATE_EN : BaseConstant.COMMAND_INSERT_EN,
                    LanguageID = ConfigEngine.Language
                }, new DTO.Systems.SYS_tblActionLogDTO
                {
                    Activity = BaseConstant.COMMAND_INSERT_EN,
                    UserID = CommonEngine.userInfo.UserID,
                    LanguageID = ConfigEngine.Language,
                    ActionEN = isEdit ? BaseConstant.COMMAND_UPDATE_EN : BaseConstant.COMMAND_INSERT_EN,
                    ActionVN = isEdit ? BaseConstant.COMMAND_UPDATE_VI : BaseConstant.COMMAND_INSERT_VI,
                    FunctionID = "18",
                    DescriptionVN = string.Format("Tài khoản '{0}' vừa {1} thành công kho hàng có mã kho hàng là '{2}'.", CommonEngine.userInfo.UserID, isEdit ? "cập nhật" : "thêm mới", txtWarehouseCode.Text),
                    DescriptionEN = string.Format("Account '{0}' has {1} warehouse successfully with warehouse code is '{2}'.", CommonEngine.userInfo.UserID, isEdit ? "updated" : "inserted", txtWarehouseCode.Text)
                });

                if (result.ResponseItem.IsError)
                {
                    CommonEngine.ShowHTTPErrorMessage(result.ResponseItem);
                    txtWarehouseCode.Focus();
                    return false;
                }
                if (!string.IsNullOrEmpty(result.ResponseItem.Message))
                {
                    CommonEngine.ShowMessage(result.ResponseItem.Message, 0);
                    txtWarehouseCode.Focus();
                    return false;
                }
                else parent_form.GetAllWarehouse("");
            }
            catch (Exception ex)
            {
                CommonEngine.ShowExceptionMessage(ex);
                return false;
            }

            return true;
        }
        public async static Task<PRO_tblWarehouseDRO> DeleteWarehouse(string username, string language_id, string warehouse_id_list, SYS_tblActionLogDTO actionLog)
        {
            PRO_tblWarehouseDRO result = new PRO_tblWarehouseDRO();
            try
            {
                string url = string.Format(@"{0}/DeleteWarehouse?Username={1}&LanguageID={2}&WarehouseIDList={3}", GetBaseUrl(), username, language_id, warehouse_id_list);

                result = await PRO_tblWarehouseDAO.DeleteWarehouse(url);
                if (string.IsNullOrEmpty(result.ResponseItem.Message)) result.ResponseItem = await SYS_tblActionLogBUS.InsertUpdateLog(actionLog);
            }
            catch (Exception ex)
            {
                logger.Error(ex);
                result.ResponseItem.Message = ex.Message;
            }

            return result;
        }
Exemple #7
0
        private async Task DeleteWarehouse()
        {
            warehouse_code_list = "";
            warehouse_id_list = "";
            foreach (int index in grvWarehouse.GetSelectedRows())
            {
                warehouse_code_list = string.Join("$", warehouse_code_list, grvWarehouse.GetRowCellDisplayText(index, gcolWarehouseCode));
                warehouse_id_list = string.Join("$", warehouse_id_list, grvWarehouse.GetRowCellDisplayText(index, gcolWarehouseID));
            }

            if (warehouse_code_list.Length > 0) warehouse_code_list = warehouse_code_list.Substring(1);
            if (warehouse_id_list.Length > 0) warehouse_id_list = warehouse_id_list.Substring(1);

            PRO_tblWarehouseDRO result = new PRO_tblWarehouseDRO();
            result.ResponseItem.Message = "ready";
            if (!string.IsNullOrEmpty(warehouse_id_list))
            {
                try
                {
                    if (warehouse_id_list.Contains("$"))
                    {
                        if (CommonEngine.ShowConfirmMessageAlert(LanguageEngine.GetMessageCaption("000012", ConfigEngine.Language).Replace("$Count$", warehouse_id_list.Split('$').Length.ToString())))
                            result = await PRO_tblWarehouseBUS.DeleteWarehouse(warehouse_id_list, CommonEngine.userInfo.Username, ConfigEngine.Language, new SYS_tblActionLogDTO
                            {
                                Activity = BaseConstant.COMMAND_INSERT_EN,
                                UserID = CommonEngine.userInfo.UserID,
                                LanguageID = ConfigEngine.Language,
                                ActionVN = BaseConstant.COMMAND_DELETE_VI,
                                ActionEN = BaseConstant.COMMAND_DELETE_EN,
                                FunctionID = "18",
                                DescriptionVN = string.Format("Tài khoản '{0}' vừa xóa thành công những kho hàng có mã '{1}'.", CommonEngine.userInfo.UserID, warehouse_code_list.Replace("$", ", ")),
                                DescriptionEN = string.Format("Account '{0}' has deleted warehouses successfully with warehouse codes are '{1}'.", CommonEngine.userInfo.UserID, warehouse_code_list.Replace("$", ", "))
                            });
                    }
                    else
                    {
                        if (CommonEngine.ShowConfirmMessageAlert(LanguageEngine.GetMessageCaption("000005", ConfigEngine.Language)))
                            result = await PRO_tblWarehouseBUS.DeleteWarehouse(warehouse_id_list, CommonEngine.userInfo.Username, ConfigEngine.Language, new SYS_tblActionLogDTO
                            {
                                Activity = BaseConstant.COMMAND_INSERT_EN,
                                UserID = CommonEngine.userInfo.UserID,
                                LanguageID = ConfigEngine.Language,
                                ActionVN = BaseConstant.COMMAND_DELETE_VI,
                                ActionEN = BaseConstant.COMMAND_DELETE_EN,
                                FunctionID = "18",
                                DescriptionVN = string.Format("Tài khoản '{0}' vừa xóa thành công kho hàng có mã '{1}'.", CommonEngine.userInfo.UserID, warehouse_code_list),
                                DescriptionEN = string.Format("Account '{0}' has deleted warehouse successfully with warehouse code is '{1}'.", CommonEngine.userInfo.UserID, warehouse_code_list)
                            });
                    }

                    if (!CommonEngine.CheckValidResponseItem(result.ResponseItem)) return;
                    if (!result.ResponseItem.Message.Equals("ready"))
                        if (string.IsNullOrEmpty(result.ResponseItem.Message)) GetAllWarehouse("");
                        else CommonEngine.ShowMessage(result.ResponseItem.Message, 0);
                }
                catch (Exception ex)
                {
                    CommonEngine.ShowExceptionMessage(ex);
                }
            } else CommonEngine.ShowMessage("000027", IMC.Helper.MessageType.Warning, true);
        }