public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            HourLog post = (HourLog)value;

            if (post.Location != null)
            {
                return(post.Location);
            }
            else
            {
                return(post.CompanyName);
            }
        }
示例#2
0
        //获取工时日志
        internal IList <HourLog> GetHourLogs(Vault vault, DateTime?startDate, DateTime?endDate)
        {
            var typeId        = MfAlias.GetObjType(vault, "ObjJobLog");
            var propIdLogDate = MfAlias.GetPropDef(vault, "PropJobDate");
            var scs           = new SearchConditions();

            if (startDate != null)
            {
                var sdCondition = new SearchCondition();
                sdCondition.ConditionType = MFConditionType.MFConditionTypeGreaterThanOrEqual;
                sdCondition.Expression.DataPropertyValuePropertyDef = propIdLogDate;
                sdCondition.TypedValue.SetValue(MFDataType.MFDatatypeDate, startDate.Value);
                scs.Add(-1, sdCondition);
            }
            if (endDate != null)
            {
                var edCondition = new SearchCondition();
                edCondition.ConditionType = MFConditionType.MFConditionTypeLessThanOrEqual;
                edCondition.Expression.DataPropertyValuePropertyDef = propIdLogDate;
                edCondition.TypedValue.SetValue(MFDataType.MFDatatypeDate, endDate.Value);
                scs.Add(-1, edCondition);
            }
            var objVns = MFSearchConditionUtils.SearchObjects(vault, typeId, null, scs);
            var res    = new List <HourLog>();
            var guid   = vault.GetGUID();

            foreach (ObjectVersion o in objVns)
            {
                int      userId   = vault.ObjectPropertyOperations.GetProperty(o.ObjVer, 25).Value.GetLookupID();
                var      titleArr = o.Title.Split(new [] { '_' });
                DateTime logDate  = String2Date(titleArr[1]).GetValueOrDefault();
                var      log      = new HourLog
                {
                    MemberName = titleArr[0],
                    LogDate    = logDate,
                    LogHours   = double.Parse(titleArr[2]),
                    VaultGuid  = guid,
                    UserID     = userId
                };
                res.Add(log);
            }
            return(res);
        }