示例#1
0
        /// <summary>
        /// 取得所有部門資料(CTE)
        /// </summary>
        /// <param name="depid"></param>
        /// <returns></returns>
        public List <ENT_DEPARTMENT> getDepartmentOrg(int depid)
        {
            string sql        = @"WITH Dep_CTE (DEP_ID,DEPT_CODE,DEPT_NAME,PARENT_ID,DEP_LEVEL) AS
                (    
                    --頂層
                    select DEP_ID,DEPT_CODE,DEPT_NAME,PARENT_ID,0 AS DT_LEVEL
                    from ENT_DEPARTMENT RD
                    where RD.DEP_ID=@depid
                    UNION ALL    
                    --成員
                    select D.DEP_ID,D.DEPT_CODE,D.DEPT_NAME,D.PARENT_ID,DC.DEP_LEVEL+1
                    from ENT_DEPARTMENT D INNER JOIN Dep_CTE DC on D.PARENT_ID=DC.DEP_ID
                )
                select * from Dep_CTE";
            var    parameters = new Dictionary <string, Object>();

            //設定專案名編號資料
            parameters.Add("depid", depid);
            DataSet ds = ExecuteStoreQuery(sql, CommandType.Text, parameters);

            Org_department = new List <ENT_DEPARTMENT>();
            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                ENT_DEPARTMENT dept = new ENT_DEPARTMENT();
                dept.DEP_ID    = Convert.ToInt64(dr["DEP_ID"]);
                dept.DEPT_CODE = Convert.ToString(dr["DEPT_CODE"]);
                dept.DEPT_NAME = Convert.ToString(dr["DEPT_NAME"]);
                //dept.DESC = Convert.ToString(dr["DESC"]);
                dept.PARENT_ID = Convert.ToInt64(dr["PARENT_ID"]);
                Org_department.Add(dept);
            }
            return(Org_department);
        }
示例#2
0
        //新增或修改部門
        public String addDepartment(FormCollection form)
        {
            logger.Info("form:" + form.Count);
            string msg = "";
            //懶得把Form綁SYS_USER 直接先把Form 值填滿
            ENT_DEPARTMENT d = new ENT_DEPARTMENT();

            if (form.Get("d_depId").Trim() != "")
            {
                d.DEP_ID = Convert.ToInt64(form.Get("d_depId").Trim());
            }
            d.DEPT_CODE = form.Get("d_deptCode").Trim();
            d.DEPT_NAME = form.Get("d_deptName").Trim();
            d.MANAGER   = form.Get("d_Manager").Trim();
            d.DESC      = form.Get("d_desc").Trim();
            if (null != form.Get("d_parentId") && "" != form.Get("d_parentId").Trim())
            {
                d.PARENT_ID = Convert.ToInt64(form.Get("d_parentId").Trim());
            }
            SYS_USER loginUser = (SYS_USER)Session["user"];

            d.CREATE_ID   = loginUser.USER_ID;
            d.CREATE_DATE = DateTime.Now;
            msg           = "新增部門成功(" + service.addDepartment(d) + ")";

            //logger.Info("Request:user_ID=" + form["u_userid"]);
            return(msg);
        }
示例#3
0
 //取得部門資料
 public ENT_DEPARTMENT getDepartmentById(string depid)
 {
     using (var context = new topmepEntities())
     {
         department = context.ENT_DEPARTMENT.SqlQuery("select dep.* from ENT_DEPARTMENT dep "
                                                      + "where dep.DEP_ID = @depid "
                                                      , new SqlParameter("depid", depid)).First();
     }
     return(department);
 }
示例#4
0
 /// <summary>
 /// 刪除部門資料
 /// </summary>
 /// <param name="depId"></param>
 public void delDepartment(long depId)
 {
     using (var context = new topmepEntities())
     {
         //2.取得
         ENT_DEPARTMENT d = context.ENT_DEPARTMENT.Find(depId);
         logger.Info("del Department =" + d.DEPT_NAME + "," + d.DEP_ID);
         context.ENT_DEPARTMENT.Remove(d);
         int i = context.SaveChanges();
         logger.Debug("remove dep=" + i);
     }
 }
示例#5
0
 //新增部門資料
 public long addDepartment(ENT_DEPARTMENT dep)
 {
     logger.Info("create new Department ");
     using (var context = new topmepEntities())
     {
         //2.取得供應商編號
         context.ENT_DEPARTMENT.AddOrUpdate(dep);
         int i = context.SaveChanges();
         logger.Debug("Add dep=" + i);
     }
     return(dep.DEP_ID);
 }