Esempio n. 1
0
        public async Task <IActionResult> Edit([Bind("ArrivalTypeCode,ArrivalTypeName,ArrivalTypeDesc,CompanyCode,Id,Is_Active,Created_Date,Created_By,Updated_Date,Updated_By")] M_ArrivalType m_ArrivalType)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    m_ArrivalType.Updated_By = await base.CurrentUserId();

                    ResultObject resultObj;

                    try
                    {
                        using (var arrTypeBll = new ArrivalTypeBLL())
                        {
                            resultObj = await arrTypeBll.UpdateArrivalType(m_ArrivalType);

                            _cache.Remove("CACHE_MASTER_ARRIVALTYPE");
                        }

                        return(Json(new { success = true, data = (M_ArrivalType)resultObj.ObjectValue, message = "Arrival Type Update." }));
                    }
                    catch (Exception ex)
                    {
                        return(Json(new { success = false, data = m_ArrivalType, message = ex.Message }));
                    }
                }

                var err = ModelState.Values.SelectMany(x => x.Errors).Select(x => x.ErrorMessage).ToList();
                return(Json(new { success = false, errors = err, data = m_ArrivalType, message = "Update Failed" }));
            }
            catch (Exception ex)
            {
                return(BadRequest(new { success = false, message = ex.Message }));
            }
        }
Esempio n. 2
0
        public async Task <ResultObject> DeleteArrivalType(M_ArrivalType arrType)
        {
            var resultObj = new ResultObject {
                RowAffected = -1, ObjectValue = arrType
            };

            using (var context = new MasterDbContext(contextOptions))
            {
                using (var transaction = context.Database.BeginTransaction())
                {
                    try
                    {
                        MySqlParameter[] sqlParams = new MySqlParameter[] {
                            new MySqlParameter("strId", arrType.Id),
                            new MySqlParameter("strDelete_By", arrType.Updated_By)
                        };


                        //Output Parameter no need to define. @`strId`
                        resultObj.RowAffected = await context.Database.ExecuteSqlCommandAsync("call sp_arrivaltype_delete( ?, ?)", parameters : sqlParams);

                        transaction.Commit();

                        return(resultObj);
                    }
                    catch (Exception ex)
                    {
                        transaction.Rollback();
                        throw ex;
                    }
                }
            }
        }
Esempio n. 3
0
        public async Task <ResultObject> UpdateArrivalType(M_ArrivalType arrType)
        {
            var resultObj = new ResultObject {
                RowAffected = -1, ObjectValue = arrType
            };

            using (var context = new MasterDbContext(contextOptions))
            {
                using (var transaction = context.Database.BeginTransaction())
                {
                    try
                    {
                        context.Entry(arrType).State = EntityState.Modified;

                        MySqlParameter[] sqlParams = new MySqlParameter[] {
                            new MySqlParameter("strId", arrType.Id),
                            new MySqlParameter("strArrivalTypeCode", arrType.ArrivalTypeCode),
                            new MySqlParameter("strArrivalTypeName", arrType.ArrivalTypeName),
                            new MySqlParameter("strArrivalTypeDesc", arrType.ArrivalTypeDesc),
                            new MySqlParameter("strCompanyCode", arrType.CompanyCode),
                            new MySqlParameter("strIs_Active", arrType.Is_Active),
                            new MySqlParameter("strCreated_By", arrType.Updated_By)
                        };


                        //Output Parameter no need to define. @`strId`
                        resultObj.RowAffected = await context.Database.ExecuteSqlCommandAsync("call sp_arrivaltype_update(?, ?, ?, ?, ?, ?, ?)", parameters : sqlParams);

                        transaction.Commit();

                        return(resultObj);
                    }
                    catch (Exception ex)
                    {
                        transaction.Rollback();
                        throw ex;
                    }
                }
            }
        }
Esempio n. 4
0
        public async Task <ResultObject> InsertArrivalType(M_ArrivalType arrType)
        {
            var resultObj = new ResultObject {
                RowAffected = -1, ObjectValue = arrType
            };

            using (var context = new MasterDbContext(contextOptions))
            {
                using (var transaction = context.Database.BeginTransaction())
                {
                    try
                    {
                        MySqlParameter[] sqlParams = new MySqlParameter[] {
                            new MySqlParameter("strArrivalTypeCode", arrType.ArrivalTypeCode),
                            new MySqlParameter("strArrivalTypeName", arrType.ArrivalTypeName),
                            new MySqlParameter("strArrivalTypeDesc", arrType.ArrivalTypeDesc),
                            new MySqlParameter("strCompanyCode", arrType.CompanyCode),
                            new MySqlParameter("strIs_Active", arrType.Is_Active),
                            new MySqlParameter("strCreated_By", arrType.Created_By)
                        };

                        resultObj.RowAffected = await context.Database.ExecuteSqlCommandAsync("call sp_arrivaltype_insert(@`strId`, ?, ?, ?, ?, ?, ?)", parameters : sqlParams);

                        //new department after insert.
                        var newArrType = context.ArrivalType.FromSql("SELECT * FROM m_arrivaltype WHERE Id = @`strId`;").ToListAsync();
                        resultObj.ObjectValue = newArrType.Result[0];

                        transaction.Commit();

                        return(resultObj);
                    }
                    catch (Exception ex)
                    {
                        transaction.Rollback();
                        throw ex;
                    }
                }
            }
        }