/// <summary>
        /// 获取所有数据
        /// msg为SQL语句
        /// </summary>
        /// <param name="inEnt"></param>
        /// <returns></returns>
        public async Task <ResultObj <Dictionary <string, object> > > QueryExecute(QuerySearchDto inEnt)
        {
            ResultObj <Dictionary <string, object> > reObj = new ResultObj <Dictionary <string, object> >();
            Dictionary <string, object> reEnt = new Dictionary <string, object>();

            SysQueryEntity query = await dal.Single(i => i.code == inEnt.code);

            if (query == null)
            {
                return(reObj);
            }
            IList <QueryCfg> cfg = TypeChange.ToJsonObject <List <QueryCfg> >(query.queryCfgJson);

            string whereStr = "";
            string AllSql   = MakeSql(inEnt, query.queryConf, ref whereStr);

            reObj.msg = AllSql;
            if (string.IsNullOrEmpty(inEnt.orderStr))
            {
                inEnt.orderStr = "(SELECT 0)";
            }
            try
            {
                reObj.dataList = dal.Query(AllSql);
                reObj.total    = reObj.dataList.Count();
            }
            catch
            {
                return(reObj);
            }
            return(reObj);
        }
Beispiel #2
0
        /*
         * /// <summary>
         * /// 商品写入主调函数
         * /// </summary>
         * /// <param name="List">商品信息列表</param>
         * /// <returns></returns>
         * public static bool InsertProduct(IList<My.App.Entity.Product.tbProductAbb> List) {
         *  bool IsOk = false;
         *  try {
         *      if (List != null && List.Count > 0) {
         *          Business.Product.ProductAbb.Update(List[0].ShopId, false);
         *          foreach (var item in List) {
         *              IsOk = Business.Product.ProductAbb.Insert(item);
         *          }
         *      }
         *  } catch { }
         *
         *  return IsOk;
         * }*/

        #endregion

        #endregion

        #region 数据转换

        /// <summary>
        /// 数据转换
        /// </summary>
        /// <param name="str">原类型</param>
        /// <param name="Type">欲转换类型枚举</param>
        /// <returns>基类型</returns>
        public static object DataChange(string str, TypeChange Type)
        {
            string Temp = "";

            if (!String.IsNullOrEmpty(str))
            {
                Temp = str.Trim();
            }

            switch (Type)
            {
            case TypeChange.DATETIME:
                DateTime DT_Temp = DateTime.Now;
                DateTime.TryParse(Temp, out DT_Temp);
                return(DT_Temp);

            case TypeChange.INT:
                int I_Temp = 0;
                int.TryParse(Temp, out I_Temp);
                return(I_Temp);

            case TypeChange.STRING:
                return(Temp);

            case TypeChange.DECIMAL:
                decimal D_Temp = 0;
                decimal.TryParse(Temp, out D_Temp);
                return(D_Temp);

            default:
                return(Temp);
            }
        }
        //Order History User Interface
        //Displays total order history of user
        //total, date/time, amount of pizzas, type of pizza, size, crust, and location for each order
        public static void historyUI()
        {
            while (true)
            {
                string address;
                Console.Clear();
                Console.WriteLine("Order History");
                Console.WriteLine();
                Console.WriteLine(" Total        Date/Time        Amount of Pizzas   Type of Pizza   Size    Crust                Location");
                Console.WriteLine("-----------------------------------------------------------------------------------------------------------------");
                Entity db      = AccessDb.acc(); //Singleton used to access data
                var    records = Repository.GetRecordsReverse(db);

                foreach (var rec in records)
                {
                    if (rec.UserId == PCustomer.Id) // runs through record and check if user id matches foreign key in records, then displays history
                    {
                        TypeChange type = new TypeChange();
                        address = type.returnLocation(rec.LocatId);
                        decimal?value = rec.Total;
                        decimal total = value ?? 0;
                        total = Math.Round(total, 2);
                        Console.WriteLine(String.Format("{0,5:C}  {1,22}  {2,7}            {3,-12}  {4,-6}  {5,-11}  {6,0}"
                                                        , total, rec.DateT, rec.AmountP, rec.PizzaType, rec.Size, rec.Crust, address));
                    }
                }

                Console.WriteLine();
                Console.WriteLine("Press any key to return to other options");
                Console.ReadKey();
                optionsUI();
                break;
            }
        }
        public async Task <ResultObj <String> > userLogin(LogingDto inEnt)
        {
            ResultObj <String> reobj = new ResultObj <String>();

            var loginResult = await _login.UserLogin(inEnt);

            if (loginResult.success)
            {
                var client = new HttpClient();

                // var paras = new Dictionary<string, string>();
                // paras.Add("userObjJson", TypeChange.ObjectToStr(loginResult.data));
                // var tokeStr=Fun.HashEncrypt($"{DataTimeHelper.getDateLong(DateTime.Now)}|{loginResult.data.id}|{loginResult.data.loginName}|{loginResult.data.name}");
                var tokeStr = Helper.AuthHelper.GenerateToken(loginResult.data);
                reobj.success = true;
                reobj.code    = tokeStr;
                reobj.data    = TypeChange.ObjectToStr(loginResult.data);
            }
            else
            {
                reobj.success = false;
                reobj.msg     = loginResult.msg;
            }
            return(reobj);
        }
        public async Task <string> GetUserInfoAsync(string state, string code)
        {
            //Request.Headers.Select(x=>x.Key+"="+x.Value).ToArray()
            if (string.IsNullOrEmpty(code))
            {
                string ip = this.httpContextAccessor.HttpContext.Connection.RemoteIpAddress.ToString();
                state = $"{state}|{ip}";
                var url = Helper.WeiChat.Utility.GetWebpageAuthorization(appConfig.WeiXin.Appid, $"http://{Request.Host.Host}{Request.Path}", state, false);
                Response.Redirect(url);
                return("");
            }
            else
            {
                var stateList = state.Split('|');
                state = stateList[0];
                var reStr = Helper.WeiChat.Utility.GetWebpageUserInfo(appConfig.WeiXin.Appid, appConfig.WeiXin.Secret, code);
                reStr.ip = stateList[1];
                var addressList = await httpClientFactory.CreateClient().GetAddressAsync(reStr.ip);

                reStr.address = string.Join("", addressList);
                await weiXin.saveUser(reStr, new List <string> {
                    "nickname", "headimgurl", "lastTime", "ip", "address", "subscribe"
                });

                return(TypeChange.ObjectToStr(reStr));
            }
        }
Beispiel #6
0
        public async Task <ResultObj <int> > save(DtoSave <SysQueryEntity> inEnt)
        {
            ResultObj <int> reObj = new ResultObj <int>();

            try
            {
                if (string.IsNullOrEmpty(inEnt.data.queryCfgJson))
                {
                    inEnt.data.queryCfgJson = TypeChange.ObjectToStr((await _query.MakeQueryCfg(inEnt.data.code)).data);
                }
                if (string.IsNullOrEmpty(inEnt.data.rowsBtn))
                {
                    inEnt.data.rowsBtn = @"
[{
		""title"": ""修改"",
		""class"": ""nb-edit"",
		""readUrl"": ""user/*/singleByKey"",
		""apiUrl"": ""user/*/save""
	},
	{
		""title"": ""删除"",
		""class"": ""nb-trash"",
		""apiUrl"": ""user/*/delete"",
		""confirmTip"": ""确定要删除吗?""
	}
]";
                }
                if (string.IsNullOrEmpty(inEnt.data.heardBtn))
                {
                    inEnt.data.heardBtn = @"
[{
		""title"": ""添加"",
		""class"": ""nb-plus"",
		""click"": ""nowThis.Add('user/*/save')""
	},
	{
		""title"": ""批量删除"",
		""class"": ""ion-delete"",
		""click"": ""nowThis.Exec('user/*/delete','id','删除要删除吗?')""
	}
]                 
                    ";
                }
                if (inEnt.data.id == 0)
                {
                    reObj.data = await _query.Save(inEnt);
                }
                else
                {
                    reObj.data = await _query.Update(inEnt);
                }
            }
            catch (Exception ex)
            {
                LogHelper.WriteErrorLog(typeof(QueryController), ex.ToString());
                reObj.msg     = ex.Message;
                reObj.success = false;
            }
            return(reObj);
        }
Beispiel #7
0
 public string PharmAdviceCount()
 {
     using (SqliteDBHelper sqldb = new SqliteDBHelper())
     {
         DataTable dt = sqldb.Query(SqlTools.SqlQueryPharmAdviceCount);
         return(TypeChange.DataTableToXml(dt));
     }
 }
Beispiel #8
0
        public Result Test(DtoKey inEnt)
        {
            Result reEnt = new Result();

            reEnt.success = true;
            reEnt.msg     = "接口测试成功:" + TypeChange.ObjectToStr(appConfig);
            return(reEnt);
        }
        public async Task <SysQueryEntity> Single(Expression <Func <SysQueryEntity, bool> > where)
        {
            var reEnt = await dal.Single(where);

            reEnt._DictStr         = TypeChange.ObjectToStr(new ModelHelper <SysQueryEntity>(reEnt).GetDisplayDirct());
            reEnt._dictQueryCfgStr = TypeChange.ObjectToStr(new ModelHelper <QueryCfg>(new QueryCfg()).GetDisplayDirct());
            return(reEnt);
        }
Beispiel #10
0
 public string QueryFrequence()
 {
     using (SqliteDBHelper sqldb = new SqliteDBHelper())
     {
         DataTable dt = sqldb.Query(SqlTools.SqlQueryFrequence);
         return(TypeChange.DataTableToXml(dt));
     }
 }
Beispiel #11
0
        protected override VisitResult Visit(TypeChange typeChange, TypeChangeContext typeChangeContext)
        {
            NextAction nextAction = Visit(_breakingChangeDefinitionsProvider.BreakingTypeChanges, typeChange, typeChange.ChangeType, typeChangeContext);

            return(nextAction == NextAction.VisitChildTypes
                                ? base.Visit(typeChange, typeChangeContext)
                                : nextAction == NextAction.VisitNextSibling ? VisitResult.Continue : VisitResult.Stop);
        }
        /// <summary>
        /// 获取Csv数据,支持大数据下载
        /// </summary>
        /// <param name="inEnt"></param>
        /// <param name="sqlStr"></param>
        /// <returns></returns>
        public async Task <ResultObj <List <byte> > > QueryExecuteCsv(QuerySearchDto inEnt)
        {
            ResultObj <List <byte> > reObj = new ResultObj <List <byte> >();
            List <byte> reEnt = new List <byte>();

            SysQueryEntity query = await dal.Single(i => i.code == inEnt.code);

            if (query == null)
            {
                return(reObj);
            }

            JObject cfg = TypeChange.JsonToObject(query.queryCfgJson);
            Dictionary <string, string> dict = new Dictionary <string, string>();

            foreach (var item in cfg)
            {
                try
                {
                    dict.Add(item.Key, item.Value["title"].ToString());
                }
                catch
                {
                }
            }
            string whereStr = "";
            string AllSql   = MakeSql(inEnt, query.queryConf, ref whereStr);

            //如果条件为空
            if (!string.IsNullOrEmpty(whereStr))
            {
                if (!whereStr.Trim().ToLower().StartsWith("where"))
                {
                    whereStr = "where " + whereStr;
                }

                AllSql = string.Format(@"
                    SELECT T.* FROM 
                    ( 
	                    {0}
                    ) T {1}
                    ", AllSql, whereStr);
            }
            try
            {
                reObj.msg  = AllSql;
                reObj.data = dal.ExecuteBytesAsync(AllSql, null, dict);
            }
            catch (Exception e)
            {
                reObj.msg     = e.Message;
                reObj.success = false;
                return(reObj);
            }
            return(reObj);
        }
Beispiel #13
0
        public Result TestUser(DtoKey inEnt)
        {
            Result reEnt = new Result();

            reEnt.success = true;
            reEnt.msg     = "User.Identity:" + TypeChange.ObjectToStr(User.Identity);
            reEnt.msg    += "User.Claims:" + TypeChange.ObjectToStr(from c in User.Claims select new { c.Type, c.Value });

            return(reEnt);
        }
Beispiel #14
0
 public string QueryCodeListByGroup(string GroupName)
 {
     SQLiteParameter[] sqlpar = new SQLiteParameter[1];
     sqlpar[0] = new SQLiteParameter("1", GroupName);
     using (SqliteDBHelper sqldb = new SqliteDBHelper())
     {
         DataTable dt = sqldb.Query(SqlTools.SqlQueryCodeListByGroup, sqlpar);
         return(TypeChange.DataTableToXml(dt));
     }
 }
Beispiel #15
0
 /// <summary>
 /// Create all proper controls for an ElementItem using all information gathered.
 /// Usually, not all parameters need values.
 /// </summary>
 /// <param name="tag"> The XML Element to apply changes backwards and allow save. </param>
 /// <param name="name"> The name of the element. (Mandatory) </param>
 /// <param name="isRequired"> If the element is optional or mandatory. (Optional) </param>
 /// <param name="help"> Some help text if exists. (Optional) </param>
 /// <param name="controlTypes"> The special list that shows which controls should be made. (Mandatory) </param>
 /// <param name="typeOptions"> Can have these options: Constant/Variable/Function. (Used in Constant/Variable/Function only) </param>
 /// <param name="unitOptions"> What options to show in the unit dropdown. (Used in Constant/Variable only) </param>
 /// <param name="xUnitOptions"> What options to show in the x_unit dropdown. (Used in Variable only) </param>
 /// <param name="funcOptions"> What options to show in the functions dropdown. (Used in Function only) </param>
 /// <param name="keyOptions"> What options to show in the keywords dropdown. (Used in Keywords only) </param>
 public GeneralControl(string name, bool isRequired, string help, List<CustomControlType> controlTypes,
     List<string> typeOptions, List<string> unitOptions, List<string> xUnitOptions,
     List<string> funcOptions, List<string> keyOptions,
     Dictionary<CustomControlType, string> defaultValues, string defaultUnit, string defaultXUnit,
     ValueValidator valueValidator, SaveVariable saveVariableTable, TypeChange typeChange, UnitChange unitChange, XUnitChange xUnitChange)
 {
     CreateGeneralControl(name, isRequired, help, controlTypes, typeOptions, unitOptions, xUnitOptions,
         funcOptions, keyOptions, defaultValues, defaultUnit, defaultXUnit,
         valueValidator, saveVariableTable, typeChange, unitChange, xUnitChange);
 }
Beispiel #16
0
    public string QueryLoaclDataCount()
    {
        string SqlText = @"Select Count(1) LoacalDataCount From [Patient]";

        using (SqliteDBHelper sqldb = new SqliteDBHelper())
        {
            DataTable dt = sqldb.Query(SqlText);
            return(TypeChange.DataTableToXml(dt));
        }
    }
Beispiel #17
0
 public string QueryLisResult(string IllcaseNo)
 {
     SQLiteParameter[] sqlpar = new SQLiteParameter[1];
     sqlpar[0] = new SQLiteParameter("1", IllcaseNo);
     using (SqliteDBHelper sqldb = new SqliteDBHelper())
     {
         DataTable dt = sqldb.Query(SqlTools.SqlQueryLisResult, sqlpar);
         return(TypeChange.DataTableToXml(dt));
     }
 }
Beispiel #18
0
 public string QueryCheckApply(string InhosID)
 {
     SQLiteParameter[] sqlpar = new SQLiteParameter[1];
     sqlpar[0] = new SQLiteParameter("1", InhosID);
     using (SqliteDBHelper sqldb = new SqliteDBHelper())
     {
         DataTable dt = sqldb.Query(SqlTools.SqlQueryCheckApply, sqlpar);
         return(TypeChange.DataTableToXml(dt));
     }
 }
Beispiel #19
0
        protected virtual VisitResult Visit(TypeChange typeChange, TypeChangeContext typeChangeContext)
        {
            var methodGroupChangeContext = new MethodGroupChangeContext(
                typeChangeContext.AssemblyChanges,
                typeChangeContext.ParentModuleChange,
                typeChange);

            return(typeChange.MethodGroupChanges.All(methodGroupChange => Visit(methodGroupChange, methodGroupChangeContext) == VisitResult.Continue)
                                ? VisitResult.Continue
                                : VisitResult.Stop);
        }
Beispiel #20
0
        /// <summary>
        /// 设置菜单
        /// </summary>
        /// <param name="accessToken"></param>
        /// <param name="menuStr"></param>
        /// <returns></returns>
        public static string SetMenu(string accessToken, string menuStr)
        {
            var msgStr     = Fun.HttpPostJson("https://api.weixin.qq.com/cgi-bin/menu/create?access_token=" + accessToken, menuStr);
            var ticketDict = TypeChange.JsonToObject <Dictionary <string, string> >(msgStr);

            if (ticketDict.ContainsKey("errcode"))
            {
                msgStr = ticketDict["errcode"];
            }
            return(msgStr);
        }
Beispiel #21
0
 public string QueryPatientEmrDocDetail(string InhosID, string SectionNo)
 {
     SQLiteParameter[] sqlpar = new SQLiteParameter[2];
     sqlpar[0] = new SQLiteParameter("1", InhosID);
     sqlpar[1] = new SQLiteParameter("2", SectionNo);
     using (SqliteDBHelper sqldb = new SqliteDBHelper())
     {
         DataTable dt = sqldb.Query(SqlTools.SqlQueryPatientEmrDocDetail, sqlpar);
         return(TypeChange.DataTableToXml(dt));
     }
 }
Beispiel #22
0
 public string QueryDeptPatientCount(string DeptId, string InhosStatus)
 {
     SQLiteParameter[] sqlpar = new SQLiteParameter[2];
     sqlpar[0] = new SQLiteParameter("1", DeptId);
     sqlpar[1] = new SQLiteParameter("2", InhosStatus);
     using (SqliteDBHelper sqldb = new SqliteDBHelper())
     {
         DataTable dt = sqldb.Query(SqlTools.SqlQueryDeptPatientCount, sqlpar);
         return(TypeChange.DataTableToXml(dt));
     }
 }
Beispiel #23
0
 public string QueryCheckLogDetail(string InhosID, string LogType)
 {
     SQLiteParameter[] sqlpar = new SQLiteParameter[2];
     sqlpar[0] = new SQLiteParameter("1", InhosID);
     sqlpar[1] = new SQLiteParameter("2", LogType);
     using (SqliteDBHelper sqldb = new SqliteDBHelper())
     {
         DataTable dt = sqldb.Query(SqlTools.SqlQueryCheckLogDetail, sqlpar);
         return(TypeChange.DataTableToXml(dt));
     }
 }
Beispiel #24
0
        /// <summary>
        /// 生成文本信息
        /// </summary>
        /// <param name="toUserName"></param>
        /// <param name="fromUserName"></param>
        /// <param name="replay"></param>
        /// <returns></returns>
        public static string initText(string toUserName, string fromUserName, string replay)
        {
            Dictionary <string, string> dic = new Dictionary <string, string>();

            dic.Add("FromUserName", toUserName);
            dic.Add("ToUserName", fromUserName);
            dic.Add("MsgType", "text");
            dic.Add("CreateTime", DateTime.Now.Ticks.ToString());
            dic.Add("Content", replay);
            return(TypeChange.DictToXml(dic));
        }
Beispiel #25
0
        /// <summary>
        /// 获取用户基本信息
        /// </summary>
        /// <param name="openid"></param>
        /// <returns></returns>
        public static WxUserEntity GetUserInfo(string openid)
        {
            var msgStr     = Fun.HttpGetJson($"https://api.weixin.qq.com/cgi-bin/user/info?access_token={ReadAccessToken()}&openid={openid}");
            var ticketDict = TypeChange.JsonToObject(msgStr);

            if (ticketDict.ContainsKey("errcode"))
            {
                throw new Exception(ticketDict.GetValue("errmsg").ToString());
            }
            return(TypeChange.JsonToObject <WxUserEntity>(msgStr));;
        }
Beispiel #26
0
 public string QueryDutyResentPatientList(string DoctorID, string DPTypes)
 {
     SQLiteParameter[] sqlpar = new SQLiteParameter[2];
     sqlpar[0] = new SQLiteParameter("1", DoctorID);
     sqlpar[1] = new SQLiteParameter("2", DPTypes);
     using (SqliteDBHelper sqldb = new SqliteDBHelper())
     {
         DataTable dt = sqldb.Query(SqlTools.SqlQueryDutyResentPatientList, sqlpar);
         return(TypeChange.DataTableToXml(dt));
     }
 }
Beispiel #27
0
 public string QueryMyPatientList(string DoctorID, string InhosStatus)
 {
     SQLiteParameter[] sqlpar = new SQLiteParameter[2];
     sqlpar[0] = new SQLiteParameter("1", DoctorID);
     sqlpar[1] = new SQLiteParameter("2", InhosStatus);
     using (SqliteDBHelper sqldb = new SqliteDBHelper())
     {
         DataTable dt  = sqldb.Query(SqlTools.SqlQueryMyPatient, sqlpar);
         string    str = TypeChange.DataTableToXml(dt);
         return(str);
     }
 }
Beispiel #28
0
 public string QueryAdviceByLike(string AdviceType, string AdviceFilter, string StandingType)
 {
     SQLiteParameter[] sqlpar = new SQLiteParameter[3];
     sqlpar[0] = new SQLiteParameter("1", AdviceType);
     sqlpar[1] = new SQLiteParameter("2", "%" + AdviceFilter + "%");
     sqlpar[2] = new SQLiteParameter("3", StandingType);
     using (SqliteDBHelper sqldb = new SqliteDBHelper())
     {
         DataTable dt = sqldb.Query(SqlTools.SqlQueryAdviceByLike, sqlpar);
         return(TypeChange.DataTableToXml(dt));
     }
 }
Beispiel #29
0
        public static WxUserEntity GetWebpageUserInfo(string access_token, string openid)
        {
            string url    = $"https://api.weixin.qq.com/sns/userinfo?access_token={access_token}&openid={openid}&lang=zh_CN";
            string reJson = Fun.HttpGetJson(url);
            var    t      = TypeChange.JsonToObject(reJson);

            if (t.ContainsKey("openid"))
            {
                return(TypeChange.JsonToObject <WxUserEntity>(reJson));
            }
            throw new Exception(reJson);
        }
Beispiel #30
0
 public string QueryResentPatientCount(string DPID, string CreateDate, string DPType)
 {
     SQLiteParameter[] sqlpar = new SQLiteParameter[3];
     sqlpar[0] = new SQLiteParameter("1", DPID);
     sqlpar[1] = new SQLiteParameter("2", CreateDate);
     sqlpar[2] = new SQLiteParameter("3", DPType);
     using (SqliteDBHelper sqldb = new SqliteDBHelper())
     {
         string str = sqldb.QueryScalar(SqlTools.SqlQueryRecentPatientCount, sqlpar).ToString();
         return(TypeChange.StringToXml("RecentPatientCount", str));
     }
 }
Beispiel #31
0
        /// <summary>
        /// 获取网页授权access_token
        /// </summary>
        /// <param name="appid"></param>
        /// <param name="secret"></param>
        /// <param name="code">网页授权地址返回的code</param>
        /// <returns></returns>
        public static WebpageToken GetWebpageToken(string appid, string secret, string code)
        {
            var    url    = $"https://api.weixin.qq.com/sns/oauth2/access_token?appid={appid}&secret={secret}&code={code}&grant_type=authorization_code";
            string reJson = Fun.HttpGetJson(url);
            var    t      = TypeChange.JsonToObject(reJson);

            if (t.ContainsKey("openid"))
            {
                return(TypeChange.JsonToObject <WebpageToken>(reJson));
            }
            throw new Exception(reJson);
        }
Beispiel #32
0
        private void CreateGeneralControl(string name, bool isRequired, string help, List<CustomControlType> controlTypes,
            List<string> typeOptions, List<string> unitOptions, List<string> xUnitOptions,
            List<string> funcOptions, List<string> keyOptions,
            Dictionary<CustomControlType, string> defaultValues, string defaultUnit, string defaultXUnit,
            ValueValidator valueValidator, SaveVariable saveVariableTable, TypeChange typeChange, UnitChange unitChange, XUnitChange xUnitChange)
        {
            _customControls = new List<CustomControl>();

            //Handle bad situations
            if (controlTypes == null || controlTypes.Count < 1)
                return;

            //Initialize simple values
            Name = name;
            IsRequired = isRequired;
            Help = help ?? "";
            _updateType = typeChange;

            // Create Controls and connect the XML Element - Object with the control via Tag.
            foreach (var type in controlTypes)
                switch (type)
                {
                    case CustomControlType.Constant:
                        if (typeOptions != null && typeOptions.Contains("Constant") && unitOptions != null)
                        {
                            _controlConstant = new ControlConstant(
                                name, typeOptions, unitOptions, isRequired, help, this);

                            // Set default values.
                            if (defaultValues.ContainsKey(CustomControlType.Constant))
                                _controlConstant.DefaultValue = defaultValues[CustomControlType.Constant];
                            _controlConstant.DefaultUnit = defaultUnit;

                            // Set Value Validator.
                            _controlConstant.Validator = valueValidator;

                            _controlConstant.UnitChange = unitChange;

                            _customControls.Add(_controlConstant);
                        }
                        break;
                    case CustomControlType.Variable:
                        if (typeOptions != null && typeOptions.Contains("Variable") && unitOptions != null)// && xUnitOptions != null)
                        {
                            _controlVariable = new ControlVariable(
                                name, typeOptions, unitOptions, xUnitOptions, isRequired, help, this);

                            // Set default values.
                            if (defaultValues.ContainsKey(CustomControlType.Variable))
                                _controlVariable.DefaultValue = defaultValues[CustomControlType.Variable];
                            _controlVariable.DefaultUnit = defaultUnit;
                            _controlVariable.DefaultXUnit = defaultXUnit;

                            // Set Value Validators.
                            _controlVariable.Validator = valueValidator;
                            _controlVariable.SaveVariableTable = saveVariableTable;

                            _controlVariable.UnitChange = unitChange;
                            _controlVariable.XUnitChange = xUnitChange;

                            _customControls.Add(_controlVariable);
                        }
                        break;
                    case CustomControlType.Function:
                        if (typeOptions != null && typeOptions.Contains("Function") && funcOptions != null)
                        {
                            _controlFunction = new ControlFunction(
                                name, typeOptions, funcOptions, isRequired, help, this);

                            // Set default values.
                            if (defaultValues.ContainsKey(CustomControlType.Function))
                                _controlFunction.DefaultValue = defaultValues[CustomControlType.Function];

                            // Set Value Validators.
                            _controlFunction.Validator = valueValidator;

                            _customControls.Add(_controlFunction);
                        }
                        break;
                    case CustomControlType.Group:
                        _controlGroup = new ControlGroup(name, isRequired, this);
                        _customControls.Add(_controlGroup);
                        break;
                    case CustomControlType.Reference:
                        _controlReference = new ControlReference(name, isRequired, help, this);
                        _customControls.Add(_controlReference);

                        // Set Value Validators.
                        _controlReference.Validator = valueValidator;
                        break;
                    case CustomControlType.Keyword:
                        _controlKeyword = new ControlKeyword(name, keyOptions, isRequired, help, this);

                        // Set default values.
                        if (defaultValues.ContainsKey(CustomControlType.Keyword))
                            _controlKeyword.DefaultValue = defaultValues[CustomControlType.Keyword];

                        // Set Value Validators.
                        _controlKeyword.Validator = valueValidator;

                        _customControls.Add(_controlKeyword);
                        break;
                }

            //Find Default Control
            switch (controlTypes[0])
            {
                case CustomControlType.Constant:
                    CurrentControl = _controlConstant;
                    break;
                case CustomControlType.Variable:
                    CurrentControl = _controlVariable;
                    break;
                case CustomControlType.Function:
                    CurrentControl = _controlFunction;
                    break;
                case CustomControlType.Group:
                    CurrentControl = _controlGroup;
                    break;
                case CustomControlType.Reference:
                    CurrentControl = _controlReference;
                    break;
                case CustomControlType.Keyword:
                    CurrentControl = _controlKeyword;
                    break;
            }

            // Update Items' values (default).
            CurrentControl.UpdateValues();
        }
Beispiel #33
0
 public ModifiedTask()
 {
     mDate = DateTime.Now.Date;
     mValue = 0;
     mTypeChanged = TypeChange.CurrentEffort;
 }