public ActionResult Create(BrandRegistrationCreateViewModel model)
        {
            if (ModelState.IsValid)
            {
                bool isExist;
                var  dbBrand = new ZAIDM_EX_BRAND();

                dbBrand = Mapper.Map <ZAIDM_EX_BRAND>(model);
                if (dbBrand.STICKER_CODE.Length > 18)
                {
                    dbBrand.STICKER_CODE = dbBrand.STICKER_CODE.Substring(0, 17);
                }
                dbBrand.FA_CODE         = model.FaCode.Trim();
                dbBrand.STICKER_CODE    = model.StickerCode.Trim();
                dbBrand.CREATED_DATE    = DateTime.Now;
                dbBrand.CREATED_BY      = CurrentUser.USER_ID;
                dbBrand.IS_FROM_SAP     = model.IsFromSAP;
                dbBrand.HJE_IDR         = model.HjeValueStr == null ? 0 : Convert.ToDecimal(model.HjeValueStr);
                dbBrand.TARIFF          = model.TariffValueStr == null ? 0 : Convert.ToDecimal(model.TariffValueStr);
                dbBrand.CONVERSION      = model.ConversionValueStr == null ? 0 : Convert.ToDecimal(model.ConversionValueStr);
                dbBrand.PRINTING_PRICE  = model.PrintingPrice == null ? 0 : Convert.ToDecimal(model.PrintingPriceValueStr);
                dbBrand.STATUS          = model.IsActive;
                dbBrand.PACKED_ADJUSTED = model.IsPackedAdjusted;
                dbBrand.BAHAN_KEMASAN   = string.IsNullOrEmpty(model.BahanKemasan) ? null : model.BahanKemasan.Trim();
                if (!string.IsNullOrEmpty(dbBrand.PER_CODE_DESC))
                {
                    dbBrand.PER_CODE_DESC = model.PersonalizationCodeDescription.Split('-')[1];
                }

                try
                {
                    MASTER_DATA_APPROVAL approvalData;
                    _masterDataAprovalBLL.MasterDataApprovalValidation((int)Enums.MenuList.BrandRegistration,
                                                                       CurrentUser.USER_ID, new ZAIDM_EX_BRAND(), dbBrand, out isExist, out approvalData, true);
                    // AddHistoryCreate(dbBrand.WERKS, dbBrand.FA_CODE, dbBrand.STICKER_CODE);

                    //_brandRegistrationBll.Save(dbBrand);

                    _masterDataAprovalBLL.SendEmailWorkflow(approvalData.APPROVAL_ID);
                    AddMessageInfo(Constans.SubmitMessage.Saved, Enums.MessageInfoType.Success);
                    return(RedirectToAction("Index"));
                }
                catch (BLLException ex)
                {
                    AddMessageInfo(ex.Message, Enums.MessageInfoType.Error);
                }
                catch (Exception)
                {
                    AddMessageInfo("Save Failed.", Enums.MessageInfoType.Error);
                }
            }

            InitCreate(model);

            return(View(model));
        }
Пример #2
0
        public ActionResult Create(POAFormModel model)
        {
            try
            {
                bool isExist;
                var  poa = AutoMapper.Mapper.Map <BusinessObject.POA>(model.Detail);
                poa.POA_ID       = model.Detail.UserId;
                poa.CREATED_BY   = CurrentUser.USER_ID;
                poa.CREATED_DATE = DateTime.Now;
                poa.IS_ACTIVE    = true;
                if (model.Detail.PoaSKFile != null)
                {
                    int counter = 0;
                    foreach (var sk in model.Detail.PoaSKFile)
                    {
                        if (sk != null)
                        {
                            var poa_sk        = new POA_SK();
                            var filenamecheck = sk.FileName;
                            if (filenamecheck.Contains("\\"))
                            {
                                poa_sk.FILE_NAME = filenamecheck.Split('\\')[filenamecheck.Split('\\').Length - 1];
                            }
                            else
                            {
                                poa_sk.FILE_NAME = sk.FileName;
                            }

                            poa_sk.FILE_PATH = SaveUploadedFile(sk, poa.ID_CARD, counter);
                            poa.POA_SK.Add(poa_sk);
                            counter += 1;
                        }
                    }
                }
                MASTER_DATA_APPROVAL approvalData;
                _masterDataAprovalBLL.MasterDataApprovalValidation((int)Enums.MenuList.POA, CurrentUser.USER_ID,
                                                                   new BusinessObject.POA(), poa, out isExist, out approvalData, true);
                //_poaBll.Save(poa);
                _masterDataAprovalBLL.SendEmailWorkflow(approvalData.APPROVAL_ID);
                AddMessageInfo(Constans.SubmitMessage.Saved, Enums.MessageInfoType.Success);
                return(RedirectToAction("Index"));
            }
            catch (Exception ex)
            {
                AddMessageInfo(ex.Message, Enums.MessageInfoType.Error);
                return(RedirectToAction("Index"));
            }
            //return RedirectToAction("Create");
        }
Пример #3
0
        public void Delete(string id, string userId)
        {
            var  existingPoa     = GetById(id);
            var  tempExistingPoa = Mapper.Map <POADto>(existingPoa);
            bool isExist;

            if (existingPoa.IS_ACTIVE == true)
            {
                existingPoa.IS_ACTIVE = false;
            }
            else
            {
                existingPoa.IS_ACTIVE = true;
            }
            var oldPoa = Mapper.Map <BusinessObject.POA>(tempExistingPoa);
            MASTER_DATA_APPROVAL approvalData;

            existingPoa = _masterDataAprovalBLL.MasterDataApprovalValidation((int)Sampoerna.EMS.Core.Enums.MenuList.POA, userId,
                                                                             oldPoa, existingPoa, out isExist, out approvalData);
            if (existingPoa.IS_ACTIVE != oldPoa.IS_ACTIVE)
            {
                _repository.Update(existingPoa);
            }
            _uow.SaveChanges();
            _masterDataAprovalBLL.SendEmailWorkflow(approvalData.APPROVAL_ID);
        }
Пример #4
0
        public bool Delete(string plant, string facode, string stickercode, string userId)
        {
            var dbBrand = _repository.GetByID(plant, facode, stickercode);

            if (dbBrand == null)
            {
                throw new BLLException(ExceptionCodes.BLLExceptions.DataNotFound);
            }

            var oldDbBrand = Mapper.Map <BrandXmlDto>(dbBrand);
            var oldObject  = Mapper.Map <ZAIDM_EX_BRAND>(oldDbBrand);

            if (dbBrand.IS_DELETED.HasValue && dbBrand.IS_DELETED.Value)
            {
                dbBrand.IS_DELETED = false;
            }
            else
            {
                dbBrand.IS_DELETED = true;
            }
            bool isExistApproval;
            MASTER_DATA_APPROVAL approvalData;

            dbBrand = _masterDataAprovalBLL.MasterDataApprovalValidation((int)Core.Enums.MenuList.BrandRegistration, userId,
                                                                         oldObject, dbBrand, out isExistApproval, out approvalData);
            if (!isExistApproval)
            {
                _repository.Update(dbBrand);
                _uow.SaveChanges();
                _masterDataAprovalBLL.SendEmailWorkflow(approvalData.APPROVAL_ID);
                return(dbBrand.IS_DELETED.HasValue && dbBrand.IS_DELETED.Value);
            }

            return(false);
        }
Пример #5
0
        public ActionResult Create(PoaMapDetailViewModel model)
        {
            try
            {
                // TODO: Add insert logic here
                bool isExistApproval;
                var  existingData = _poaMapBLL.GetByNppbckId(model.PoaMap.NPPBKC_ID, model.PoaMap.WERKS, model.PoaMap.POA_ID);
                if (existingData != null)
                {
                    AddMessageInfo("data already exist", Enums.MessageInfoType.Warning);
                    return(RedirectToAction("Create"));
                }
                var data = Mapper.Map <POA_MAP>(model.PoaMap);
                data.CREATED_BY   = CurrentUser.USER_ID;
                data.CREATED_DATE = DateTime.Now;
                MASTER_DATA_APPROVAL approvalData;
                _masterDataAprovalBLL.MasterDataApprovalValidation((int)Enums.MenuList.POAMap, CurrentUser.USER_ID,
                                                                   new POA_MAP(), data, out isExistApproval, out approvalData, true);

                _masterDataAprovalBLL.SendEmailWorkflow(approvalData.APPROVAL_ID);
                //_poaMapBLL.Save(data);

                AddMessageInfo(Constans.SubmitMessage.Saved, Enums.MessageInfoType.Success);
                return(RedirectToAction("Index"));
            }
            catch (Exception ex)
            {
                AddMessageInfo(ex.Message, Enums.MessageInfoType.Error);
                model.CurrentMenu = PageInfo;
                model.MainMenu    = _mainMenu;
                model.NppbckIds   = GlobalFunctions.GetNppbkcAll(_nppbkcbll);
                model.Plants      = GlobalFunctions.GetPlantAll();
                model.POAs        = GlobalFunctions.GetPoaAll(_poabll);

                return(View(model));
            }
        }
Пример #6
0
        public MaterialOutput Save(MaterialDto data, string userId)
        {
            bool isNew     = false;
            var  origin    = _repository.Get(x => x.STICKER_CODE == data.STICKER_CODE && x.WERKS == data.WERKS, null, includeTables).SingleOrDefault();
            var  originDto = AutoMapper.Mapper.Map <MaterialDto>(origin);

            bool isApprovalExist;
            //var edited = AutoMapper.Mapper.Map<ZAIDM_EX_MATERIAL>(model);
            //AutoMapper.Mapper.Map(model, data);
            MASTER_DATA_APPROVAL approvalData = new MASTER_DATA_APPROVAL();

            if (originDto != null)
            {
                data.MODIFIED_BY   = userId;
                data.MODIFIED_DATE = DateTime.Now;
                data.CREATED_DATE  = origin.CREATED_DATE;
                data.CREATED_BY    = origin.CREATED_BY;

                //data.MATERIAL_UOM = origin.MATERIAL_UOM;

                data = _masterDataAprovalBLL.MasterDataApprovalValidation((int)Enums.MenuList.MaterialMaster, userId, originDto,
                                                                          data, out isApprovalExist, out approvalData);
                var tempNewData = AutoMapper.Mapper.Map <ZAIDM_EX_MATERIAL>(data);
                data = AutoMapper.Mapper.Map <MaterialDto>(tempNewData);

                if (data.CLIENT_DELETION != (originDto.CLIENT_DELETION.HasValue ? originDto.CLIENT_DELETION : false))
                {
                    _zaidmExMaterialService.ClientDeletion(data, userId);
                }

                if (data.PLANT_DELETION != (originDto.PLANT_DELETION.HasValue ? originDto.PLANT_DELETION.Value : false))
                {
                    _zaidmExMaterialService.PlantDeletion(data, userId);
                }

                SetChanges(originDto, data, userId);
            }
            else
            {
                data.CREATED_BY      = userId;
                data.CREATED_DATE    = DateTime.Now;
                data.CLIENT_DELETION = false;
                data.PLANT_DELETION  = false;
                isNew = true;
            }

            var dataToSave = AutoMapper.Mapper.Map <ZAIDM_EX_MATERIAL>(data);

            var output = new MaterialOutput();

            try
            {
                if (!isNew)
                {
                    //foreach (var matUom1 in dataToSave.MATERIAL_UOM)
                    //{

                    //    var materialUom = _repositoryUoM.Get(x => x.STICKER_CODE == matUom1.STICKER_CODE
                    //                                              && x.WERKS == matUom1.WERKS
                    //                                              && x.MEINH == matUom1.MEINH).FirstOrDefault();
                    //    _repositoryUoM.Detach(materialUom);
                    //    //if (materialUom != null && materialUom)
                    //    //{
                    //    //    matUom1.MATERIAL_UOM_ID = materialUom.MATERIAL_UOM_ID;
                    //    //}
                    //}
                    dataToSave.MATERIAL_UOM = null;

                    _repository.InsertOrUpdate(dataToSave);

                    _uow.SaveChanges();
                }
                else
                {
                    _masterDataAprovalBLL.MasterDataApprovalValidation((int)Enums.MenuList.MaterialMaster, userId,
                                                                       new MaterialDto(), data, out isApprovalExist, out approvalData, true);
                }
                _masterDataAprovalBLL.SendEmailWorkflow(approvalData.APPROVAL_ID);
                output.Success    = true;
                output.materialId = data.STICKER_CODE;
            }
            catch (BLLException ex)
            {
                _logger.Error(ex);
                output.Success      = false;
                output.ErrorCode    = ex.Code;
                output.ErrorMessage = ex.Message;
            }
            catch (Exception exception)
            {
                _logger.Error(exception);
                output.Success      = false;
                output.ErrorCode    = ExceptionCodes.BaseExceptions.unhandled_exception.ToString();
                output.ErrorMessage = EnumHelper.GetDescription(ExceptionCodes.BaseExceptions.unhandled_exception);
            }

            return(output);
        }