public List<string> GetRecipientPdfFileList(domain.Recipient recipient, uint nameIndex)
        {
            List<string> recipientPdfFileList = new List<string>();
            DirectoryInfo fdir = new DirectoryInfo(this.directoryService.GetOrCreateBaseDir());
            FileInfo[] file = fdir.GetFiles();
            HashSet<string> possibleKey = this.GetPossibleKeySet(recipient);

            foreach (var item in file)
            {
                string fileName = item.Name;
                FileInfo info = new FileInfo(fileName);
                if (info.Extension != ".pdf") continue;

                if (this.IsFileBelongToRecipient(fileName, possibleKey))
                {
                    recipientPdfFileList.Add(item.FullName);
                }
            }

            recipientPdfFileList = NameIndexFilter(recipientPdfFileList,nameIndex);

            recipientPdfFileList.Sort();
            recipientPdfFileList.Reverse();
            
            var temp = recipientPdfFileList[1];
            recipientPdfFileList[1] = recipientPdfFileList[2] ;
            recipientPdfFileList[2] = temp;

            return recipientPdfFileList;
        }
示例#2
0
        private void pullMsgAndDoneIt(domain.Message message)
        {
            Dictionary<string, object> map = new Dictionary<string, object>();
            map = serializeTool.Desrialize<Dictionary<string, object>>(map,message.getData());
            if(null == map || map.Count == 0){return ;}
            string operType = map[Grobal.USER_OPERATION].ToString();
            User user = (User)map[Grobal.USER];
            /*注册*/
            if(Grobal.REGIST.Equals(operType))
            {
                string result = map[Grobal.RESULT].ToString();
                if(Grobal.SUCCESS.Equals(result))
                {
                    this.loginForm.txt_loginName.Text = user.LoginName;
                }
                else
                {
                    MessageBox.Show("用户已存在");
                }
            }//登录
            else if(Grobal.LOGIN.Equals(operType))
            {
                string result = map[Grobal.RESULT].ToString();
                if(Grobal.SUCCESS.Equals(result))
                {

                }
                else
                {
                    MessageBox.Show("登录名或者口令不正确!");
                }
            }
        }
 public ProductItemViewModel CreateVM(IUnityContainer container, domain.Product x)
 {
     return container.Resolve<ProductItemViewModel>(new ParameterOverrides()
             {
                 {"domainProduct",x}
             }.OnType<ProductItemViewModel>());
 }
        public static bool IsValidEmail(string email)
        {
            if (string.IsNullOrWhiteSpace(email))
            {
                return(false);
            }
            try
            {
                if (Regex.IsMatch(email,
                                  @"^[^@\s]+@[^@\s]+\.[^@\s]+$",
                                  RegexOptions.IgnoreCase, TimeSpan.FromMilliseconds(250)))
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            catch (Exception e)
            {
                return(false);
            }
            try
            {
                Normalize the domain
                    email = Regex.Replace(email, @"(@)(.+)$", DomainMapper,
                                          RegexOptions.None, TimeSpan.FromMilliseconds(200));

                Examines the domain part of the email and normalizes it.
                string DomainMapper(Match match)
                {
                    Use IdnMapping class to convert Unicode domain names.
示例#5
0
        public ReturnResult <ReturnOpenModel> OpenDomain(OpenModel model)
        {
            ReturnOpenModel item  = null;
            domain          oInfo = new domain()
            {
                id          = ObjectId.GenerateNewId(),
                bucketcount = model.bucketCount,
                bucketsize  = model.bucketSize,
                existbucket = 0,
                existsize   = 0,
                existcount  = 0,
                status      = model.status,
                addtime     = DateTime.Now
            };

            int result = _dbHelper.AddOne(col, oInfo);

            if (result > 0)
            {
                item             = new ReturnOpenModel();
                item.AppId       = oInfo.id.ToString();
                item.bucketSize  = oInfo.bucketsize;
                item.bucketCount = oInfo.bucketcount;
                item.status      = oInfo.status;
            }
            return(new ReturnResult <ReturnOpenModel>(item));
        }
        private string CombinePDFFiles(List<string> recipientPdfFileList, domain.Recipient recipient,domain.Order order)
        {
            if (recipientPdfFileList.Count == 0) return string.Empty;

            PdfDocument outputDocument = new PdfDocument();
            List<XPdfForm> xpdList = new List<XPdfForm>();
            XGraphics gfx;

            int count = recipientPdfFileList.Count;
            foreach (var filePath in recipientPdfFileList)
            {
                XPdfForm form = XPdfForm.FromFile(filePath);
                PdfPage page = outputDocument.AddPage();

                // Get a graphics object for page
                gfx = XGraphics.FromPdfPage(page);

                // Draw the page identified by the page number like an image
                gfx.DrawImage(form, new XRect(0, -20, form.PointWidth, form.PointHeight));
            }

            // Save the document...
            string filename = recipient.Name + order.ID.ToString() + "运单.pdf";
            string outputDocFullname = Path.Combine(this.directoryService.GetOrCreateBaseDir(), filename);
            outputDocument.Save(outputDocFullname);

            //this.PrintPDF(outputDocFullname);

            return outputDocFullname;
        }
        public string GetBpostFile(domain.Recipient recipient, uint nameIndex)
        {
            List<string> allfile = this.GetRecipientPdfFileList(recipient, nameIndex);

            return allfile.Where(x => !x.Contains('`') && 
                                      !x.Contains('ä') &&
                                       x.Contains('1') 
                                 ).First();
        }
示例#8
0
        public domain.sm.Message createMessage(domain.sm.Message message)
        {
            OracleQuery query = buildCreateMessageQuery(message);
            nonQuery nq = delegate() { return query.Command.ExecuteNonQuery(); };
            Int32 rowsAffected = (Int32)_cxn.query(query, nq);
            message.Id = ((Oracle.DataAccess.Types.OracleDecimal)query.Command.Parameters["outId"].Value).ToInt32();

            return message;
        }
        public  void Exceute(domain.Product domainProduct)
        {
            this.domainProduct = domainProduct;

            try
            {
                this.domainProduct.SetPropertyValue(this.propertyName, this.Value);
            }
            catch { }
        }
        public void Add(domain.Product target)
        {
            int ? maxid = this.productList.Max(x => (int?)x.ID);
            

            target.ID = (maxid ?? 0) + 1;

            this.productList.Add(target);

            this.fileDbmgr.Save();
        }
示例#11
0
        public static atomicf1.domain.Race MapDomainRace(this Race race, domain.Circuit circuit)
        {
            var f1Race = new domain.Race()
                             {
                                 StartDate = race.Date,
                                 EndDate = race.Date,
                                 PercentLength = 100,
                                 Name = race.Name,
                                 Circuit = circuit
                             };

            return f1Race;
        }
示例#12
0
        public domain.sm.Folder createFolder(domain.sm.Folder folder)
        {
            OracleQuery request = buildCreateFolderQuery(folder);
            nonQuery qry = delegate() { return request.Command.ExecuteNonQuery(); };
            Int32 response = (Int32)_cxn.query(request, qry);

            if (response != 1)
            {
                throw new MdoException("Unable to create folder");
            }
            folder.Id = ((Oracle.DataAccess.Types.OracleDecimal)request.Command.Parameters["outId"].Value).ToInt32();
            return folder;
        }
示例#13
0
        public Addressee moveMessage(Message message, domain.sm.User user, Folder folder)
        {
            Addressee addressee = getAddressee(message.Id, user.Id);

            checkValidMove(addressee.Folder, folder);

            addressee.Folder = folder;
            addressee.FolderId = folder.Id;
            if (!addressee.Folder.SystemFolder)
            {
                FolderDao folderDao = new FolderDao(_cxn);
                addressee.Folder = folderDao.getUserFolder(user.Id, folder.Id);
            }
            return moveMessage(addressee);
        }
示例#14
0
        public IList<TriageGroup> getValidRecipients(domain.sm.User user)
        {
            if (user == null || user.Id <= 0)
            {
                throw new MdoException("Invalid user");
            }

            if (user.UserType == domain.sm.enums.UserTypeEnum.PATIENT)
            {
                return getValidRecipientsForPatient(user.Id);
            }
            else if (user.UserType == domain.sm.enums.UserTypeEnum.CLINICIAN)
            {
                return getValidRecipientsForProvider(user.Id);
            }
            else
            {
                throw new MdoException("Unexpected user type: " + Enum.GetName(typeof(domain.sm.enums.UserTypeEnum), user.UserType));
            }
        }
示例#15
0
        public static void MapDomainRaceEntry(this RaceEntry entry, domain.RaceEntry f1Entry)
        {
            f1Entry.RacePlace = entry.Position;

            f1Entry.DidNotStart = entry.PositionString == "DNS" || entry.PositionString == "DNQ";
            f1Entry.DidNotFinish = entry.PositionString == "Ret";
            f1Entry.FastestLap = entry.FastestLapTime.ConvertToDecimalLapTime() ?? 0;
            f1Entry.GridPosition = entry.Grid;
            f1Entry.RaceTime = entry.Time;

            f1Entry.DidNotQualify = entry.QualifyingPosition == "DNQ";
            f1Entry.QualifyingTime = entry.QualifyingTime1.ConvertToDecimalLapTime() ?? 0;
            f1Entry.QualifyingTime2 = entry.QualifyingTime2.ConvertToDecimalLapTime();
            f1Entry.QualifyingTime3 = entry.QualifyingTime3.ConvertToDecimalLapTime();

            int qualifyingPosition;
            if (int.TryParse(entry.QualifyingPosition, out qualifyingPosition))
                f1Entry.QualifyingPosition = qualifyingPosition;
            else
                f1Entry.QualifyingPosition = 0;
        }
示例#16
0
 public int ModifyDomain(string id, DomainModel model)
 {
     try
     {
         domain item = new domain()
         {
         };
         var result = _dbHelper.ModifyOne(col, item, id);
         if (result.ModifiedCount > 0)
         {
             return(1);
         }
         else
         {
             return(0);
         }
     }
     catch (Exception ex) {
         throw ex;
     }
 }
示例#17
0
 private void pullMsgAndDoneIt(domain.Message message)
 {
     Dictionary<string, object> map = new Dictionary<string, object>();
     map = serializeTool.Desrialize<Dictionary<string, object>>(map,message.getData());
     if(null == map){return ;}
     string operType = map[Grobal.USER_OPERATION].ToString();
     User user = (User)map[Grobal.USER];
     if(Grobal.REGIST.Equals(operType))
     {
         application.regist(user);
     }
     else if(Grobal.LOGIN.Equals(operType))
     {
         application.login(user);
     }
     else if(Grobal.LOGOUT.Equals(operType))
     {
         application.logout(user);
     }
     else if(Grobal.SENDMSG.Equals(operType))
     {
         application.sendMsg(message,(User)map[Grobal.FROM_USER]);
     }
 }
示例#18
0
        internal OracleQuery buildUpdateFolderQuery(domain.sm.Folder folder)
        {
            string sql = "UPDATE SMS.FOLDER SET FOLDER_NAME=:folderName, OPLOCK=:oplockPlusOne, MODIFIED_DATE=:modifiedDate WHERE FOLDER_ID=:folderId and OPLOCK=:oplock AND ACTIVE=1";

            OracleQuery query = new OracleQuery();
            query.Command = new OracleCommand(sql);

            OracleParameter folderNameParam = new OracleParameter("folderName", OracleDbType.Varchar2, 50);
            folderNameParam.Value = folder.Name;
            query.Command.Parameters.Add(folderNameParam);

            OracleParameter oplockPlusOneParam = new OracleParameter("oplockPlusOne", OracleDbType.Decimal);
            oplockPlusOneParam.Value = folder.Oplock + 1;
            query.Command.Parameters.Add(oplockPlusOneParam);

            OracleParameter modifiedParam = new OracleParameter("modifiedDate", OracleDbType.Date);
            modifiedParam.Value = new OracleDate(DateTime.Now);
            query.Command.Parameters.Add(modifiedParam);

            OracleParameter folderIdParam = new OracleParameter("folderId", OracleDbType.Decimal);
            folderIdParam.Value = folder.Id;
            query.Command.Parameters.Add(folderIdParam);

            OracleParameter oplockParam = new OracleParameter("oplock", OracleDbType.Decimal);
            oplockParam.Value = folder.Oplock;
            query.Command.Parameters.Add(oplockParam);

            return query;
        }
示例#19
0
        internal bool updateLastEmailNotification(domain.sm.User user)
        {
            // this function should attempt to update the user's last notification date and return true if successful
            // be sure to use the OPLOCK!!!
            try
            {
                OracleQuery query = buildUpdateLastEmailNotificationQuery(user);
                nonQuery update = delegate() { return query.Command.ExecuteNonQuery(); };
                Int32 rowsAffected = (Int32)_cxn.query(query, update);

                if (rowsAffected != 1)
                {
                    return false;
                }
                user.Oplock++;
                return true;
            }
            catch (Exception)
            {
                return false;
            }
        }
示例#20
0
        internal OracleQuery buildUpdateLastEmailNotificationQuery(domain.sm.User user)
        {
            string sql = "UPDATE SMS.SMS_USER SET LAST_EMAIL_NOTIFICATION=:lastEmailNotification, OPLOCK=:oplockPlusOne WHERE USER_ID=:userId and OPLOCK=:oplock";

            OracleQuery query = new OracleQuery();
            query.Command = new OracleCommand(sql);

            OracleParameter lastEmailNotificationParam = new OracleParameter("lastEmailNotification", OracleDbType.Date);
            lastEmailNotificationParam.Value = (Oracle.DataAccess.Types.OracleDate)DateTime.Now;
            query.Command.Parameters.Add(lastEmailNotificationParam);

            OracleParameter oplockPlusOneParam = new OracleParameter("oplockPlusOne", OracleDbType.Decimal);
            oplockPlusOneParam.Value = user.Oplock + 1;
            query.Command.Parameters.Add(oplockPlusOneParam);

            OracleParameter userIdParam = new OracleParameter("userId", OracleDbType.Decimal);
            userIdParam.Value = Convert.ToDecimal(user.Id);
            query.Command.Parameters.Add(userIdParam);

            OracleParameter oplockParam = new OracleParameter("oplock", OracleDbType.Decimal);
            oplockParam.Value = Convert.ToDecimal(user.Oplock);
            query.Command.Parameters.Add(oplockParam);

            return query;
        }
示例#21
0
        public OrderViewModel(domain.Order order, domain.Recipient recipient, OrderService orderService)
        {
            this.order = order;
            this.order.PropertyChanged += new System.ComponentModel.PropertyChangedEventHandler(OnOrder_PropertyChanged);
            this.orderService = orderService;

            this.recipient = recipient;
        }
 public void sendMsg(domain.Message message,User whoRev)
 {
     udpTool.send(message.getData(),whoRev.LocalPoint);
 }
示例#23
0
 public void Add(domain.Bill target)
 {
     this.repository.Add(target);
 }
        private ProductItemViewModel CreateVM(IUnityContainer container, domain.Product x)
        {
            var vm =  container.Resolve<ProductItemViewModel>(new ParameterOverrides()
                    {
                        {"domainProduct",x}
                    }.OnType<ProductItemViewModel>());

            vm.Euro2Cny = this.Eruo2Cny * this.SecondServiceRate;

            return vm;
        }
示例#25
0
 public pair(ref ptr <Value> v = default, ref ptr <Value> w = default, domain d = default)
 {
     this.v = v;
     this.w = w;
     this.d = d;
 }
示例#26
0
        internal OracleQuery buildCreateAddresseeQuery(domain.sm.Addressee addressee, Int32 messageId)
        {
            string sql = "INSERT INTO SMS.ADDRESSEE (ADDRESSEE_ROLE, SECURE_MESSAGE_ID, USER_ID, FOLDER_ID) VALUES (:addresseeRole, :smId, :userId, :folderId) "+
                "RETURNING ADDRESSEE_ID INTO :outId";

            OracleQuery query = new OracleQuery();
            query.Command = new OracleCommand(sql);

            OracleParameter addresseeRoleParam = new OracleParameter("addresseeRole", OracleDbType.Decimal);
            addresseeRoleParam.Value = Convert.ToDecimal((Int32)addressee.Role);
            query.Command.Parameters.Add(addresseeRoleParam);

            OracleParameter smIdParam = new OracleParameter("smId", OracleDbType.Decimal);
            smIdParam.Value = Convert.ToDecimal(messageId);
            query.Command.Parameters.Add(smIdParam);

            OracleParameter userIdParam = new OracleParameter("userId", OracleDbType.Decimal);
            userIdParam.Value = Convert.ToDecimal(addressee.Owner.Id);
            query.Command.Parameters.Add(userIdParam);

            OracleParameter folderIdParam = new OracleParameter("folderId", OracleDbType.Decimal);
            folderIdParam.Value = Convert.ToDecimal(addressee.Folder.Id);
            query.Command.Parameters.Add(folderIdParam);

            OracleParameter outParam = new OracleParameter("outId", OracleDbType.Decimal);
            outParam.Direction = ParameterDirection.Output;
            query.Command.Parameters.Add(outParam);

            return query;
        }
 private void SetOrderSent(domain.Order order)
 {
     if (!order.OrderStatusTags.Contains("sent"))
     {
         order.OrderStatusTags += "sent;";
     }
 }
示例#28
0
        public domain.sm.Folder updateFolder(domain.sm.Folder folder)
        {
            OracleQuery request = buildUpdateFolderQuery(folder);
            nonQuery qry = delegate() { return request.Command.ExecuteNonQuery(); };
            Int32 response = (Int32)_cxn.query(request, qry);

            if (response != 1)
            {
                throw new MdoException("Unable to update folder");
            }
            folder.Oplock++;
            return folder;
        }
示例#29
0
        internal void addOrder(domain.Order order)
        {
            orderList.Add(order);
            SaveOrder(order.OrderID, order.OrderDate, order.StartDate, order.DeliveryDate, order.Addresse);
            foreach (var item in order.ProductList)
            {
                AddOrderProduct(order.OrderID, item.ProductID);
            }

        }
示例#30
0
        internal OracleQuery buildCreateFolderQuery(domain.sm.Folder folder)
        {
            string sql = "INSERT INTO SMS.FOLDER (USER_ID, FOLDER_NAME) VALUES (:userId, :folderName) RETURNING FOLDER_ID INTO :outId";

            OracleQuery query = new OracleQuery();
            query.Command = new OracleCommand(sql);

            OracleParameter userIdParam = new OracleParameter("userId", OracleDbType.Decimal);
            userIdParam.Value = folder.Owner.Id;
            query.Command.Parameters.Add(userIdParam);

            OracleParameter folderNameParam = new OracleParameter("folderName", OracleDbType.Varchar2, 50);
            folderNameParam.Value = folder.Name;
            query.Command.Parameters.Add(folderNameParam);

            OracleParameter outIdParam = new OracleParameter("outId", OracleDbType.Decimal);
            outIdParam.Direction = ParameterDirection.Output;
            query.Command.Parameters.Add(outIdParam);

            return query;
        }
示例#31
0
 internal void addNewProduct(domain.Product p)
 {
     productList.Add(p);
     SaveProduct(p.ProductID, p.Name);
 }
示例#32
0
        public domain.sm.Addressee moveMessageToFolder(domain.sm.Addressee addressee, domain.sm.Folder newFolder)
        {
            domain.sm.Addressee dbAddressee = new AddresseeDao(_cxn).getAddressee(addressee.Id);
            if (dbAddressee == null || dbAddressee.Id <= 0)
            {
                throw new MdoException("Couldn't find that addressee record");
            }

            checkValidMove(Convert.ToInt32(dbAddressee.FolderId), Convert.ToInt32(newFolder.Id), addressee.Owner.Id);

            dbAddressee.FolderId = newFolder.Id;
            dbAddressee.Oplock = addressee.Oplock;
            return new AddresseeDao(_cxn).updateAddressee(dbAddressee);
        }
示例#33
0
 => UserContext = new UserContextSettings(username, password, domain, logonType, displayNameOnTest);
示例#34
0
        internal void addSenderToMessage(domain.sm.User sender, Message message)
        {
            if (message.Addressees == null)
            {
                message.Addressees = new List<Addressee>();
            }
            message.Addressees.Add(
                new Addressee()
                {
                    Message = message,
                    Owner = sender,
                    Role = domain.sm.enums.AddresseeRoleEnum.SENDER
                });

            if (message.SentDate.Year > 1900)
            {
                message.Addressees[message.Addressees.Count - 1].FolderId = (Int32)domain.sm.enums.SystemFolderEnum.Sent;
                message.Addressees[message.Addressees.Count - 1].Folder = new Folder()
                {
                    Id = (Int32)domain.sm.enums.SystemFolderEnum.Sent,
                    Name = Enum.GetName(typeof(domain.sm.enums.SystemFolderEnum), domain.sm.enums.SystemFolderEnum.Sent)
                };
            }
            else
            {
                message.Addressees[message.Addressees.Count - 1].FolderId = (Int32)domain.sm.enums.SystemFolderEnum.Drafts;
                message.Addressees[message.Addressees.Count - 1].Folder = new Folder()
                {
                    Id = (Int32)domain.sm.enums.SystemFolderEnum.Drafts,
                    Name = Enum.GetName(typeof(domain.sm.enums.SystemFolderEnum), domain.sm.enums.SystemFolderEnum.Drafts)
                };
            }
        }
示例#35
0
 internal bool shouldSend(domain.sm.User user)
 {
     if (String.IsNullOrEmpty(user.Email))
     {
         return false;
     }
     if (user.EmailNotification == domain.sm.enums.EmailNotificationEnum.NONE)
     {
         return false;
     }
     if (user.EmailNotification == domain.sm.enums.EmailNotificationEnum.ONE_DAILY && DateTime.Now.Subtract(user.LastNotification).TotalDays > 1)
     {
         return new UserDao(_cxn).updateLastEmailNotification(user);
     }
     if (user.EmailNotification == domain.sm.enums.EmailNotificationEnum.EACH_MESSAGE || user.EmailNotification == domain.sm.enums.EmailNotificationEnum.ON_ASSIGNMENT)
     {
         return new UserDao(_cxn).updateLastEmailNotification(user);
     }
     else
     {
         return false;
     }
 }
示例#36
0
 public BaseClient(Uri domain, string apiKey) => Initialize(domain, apiKey);