コード例 #1
0
        /// <summary>
        /// 部门列表
        /// </summary>
        /// <returns></returns>
        public IEnumerable <DepartmentEntity> GetList()
        {
            var sql = PetaPoco.Sql.Builder.Append(@"select * from Base_Department where 1=1 ");

            sql.Append(" order by CreateDate desc");
            var list = Base_Department.Query(sql);

            return(EntityConvertTools.CopyToList <Base_Department, DepartmentEntity>(list.ToList()));
        }
コード例 #2
0
        /// <summary>
        /// 删除部门
        /// </summary>
        /// <param name="keyValue">主键</param>
        public void RemoveForm(string keyValue)
        {
            int count = QSDMS_SQLDB.GetInstance().Fetch <Base_Department>("select * from Base_Department").FindAll(t => t.ParentId == keyValue).Count();

            if (count > 0)
            {
                throw new Exception("当前所选数据有子节点数据!");
            }
            Base_Department.Delete("where DepartmentId=@0", keyValue);
        }
コード例 #3
0
        public async Task SaveData(Base_Department theData)
        {
            if (theData.Id.IsNullOrEmpty())
            {
                InitEntity(theData);

                await _departmentBus.AddDataAsync(theData);
            }
            else
            {
                await _departmentBus.UpdateDataAsync(theData);
            }
        }
コード例 #4
0
        /// <summary>
        /// 部门名称不能重复
        /// </summary>
        /// <param name="fullName">名称</param>
        /// <param name="keyValue">主键</param>
        /// <returns></returns>
        public bool ExistFullName(string fullName, string keyValue)
        {
            var sql = PetaPoco.Sql.Builder.Append(@"select * from Base_Department where 1=1 ");

            if (!string.IsNullOrEmpty(fullName))
            {
                sql.Append(" and FullName=@0", fullName);
            }
            if (!string.IsNullOrEmpty(keyValue))
            {
                sql.Append(" and DepartmentId!=@0", keyValue);
            }
            return(Base_Department.Query(sql).Count() == 0 ? true : false);
        }
コード例 #5
0
        /// <summary>
        /// 保存
        /// </summary>
        /// <param name="theData">保存的数据</param>
        public ActionResult SaveData(Base_Department theData)
        {
            if (theData.Id.IsNullOrEmpty())
            {
                theData.Id = IdHelper.GetId();

                _base_DepartmentBus.AddData(theData);
            }
            else
            {
                _base_DepartmentBus.UpdateData(theData);
            }

            return(Success());
        }
コード例 #6
0
 /// <summary>
 /// 保存部门表单(新增、修改)
 /// </summary>
 /// <param name="keyValue">主键值</param>
 /// <param name="departmentEntity">机构实体</param>
 /// <returns></returns>
 public void SaveForm(string keyValue, DepartmentEntity departmentEntity)
 {
     if (!string.IsNullOrEmpty(keyValue))
     {
         departmentEntity.Modify(keyValue);
         Base_Department depart = Base_Department.SingleOrDefault("where DepartmentId=@0", keyValue);
         depart = EntityConvertTools.CopyToModel <DepartmentEntity, Base_Department>(departmentEntity, depart);
         depart.DepartmentId = keyValue;
         depart.Update();
     }
     else
     {
         departmentEntity.Create();
         Base_Department depart = EntityConvertTools.CopyToModel <DepartmentEntity, Base_Department>(departmentEntity, null);
         depart.Insert();
     }
 }
コード例 #7
0
        public ActionResult <AjaxResult> SaveData(Base_Department theData)
        {
            AjaxResult res;

            if (theData.Id.IsNullOrEmpty())
            {
                theData.InitEntity();

                res = _departmentBus.AddData(theData);
            }
            else
            {
                res = _departmentBus.UpdateData(theData);
            }

            return(JsonContent(res.ToJson()));
        }
コード例 #8
0
        /// <summary>
        /// 保存
        /// </summary>
        /// <param name="theData">保存的数据</param>
        public ActionResult SaveData(Base_Department theData)
        {
            AjaxResult res;

            if (theData.Id.IsNullOrEmpty())
            {
                theData.Id = IdHelper.GetId();

                res = _base_DepartmentBus.AddData(theData);
            }
            else
            {
                res = _base_DepartmentBus.UpdateData(theData);
            }

            return(JsonContent(res.ToJson()));
        }
コード例 #9
0
        /// <summary>
        /// 保存
        /// </summary>
        /// <param name="theData">保存的数据</param>
        public ActionResult SaveData(Base_Department theData)
        {
            if (theData.Id.IsNullOrEmpty())
            {
                theData.Id         = Guid.NewGuid().ToSequentialGuid();
                theData.CreateTime = DateTime.Now;
                theData.ChildCount = 0;

                _base_DepartmentBusiness.AddData(theData);
            }
            else
            {
                _base_DepartmentBusiness.UpdateData(theData);
            }

            return(Success());
        }
コード例 #10
0
        /// <summary>
        /// 部门实体
        /// </summary>
        /// <param name="keyValue">主键值</param>
        /// <returns></returns>
        public DepartmentEntity GetEntity(string keyValue)
        {
            var model = Base_Department.SingleOrDefault("where DepartmentId=@0", keyValue);

            return(EntityConvertTools.CopyToModel <Base_Department, DepartmentEntity>(model, null));
        }
コード例 #11
0
        /// <summary>
        /// 获得单前模块的单据编号如果没有定义规则就返回空
        /// </summary>
        /// <param name="userId">用户ID</param>
        /// <param name="moduleId">模块ID</param>
        /// <returns>单据号</returns>
        public string GetBillCode(string userId, string moduleId)
        {
            IDatabase     database    = DataFactory.Database();
            DbTransaction isOpenTrans = database.BeginTrans();
            //获得模板ID
            string        billCode      = "";//单据号
            Base_User     base_user     = database.FindEntity <Base_User>(userId);
            Base_CodeRule base_coderule = Repository().FindEntity("ModuleId", moduleId);

            try
            {
                int nowSerious = 0;
                //取得流水号种子
                List <Base_CodeRuleSerious> base_coderuleseriouslist = database.FindList <Base_CodeRuleSerious>("CodeRuleId", base_coderule.CodeRuleId);
                //取得最大种子
                Base_CodeRuleSerious maxCodeRuleSerious = base_coderuleseriouslist.Find(delegate(Base_CodeRuleSerious p) { return(p.ValueType == "0" && p.UserId == null); });
                if (!string.IsNullOrEmpty(base_coderule.CodeRuleId))
                {
                    List <Base_CodeRuleDetail> base_coderuledetailList = database.FindList <Base_CodeRuleDetail>("CodeRuleId", base_coderule.CodeRuleId);
                    foreach (Base_CodeRuleDetail base_coderuledetail in base_coderuledetailList)
                    {
                        switch (base_coderuledetail.FullName)
                        {
                        //自定义项
                        case "0":
                            billCode = billCode + base_coderuledetail.FormatStr;
                            break;

                        //日期
                        case "1":
                            //日期字符串类型
                            billCode = billCode + DateTime.Now.ToString(base_coderuledetail.FormatStr);
                            //处理自动更新流水号
                            if (base_coderuledetail.AutoReset == 1)
                            {
                                //判断是否有流水号
                                if (maxCodeRuleSerious != null)
                                {
                                    //当上次更新时间跟本次日期不一致时重置流水号种子
                                    if (maxCodeRuleSerious.LastUpdateDate != DateTime.Now.ToString(base_coderuledetail.FormatStr))
                                    {
                                        maxCodeRuleSerious.LastUpdateDate = DateTime.Now.ToString(base_coderuledetail.FormatStr); //更新最后更新时间
                                        maxCodeRuleSerious.NowValue       = 1;                                                    //重置种子
                                        database.Update <Base_CodeRuleSerious>(maxCodeRuleSerious, isOpenTrans);
                                        //重置种子以后删除掉之前用户占用了的种子。
                                        StringBuilder deleteSql = new StringBuilder(string.Format("delete Base_CodeRuleSerious where CodeRuleId='{0} AND UserId IS NOT NULL '", base_coderule.CodeRuleId));
                                        database.ExecuteBySql(deleteSql, isOpenTrans);
                                    }
                                }
                            }
                            break;

                        //流水号
                        case "2":
                            //查找当前用户是否已有之前未用掉的种子
                            Base_CodeRuleSerious base_coderuleserious = base_coderuleseriouslist.Find(delegate(Base_CodeRuleSerious p) { return(p.UserId == userId && p.Enabled == 1); });
                            //如果没有就取当前最大的种子
                            if (base_coderuleserious == null)
                            {
                                //取得系统最大的种子
                                int maxSerious = (int)maxCodeRuleSerious.NowValue;
                                nowSerious           = maxSerious;
                                base_coderuleserious = new Base_CodeRuleSerious();
                                base_coderuleserious.Create();
                                base_coderuleserious.NowValue   = maxSerious;
                                base_coderuleserious.UserId     = userId;
                                base_coderuleserious.ValueType  = "1";
                                base_coderuleserious.Enabled    = 1;
                                base_coderuleserious.CodeRuleId = base_coderule.CodeRuleId;
                                database.Insert <Base_CodeRuleSerious>(base_coderuleserious, isOpenTrans);
                                //处理种子更新
                                maxCodeRuleSerious.NowValue += 1;    //种子自增
                                database.Update <Base_CodeRuleSerious>(maxCodeRuleSerious, isOpenTrans);
                            }
                            else
                            {
                                nowSerious = (int)base_coderuleserious.NowValue;
                            }
                            string seriousStr = new string('0', (int)(base_coderuledetail.FLength)) + nowSerious.ToString();
                            seriousStr = seriousStr.Substring(seriousStr.Length - (int)(base_coderuledetail.FLength));
                            billCode   = billCode + seriousStr;
                            break;

                        //部门
                        case "3":

                            Base_Department base_department = database.FindEntity <Base_Department>(base_user.DepartmentId);
                            billCode = billCode + base_coderuledetail.FormatStr;
                            if (base_coderuledetail.FormatStr == "code")
                            {
                                billCode = billCode + base_department.Code;
                            }
                            else
                            {
                                billCode = billCode + base_department.FullName;
                            }
                            break;

                        //公司
                        case "4":
                            Base_Company base_company = database.FindEntity <Base_Company>(base_user.CompanyId);
                            if (base_coderuledetail.FormatStr == "code")
                            {
                                billCode = billCode + base_company.Code;
                            }
                            else
                            {
                                billCode = billCode + base_company.FullName;
                            }
                            break;

                        //用户
                        case "5":
                            if (base_coderuledetail.FormatStr == "code")
                            {
                                billCode = billCode + base_user.Code;
                            }
                            else
                            {
                                billCode = billCode + base_user.Account;
                            }
                            break;

                        default:
                            break;
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Base_SysLogBll.Instance.WriteLog("", OperationType.Other, "-1", string.Format("{0}在获取{1}单据编码时错误:", base_user.RealName, base_coderule.FullName) + ex.Message);
                database.Rollback();
                return(billCode);
            }
            database.Commit();
            return(billCode);
        }