/// <summary>
        /// 更新合同审批
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        public bool UpdateApprovalEntites(CasContractApprovalStepEntity entity)
        {
            if (string.IsNullOrWhiteSpace(entity.ContractApprovalStepId))
            {
                return(false);
            }
            var strsql = new StringBuilder();

            strsql.AppendFormat("DELETE FROM CAS_CONTRACT_APPROVAL_STEP_APPROVAL_DEPT WHERE CONTRACT_APPROVAL_STEP_ID= {0}",
                                Utils.ToSQLStr(entity.ContractApprovalStepId).Trim());
            var val             = DataAccess.SelectScalar(strsql.ToString());
            var approvalEntites = new List <CasContractApprovalStepApprovalDeptEntity>();

            string[] approvalD = new string[] { };
            if (!string.IsNullOrWhiteSpace(entity.ExaminationValue))
            {
                approvalD = entity.ExaminationValue.ToString().Split(',');
            }
            for (int j = 0; j < approvalD.Length; j++)
            {
                var approvalEntity = new CasContractApprovalStepApprovalDeptEntity();
                approvalEntity.ContractApprovalStepApprovalDeptId = Guid.NewGuid().ToString();
                approvalEntity.ContractApprovalStepId             = entity.ContractApprovalStepId;
                approvalEntity.DeptId           = approvalD[j];
                approvalEntity.CreatedBy        = WebCaching.UserId;
                approvalEntity.CreateTime       = DateTime.Now;
                approvalEntity.LastModifiedBy   = WebCaching.UserId;
                approvalEntity.LastModifiedTime = DateTime.Now;
                approvalEntites.Add(approvalEntity);
            }
            using (DataAccessBroker broker = DataAccessFactory.Instance())
            {
                try
                {
                    broker.BeginTransaction();
                    DataAccess.Insert <CasContractApprovalStepApprovalDeptEntity>(approvalEntites, broker);
                    DataAccess.Update(entity, broker);
                    broker.Commit();
                    return(true);
                }
                catch (Exception ex)
                {
                    broker.RollBack();
                    return(false);
                }
            }
        }
        /// <summary>
        /// 保存新增数据
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        public bool InsertApprovalEntites(CasContractApprovalStepEntity entity)
        {
            var applyEntites    = new List <CasContractApprovalStepApplyDeptEntity>();
            var approvalEntites = new List <CasContractApprovalStepApprovalDeptEntity>();

            string[] applyID;
            if (entity.ApprovalRole == ApplyTypeEnum.AllDepartment.GetHashCode())
            {
                applyID             = GetAllDepartmentID();
                entity.ApprovalRole = ApplyTypeEnum.Department.GetHashCode();
            }
            else
            {
                if (!string.IsNullOrWhiteSpace(entity.ApprovalDepValue) && entity.ApprovalRole == ApplyTypeEnum.Department.GetHashCode())
                {
                    applyID = entity.ApprovalDepValue.ToString().Split(',');
                }
                else
                {
                    applyID = entity.ApprovalUserValue.ToString().Split(',');
                }
            }
            string[] approvalD = new string[] { };
            if (!string.IsNullOrWhiteSpace(entity.ExaminationValue))
            {
                approvalD = entity.ExaminationValue.ToString().Split(',');
            }
            for (int i = 0; i < applyID.Length; i++)
            {
                var applyEntity = new CasContractApprovalStepApplyDeptEntity();
                applyEntity.ContractApprovalStepApplyDeptId = Guid.NewGuid().ToString();
                applyEntity.ContractApprovalStepId          = entity.ContractApprovalStepId;
                applyEntity.ApplyType        = (int)entity.ApprovalRole;
                applyEntity.DeptId           = applyID[i];
                applyEntity.CreatedBy        = WebCaching.UserId;
                applyEntity.CreateTime       = DateTime.Now;
                applyEntity.LastModifiedBy   = WebCaching.UserId;
                applyEntity.LastModifiedTime = DateTime.Now;
                applyEntites.Add(applyEntity);
            }
            for (int j = 0; j < approvalD.Length; j++)
            {
                var approvalEntity = new CasContractApprovalStepApprovalDeptEntity();
                approvalEntity.ContractApprovalStepApprovalDeptId = Guid.NewGuid().ToString();
                approvalEntity.ContractApprovalStepId             = entity.ContractApprovalStepId;
                approvalEntity.DeptId           = approvalD[j];
                approvalEntity.CreatedBy        = WebCaching.UserId;
                approvalEntity.CreateTime       = DateTime.Now;
                approvalEntity.LastModifiedBy   = WebCaching.UserId;
                approvalEntity.LastModifiedTime = DateTime.Now;
                approvalEntites.Add(approvalEntity);
            }

            using (DataAccessBroker broker = DataAccessFactory.Instance())
            {
                try
                {
                    broker.BeginTransaction();
                    DataAccess.Insert <CasContractApprovalStepApplyDeptEntity>(applyEntites, broker);
                    DataAccess.Insert <CasContractApprovalStepApprovalDeptEntity>(approvalEntites, broker);
                    DataAccess.Insert(entity, broker);
                    broker.Commit();
                    return(true);
                }
                catch (Exception ex)
                {
                    broker.RollBack();
                    return(false);
                }
            }
        }