public PartialViewResult add_zbrw(int mbid)
 {
     this.ViewBag.mbid = mbid;
     this.ViewBag.zjcs = rwgl.GET_ZJ_ZB_CS(mbid);
     this.ViewBag.bn   = DateTime.Now.Year;
     this.ViewBag.bz   = Base_date.GET_Z_of_Y(DateTime.Now);
     return(PartialView());
 }
 public void Create_zb1()
 {
     if (dqrw != null)
     {
         Aspose_Crack.SlideCrack();
         DataTable    dt = Dal.CJGL_DataProvider.GET_CJLB_BB(dqrw.mbid);
         Presentation p1 = SlideFactory.GetInstance().ppt;
         p1.Slides.RemoveAt(0);
         Base_date.init_zb(dqrw.nf, dqrw.zc);
         Cache_param_zb.ini_zb(dqrw.mbid, dqrw.nf, dqrw.zc);
         Base_Log.Log("开始任务");
         try
         {
             foreach (DataRow row in dt.Rows)
             {
                 Base_Log.Log("第" + row["cjbh"].ints().ToString() + "号插件");
                 Type       type       = Type.GetType(row["cjclass"].ToString());                                                //
                 var        obj        = System.Activator.CreateInstance(type);                                                  // 创建实例
                 MethodInfo method     = type.GetMethod(row["cjmethod"].ToString(), new Type[] { typeof(string), typeof(int) }); // 获取方法信息
                 object[]   parameters = new object[] { row["cjdz"], row["cjbh"].ints() };
                 var        slide      = method.Invoke(obj, parameters);
                 if (slide != null && ((SlideCollection)slide).Count > 0)
                 {
                     foreach (var item in (SlideCollection)slide)
                     {
                         if (item != null)
                         {
                             p1.Slides.AddClone(item);
                         }
                     }                        // 调用方法,参数为空
                 }
             }
             string path = "E:\\zb\\" + dqrw.mbid + "\\" + dqrw.nf + "\\" + dqrw.zc + "\\";
             if (!Directory.Exists(path))
             {
                 Directory.CreateDirectory(path);
             }
             string filename = path + Base.Base_date.bz + ".pptx";
             p1.Save(filename, Aspose.Slides.Export.SaveFormat.Pptx);
             if (!new Dal.RWGL_DataProvider().SET_RWZT(dqrw.mbid, dqrw.nf, dqrw.zc, RW_ZT.完成可下载, filename))
             {
                 Base_Log.Log("创建文件成功,插入数据失败");
             }
             dqrw.zt = Models.Enums.ZX_ZT.生成完毕;
         }
         catch (Exception e)
         {
             Base_Log.Log("插件生成报错:" + e.Message);
             dqrw.zt = Models.Enums.ZX_ZT.生成完毕;
         }
     }
     else
     {
         Base_Log.Log("没有当前任务");
     }
 }
Beispiel #3
0
        public ISlideCollection _plus_jp_zhaoshangyiyunwan_1(string str, int cjbh)
        {
            try
            {
                var param = Cache_param_zb._param_jp.Where(m => m.cjid == cjbh);
                var p     = new Presentation();
                var t     = p.Slides;
                t.RemoveAt(0);
                foreach (var item in param)
                {
                    var tp   = new Presentation(str);
                    var temp = tp.Slides;

                    if (item.ytcs == null || item.ytcs[0] != "商铺")
                    {
                        var       page2 = temp[1];
                        DataTable dt    = new DataTable();
                        dt.Columns.Add(Base_Config_Jzgj.项目名称);

                        dt.Columns.Add(Base_Config_Rgsj.本周_新开套数);
                        dt.Columns.Add(Base_Config_Rgsj.本周_新开销售套数);
                        dt.Columns.Add(Base_Config_Rgsj.本周_新开套内均价);

                        dt.Columns.Add(Base_Config_Rgsj.周_认购套数);
                        dt.Columns.Add(Base_Config_Rgsj.周_认购套内均价);

                        dt.Columns.Add(Base_Config_Rgsj.本周_认购套数);
                        dt.Columns.Add(Base_Config_Rgsj.本周_认购套内均价);

                        dt.Columns.Add(Base_Config_Rgsj.本周_认购套数环比);
                        dt.Columns.Add(Base_Config_Rgsj.本周_认购套内均价环比);
                        dt.Columns.Add(Base_Config_Rgsj.本周_变化原因);
                        dt.Columns.Add(Base_Config_Rgsj.本周_优惠);
                        dt.Columns.Add(Base_Config_Rgsj.本周_活动);

                        IAutoShape text2 = (IAutoShape)page2.Shapes[0];
                        text2.TextFrame.Text = string.Format(text2.TextFrame.Text, Base_date.GET_ZCMC(Base_date.bn, Base_date.bz));


                        dt = GET_JPBA_BX(dt, item);
                        if (item.jpxmlb != null && item.jpxmlb.Count > 0)
                        {
                            dt = GET_JPXM_BX(dt, item.jpxmlb);
                            Office_Tables.SetJP_ZeKe_JPBX_Table(page2, dt, 0, null, null, null);
                            t.AddClone(page2);
                        }
                    }
                }
                return(t);
            }
            catch (Exception e)
            {
                Base_Log.Log(e.Message);
                return(null);
            }
        }
        public string Create_zb(int mbid, int year, int zc)
        {
            Aspose_Crack.SlideCrack();
            DataTable    dt = Dal.CJGL_DataProvider.GET_CJLB_BB(mbid);
            Presentation p1 = SlideFactory.GetInstance().ppt;

            p1.Slides.RemoveAt(0);
            Base_date.init_zb(year, zc);
            Cache_param_zb.ini_zb(mbid, year, zc);
            Base_Log.Log("开始任务");
            try
            {
                foreach (DataRow row in dt.Rows)
                {
                    Base_Log.Log("第" + row["cjbh"].ints().ToString() + "号插件");
                    Type       type       = Type.GetType(row["cjclass"].ToString());                                                //
                    var        obj        = System.Activator.CreateInstance(type);                                                  // 创建实例
                    MethodInfo method     = type.GetMethod(row["cjmethod"].ToString(), new Type[] { typeof(string), typeof(int) }); // 获取方法信息
                    object[]   parameters = new object[] { row["cjdz"], row["cjbh"].ints() };
                    var        slide      = method.Invoke(obj, parameters);
                    if (slide != null && ((SlideCollection)slide).Count > 0)
                    {
                        foreach (var item in (SlideCollection)slide)
                        {
                            if (item != null)
                            {
                                p1.Slides.AddClone(item);
                            }
                        }                        // 调用方法,参数为空
                    }
                }
                string path = "E:\\zb\\" + mbid + "\\" + year + "\\" + zc + "\\";
                if (!Directory.Exists(path))
                {
                    Directory.CreateDirectory(path);
                }
                string filename = path + Base.Base_date.bz + ".pptx";
                p1.Save(filename, Aspose.Slides.Export.SaveFormat.Pptx);
                return(filename);
            }
            catch (Exception e)
            {
                Base_Log.Log("插件生成报错:" + e.Message);
            }
            return(null);
        }
Beispiel #5
0
        /// <summary>
        /// 获取数据任务详情
        /// </summary>
        /// <returns></returns>
        public JsonResult GET_Z_DATA_TASK_INFO()
        {
            //传递参数:人员编号,年份,周次
            var cjba = _fw.GET_Z_DATA_TASK_INFO_CJBA(DateTime.Now.Year, Base_date.GET_Z_of_Y(DateTime.Now));
            var xzys = _fw.GET_Z_DATA_TASK_INFO_XZYS(DateTime.Now.Year, Base_date.GET_Z_of_Y(DateTime.Now));
            var tdcj = _fw.GET_Z_DATA_TASK_INFO_TDCJ(DateTime.Now.Year, Base_date.GET_Z_of_Y(DateTime.Now));
            var rgsj = _fw.GET_Z_DATA_TASK_INFO_RGSJ(DateTime.Now.Year, Base_date.GET_Z_of_Y(DateTime.Now));
            var obj  = new
            {
                cjbh = cjba == 0 ? 0 : 1,
                xzys = xzys == 0 ? 0 : 1,
                tdcj = tdcj == 0 ? 0 : 1,
                rgsj = rgsj == 0 ? 0 : 1
            };

            return(Json(obj));
        }
Beispiel #6
0
        public JsonResult ADD_CJJL()
        {
            int nf = Int32.Parse(Request.Form["nf"]);
            int zc = Int32.Parse(Request.Form["zc"]);
            HttpPostedFileBase f        = Request.Files["cjjl"];
            Workbook           workbook = new Workbook(f.InputStream);
            Cells     cs = workbook.Worksheets[0].Cells;
            DataTable dt = cs.ExportDataTableAsString(1, 0, cs.MaxDataRow, cs.MaxDataColumn + 1);

            if (Calculation.Dal.ZB_Data_CJBA_DataProvider.Insert(dt, nf, zc, Base_date.GET_ZCMC(nf, zc)) > 0)
            {
                return(Json(SResult.Success));
            }
            else
            {
                return(Json(SResult.Error("上传文件失败,请检查EX")));
            }
        }
Beispiel #7
0
 /// <summary>
 /// 提交计划年份
 /// </summary>
 /// <param name="nf">年份</param>
 /// <returns></returns>
 public JsonResult ADD_JH(int nf)
 {
     return(Json(data.ADD_JH(nf, Base_date.GET_Z_OF_Y(nf)), JsonRequestBehavior.AllowGet));
 }
Beispiel #8
0
        public ISlideCollection _plus_jp_nanquyingxiao_1(string str, int cjbh)
        {
            try
            {
                var param = Cache_param_zb._param_jp.Where(m => m.cjid == cjbh);
                var p     = new Presentation();
                var t     = p.Slides;
                t.RemoveAt(0);

                var tp1   = new Presentation(str);
                var temp1 = tp1.Slides;
                #region 竞品首页
                var        page1 = temp1[0];
                IAutoShape text1 = (IAutoShape)page1.Shapes[2];
                text1.TextFrame.Text = string.Format(text1.TextFrame.Text, Base_date.GET_ZCMC(Base_date.bn, Base_date.bz));
                #endregion
                t.AddClone(page1);
                #region 竞品分布
                var page2 = temp1[1];
                #endregion
                t.AddClone(page2);
                foreach (var item in param)
                {
                    var tp   = new Presentation(str);
                    var temp = tp.Slides;

                    t.AddClone(page2);



                    var       page3 = temp[3];
                    DataTable dt    = new DataTable();
                    #region 格局统计
                    if (item.ytcs[0] == "商务" || item.ytcs[0] == "商铺")
                    {
                        dt.Columns.Add(Base_Config_Jzgj.项目名称);

                        dt.Columns.Add(Base_Config_Rgsj.本周_认购建面体量);
                        dt.Columns.Add(Base_Config_Rgsj.本周_认购建筑面积环比);

                        dt.Columns.Add(Base_Config_Rgsj.本周_认购套数);
                        dt.Columns.Add(Base_Config_Rgsj.本周_认购套数环比);

                        dt.Columns.Add(Base_Config_Rgsj.本周_认购建面均价);
                        dt.Columns.Add(Base_Config_Rgsj.本周_认购建面均价环比);

                        dt.Columns.Add(Base_Config_Rgsj.本周_变化原因);

                        IAutoShape text2 = (IAutoShape)page2.Shapes[2];
                        text2.TextFrame.Text = string.Format(text2.TextFrame.Text, item.bamc);

                        if (item.jpxmlb != null && item.jpxmlb.Count > 0)
                        {
                            dt = GET_JPXM_BX(dt, item.jpxmlb);
                            Office_Tables.SetJP_BiGuiYuan_JPBX_Table(page3, dt, 5, null, null);
                            t.AddClone(page2);
                        }
                    }
                    #endregion
                    else
                    {
                        dt.Columns.Add(Base_Config_Jzgj.项目名称);

                        dt.Columns.Add(Base_Config_Cjba.本周_建筑面积);
                        dt.Columns.Add(Base_Config_Cjba.本周_建筑面积环比);

                        dt.Columns.Add(Base_Config_Cjba.本周_备案套数);
                        dt.Columns.Add(Base_Config_Cjba.本周_备案套数环比);

                        dt.Columns.Add(Base_Config_Cjba.本周_建面均价);
                        dt.Columns.Add(Base_Config_Cjba.本周_建面均价环比);

                        dt.Columns.Add(Base_Config_Rgsj.本周_变化原因);

                        IAutoShape text2 = (IAutoShape)page2.Shapes[2];
                        text2.TextFrame.Text = string.Format(text2.TextFrame.Text, item.bamc);

                        if (item.jpxmlb != null && item.jpxmlb.Count > 0)
                        {
                            dt = GET_JPXM_BX(dt, item.jpxmlb);
                            Office_Tables.SetJP_BiGuiYuan_JPBX_Table(page3, dt, 5, null, null);
                            t.AddClone(page2);
                        }
                    }
                }
                return(t);
            }
            catch (Exception e)
            {
                Base_Log.Log(e.Message);
                return(null);
            }
        }
        public ISlide _plus_jp_zdpm(ISlide sld, string bamc, string[] yt)
        {
            #region 准备数据

            var data_zd = (from a in Cache_data_cjjl.bz.AsEnumerable()
                           where yt.Contains(a["yt"])
                           group a by new
            {
                lpmc = a["lpmc"],
                zt = a["zt"]
            } into g
                           select new
            {
                lpmc = g.Key.lpmc,
                zt = g.Key.zt,
                cjts = g.Sum(m => m["ts"].ints()),
                cjje = g.Sum(m => m["cjje"].longs()).je_y(),
                jzmj = g.Sum(m => m["jzmj"].doubls()).mj(),
                tnmj = g.Sum(m => m["tnmj"].doubls()).mj(),
            }
                           into b
                           orderby b.cjje descending
                           select b).Take(5).ToList();


            #endregion

            #region 生成页面

            if (data_zd != null & data_zd.Count > 0)
            {
                System.Data.DataTable dt = new System.Data.DataTable();
                dt.Columns.Add("pm");
                dt.Columns.Add("lpmc");
                dt.Columns.Add("cjts");
                dt.Columns.Add("cjje");
                dt.Columns.Add("jzmj");
                dt.Columns.Add("tnmj");
                dt.Columns.Add("jmjj");
                dt.Columns.Add("tnjj");
                dt.Columns.Add("tjzj");
                dt.Columns.Add("rxyy");


                for (int i = 0; i < data_zd.Count; i++)
                {
                    DataRow dr = dt.NewRow();
                    dr["pm"]   = i + 1;
                    dr["lpmc"] = data_zd[i].lpmc;
                    dr["cjts"] = data_zd[i].cjts;
                    dr["cjje"] = data_zd[i].cjje.je_wy();
                    dr["jzmj"] = data_zd[i].jzmj.mj();
                    dr["tnmj"] = data_zd[i].tnmj.mj();
                    dr["jmjj"] = (data_zd[i].cjje / data_zd[i].jzmj).je_y();
                    dr["tnjj"] = (data_zd[i].cjje / data_zd[i].tnmj).je_y();
                    dr["tjzj"] = (data_zd[i].cjje / data_zd[i].cjts).je_wy();
                    dr["rxyy"] = "自填";
                    dt.Rows.Add(dr);
                }

                IAutoShape text1 = (IAutoShape)sld.Shapes[1];
                text1.TextFrame.Text = string.Format(text1.TextFrame.Text, bamc, string.Join(",", yt));
                Office_Tables.SetJP_YG100XMLY_ZDYTPM_Table(sld, dt, 2, null, null);

                IAutoShape text2 = (IAutoShape)sld.Shapes[3];
                text2.TextFrame.Text = string.Format(text2.TextFrame.Text, string.Join(",", yt), Base_date.GET_ZCMC(Base_date.bn, Base_date.bz));

                return(sld);
            }
            #endregion
            return(null);
        }
Beispiel #10
0
        public ISlideCollection jbzzs(string str)
        {
            var p = new Presentation();
            var t = p.Slides;

            t.RemoveAt(0);
            var tp   = new Presentation(str);
            var temp = tp.Slides;



            string[] zt = { "蔡家", "礼嘉", "悦来", "中央公园" };
            #region  P1
            var page1 = temp[0];
            var dt1_1 = from a in Cache_data_xzys.jbz.AsEnumerable()
                        where zt.Contains(a["zt"]) && a["tyyt"].ToString() == "高层"
                        group a by new { zc = a["zc"], zcmc = a["zcmc"] } into s
                select new
            {
                zc    = s.Key.zc,
                xzgyl = s.Sum(m => m["jzmj"].doubls())
            };
            var dt1_2 = from a in Cache_data_cjjl.jbz.AsEnumerable()
                        where zt.Contains(a["zt"]) && a["yt"].ToString() == "高层"
                        group a by new { zc = a["zc"], zcmc = a["zcmc"] } into s
                select new
            {
                zc   = s.Key.zc,
                cjje = s.Sum(m => m["cjje"].longs()),
                jzmj = s.Sum(m => m["jzmj"].doubls())
            };
            DataTable dt1 = new DataTable();
            dt1.Columns.Add("周次");
            dt1.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 7), typeof(double));
            dt1.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 6), typeof(double));
            dt1.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 5), typeof(double));
            dt1.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 4), typeof(double));
            dt1.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 3), typeof(double));
            dt1.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 2), typeof(double));
            dt1.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 1), typeof(double));
            dt1.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz), typeof(double));
            DataRow dr1 = dt1.NewRow();
            DataRow dr2 = dt1.NewRow();
            DataRow dr3 = dt1.NewRow();
            dr1[0] = "供应体量";
            dr2[0] = "成交体量";
            dr3[0] = "建面均价";

            for (int i = 0; i < 8; i++)
            {
                var xzys = dt1_1.FirstOrDefault(m => m.zc.ints() == (Base_date.bz - (7 - i)));
                var cjba = dt1_2.FirstOrDefault(m => m.zc.ints() == (Base_date.bz - (7 - i)));
                dr1[i + 1] = (xzys != null) ? xzys.xzgyl.mj_wf() : 0;
                dr2[i + 1] = cjba != null?cjba.jzmj.mj_wf() : 0;

                dr3[i + 1] = cjba != null ? (cjba.cjje / cjba.jzmj).je_y() : 0;
                if (i == 7)
                {
                    IAutoShape text1 = (IAutoShape)page1.Shapes[2];
                    text1.TextFrame.Text = string.Format(text1.TextFrame.Text, (xzys != null) ? xzys.xzgyl.mj_wf():0, cjba != null ? cjba.jzmj.mj_wf() : 0, cjba != null ? (cjba.cjje / cjba.jzmj).je_y() : 0);
                }
            }
            dt1.Rows.Add(dr1);
            dt1.Rows.Add(dr2);
            dt1.Rows.Add(dr3);
            Office_Charts.Chart_jp_langshi_chart1(page1, dt1, 4);
            t.AddClone(page1);
            #endregion
            #region  P2
            var page2 = temp[1];
            var dt2_1 = from a in Cache_data_xzys.jbz.AsEnumerable()
                        where zt.Contains(a["zt"]) && a["tyyt"].ToString() == "洋房"
                        group a by new { zc = a["zc"], zcmc = a["zcmc"] } into s
                select new
            {
                zc    = s.Key.zc,
                xzgyl = s.Sum(m => m["jzmj"].doubls())
            };
            var dt2_2 = from a in Cache_data_cjjl.jbz.AsEnumerable()
                        where zt.Contains(a["zt"]) && a["yt"].ToString() == "洋房"
                        group a by new { zc = a["zc"], zcmc = a["zcmc"] } into s
                select new
            {
                zc   = s.Key.zc,
                cjje = s.Sum(m => m["cjje"].longs()),
                jzmj = s.Sum(m => m["jzmj"].doubls())
            };
            DataTable dt2 = new DataTable();
            dt2.Columns.Add("周次");
            dt2.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 7), typeof(double));
            dt2.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 6), typeof(double));
            dt2.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 5), typeof(double));
            dt2.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 4), typeof(double));
            dt2.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 3), typeof(double));
            dt2.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 2), typeof(double));
            dt2.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 1), typeof(double));
            dt2.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz), typeof(double));
            DataRow dr2_1 = dt2.NewRow();
            DataRow dr2_2 = dt2.NewRow();
            DataRow dr2_3 = dt2.NewRow();
            dr2_1[0] = "供应体量";
            dr2_2[0] = "成交体量";
            dr2_3[0] = "建面均价";

            for (int i = 0; i < 8; i++)
            {
                var xzys = dt2_1.FirstOrDefault(m => m.zc.ints() == (Base_date.bz - (7 - i)));
                var cjba = dt2_2.FirstOrDefault(m => m.zc.ints() == (Base_date.bz - (7 - i)));
                dr2_1[i + 1] = (xzys != null) ? xzys.xzgyl.mj_wf() : 0;
                dr2_2[i + 1] = cjba != null?cjba.jzmj.mj_wf() : 0;

                dr2_3[i + 1] = cjba != null ? (cjba.cjje / cjba.jzmj).je_y() : 0;
                if (i == 7)
                {
                    IAutoShape text1 = (IAutoShape)page2.Shapes[2];
                    text1.TextFrame.Text = string.Format(text1.TextFrame.Text, (xzys != null) ? xzys.xzgyl.mj_wf() : 0, cjba != null ? cjba.jzmj.mj_wf() : 0, cjba != null ? (cjba.cjje / cjba.jzmj).je_y() : 0);
                }
            }
            dt2.Rows.Add(dr2_1);
            dt2.Rows.Add(dr2_2);
            dt2.Rows.Add(dr2_3);
            Office_Charts.Chart_jp_langshi_chart1(page2, dt2, 4);
            t.AddClone(page2);
            #endregion
            #region  P3
            var page3 = temp[2];
            var dt3_1 = from a in Cache_data_xzys.jbz.AsEnumerable()
                        where zt.Contains(a["zt"]) && a["tyyt"].ToString() == "别墅"
                        group a by new { zc = a["zc"], zcmc = a["zcmc"] } into s
                select new
            {
                zc    = s.Key.zc,
                xzgyl = s.Sum(m => m["jzmj"].doubls())
            };
            var dt3_2 = from a in Cache_data_cjjl.jbz.AsEnumerable()
                        where zt.Contains(a["zt"]) && a["yt"].ToString() == "别墅"
                        group a by new { zc = a["zc"], zcmc = a["zcmc"] } into s
                select new
            {
                zc   = s.Key.zc,
                cjje = s.Sum(m => m["cjje"].longs()),
                jzmj = s.Sum(m => m["jzmj"].doubls())
            };
            DataTable dt3 = new DataTable();
            dt3.Columns.Add("周次");
            dt3.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 7), typeof(double));
            dt3.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 6), typeof(double));
            dt3.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 5), typeof(double));
            dt3.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 4), typeof(double));
            dt3.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 3), typeof(double));
            dt3.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 2), typeof(double));
            dt3.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 1), typeof(double));
            dt3.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz), typeof(double));
            DataRow dr3_1 = dt3.NewRow();
            DataRow dr3_2 = dt3.NewRow();
            DataRow dr3_3 = dt3.NewRow();
            dr3_1[0] = "供应体量";
            dr3_2[0] = "成交体量";
            dr3_3[0] = "建面均价";

            for (int i = 0; i < 8; i++)
            {
                var xzys = dt3_1.FirstOrDefault(m => m.zc.ints() == (Base_date.bz - (7 - i)));
                var cjba = dt3_2.FirstOrDefault(m => m.zc.ints() == (Base_date.bz - (7 - i)));
                dr3_1[i + 1] = xzys != null?xzys.xzgyl.mj_wf() : 0;

                dr3_2[i + 1] = cjba != null?cjba.jzmj.mj_wf() : 0;

                dr3_3[i + 1] = cjba != null ? (cjba.cjje / cjba.jzmj).je_y() : 0;
                if (i == 7)
                {
                    IAutoShape text1 = (IAutoShape)page3.Shapes[2];
                    text1.TextFrame.Text = string.Format(text1.TextFrame.Text, (xzys != null) ? xzys.xzgyl.mj_wf() : 0, cjba != null ? cjba.jzmj.mj_wf() : 0, cjba != null ? (cjba.cjje / cjba.jzmj).je_y() : 0);
                }
            }
            dt3.Rows.Add(dr3_1);
            dt3.Rows.Add(dr3_2);
            dt3.Rows.Add(dr3_3);
            Office_Charts.Chart_jp_langshi_chart1(page3, dt3, 4);
            t.AddClone(page3);
            #endregion

            #region P4
            var page4 = temp[3];
            var dt4_1 = from a in Cache_data_cjjl.bz.AsEnumerable()
                        where zt.Contains(a["zt"]) && (a["yt"].ToString() == "别墅" || a["yt"].ToString() == "高层" || a["yt"].ToString() == "小高层" || a["yt"].ToString() == "洋房" || a["yt"].ToString() == "洋楼")
                        group a by new { lpmc = a["lpmc"], zt = a["zt"] } into s
                select new
            {
                lpmc = s.Key.lpmc,
                zt   = s.Key.zt,
                ts   = s.Sum(m => m["ts"].ints()),
                cjje = s.Sum(m => m["cjje"].longs()),
                jzmj = s.Sum(m => m["jzmj"].doubls()),
                tnmj = s.Sum(m => m["tnmj"].doubls())
            };
            DataTable dt4 = new DataTable();
            dt4.Columns.Add("pm");
            dt4.Columns.Add("lpmc1");
            dt4.Columns.Add("zt1");
            dt4.Columns.Add("ts");

            dt4.Columns.Add("lpmc2");
            dt4.Columns.Add("zt2");
            dt4.Columns.Add("jzmj");

            dt4.Columns.Add("lpmc3");
            dt4.Columns.Add("zt3");
            dt4.Columns.Add("cjje");
            var ts   = dt4_1.OrderByDescending(m => m.ts).Take(5).ToList();
            var cjmj = dt4_1.OrderByDescending(m => m.jzmj).Take(5).ToList();
            var cjje = dt4_1.OrderByDescending(m => m.cjje).Take(5).ToList();

            for (int i = 0; i < 5; i++)
            {
                DataRow dr = dt4.NewRow();
                dr["pm"] = i + 1;
                if (ts != null && ts.Count > i)
                {
                    dr["lpmc1"] = ts[i].lpmc;
                    dr["zt1"]   = ts[i].zt;
                    dr["ts"]    = ts[i].ts;
                }
                if (cjmj != null && cjmj.Count > i)
                {
                    dr["lpmc2"] = cjmj[i].lpmc;
                    dr["zt2"]   = cjmj[i].zt;
                    dr["jzmj"]  = cjmj[i].jzmj.mj();
                }
                if (cjje != null && cjje.Count > i)
                {
                    dr["lpmc3"] = cjje[i].lpmc;
                    dr["zt3"]   = cjje[i].zt;
                    dr["cjje"]  = cjje[i].cjje.je_wy();
                }
                dt4.Rows.Add(dr);
                if (i == 0)
                {
                    IAutoShape text4 = (IAutoShape)page4.Shapes[2];
                    text4.TextFrame.Text = string.Format(text4.TextFrame.Text, ts[i].lpmc, cjmj[i].lpmc, cjje[i].lpmc);
                }
            }
            Office_Tables.SetChart(page4, dt4, 5, null, null);
            t.AddClone(page4);
            #endregion
            #region P5
            var page5 = temp[4];
            var dt5_1 = from a in Cache_data_cjjl.bz.AsEnumerable()
                        where zt.Contains(a["zt"]) && (a["yt"].ToString() == "高层" || a["yt"].ToString() == "小高层")
                        group a by new { lpmc = a["lpmc"], zt = a["zt"] } into s
                select new
            {
                lpmc = s.Key.lpmc,
                zt   = s.Key.zt,
                ts   = s.Sum(m => m["ts"].ints()),
                cjje = s.Sum(m => m["cjje"].longs()),
                jzmj = s.Sum(m => m["jzmj"].doubls()),
                tnmj = s.Sum(m => m["tnmj"].doubls())
            };
            DataTable dt5 = new DataTable();
            dt5.Columns.Add("pm");
            dt5.Columns.Add("lpmc");
            dt5.Columns.Add("zt");
            dt5.Columns.Add("ts");
            dt5.Columns.Add("jzmj");
            dt5.Columns.Add("cjje");
            dt5.Columns.Add("jmjj");
            dt5.Columns.Add("tnjj");
            var dt5_1_1 = dt5_1.OrderByDescending(m => m.ts).Take(5).ToList();
            for (int i = 0; i < 5; i++)
            {
                if (dt5_1_1 != null && dt5_1_1.Count > i)
                {
                    DataRow dr = dt5.NewRow();
                    dr["pm"]   = i + 1;
                    dr["lpmc"] = dt5_1_1[i].lpmc;
                    dr["zt"]   = dt5_1_1[i].zt;
                    dr["ts"]   = dt5_1_1[i].ts;
                    dr["jzmj"] = dt5_1_1[i].jzmj.mj();
                    dr["cjje"] = dt5_1_1[i].cjje.je_wy();
                    dr["jmjj"] = dt5_1_1[i].jzmj != 0 ? (dt5_1_1[i].cjje / dt5_1_1[i].jzmj).je_y() : 0;
                    dr["tnjj"] = dt5_1_1[i].tnmj != 0 ? (dt5_1_1[i].cjje / dt5_1_1[i].tnmj).je_y() : 0;
                    dt5.Rows.Add(dr);
                    if (i == 0)
                    {
                        IAutoShape text5 = (IAutoShape)page5.Shapes[2];
                        text5.TextFrame.Text = string.Format(text5.TextFrame.Text, dt5_1_1[i].lpmc);
                    }
                }
                else
                {
                    break;
                }
            }
            Office_Tables.SetChart(page5, dt5, 5, null, null);
            t.AddClone(page5);
            #endregion

            #region P6
            var page6 = temp[5];
            var dt6_1 = from a in Cache_data_cjjl.bz.AsEnumerable()
                        where zt.Contains(a["zt"]) && (a["yt"].ToString() == "洋房" || a["yt"].ToString() == "洋楼")
                        group a by new { lpmc = a["lpmc"], zt = a["zt"] } into s
                select new
            {
                lpmc = s.Key.lpmc,
                zt   = s.Key.zt,
                ts   = s.Sum(m => m["ts"].ints()),
                cjje = s.Sum(m => m["cjje"].longs()),
                jzmj = s.Sum(m => m["jzmj"].doubls()),
                tnmj = s.Sum(m => m["tnmj"].doubls())
            };
            DataTable dt6 = new DataTable();
            dt6.Columns.Add("pm");
            dt6.Columns.Add("lpmc");
            dt6.Columns.Add("zt");
            dt6.Columns.Add("ts");
            dt6.Columns.Add("jzmj");
            dt6.Columns.Add("cjje");
            dt6.Columns.Add("jmjj");
            dt6.Columns.Add("tnjj");
            var dt6_1_1 = dt6_1.OrderByDescending(m => m.ts).Take(5).ToList();
            for (int i = 0; i < 5; i++)
            {
                if (dt6_1_1 != null && dt6_1_1.Count > i)
                {
                    DataRow dr = dt6.NewRow();
                    dr["pm"]   = i + 1;
                    dr["lpmc"] = dt6_1_1[i].lpmc;
                    dr["zt"]   = dt6_1_1[i].zt;
                    dr["ts"]   = dt6_1_1[i].ts;
                    dr["jzmj"] = dt6_1_1[i].jzmj.mj();
                    dr["cjje"] = dt6_1_1[i].cjje.je_wy();
                    dr["jmjj"] = dt6_1_1[i].jzmj != 0 ? (dt6_1_1[i].cjje / dt6_1_1[i].jzmj).je_y() : 0;
                    dr["tnjj"] = dt6_1_1[i].tnmj != 0 ? (dt6_1_1[i].cjje / dt6_1_1[i].tnmj).je_y() : 0;
                    dt6.Rows.Add(dr);
                    if (i == 0)
                    {
                        IAutoShape text6 = (IAutoShape)page6.Shapes[5];
                        text6.TextFrame.Text = string.Format(text6.TextFrame.Text, dt6_1_1[i].lpmc);
                    }
                }
                else
                {
                    break;
                }
            }
            Office_Tables.SetChart(page6, dt6, 4, null, null);
            t.AddClone(page6);
            #endregion
            #region P7
            var page7 = temp[6];
            var dt7_1 = from a in Cache_data_cjjl.bz.AsEnumerable()
                        where zt.Contains(a["zt"]) && (a["xfyt"].ToString() == "叠加别墅")
                        group a by new { lpmc = a["lpmc"], zt = a["zt"] } into s
                select new
            {
                lpmc = s.Key.lpmc,
                zt   = s.Key.zt,
                ts   = s.Sum(m => m["ts"].ints()),
                cjje = s.Sum(m => m["cjje"].longs()),
                jzmj = s.Sum(m => m["jzmj"].doubls()),
                tnmj = s.Sum(m => m["tnmj"].doubls())
            };
            DataTable dt7 = new DataTable();
            dt7.Columns.Add("pm");
            dt7.Columns.Add("lpmc");
            dt7.Columns.Add("zt");
            dt7.Columns.Add("ts");
            dt7.Columns.Add("jzmj");
            dt7.Columns.Add("cjje");
            dt7.Columns.Add("tjzj");
            dt7.Columns.Add("jmjj");
            dt7.Columns.Add("tnjj");
            var dt7_1_1 = dt7_1.OrderByDescending(m => m.ts).Take(5).ToList();
            for (int i = 0; i < 5; i++)
            {
                if (dt7_1_1 != null && dt7_1_1.Count > i)
                {
                    DataRow dr = dt7.NewRow();
                    dr["pm"]   = i + 1;
                    dr["lpmc"] = dt7_1_1[i].lpmc;
                    dr["zt"]   = dt7_1_1[i].zt;
                    dr["ts"]   = dt7_1_1[i].ts;
                    dr["jzmj"] = dt7_1_1[i].jzmj.mj();
                    dr["cjje"] = dt7_1_1[i].cjje.je_wy();
                    dr["tjzj"] = (dt7_1_1[i].cjje / dt7_1_1[i].ts).je_wy();
                    dr["jmjj"] = dt7_1_1[i].jzmj != 0 ? (dt7_1_1[i].cjje / dt7_1_1[i].jzmj).je_y() : 0;
                    dr["tnjj"] = dt7_1_1[i].tnmj != 0 ? (dt7_1_1[i].cjje / dt7_1_1[i].tnmj).je_y() : 0;
                    dt7.Rows.Add(dr);
                    if (i == 0)
                    {
                        IAutoShape text7 = (IAutoShape)page7.Shapes[5];
                        text7.TextFrame.Text = string.Format(text7.TextFrame.Text, dt7_1_1[i].lpmc);
                    }
                }
                else
                {
                    break;
                }
            }
            Office_Tables.SetChart(page7, dt7, 4, null, null);
            t.AddClone(page7);
            #endregion
            #region P8
            var page8 = temp[7];
            var dt8_1 = from a in Cache_data_cjjl.bz.AsEnumerable()
                        where zt.Contains(a["zt"]) && (a["xfyt"].ToString() == "联排别墅")
                        group a by new { lpmc = a["lpmc"], zt = a["zt"] } into s
                select new
            {
                lpmc = s.Key.lpmc,
                zt   = s.Key.zt,
                ts   = s.Sum(m => m["ts"].ints()),
                cjje = s.Sum(m => m["cjje"].longs()),
                jzmj = s.Sum(m => m["jzmj"].doubls()),
                tnmj = s.Sum(m => m["tnmj"].doubls())
            };
            DataTable dt8 = new DataTable();
            dt8.Columns.Add("pm");
            dt8.Columns.Add("lpmc");
            dt8.Columns.Add("zt");
            dt8.Columns.Add("ts");
            dt8.Columns.Add("jzmj");
            dt8.Columns.Add("cjje");
            dt8.Columns.Add("tjzj");
            dt8.Columns.Add("jmjj");
            dt8.Columns.Add("tnjj");
            var dt8_1_1 = dt8_1.OrderByDescending(m => m.ts).Take(5).ToList();
            for (int i = 0; i < 5; i++)
            {
                if (dt8_1_1 != null && dt8_1_1.Count > i)
                {
                    DataRow dr = dt8.NewRow();
                    dr["pm"]   = i + 1;
                    dr["lpmc"] = dt8_1_1[i].lpmc;
                    dr["zt"]   = dt8_1_1[i].zt;
                    dr["ts"]   = dt8_1_1[i].ts;
                    dr["jzmj"] = dt8_1_1[i].jzmj.mj();
                    dr["cjje"] = dt8_1_1[i].cjje.je_wy();
                    dr["tjzj"] = (dt8_1_1[i].cjje / dt8_1_1[i].ts).je_wy();
                    dr["jmjj"] = dt8_1_1[i].jzmj != 0 ? (dt8_1_1[i].cjje / dt8_1_1[i].jzmj).je_y() : 0;
                    dr["tnjj"] = dt8_1_1[i].tnmj != 0 ? (dt8_1_1[i].cjje / dt8_1_1[i].tnmj).je_y() : 0;
                    dt8.Rows.Add(dr);
                    if (i == 0)
                    {
                        IAutoShape text8 = (IAutoShape)page8.Shapes[5];
                        text8.TextFrame.Text = string.Format(text8.TextFrame.Text, dt8_1_1[i].lpmc);
                    }
                }
                else
                {
                    break;
                }
            }
            Office_Tables.SetChart(page8, dt8, 4, null, null);
            t.AddClone(page8);
            #endregion
            #region P9
            var page9   = temp[8];
            var dt9_1_1 = from a in Cache_data_xzys.bz.AsEnumerable()
                          where a["zt"].ToString() == "蔡家" && (a["tyyt"].ToString() == "高层" || a["tyyt"].ToString() == "洋房")
                          group a by new { yt = a["tyyt"] } into s
                select new
            {
                yt   = s.Key.yt,
                jzmj = s.Sum(m => m["jzmj"].doubls())
            };
            var dt9_1_2 = from a in Cache_data_xzys.bz.AsEnumerable()
                          where a["zt"].ToString() == "蔡家" && (a["wylx"].ToString() == "联排别墅" || a["wylx"].ToString() == "叠加别墅")
                          group a by new { yt = a["wylx"] } into s
                select new
            {
                yt   = s.Key.yt,
                jzmj = s.Sum(m => m["jzmj"].doubls())
            };



            var dt9_2_1 = from a in Cache_data_cjjl.bz.AsEnumerable()
                          where a["zt"].ToString() == "蔡家" && (a["yt"].ToString() == "高层" || a["yt"].ToString() == "小高层" || a["yt"].ToString() == "洋房" || a["yt"].ToString() == "洋楼")
                          group a by new { yt = a["yt"] } into s
                select new
            {
                yt   = s.Key.yt,
                ts   = s.Sum(m => m["ts"].ints()),
                cjje = s.Sum(m => m["cjje"].longs()),
                jzmj = s.Sum(m => m["jzmj"].doubls()),
                tnmj = s.Sum(m => m["tnmj"].doubls())
            };
            var dt9_2_2 = from a in Cache_data_cjjl.bz.AsEnumerable()
                          where a["zt"].ToString() == "蔡家" && (a["xfyt"].ToString() == "联排别墅" || a["xfyt"].ToString() == "叠加别墅")
                          group a by new { yt = a["xfyt"] } into s
                select new
            {
                yt   = s.Key.yt,
                ts   = s.Sum(m => m["ts"].ints()),
                cjje = s.Sum(m => m["cjje"].longs()),
                jzmj = s.Sum(m => m["jzmj"].doubls()),
                tnmj = s.Sum(m => m["tnmj"].doubls())
            };
            var dt9_3_1 = from a in Cache_data_cjjl.sz.AsEnumerable()
                          where a["zt"].ToString() == "蔡家" && (a["yt"].ToString() == "高层" || a["yt"].ToString() == "小高层" || a["yt"].ToString() == "洋房" || a["yt"].ToString() == "洋楼")
                          group a by new { yt = a["yt"] } into s
                select new
            {
                yt   = s.Key.yt,
                ts   = s.Sum(m => m["ts"].ints()),
                cjje = s.Sum(m => m["cjje"].longs()),
                jzmj = s.Sum(m => m["jzmj"].doubls()),
                tnmj = s.Sum(m => m["tnmj"].doubls())
            };
            var dt9_3_2 = from a in Cache_data_cjjl.sz.AsEnumerable()
                          where a["zt"].ToString() == "蔡家" && (a["xfyt"].ToString() == "联排别墅" || a["xfyt"].ToString() == "叠加别墅")
                          group a by new { yt = a["xfyt"] } into s
                select new
            {
                yt   = s.Key.yt,
                ts   = s.Sum(m => m["ts"].ints()),
                cjje = s.Sum(m => m["cjje"].longs()),
                jzmj = s.Sum(m => m["jzmj"].doubls()),
                tnmj = s.Sum(m => m["tnmj"].doubls())
            };

            DataTable dt9 = new DataTable();
            dt9.Columns.Add("yt");
            dt9.Columns.Add("bzgyl");
            dt9.Columns.Add("bzqhl");
            dt9.Columns.Add("jmjj");
            dt9.Columns.Add("hbjgzf");
            DataRow dr9_1 = dt9.NewRow();
            var     gc_1  = dt9_1_1.FirstOrDefault(m => m.yt.ToString() == "高层");
            var     gc_2  = dt9_2_1.FirstOrDefault(m => m.yt.ToString() == "高层");
            var     gc_3  = dt9_3_1.FirstOrDefault(m => m.yt.ToString() == "高层");
            dr9_1["yt"]    = "高层";
            dr9_1["bzgyl"] = gc_1 != null?gc_1.jzmj.mj_wf() : 0;

            dr9_1["bzqhl"] = gc_2 != null?gc_2.jzmj.mj_wf() : 0;

            dr9_1["jmjj"]   = gc_2 != null ? (gc_2.cjje / gc_2.jzmj).je_y() : 0;
            dr9_1["hbjgzf"] = (gc_2 != null && gc_3 != null) ? ((gc_2.cjje / gc_2.jzmj - gc_3.cjje / gc_3.jzmj) / (gc_3.cjje / gc_3.jzmj)).ss_bfb() : "";
            dt9.Rows.Add(dr9_1);
            DataRow dr9_2 = dt9.NewRow();
            var     yf_1  = dt9_1_1.FirstOrDefault(m => m.yt.ToString() == "洋房");
            var     yf_2  = dt9_2_1.FirstOrDefault(m => m.yt.ToString() == "洋房");
            var     yf_3  = dt9_3_1.FirstOrDefault(m => m.yt.ToString() == "洋房");
            dr9_2["yt"]    = "洋房";
            dr9_2["bzgyl"] = yf_1 != null?yf_1.jzmj.mj_wf() : 0;

            dr9_2["bzqhl"] = yf_2 != null?yf_2.jzmj.mj_wf() : 0;

            dr9_2["jmjj"]   = yf_2 != null ? (yf_2.cjje / yf_2.jzmj).je_y() : 0;
            dr9_2["hbjgzf"] = (yf_2 != null && yf_3 != null)?((yf_2.cjje / yf_2.jzmj - yf_3.cjje / yf_3.jzmj) / (yf_3.cjje / yf_3.jzmj)).ss_bfb():"";
            dt9.Rows.Add(dr9_2);
            DataRow dr9_3  = dt9.NewRow();
            var     lpbs_1 = dt9_1_2.FirstOrDefault(m => m.yt.ToString() == "联排别墅");
            var     lpbs_2 = dt9_2_2.FirstOrDefault(m => m.yt.ToString() == "联排别墅");
            var     lpbs_3 = dt9_3_2.FirstOrDefault(m => m.yt.ToString() == "联排别墅");
            dr9_3["yt"]    = "联排别墅";
            dr9_3["bzgyl"] = lpbs_1 != null?lpbs_1.jzmj.mj_wf() : 0;

            dr9_3["bzqhl"] = lpbs_2 != null?lpbs_2.jzmj.mj_wf() : 0;

            dr9_3["jmjj"]   = lpbs_2 != null ? (lpbs_2.cjje / lpbs_2.tnmj).je_y() : 0;
            dr9_3["hbjgzf"] = (lpbs_2 != null && lpbs_3 != null) ? ((lpbs_2.cjje / lpbs_2.tnmj - lpbs_3.cjje / lpbs_3.tnmj) / (lpbs_3.cjje / lpbs_3.tnmj)).ss_bfb() : "";
            dt9.Rows.Add(dr9_3);

            DataRow dr9_4  = dt9.NewRow();
            var     djbs_1 = dt9_1_2.FirstOrDefault(m => m.yt.ToString() == "叠加别墅");
            var     djbs_2 = dt9_2_2.FirstOrDefault(m => m.yt.ToString() == "叠加别墅");
            var     djbs_3 = dt9_3_2.FirstOrDefault(m => m.yt.ToString() == "叠加别墅");
            dr9_4["yt"]    = "叠加别墅";
            dr9_4["bzgyl"] = djbs_1 != null?djbs_1.jzmj.mj_wf() : 0;

            dr9_4["bzqhl"] = djbs_2 != null?djbs_2.jzmj.mj_wf() : 0;

            dr9_4["jmjj"]   = djbs_2 != null ? (djbs_2.cjje / djbs_2.tnmj).je_y() : 0;
            dr9_4["hbjgzf"] = (djbs_2 != null && djbs_3 != null) ? ((djbs_2.cjje / djbs_2.tnmj - djbs_3.cjje / djbs_3.tnmj) / (djbs_3.cjje / djbs_3.tnmj)).ss_bfb() : "";

            dt9.Rows.Add(dr9_4);

            DataRow  dr9_5 = dt9.NewRow();
            string[] yt    = { "洋房", "洋楼", "高层", "小高层", "别墅" };
            var      hj_1  = Cache_data_xzys.bz.AsEnumerable().Where(m => yt.Contains(m["tyyt"]) && m["zt"].ToString() == "蔡家");
            var      hj_2  = Cache_data_cjjl.bz.AsEnumerable().Where(m => yt.Contains(m["yt"]) && m["zt"].ToString() == "蔡家");
            var      hj_3  = Cache_data_cjjl.sz.AsEnumerable().Where(m => yt.Contains(m["yt"]) && m["zt"].ToString() == "蔡家");
            dr9_5["yt"]    = "合计";
            dr9_5["bzgyl"] = hj_1 != null?hj_1.Sum(m => m["jzmj"].doubls()).mj_wf() : 0;

            dr9_5["bzqhl"] = hj_2 != null?hj_2.Sum(m => m["jzmj"].doubls()).mj_wf() : 0;

            dr9_5["jmjj"]   = hj_2 != null ? (hj_2.Sum(m => m["cjje"].doubls()) / hj_2.Sum(m => m["jzmj"].doubls())).je_y() : 0;
            dr9_5["hbjgzf"] = (hj_2 != null && hj_3 != null) ? ((hj_2.Sum(m => m["cjje"].doubls()) / hj_2.Sum(m => m["jzmj"].doubls()) - hj_3.Sum(m => m["cjje"].doubls()) / hj_3.Sum(m => m["jzmj"].doubls())) / (hj_3.Sum(m => m["cjje"].doubls()) / hj_3.Sum(m => m["jzmj"].doubls()))).ss_bfb() : "";

            dt9.Rows.Add(dr9_5);

            Office_Tables.SetChart(page9, dt9, 5, null, null);
            t.AddClone(page9);
            #endregion
            return(t);
        }
 public plus_jp_beidaziyuan()
 {
     Base_date.init_yb(Base_date.bn, Base_date.GET_Y_FROM_Z(Base_date.bn, Base_date.bz));
     byba = ZB_Data_CJBA_DataProvider.GET_ZB(Base_date.by_First, Base_date.bz_Last);
 }
Beispiel #12
0
 // GET: Dg
 public ActionResult Index()
 {
     this.ViewBag.bn = DateTime.Now.Year;
     this.ViewBag.bz = Base_date.GET_Z_of_Y(DateTime.Now);
     return(View());
 }
        public ISlideCollection _plus_jp_huayu_1(string str, int cjbh)
        {
            try
            {
                var param = Cache_param_zb._param_jp.Where(m => m.cjid == cjbh);
                var p     = new Presentation();
                var t     = p.Slides;
                t.RemoveAt(0);
                foreach (var item in param)
                {
                    var tp   = new Presentation(str);
                    var temp = tp.Slides;


                    #region 格局统计
                    var       page1 = temp[0];
                    DataTable dt    = new DataTable();

                    dt.Columns.Add(Base_Config_Jzgj.项目名称);
                    dt.Columns.Add(Base_Config_Jzgj.业态);
                    dt.Columns.Add(Base_Config_Jzgj.竞争格局_主力面积区间);

                    dt.Columns.Add(Base_Config_Cjba.周_备案套数);
                    dt.Columns.Add(Base_Config_Cjba.周_建面均价);
                    dt.Columns.Add(Base_Config_Rgsj.周_新开套数);
                    dt.Columns.Add(Base_Config_Rgsj.周_认购套数);
                    dt.Columns.Add(Base_Config_Rgsj.周_认购建面均价);

                    dt.Columns.Add(Base_Config_Cjba.本周_备案套数);
                    dt.Columns.Add(Base_Config_Cjba.本周_建面均价);
                    dt.Columns.Add(Base_Config_Rgsj.本周_新开套数);
                    dt.Columns.Add(Base_Config_Rgsj.本周_认购套数);
                    dt.Columns.Add(Base_Config_Rgsj.本周_认购建面均价);

                    dt.Columns.Add("已推库存");
                    dt.Columns.Add("未推库存");
                    dt.Columns.Add(Base_Config_Rgsj.本周_营销动作);

                    IAutoShape text = (IAutoShape)page1.Shapes[0];
                    text.TextFrame.Text = string.Format(text.TextFrame.Text, item.bamc);
                    #endregion
                    if (item.jpxmlb != null && item.jpxmlb.Count > 0)
                    {
                        dt = GET_JPXM_BX(dt, item.jpxmlb);
                        Office_Tables.SetJP_LVDI_PUTONG_Table(page1, dt, 1, null, null);
                        t.AddClone(page1);
                    }
                }


                var        tp1   = new Presentation(str);
                var        temp1 = tp1.Slides;
                var        page2 = temp1[1];
                IAutoShape text2 = (IAutoShape)page2.Shapes[0];
                text2.TextFrame.Text = string.Format(text2.TextFrame.Text, Base_date.GET_ZCMC(Base_date.bn, Base_date.bz));
                t.AddClone(page2);
                return(t);
            }
            catch (Exception e)
            {
                Base_Log.Log(e.Message);
                return(null);
            }
        }
Beispiel #14
0
        public ISlideCollection jbzzs(string str)
        {
            var p = new Presentation();
            var t = p.Slides;

            t.RemoveAt(0);
            var tp   = new Presentation(str);
            var temp = tp.Slides;



            string[] zt = { "蔡家" };
            #region  P1
            var        page1 = temp[0];
            IAutoShape text2 = (IAutoShape)page1.Shapes[0];
            text2.TextFrame.Text = string.Format(text2.TextFrame.Text, string.Join("、", zt));
            IAutoShape text3 = (IAutoShape)page1.Shapes[0];
            text3.TextFrame.Text = string.Format(text3.TextFrame.Text, string.Join("、", zt));
            var dt1_1 = from a in Cache_data_xzys.jbz.AsEnumerable()
                        where zt.Contains(a["zt"])
                        group a by new { zc = a["zc"], zcmc = a["zcmc"] } into s
                select new
            {
                zc    = s.Key.zc,
                xzgyl = s.Sum(m => m["jzmj"].doubls()) + s.Sum(m => m["fzzmj"].doubls())
            };
            var dt1_2 = from a in Cache_data_cjjl.jbz.AsEnumerable()
                        where zt.Contains(a["zt"])
                        group a by new { zc = a["zc"], zcmc = a["zcmc"] } into s
                select new
            {
                zc   = s.Key.zc,
                cjje = s.Sum(m => m["cjje"].longs()),
                jzmj = s.Sum(m => m["jzmj"].doubls())
            };
            DataTable dt1 = new DataTable();
            dt1.Columns.Add("周次");
            dt1.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 7), typeof(double));
            dt1.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 6), typeof(double));
            dt1.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 5), typeof(double));
            dt1.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 4), typeof(double));
            dt1.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 3), typeof(double));
            dt1.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 2), typeof(double));
            dt1.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz - 1), typeof(double));
            dt1.Columns.Add(Base_date.GET_ZCMC(Base_date.bn, Base_date.bz), typeof(double));
            DataRow dr1 = dt1.NewRow();
            DataRow dr2 = dt1.NewRow();
            DataRow dr3 = dt1.NewRow();
            dr1[0] = "供应体量";
            dr2[0] = "成交体量";
            dr3[0] = "建面均价";

            for (int i = 0; i < 8; i++)
            {
                var xzys = dt1_1.FirstOrDefault(m => m.zc.ints() == (Base_date.bz - (7 - i)));
                var cjba = dt1_2.FirstOrDefault(m => m.zc.ints() == (Base_date.bz - (7 - i)));
                dr1[i + 1] = (xzys != null) ? xzys.xzgyl.mj_wf() : 0;
                dr2[i + 1] = cjba != null?cjba.jzmj.mj_wf() : 0;

                dr3[i + 1] = cjba != null ? (cjba.cjje / cjba.jzmj).je_y() : 0;
                if (i == 7)
                {
                    IAutoShape text1 = (IAutoShape)page1.Shapes[2];
                    text1.TextFrame.Text = string.Format(text1.TextFrame.Text, (xzys != null) ? xzys.xzgyl.mj_wf() : 0, cjba != null ? cjba.jzmj.mj_wf() : 0, cjba != null ? (cjba.cjje / cjba.jzmj).je_y() : 0);
                }
            }
            dt1.Rows.Add(dr1);
            dt1.Rows.Add(dr2);
            dt1.Rows.Add(dr3);
            Office_Charts.Chart_jp_langshi_chart1(page1, dt1, 4);
            t.AddClone(page1);
            #endregion

            return(t);
        }
Beispiel #15
0
        /// <summary>
        /// 获取周报任务详情
        /// </summary>
        /// <returns></returns>
        public JsonResult GET_ZB_TASK_INFO()
        {
            var obj = _fw.GET_ZB_TASK_INFO(CurrentUser.YHBH, DateTime.Now.Year, Base_date.GET_Z_of_Y(DateTime.Now));

            return(Json(obj));
        }
Beispiel #16
0
        public ISlideCollection _plus_jp_jiangbeizuizhiye_1(string str, int cjbh)
        {
            try
            {
                var param = Cache_param_zb._param_jp.Where(m => m.cjid == cjbh);
                var p     = new Presentation();
                var t     = p.Slides;
                t.RemoveAt(0);



                var pages = new Presentation(str).Slides;
                var jbz   = pages[0];

                #region 近8周江北区住宅市场环境
                DataTable zzsc = new DataTable();
                zzsc.Columns.Add("时间");
                zzsc.Columns.Add("预售新增供应量(单位: 万㎡)");
                zzsc.Columns.Add("成交量(单位: 万㎡)");
                zzsc.Columns.Add("建面均价(元 /㎡)");
                var jbz_cjba = (from a in Cache_data_cjjl.jbz.AsEnumerable()
                                where a["qy"].ToString() == qy && (a["yt"].ToString() == "别墅" || a["yt"].ToString() == "高层" || a["yt"].ToString() == "小高层" || a["yt"].ToString() == "洋房" || a["yt"].ToString() == "洋楼")
                                group a by new { zc = a["zc"], zcmc = a["zcmc"] } into s
                                select new
                {
                    zc = s.Key.zc,
                    zcmc = s.Key.zcmc,
                    cjje = s.Sum(a => a["cjje"].longs()),
                    jzmj = s.Sum(a => a["jzmj"].doubls()),
                }).OrderBy(m => m.zc).ToList();
                var jbz_xzys = (from a in Cache_data_xzys.jbz.AsEnumerable()
                                where a["qx1"].ToString() == qy && (a["tyyt"].ToString() == "别墅" || a["tyyt"].ToString() == "高层" || a["tyyt"].ToString() == "小高层" || a["tyyt"].ToString() == "洋房" || a["tyyt"].ToString() == "洋楼")
                                group a by new { zc = a["zc"] } into s
                                select new
                {
                    zc = s.Key.zc,
                    xzgy = s.Sum(a => a["jzmj"].doubls()),
                }).OrderBy(m => m.zc).ToList();
                var temp6 = (from a in jbz_cjba
                             join b in jbz_xzys on a.zc equals b.zc into temp
                             from tt in temp.DefaultIfEmpty()
                             select new
                {
                    zcmc = a.zcmc,
                    xzgyl = tt == null ? 0 : tt.xzgy,             //这里主要第二个集合有可能为空。需要判断
                    cjmj = a.jzmj,
                    jmjj = a.cjje / a.jzmj
                }).ToList();
                for (int i = 0; i < temp6.Count(); i++)
                {
                    DataRow dr = zzsc.NewRow();
                    dr[0] = temp6[i].zcmc;
                    dr[1] = temp6[i].xzgyl.mj_wf();
                    dr[2] = temp6[i].cjmj.mj_wf();
                    dr[3] = temp6[i].jmjj.je_y();
                    zzsc.Rows.Add(dr);
                }
                Office_Charts.Chart_gxfx(jbz, zzsc, 1);
                t.AddClone(jbz);
                #endregion

                #region 江北区周度住宅排名
                var temp_data_cj = from a in Cache_data_cjjl.bz.AsEnumerable()
                                   where a["qy"].ToString() == qy && (a["yt"].ToString() == "别墅" || a["yt"].ToString() == "高层" || a["yt"].ToString() == "小高层" || a["yt"].ToString() == "洋房" || a["yt"].ToString() == "洋楼")
                                   group a by new { lpmc = a["lpmc"] } into d
                    select new
                {
                    lpmc = d.Key.lpmc,
                    cjts = d.Sum(m => m["ts"].ints()),
                    cjtl = d.Sum(m => m["jzmj"].doubls()),
                    cjje = d.Sum(m => m["cjje"].doubls())
                };
                var       cjpm_ts = temp_data_cj.OrderByDescending(m => m.cjts).Take(10).ToList();
                var       cjpm_mj = temp_data_cj.OrderByDescending(m => m.cjtl).Take(10).ToList();
                var       cjpm_je = temp_data_cj.OrderByDescending(m => m.cjje).Take(10).ToList();
                DataTable cjpm    = new DataTable();
                cjpm.Columns.Add("序号");
                cjpm.Columns.Add("项目名称1");
                cjpm.Columns.Add("套数");
                cjpm.Columns.Add("项目名称2");
                cjpm.Columns.Add("成交面积");
                cjpm.Columns.Add("项目名称3");
                cjpm.Columns.Add("成交金额");
                for (int i = 0; i < 10; i++)
                {
                    DataRow dr = cjpm.NewRow();
                    dr["序号"] = i + 1;
                    if (cjpm_ts.Count() > i)
                    {
                        dr["项目名称1"] = cjpm_ts[i].lpmc;
                        dr["套数"]    = cjpm_ts[i].cjts;
                    }
                    else
                    {
                        dr["项目名称1"] = "";
                        dr["套数"]    = "";
                    }

                    if (cjpm_mj.Count() > i)
                    {
                        dr["项目名称2"] = cjpm_ts[i].lpmc;
                        dr["成交面积"]  = cjpm_mj[i].cjtl.ints();
                    }
                    else
                    {
                        dr["项目名称2"] = "";
                        dr["成交面积"]  = "";
                    }

                    if (cjpm_je.Count() > i)
                    {
                        dr["项目名称3"] = cjpm_ts[i].lpmc;
                        dr["成交金额"]  = cjpm_je[i].cjje.je_wy();
                    }
                    else
                    {
                        dr["项目名称3"] = "";
                        dr["成交金额"]  = "";
                    }
                    cjpm.Rows.Add(dr);
                }
                var cjpmp_temp = pages;
                var cjpmp_page = cjpmp_temp[1];

                IAutoShape cjpmwz = (IAutoShape)cjpmp_page.Shapes[2];
                cjpmwz.TextFrame.Text = string.Format(cjpmwz.TextFrame.Text, Base_date.GET_ZCMC(Base_date.bn, Base_date.bz));
                Office_Tables.SetChart(cjpmp_page, cjpm, 4, null, null);
                t.AddClone(cjpmp_page);
                #endregion

                #region 竞品



                foreach (var item in param)
                {
                    var tp   = new Presentation(str);
                    var temp = tp.Slides;
                    #region 格局统计


                    var        page = temp[2];
                    IAutoShape text = (IAutoShape)page.Shapes[1];
                    text.TextFrame.Text = string.Format(text.TextFrame.Text, item.bamc);
                    System.Data.DataTable dt = new System.Data.DataTable();
                    dt.Columns.Add(Base_Config_Jzgj.竞争格局名称);
                    dt.Columns.Add(Base_Config_Jzgj.项目名称);
                    dt.Columns.Add(Base_Config_Rgsj.本周_本周到访量);
                    dt.Columns.Add(Base_Config_Rgsj.本周_本周来电);
                    dt.Columns.Add(Base_Config_Rgsj.本周_新开套数);
                    dt.Columns.Add(Base_Config_Rgsj.本周_新开销售套数);
                    dt.Columns.Add(Base_Config_Rgsj.新开套内均价);

                    dt.Columns.Add(Base_Config_Cjba.周_备案套数);
                    dt.Columns.Add(Base_Config_Cjba.周_套内均价);
                    dt.Columns.Add(Base_Config_Rgsj.周_认购套数);
                    dt.Columns.Add(Base_Config_Rgsj.周_认购套内均价);

                    dt.Columns.Add(Base_Config_Cjba.本周_备案套数);
                    dt.Columns.Add(Base_Config_Cjba.本周_套内均价);
                    dt.Columns.Add(Base_Config_Rgsj.本周_认购套数);
                    dt.Columns.Add(Base_Config_Rgsj.本周_认购套内均价);

                    dt.Columns.Add(Base_Config_Rgsj.本周_成交套数环比);
                    dt.Columns.Add(Base_Config_Rgsj.本周_套内均价环比);
                    dt.Columns.Add(Base_Config_Rgsj.本周_变化原因);


                    if (item.jpxmlb != null && item.jpxmlb.Count > 0)
                    {
                        dt = GET_JPXM_BX(dt, item.jpxmlb);
                        Office_Tables.SetJP_JiangBeiZuiZhiYe_JPBX_Table(page, dt, 3, null, null);
                        t.AddClone(page);
                    }
                    #endregion
                }
                #endregion
                return(t);
            }
            catch (Exception e)
            {
                Base_Log.Log(e.Message);
                return(null);
            }
        }