Exemple #1
0
 public SearchTaskModule(string tableName, MergeBase mergeBase, IDataLoader dataLoader, DistributorModule distributor,
                         BackgroundModule backgroundModule, ScriptParser scriptParser)
 {
     _tableName        = tableName;
     _mergeBase        = mergeBase;
     _dataLoader       = dataLoader;
     _distributor      = distributor;
     _backgroundModule = backgroundModule;
     _scriptParser     = scriptParser;
 }
Exemple #2
0
        protected MergeBase Translate(Queue <string> queue, int ValCount, bool Flag = false)
        {
            MergeBase database = new MergeBase();

            System.Reflection.PropertyInfo[] propList = typeof(MergeBase).GetProperties();
            string temp = string.Empty;

            if (queue.Count == ValCount)
            {
                foreach (var item in propList)
                {
                    if (item.Name == "GYYD")
                    {
                        continue;
                    }
                    if (queue.Count > 0)
                    {
                        temp = queue.Dequeue();
                        if (!string.IsNullOrEmpty(temp))
                        {
                            if (item.PropertyType.Equals(typeof(double)))
                            {
                                double val;
                                if (double.TryParse(temp, out val))
                                {
                                    item.SetValue(database, val, null);
                                }
                                else
                                {
                                    Console.WriteLine(temp);
                                }
                            }
                            else if (item.PropertyType.Equals(typeof(int)))
                            {
                                int m = 0;
                                if (int.TryParse(temp, out m))
                                {
                                    item.SetValue(database, m, null);
                                }
                                else
                                {
                                    Console.WriteLine(temp);
                                }
                            }
                            else if (item.PropertyType.Equals(typeof(bool)) && !Flag)
                            {
                                switch (temp)
                                {
                                case "是":
                                    item.SetValue(database, true, null);
                                    break;

                                case "否":
                                    item.SetValue(database, false, null);
                                    break;
                                }
                            }
                        }
                    }
                }
            }

            return(database);
        }
Exemple #3
0
        public void Doing()
        {
            this.List = Get("Select DKBH,QYBH,JZMJ from GYYD_YDDW");
            //DD(this.List);
            var DKBHS = GetBase("Select DKBH from GYYD Group By DKBH");

            foreach (var dkbh in DKBHS)
            {
                var tempList = this.List.Where(e => e.DKBH == dkbh).ToList();
                var merge    = new Merge()
                {
                    DKBH   = dkbh,
                    CZQYSL = tempList.Count,
                    Base   = new MergeBase()
                };
                foreach (var gydw in tempList)
                {
                    if (merge.Hy == null)
                    {
                        merge.Hy = GetHY(string.Format("Select HYLB, HYDM from YDDW where QYBH='{0}'", gydw.QYBH));
                    }
                    ReadData(new string[] {
                        string.Format("Select SFGXQY,CYRS,LJGDZCTZ,YDL2012,YDL2013,YDL2014,GSRKSS2012,GSRKSS2013,GSRKSS2014,DSRKSS2012,DSRKSS2013,DSRKSS2014,ZYYSR2012,ZYYSR2013,ZYYSR2014,TDZMJ,SFGSQY,GDZCYJ from YDDW where QYBH='{0}'", gydw.QYBH)
                    });
                    var mergebase = Translate(queue, 18);

                    if (!merge.SFGSQY && mergebase.SFGSQY)
                    {
                        merge.SFGSQY = true;
                    }
                    if (mergebase.SFGXQY)
                    {
                        merge.SFGXQY++;
                    }
                    MergeBase margin = null;
                    if (TempDict.ContainsKey(gydw.QYBH))
                    {
                        var body = TempDict[gydw.QYBH];

                        if (body.merge == null)
                        {
                            TempDict[gydw.QYBH].merge = mergebase;
                        }
                        if (body.Count == 1)
                        {
                            margin = body.merge - body.Reduce;
                        }
                        else
                        {
                            TempDict[gydw.QYBH].Count--;
                            margin = mergebase * gydw.Percent;
                            TempDict[gydw.QYBH].Reduce = body.Reduce + margin;
                        }

                        if (MarginDict.ContainsKey(gydw.QYBH))
                        {
                            MarginDict[gydw.QYBH].Add(margin);
                        }
                        //else
                        //{
                        //    if (body.Count > 1)
                        //    {
                        //        MarginDict.Add(gydw.QYBH, new List<MergeBase>() { margin });
                        //    }
                        //}
                    }
                    if (margin != null)
                    {
                        merge.Base = merge.Base + margin;
                    }
                    //merge.Base = merge.Base + mergebase * gydw.Percent;
                    if (double.IsNaN(merge.Base.DSRKSS2012))
                    {
                        Console.WriteLine("");
                    }
                }
                Dict.Add(dkbh, merge);
            }
            foreach (var key in Dict.Keys)
            {
                var tem     = Dict[key];
                var boolstr = tem.SFGSQY ? "是" : "否";
                SQLText = string.Format("UPDATE GYYD SET LJGDZCTZ={0},ZYYSR2012={1},ZYYSR2013={2},ZYYSR2014={3},DSRKSS2012={4},DSRKSS2013={5},DSRKSS2014={6},GSRKSS2012={7},GSRKSS2013={8},GSRKSS2014={9},YDL2012={10},YDL2013={11},YDL2014={12},CYRS={13},TDZMJ={14},SFGXQY={15},SYDKS=1,SFGSQY='{16}',HYLB='{17}',HYDM='{18}',GDZCYJ={19} where DKBH='{20}'", tem.Base.LJGDZCTZ, tem.Base.ZYYSR2012, tem.Base.ZYYSR2013, tem.Base.ZYYSR2014, tem.Base.DSRKSS2012, tem.Base.DSRKSS2013, tem.Base.DSRKSS2014, tem.Base.GSRKSS2012, tem.Base.GSRKSS2013, tem.Base.GSRKSS2014, tem.Base.YDL2012, tem.Base.YDL2013, tem.Base.YDL2014, tem.Base.CYRS, tem.Base.TDZMJ, tem.SFGXQY, boolstr, tem.Hy.HYLB, tem.Hy.HYDM, tem.Base.GDZCYJ, tem.DKBH);
                //SQLText = string.Format("UPDATE GYYD SET LJGDZCTZ={0},ZYYSR2012={1},ZYYSR2013={2},ZYYSR2014={3},DSRKSS2012={4},DSRKSS2013={5},DSRKSS2014={6},GSRKSS2012={7},GSRKSS2013={8} where DKBH='{9}'", tem.Base.LJGDZCTZ, tem.Base.ZYYSR2012, tem.Base.ZYYSR2013, tem.Base.ZYYSR2014, tem.Base.DSRKSS2012, tem.Base.DSRKSS2013, tem.Base.DSRKSS2014, tem.Base.GSRKSS2012, tem.Base.GSRKSS2013, tem.DKBH);

                ExecuteQuery(SQLText);
                //SQLText = string.Format("UPDATE GYYD SET GSRKSS2014={0},YDL2012={1},YDL2013={2},YDL2014={3},CYRS={4},TDZMJ={5},SFGXQY={6},SYDKS=1,SFGSQY='{7}',HYLB='{8}',HYDM='{9}',GDZCYJ={10} where DKBH='{11}'", tem.Base.GSRKSS2014, tem.Base.YDL2012, tem.Base.YDL2013, tem.Base.YDL2014, tem.Base.CYRS, tem.Base.TDZMJ, tem.SFGXQY, boolstr, tem.Hy.HYLB, tem.Hy.HYDM, tem.Base.GDZCYJ, tem.DKBH);
                //ExecuteQuery(SQLText);
                try
                {
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.ToString());
                }
            }
            //Console.WriteLine("成功");
            Working();
            //BB();
            Console.WriteLine("Success");
        }