Exemple #1
0
    void PostData()
    {
        CUser user       = (CUser)Session["User"];
        COrg  BaseObject = new COrg();

        BaseObject.Ctx     = Global.GetCtx(Session["TopCompany"].ToString());
        BaseObject.Creator = user.Id;

        List <CBaseObject> lstCol = m_Table.ColumnMgr.GetList();
        bool bHasVisible          = false;

        foreach (CBaseObject obj in lstCol)
        {
            CColumn col = (CColumn)obj;

            if (col.Code.Equals("id", StringComparison.OrdinalIgnoreCase))
            {
                continue;
            }
            else if (col.Code.Equals("Created", StringComparison.OrdinalIgnoreCase))
            {
                continue;
            }
            else if (col.Code.Equals("Creator", StringComparison.OrdinalIgnoreCase))
            {
                //BaseObject.SetColValue(col, Program.User.Id);
                continue;
            }
            else if (col.Code.Equals("Updated", StringComparison.OrdinalIgnoreCase))
            {
                continue;
            }
            else if (col.Code.Equals("Updator", StringComparison.OrdinalIgnoreCase))
            {
                //BaseObject.SetColValue(col, Program.User.Id);
                continue;
            }

            BaseObject.SetColValue(col, Request.Params[col.Code]);
            bHasVisible = true;
        }
        if (!bHasVisible)
        {
            Response.Write("没有可修改字段!");
            return;
        }
        if (!m_Company.OrgMgr.AddNew(BaseObject, true))
        {
            Response.Write("添加失败!");
            return;
        }
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        string B_Company_id = Request["B_Company_id"];

        if (string.IsNullOrEmpty(B_Company_id))
        {
            m_Company = Global.GetCtx(Session["TopCompany"].ToString()).CompanyMgr.FindTopCompany();
        }
        else
        {
            m_Company = (CCompany)Global.GetCtx(Session["TopCompany"].ToString()).CompanyMgr.Find(new Guid(B_Company_id));
        }

        m_Table = (CTable)m_Company.OrgMgr.Table;

        string id = Request["id"];

        if (string.IsNullOrEmpty(id))
        {
            Response.Write("请选择记录!");
            Response.End();
        }

        m_BaseObject = (COrg)m_Company.OrgMgr.Find(new Guid(id));
        if (m_BaseObject == null)
        {
            Response.Write("请选择记录!");
            Response.End();
        }

        if (Request.Params["Action"] == "Cancel")
        {
            m_BaseObject.Cancel();
            Response.End();
        }
        else if (Request.Params["Action"] == "PostData")
        {
            PostData();
            Response.End();
        }
    }
Exemple #3
0
    //广州财经数字化校园 同步
    static void SyncGuangzhou(string connstr)
    {
        string SystemName = "广州财经数字化校园";

        using (SqlConnection conn = new SqlConnection(connstr))
        {
            CCompany Company = Global.GetCtx().CompanyMgr.FindTopCompany();
            //同步班级
            COrgMgr OrgMgr    = Company.OrgMgr;
            string  TableCode = "LYDS_TEACHINGCLASSES";
            {
                ErpCoreModel.Base.CSyncTime SyncTime = Global.GetCtx().SyncTimeMgr.FindByTbCode(SystemName, TableCode);
                SqlCommand cmd = new SqlCommand();
                cmd.Connection  = conn;
                cmd.CommandText = "proc_LYDS_TEACHINGCLASSES";
                cmd.CommandType = CommandType.StoredProcedure;
                SqlParameter para = new SqlParameter("@optime ", SqlDbType.DateTime);
                if (SyncTime == null)
                {
                    para.Value = null;
                }
                else
                {
                    para.Value = SyncTime.LastTime;
                }
                cmd.Parameters.Add(para);
                SqlDataAdapter dp = new SqlDataAdapter(cmd);
                DataSet        ds = new DataSet();
                dp.Fill(ds);
                if (ds.Tables.Count > 0)
                {
                    foreach (DataRow r in ds.Tables[0].Rows)
                    {
                        string ordid      = r["id"].ToString();
                        string name       = r["name"].ToString();
                        string speciality = r["speciality"].ToString();
                        string academy    = r["academy"].ToString();
                        string typeflag   = r["typeflag"].ToString();
                        if (r["optime"] != DBNull.Value)
                        {
                            DateTime dtime = (DateTime)r["optime"];
                            if (SyncTime == null)
                            {
                                SyncTime            = new CSyncTime();
                                SyncTime.Ctx        = Global.GetCtx();
                                SyncTime.SystemName = SystemName;
                                SyncTime.TableCode  = TableCode;
                                SyncTime.LastTime   = dtime;
                                Global.GetCtx().SyncTimeMgr.AddNew(SyncTime, true);
                            }
                            if (dtime > SyncTime.LastTime)
                            {
                                SyncTime.LastTime = dtime;
                            }
                        }

                        if (!speciality.Equals(ConfigurationManager.AppSettings["speciality"], StringComparison.OrdinalIgnoreCase))//仅仅处理会计专业
                        {
                            continue;
                        }

                        if (typeflag.Equals("I", StringComparison.OrdinalIgnoreCase)) //新增
                        {
                            if (OrgMgr.FindByName(ordid) != null)
                            {
                                continue;
                            }
                            COrg Org = new COrg();
                            Org.Ctx          = OrgMgr.Ctx;
                            Org.Name         = ordid;
                            Org.B_Company_id = Company.Id;
                            OrgMgr.AddNew(Org);
                            if (!OrgMgr.Save(true))
                            {
                            }
                        }
                        else if (typeflag.Equals("U", StringComparison.OrdinalIgnoreCase)) //修改
                        {
                            COrg Org = OrgMgr.FindByName(ordid);
                            if (Org != null)
                            {
                                Org.Name = ordid;
                            }
                            else
                            {
                                Org              = new COrg();
                                Org.Ctx          = OrgMgr.Ctx;
                                Org.Name         = ordid;
                                Org.B_Company_id = Company.Id;
                                OrgMgr.AddNew(Org);
                            }
                            if (!OrgMgr.Save(true))
                            {
                            }
                        }
                        else if (typeflag.Equals("D", StringComparison.OrdinalIgnoreCase)) //删除
                        {
                            COrg Org = OrgMgr.FindByName(ordid);
                            if (Org != null)
                            {
                                OrgMgr.Delete(Org);
                                if (!OrgMgr.Save(true))
                                {
                                }
                            }
                        }
                    }
                }
                if (SyncTime != null)
                {
                    Global.GetCtx().SyncTimeMgr.Update(SyncTime);
                    if (!Global.GetCtx().SyncTimeMgr.Save(true))
                    {
                    }
                }
            }
            //同步教师
            TableCode = "LYDS_TEACHERS";
            {
                ErpCoreModel.Base.CSyncTime SyncTime = Global.GetCtx().SyncTimeMgr.FindByTbCode(SystemName, TableCode);
                SqlCommand cmd = new SqlCommand();
                cmd.Connection  = conn;
                cmd.CommandText = "proc_LYDS_TEACHERS";
                cmd.CommandType = CommandType.StoredProcedure;
                SqlParameter para = new SqlParameter("@optime ", SqlDbType.DateTime);
                if (SyncTime == null)
                {
                    para.Value = null;
                }
                else
                {
                    para.Value = SyncTime.LastTime;
                }
                cmd.Parameters.Add(para);
                SqlDataAdapter dp = new SqlDataAdapter(cmd);
                DataSet        ds = new DataSet();
                dp.Fill(ds);
                if (ds.Tables.Count > 0)
                {
                    foreach (DataRow r in ds.Tables[0].Rows)
                    {
                        string userid   = r["userid"].ToString();
                        string name     = r["name"].ToString();
                        string password = r["password"].ToString();
                        string academy  = r["academy"].ToString();
                        string status   = r["status"].ToString();
                        string typeflag = r["typeflag"].ToString();
                        if (r["optime"] != DBNull.Value)
                        {
                            DateTime dtime = (DateTime)r["optime"];
                            if (SyncTime == null)
                            {
                                SyncTime            = new CSyncTime();
                                SyncTime.Ctx        = Global.GetCtx();
                                SyncTime.SystemName = SystemName;
                                SyncTime.TableCode  = TableCode;
                                SyncTime.LastTime   = dtime;
                                Global.GetCtx().SyncTimeMgr.AddNew(SyncTime, true);
                            }
                            if (dtime > SyncTime.LastTime)
                            {
                                SyncTime.LastTime = dtime;
                            }
                        }

                        if (!academy.Equals(ConfigurationManager.AppSettings["academy"], StringComparison.OrdinalIgnoreCase))//仅仅处理会计
                        {
                            continue;
                        }

                        if (typeflag.Equals("I", StringComparison.OrdinalIgnoreCase)) //新增
                        {
                            if (Global.GetCtx().UserMgr.FindByName(userid) != null)
                            {
                                continue;
                            }
                            CUser User = new CUser();
                            User.Ctx          = Global.GetCtx().UserMgr.Ctx;
                            User.Name         = userid;
                            User.TName        = name;
                            User.B_Company_id = Company.Id;
                            User.Type         = 1;//教师
                            Global.GetCtx().UserMgr.AddNew(User);
                            if (!Global.GetCtx().UserMgr.Save(true))
                            {
                            }
                        }
                        else if (typeflag.Equals("U", StringComparison.OrdinalIgnoreCase)) //修改
                        {
                            CUser User = Global.GetCtx().UserMgr.FindByName(userid);
                            if (User != null)
                            {
                                User.TName = name;
                                User.Pwd   = password;
                            }
                            else
                            {
                                User              = new CUser();
                                User.Ctx          = Global.GetCtx().UserMgr.Ctx;
                                User.Name         = userid;
                                User.TName        = name;
                                User.Pwd          = password;
                                User.B_Company_id = Company.Id;
                                User.Type         = 1;//教师
                                Global.GetCtx().UserMgr.AddNew(User);
                            }
                            if (!Global.GetCtx().UserMgr.Save(true))
                            {
                            }
                        }
                        else if (typeflag.Equals("D", StringComparison.OrdinalIgnoreCase)) //删除
                        {
                            CUser User = Global.GetCtx().UserMgr.FindByName(userid);
                            if (User != null)
                            {
                                Global.GetCtx().UserMgr.Delete(User);
                                if (!Global.GetCtx().UserMgr.Save(true))
                                {
                                }
                            }
                        }
                    }
                }
                if (SyncTime != null)
                {
                    Global.GetCtx().SyncTimeMgr.Update(SyncTime);
                    if (!Global.GetCtx().SyncTimeMgr.Save(true))
                    {
                    }
                }
            }
            //同步学生
            TableCode = "LYDS_STUDENTS";
            {
                ErpCoreModel.Base.CSyncTime SyncTime = Global.GetCtx().SyncTimeMgr.FindByTbCode(SystemName, TableCode);
                SqlCommand cmd = new SqlCommand();
                cmd.Connection  = conn;
                cmd.CommandText = "proc_LYDS_STUDENTS";
                cmd.CommandType = CommandType.StoredProcedure;
                SqlParameter para = new SqlParameter("@optime ", SqlDbType.DateTime);
                if (SyncTime == null)
                {
                    para.Value = null;
                }
                else
                {
                    para.Value = SyncTime.LastTime;
                }
                cmd.Parameters.Add(para);
                SqlDataAdapter dp = new SqlDataAdapter(cmd);
                DataSet        ds = new DataSet();
                dp.Fill(ds);
                if (ds.Tables.Count > 0)
                {
                    foreach (DataRow r in ds.Tables[0].Rows)
                    {
                        string userid        = r["userid"].ToString();
                        string name          = r["name"].ToString();
                        string password      = r["password"].ToString();
                        string speciality    = r["speciality"].ToString();
                        string teachingclass = r["teachingclass"].ToString();
                        string status        = r["status"].ToString();
                        string typeflag      = r["typeflag"].ToString();
                        if (r["optime"] != DBNull.Value)
                        {
                            DateTime dtime = (DateTime)r["optime"];
                            if (SyncTime == null)
                            {
                                SyncTime            = new CSyncTime();
                                SyncTime.Ctx        = Global.GetCtx();
                                SyncTime.SystemName = SystemName;
                                SyncTime.TableCode  = TableCode;
                                SyncTime.LastTime   = dtime;
                                Global.GetCtx().SyncTimeMgr.AddNew(SyncTime, true);
                            }
                            if (dtime > SyncTime.LastTime)
                            {
                                SyncTime.LastTime = dtime;
                            }
                        }

                        if (!speciality.Equals(ConfigurationManager.AppSettings["speciality"], StringComparison.OrdinalIgnoreCase))//仅仅处理会计
                        {
                            continue;
                        }

                        if (typeflag.Equals("I", StringComparison.OrdinalIgnoreCase)) //新增
                        {
                            if (Global.GetCtx().UserMgr.FindByName(userid) != null)
                            {
                                continue;
                            }
                            CUser User = new CUser();
                            User.Ctx          = Global.GetCtx().UserMgr.Ctx;
                            User.Name         = userid;
                            User.Pwd          = password;
                            User.TName        = name;
                            User.B_Company_id = Company.Id;
                            User.Type         = 2;//学生
                            Global.GetCtx().UserMgr.AddNew(User);
                            if (!Global.GetCtx().UserMgr.Save(true))
                            {
                            }
                            //加入班级
                            COrg Org = OrgMgr.FindByName(teachingclass);
                            if (Org == null)
                            {
                                Org              = new COrg();
                                Org.Ctx          = OrgMgr.Ctx;
                                Org.Name         = teachingclass;
                                Org.B_Company_id = Company.Id;
                                OrgMgr.AddNew(Org);
                                if (!OrgMgr.Save(true))
                                {
                                }
                            }
                            CUserInOrg UserInOrg = new CUserInOrg();
                            UserInOrg.Ctx       = Org.Ctx;
                            UserInOrg.B_Org_id  = Org.Id;
                            UserInOrg.B_User_id = User.Id;
                            Org.UserInOrgMgr.AddNew(UserInOrg);
                            if (!Org.UserInOrgMgr.Save(true))
                            {
                            }
                        }
                        else if (typeflag.Equals("U", StringComparison.OrdinalIgnoreCase)) //修改
                        {
                            CUser User = Global.GetCtx().UserMgr.FindByName(userid);
                            if (User != null)
                            {
                                User.TName = name;
                                User.Pwd   = password;
                            }
                            else
                            {
                                User              = new CUser();
                                User.Ctx          = Global.GetCtx().UserMgr.Ctx;
                                User.Name         = userid;
                                User.Pwd          = password;
                                User.TName        = name;
                                User.Pwd          = password;
                                User.B_Company_id = Company.Id;
                                User.Type         = 2;//学生
                                Global.GetCtx().UserMgr.AddNew(User);
                            }
                            if (!Global.GetCtx().UserMgr.Save(true))
                            {
                            }
                        }
                        else if (typeflag.Equals("D", StringComparison.OrdinalIgnoreCase)) //删除
                        {
                            CUser User = Global.GetCtx().UserMgr.FindByName(userid);
                            if (User != null)
                            {
                                Global.GetCtx().UserMgr.Delete(User);
                                if (!Global.GetCtx().UserMgr.Save(true))
                                {
                                }
                            }
                        }
                    }
                }
                if (SyncTime != null)
                {
                    Global.GetCtx().SyncTimeMgr.Update(SyncTime);
                    if (!Global.GetCtx().SyncTimeMgr.Save(true))
                    {
                    }
                }
            }
        }
    }