Ejemplo n.º 1
0
        /// <summary>
        /// 创建RMA跟进日志
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        public virtual InternalMemoInfo CreateRMATracking(InternalMemoInfo entity)
        {
            InternalMemoInfo result = null;

            //检查单件号是否有效
            if (!DA.IsExistRegisterSysNo(entity.RegisterSysNo.Value))
            {
                string msg = ResouceManager.GetMessageString("RMA.Request", "RegisterNotExists");
                msg = string.Format(msg, entity.RegisterSysNo);
                throw new BizException(msg);
            }
            string currentUserName = ExternalDomainBroker.GetUserInfoBySysNo(ServiceContext.Current.UserSysNo);
            //更新Register的备注信息
            RegisterBasicInfo registerEntity = new RegisterBasicInfo()
            {
                SysNo = entity.RegisterSysNo,
                Memo  = String.Format("{0}[{1} {2}]", entity.Content, currentUserName, DateTime.Now)
            };

            using (TransactionScope scope = new TransactionScope())
            {
                result = DA.Create(entity);
                ObjectFactory <IRegisterDA> .Instance.UpdateMemo(registerEntity);

                scope.Complete();
            }

            return(result);
        }
Ejemplo n.º 2
0
        private void ButtonSave_Click(object sender, RoutedEventArgs e)
        {
            List <ValidationEntity> veForRegisterSysNo = new List <ValidationEntity>();

            veForRegisterSysNo.Add(new ValidationEntity(ValidationEnum.IsNotEmpty, null, ResRMAAdd.msg_ValidateRegister));
            List <ValidationEntity> veForContent = new List <ValidationEntity>();

            veForContent.Add(new ValidationEntity(ValidationEnum.IsNotEmpty, null, ResRMAAdd.msg_ValidateContent));
            if (!ValidationHelper.Validation(this.tbRegisterSysNo, veForRegisterSysNo) || !ValidationHelper.Validation(this.tbContent, veForContent))
            {
                return;
            }
            InternalMemoInfo request = new InternalMemoInfo();

            request.SysNo         = int.Parse(Request.Param);
            request.RegisterSysNo = int.Parse(tbRegisterSysNo.Text);
            request.Note          = tbContent.Text;
            new CustomerCallingFacade(this).CallingToRMA(request, (obj, args) =>
            {
                if (args.FaultsHandle())
                {
                    return;
                }
                Window.Alert(ResRMAAdd.msg_Success);
            });
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 创建RMA跟进日志
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        public virtual InternalMemoInfo Create(InternalMemoInfo entity)
        {
            DataCommand command = DataCommandManager.GetDataCommand("CreateRMATracking");

            command.SetParameterValue("@RegisterSysNo", entity.RegisterSysNo);
            command.SetParameterValue("@Content", entity.Content);
            command.SetParameterValue("@Status", entity.Status);
            command.SetParameterValue("@RemindTime", entity.RemindTime);
            command.SetParameterValue("@Note", entity.Note);

            if (entity.Status == InternalMemoStatus.Close)
            {
                command.SetParameterValue("@UpdateTime", DateTime.Now);
                command.SetParameterValue("@UpdateUserSysNo", ServiceContext.Current.UserSysNo);
            }
            else
            {
                command.SetParameterValue("@UpdateTime", DBNull.Value);
                command.SetParameterValue("@UpdateUserSysNo", DBNull.Value);
            }
            command.SetParameterValue("@CompanyCode", entity.CompanyCode);
            command.SetParameterValue("@DepartmentCode", entity.DepartmentCode);
            command.SetParameterValue("@Urgency", entity.Urgency);
            command.SetParameterValue("@ReasonCodeSysNo", entity.ReasonCodeSysNo);
            command.SetParameterValue("@SourceSysNo", entity.SourceSysNo);
            command.SetParameterValueAsCurrentUserSysNo("@CreateUserSysNo");
            command.ExecuteNonQuery();
            return(entity);
        }
Ejemplo n.º 4
0
        public virtual void Close(InternalMemoInfo entity)
        {
            DataCommand command = DataCommandManager.GetDataCommand("CloseRMATracking");

            command.SetParameterValue("@SysNo", entity.SysNo);
            command.SetParameterValue("@Status", entity.Status);
            command.SetParameterValue("@Note", entity.Note);
            command.SetParameterValueAsCurrentUserSysNo("@UpdateUserSysNo");
            command.ExecuteNonQuery();
        }
Ejemplo n.º 5
0
        public InternalMemoInfo GetRMATrackingBySysNo(int sysNo)
        {
            InternalMemoInfo result  = null;
            DataCommand      command = DataCommandManager.GetDataCommand("GetRMATrackingBySysNo");

            command.SetParameterValue("@SysNo", sysNo);
            result = command.ExecuteEntity <InternalMemoInfo>();

            return(result);
        }
Ejemplo n.º 6
0
        /// <summary>
        /// 转换RMA
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        public virtual void TransRMA(int callingSysNO, InternalMemoInfo request)
        {
            CallsEvents entity = ObjectFactory <CallsEventsProcessor> .Instance.Load(callingSysNO);

            entity.ReferenceType = CallingReferenceType.RMA;
            using (TransactionScope scope = new TransactionScope())
            {
                entity.ReferenceSysNo = ExternalDomainBroker.CreateRMATracking(request).SysNo;
                ObjectFactory <CallsEventsProcessor> .Instance.UpdateReference(entity);

                ObjectFactory <CallsEventsProcessor> .Instance.CloseCallsEvents(entity);

                scope.Complete();
            }
        }
Ejemplo n.º 7
0
        /// <summary>
        /// 创建RMA跟进日志
        /// </summary>
        /// <param name="data"></param>
        /// <param name="callback"></param>
        public void Create(RMATrackingVM vm, EventHandler <RestClientEventArgs <InternalMemoInfo> > callback)
        {
            InternalMemoInfo data = vm.ConvertVM <RMATrackingVM, InternalMemoInfo>();

            data.CompanyCode = CPApplication.Current.CompanyCode;
            string relativeUrl = "/RMAService/RMATracking/Create";

            restClient.Update <InternalMemoInfo>(relativeUrl, data, (obj, args) =>
            {
                if (args.FaultsHandle())
                {
                    return;
                }
                callback(obj, args);
            });
        }
Ejemplo n.º 8
0
        /// <summary>
        /// 关闭RMA跟进日志
        /// </summary>
        /// <param name="data"></param>
        /// <param name="callback"></param>
        public void Close(RMATrackingVM vm, EventHandler <RestClientEventArgs <string> > callback)
        {
            InternalMemoInfo data = vm.ConvertVM <RMATrackingVM, InternalMemoInfo>();

            data.Status = InternalMemoStatus.Close;
            string relativeUrl = "/RMAService/RMATracking/Close";

            restClient.Update <string>(relativeUrl, data, (obj, args) =>
            {
                if (args.FaultsHandle())
                {
                    return;
                }
                callback(obj, args);
            });
        }
Ejemplo n.º 9
0
        public void CallingToRMA(InternalMemoInfo request, EventHandler <RestClientEventArgs <dynamic> > callback)
        {
            string relativeUrl = "/CustomerService/CallsEvents/CallingToRMA";

            restClient.Create(relativeUrl, request, callback);
        }
Ejemplo n.º 10
0
 /// <summary>
 /// 关闭RMA跟进单
 /// </summary>
 /// <param name="msg"></param>
 public virtual void CloseRMATracking(InternalMemoInfo msg)
 {
     //关闭RMA跟进单的同时需要关闭客户来电记录
     ExternalDomainBroker.CloseCustomerCalling(msg.SysNo.Value, msg.Note);
     DA.Close(msg);
 }
Ejemplo n.º 11
0
 /// <summary>
 /// 创建RMA跟进日志
 /// </summary>
 /// <param name="msg"></param>
 /// <returns></returns>
 public virtual InternalMemoInfo CreateRMATracking(InternalMemoInfo msg)
 {
     return(ObjectFactory <RMATrackingProcessor> .Instance.CreateRMATracking(msg));
 }
Ejemplo n.º 12
0
 /// <summary>
 /// 关闭RMA跟进单
 /// </summary>
 /// <param name="msg"></param>
 public virtual void CloseRMATracking(InternalMemoInfo msg)
 {
     ObjectFactory <RMATrackingProcessor> .Instance.CloseRMATracking(msg);
 }
Ejemplo n.º 13
0
 public void CloseRMATracking(InternalMemoInfo msg)
 {
     ObjectFactory <RMATrackingAppService> .Instance.CloseRMATracking(msg);
 }
Ejemplo n.º 14
0
 public InternalMemoInfo CreateRMATracking(InternalMemoInfo msg)
 {
     return(ObjectFactory <RMATrackingAppService> .Instance.CreateRMATracking(msg));
 }
Ejemplo n.º 15
0
 public void CallingToRMA(InternalMemoInfo request)
 {
     ObjectFactory <CallsEventsAppService> .Instance.CallingToRMA(request);
 }