//public List<tbm_SafetyStock> InsertSafetyStock(tbm_SafetyStock data)
        //{
        //    try
        //    {
        //        List<tbm_SafetyStock> insertList = new List<tbm_SafetyStock>();
        //        insertList.Add(data);

        //        string xml = CommonUtil.ConvertToXml_Store(insertList);

        //        List<tbm_SafetyStock> listInserted = null;
        //        using (TransactionScope t = new TransactionScope())
        //        {
        //            listInserted = base.InsertSafetyStock(xml);

        //            doTransactionLog logData = new doTransactionLog()
        //            {
        //                TransactionType = doTransactionLog.eTransactionType.Insert,
        //                TableName = TableName.C_TBL_NAME_SAFETY_STOCK,
        //                TableData = CommonUtil.ConvertToXml(listInserted)
        //            };

        //            ILogHandler hand = ServiceContainer.GetService<ILogHandler>() as ILogHandler;
        //            hand.WriteTransactionLog(logData);

        //            t.Complete();
        //        }

        //        return listInserted;

        //    }
        //    catch (Exception)
        //    {
        //        throw;
        //    }

        //}

        /// <summary>
        /// Update billing client data
        /// </summary>
        /// <param name="data"></param>
        /// <returns></returns>
        public List <tbm_BillingClient> UpdateBillingClient(tbm_BillingClient data)
        {
            try
            {
                List <tbm_BillingClient> updateList = new List <tbm_BillingClient>();
                updateList.Add(data);

                string xml = CommonUtil.ConvertToXml_Store(updateList);

                List <tbm_BillingClient> listUpdated = null;
                using (TransactionScope t = new TransactionScope())
                {
                    listUpdated = base.UpdateBillingClient(xml);

                    doTransactionLog logData = new doTransactionLog()
                    {
                        TransactionType = doTransactionLog.eTransactionType.Update,
                        TableName       = TableName.C_TBL_NAME_BILLING_CLIENT,
                        TableData       = CommonUtil.ConvertToXml(listUpdated)
                    };
                    ILogHandler hand = ServiceContainer.GetService <ILogHandler>() as ILogHandler;
                    hand.WriteTransactionLog(logData);

                    t.Complete();
                }

                return(updateList);
            }
            catch (Exception)
            {
                throw;
            }
        }
Beispiel #2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="billingClient"></param>
        /// <returns></returns>
        public List <tbm_BillingClient> InsertBillingClient(tbm_BillingClient billingClient)
        {
            try
            {
                //1.	Check Mandatory Fields for input parameter.
                //BillingClientCode, CustTypeCode, NameEN, NameLC, AddressEN, AddressLC
                ApplicationErrorException.CheckMandatoryField <tbm_BillingClient, tbm_BillingClientCondition>(billingClient);

                dsTransDataModel dsTrans = CommonUtil.dsTransData;
                billingClient.CreateDate = dsTrans.dtOperationData.ProcessDateTime;
                billingClient.CreateBy   = dsTrans.dtUserData.EmpNo;
                billingClient.UpdateDate = dsTrans.dtOperationData.ProcessDateTime;
                billingClient.UpdateBy   = dsTrans.dtUserData.EmpNo;

                List <tbm_BillingClient> insertList = this.InsertBillingClient(billingClient.BillingClientCode,
                                                                               billingClient.NameEN,
                                                                               billingClient.NameLC,
                                                                               billingClient.FullNameEN,
                                                                               billingClient.FullNameLC,
                                                                               billingClient.BranchNo,
                                                                               billingClient.BranchNameEN,
                                                                               billingClient.BranchNameLC,
                                                                               billingClient.CustTypeCode,
                                                                               billingClient.CompanyTypeCode,
                                                                               billingClient.BusinessTypeCode,
                                                                               billingClient.PhoneNo,
                                                                               billingClient.IDNo,
                                                                               billingClient.RegionCode,
                                                                               billingClient.AddressEN,
                                                                               billingClient.AddressLC,
                                                                               billingClient.CreateDate,
                                                                               billingClient.CreateBy,
                                                                               billingClient.UpdateDate,
                                                                               billingClient.UpdateBy,
                                                                               billingClient.DeleteFlag);
                //Insert Log
                if (insertList.Count > 0)
                {
                    doTransactionLog logData = new doTransactionLog();
                    logData.TransactionType = doTransactionLog.eTransactionType.Insert;
                    logData.TableName       = TableName.C_TBL_NAME_BILLING_CLIENT;
                    logData.TableData       = CommonUtil.ConvertToXml(insertList);
                    ILogHandler hand = ServiceContainer.GetService <ILogHandler>() as ILogHandler;
                    hand.WriteTransactionLog(logData);
                }

                return(insertList);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Beispiel #3
0
        /// <summary>
        /// Manage billing client
        /// </summary>
        /// <param name="billingClient"></param>
        /// <returns></returns>
        public string ManageBillingClient(tbm_BillingClient billingClient)
        {
            var oldBillingClientCode = billingClient.BillingClientCode;

            try
            {
                //1.	Generate billing client code
                string strBillingClientCode = GenerateBillingClientCode();

                //2.	Insert billing client data
                billingClient.BillingClientCode = strBillingClientCode;
                InsertBillingClient(billingClient);

                return(strBillingClientCode);
            }
            catch (Exception)
            {
                billingClient.BillingClientCode = oldBillingClientCode;
                throw;
            }
        }
        /// <summary>
        /// Confirm billing target data
        /// </summary>
        /// <param name="doTbmBillingClient"></param>
        /// <param name="doTbtBillingTarget"></param>
        /// <returns></returns>
        public ActionResult BLS010_ConfirmBillingTargetData(SECOM_AJIS.DataEntity.Master.tbm_BillingClient doTbmBillingClient, tbt_BillingTarget doTbtBillingTarget)
        //public ActionResult BLS010_ConfirmBillingTargetData(BLS010_ScreenParameter param)
        {
            ObjectResultData res     = new ObjectResultData();
            CommonUtil       comUtil = new CommonUtil();
            IBillingHandler  handler = ServiceContainer.GetService <IBillingHandler>() as IBillingHandler;

            SECOM_AJIS.DataEntity.Master.IBillingMasterHandler handlerMaster = ServiceContainer.GetService <SECOM_AJIS.DataEntity.Master.IBillingMasterHandler>() as SECOM_AJIS.DataEntity.Master.IBillingMasterHandler;
            string strBillingClientCode = null;
            string strBillingTargetCode = null;

            BLS010_ScreenParameter sParam = GetScreenObject <BLS010_ScreenParameter>();

            // tbm_BillingClient doTbmBillingClient = param.doTbmBillingClientParam;
            // tbt_BillingTarget doTbtBillingTarget = param.doTbt_BillingTarget;
            try
            {
                ///////// Check Suspending //////////
                ICommonHandler chandler = ServiceContainer.GetService <ICommonHandler>() as ICommonHandler;
                if (chandler.IsSystemSuspending())
                {
                    res.AddErrorMessage(MessageUtil.MODULE_COMMON, MessageUtil.MessageList.MSG0049);
                    return(Json(res));
                }


                /////// Check permission //////////
                if (!CheckUserPermission(ScreenID.C_SCREEN_ID_REGIST_BILL_TARGET, FunctionID.C_FUNC_ID_OPERATE))
                {
                    res.AddErrorMessage(MessageUtil.MODULE_COMMON, MessageUtil.MessageList.MSG0053);
                    return(Json(res));
                }

                //clone tbtBillingClientData to tbm_billingcliebtData
                doTbmBillingClient = CommonUtil.CloneObject <SECOM_AJIS.DataEntity.Master.dtBillingClientData, SECOM_AJIS.DataEntity.Master.tbm_BillingClient>(sParam.doBillingClient);
                doTbmBillingClient.BillingClientCode = comUtil.ConvertBillingClientCode(doTbmBillingClient.BillingClientCode, CommonUtil.CONVERT_TYPE.TO_LONG);
                doTbtBillingTarget.BillingClientCode = comUtil.ConvertBillingClientCode(doTbtBillingTarget.BillingClientCode, CommonUtil.CONVERT_TYPE.TO_LONG);

                //validatebusiness
                tbt_BillingTarget tmpTbtBillingTarget = new tbt_BillingTarget();
                if (!CommonUtil.IsNullOrEmpty(doTbmBillingClient.BillingClientCode))
                {
                    List <tbt_BillingTarget> lst = new List <tbt_BillingTarget>();
                    lst = handler.GetTbt_BillingTarget(null, doTbmBillingClient.BillingClientCode, doTbtBillingTarget.BillingOfficeCode);
                    if (lst.Count > 0)
                    {
                        tmpTbtBillingTarget = lst[0];
                    }
                    else
                    {
                        tmpTbtBillingTarget = null;
                    }


                    if (tmpTbtBillingTarget != null)
                    {
                        res.MessageType = MessageModel.MESSAGE_TYPE.INFORMATION;

                        res.AddErrorMessage(MessageUtil.MODULE_BILLING,
                                            ScreenID.C_SCREEN_ID_REGIST_BILL_TARGET,
                                            MessageUtil.MODULE_BILLING,
                                            MessageUtil.MessageList.MSG6002,
                                            new string[] { comUtil.ConvertBillingTargetCode(tmpTbtBillingTarget.BillingTargetCode, CommonUtil.CONVERT_TYPE.TO_SHORT) },
                                            null);
                        return(Json(res));
                    }
                }


                var tmpdoTbmBillingClient = CommonUtil.CloneObject <tbm_BillingClient, tbm_BillingClient>(doTbmBillingClient);
                var tmpdoTbtBillingTarget = CommonUtil.CloneObject <tbt_BillingTarget, tbt_BillingTarget>(doTbtBillingTarget);

                //register new billing target
                using (TransactionScope scope = new TransactionScope())
                {
                    //7.3.4
                    if (CommonUtil.IsNullOrEmpty(tmpdoTbtBillingTarget.BillingClientCode))
                    {
                        strBillingClientCode = handlerMaster.ManageBillingClient(tmpdoTbmBillingClient);
                        tmpdoTbtBillingTarget.BillingClientCode = strBillingClientCode;
                    }

                    //7.3.5 create billing target
                    strBillingTargetCode = handler.CreateBillingTarget(tmpdoTbtBillingTarget);
                    tmpdoTbtBillingTarget.BillingTargetCode = comUtil.ConvertBillingClientCode(strBillingTargetCode, CommonUtil.CONVERT_TYPE.TO_SHORT);
                    tmpdoTbmBillingClient.BillingClientCode = comUtil.ConvertBillingClientCode(tmpdoTbmBillingClient.BillingClientCode, CommonUtil.CONVERT_TYPE.TO_SHORT);
                    scope.Complete();

                    doTbmBillingClient = CommonUtil.CloneObject <tbm_BillingClient, tbm_BillingClient>(tmpdoTbmBillingClient);
                    doTbtBillingTarget = CommonUtil.CloneObject <tbt_BillingTarget, tbt_BillingTarget>(tmpdoTbtBillingTarget);
                }
                doTbtBillingTarget.BillingClientCode = comUtil.ConvertBillingClientCode(doTbtBillingTarget.BillingClientCode, CommonUtil.CONVERT_TYPE.TO_SHORT);
                sParam.doTbt_BillingTarget           = doTbtBillingTarget;
                res.ResultData  = doTbtBillingTarget;
                res.MessageType = MessageModel.MESSAGE_TYPE.INFORMATION_OK;
                res.AddErrorMessage(MessageUtil.MODULE_COMMON, MessageUtil.MessageList.MSG0046, null, null);
                return(Json(res));
            }
            catch (Exception ex)
            {
                res.AddErrorMessage(ex);
            }
            return(Json(res));
        }