public static int CreateOrganization(Dal.Models.Organization org, int iCurrentUserID, OleDbConnection conn, OleDbTransaction trans = null) { if (string.IsNullOrEmpty(org.OrganizationName) || string.IsNullOrEmpty(org.OrganizationCode)) { return(-1); } // 判断重名 if (GetOrganizationByName(org.OrganizationName, conn, trans) != null) { throw new Exception("单位名已存在!"); } if (IsSocialCreditCode(org.OrganizationCode)) { org.UnifiedCode = org.OrganizationCode; // 社会统一代码和组织机构代码对应关系: // 营业执照:全部号码 // 组织机构代码:第9位至倒数第2位,共9位数 // 税务登记证号码:第3位至倒数第2位,共15位数 org.OrganizationCode = org.UnifiedCode.Substring(9, 9); } //else //{ // if (!IsOrganizationCode(org.OrganizationCode)) // { // throw new Exception("组织机构代码或社会统一代码输入错误,请检查后再次输入!"); // } //} // 判断组织机构代码 if (GetOrganizationByCode(org.OrganizationCode, conn, trans) != null) { throw new Exception("组织机构代码已存在!"); } if (org.CreateTime == null || org.LastUpdateTime == null) { org.CreateTime = DateTime.Now; org.LastUpdateTime = org.CreateTime; } Dal.Models.UserInfo user = new Dal.Models.UserInfo(); user.UserName = string.IsNullOrEmpty(org.UserName) ? org.OrganizationName : org.UserName; //org.Password; //user.DefaultPassword; user.Password = string.IsNullOrEmpty(org.UnifiedCode) ? org.OrganizationCode : org.UnifiedCode; user.Email = org.EmailAddress; user.UserStatus = "0701"; user.UserType = "0806"; user.CreateTime = org.CreateTime; user.LastUpdateTime = org.CreateTime; user.CreateUser = iCurrentUserID; user.IsPasswordChanged = false; // 创建用户 int iResult = User.CreateUser(user, conn, trans); if (iResult <= 0) { return(iResult); } string strPwd = BLL.SysConstant.GetAppSettings("DefaultPassword", conn, trans); BLL.User.ResetPassword(iResult, strPwd, conn, trans); user.UserID = iResult; StringBuilder sbSql = new StringBuilder(); sbSql.Append(" INSERT INTO Organization( "); sbSql.Append(" UserID "); sbSql.Append(" ,OrganizationName "); sbSql.Append(" ,Abbreviation "); sbSql.Append(" ,UnifiedCode "); sbSql.Append(" ,OrganizationCode "); sbSql.Append(" ,OrganizationAddress "); sbSql.Append(" ,LegalPersonName "); sbSql.Append(" ,LegalPersonIDNo "); sbSql.Append(" ,Linkman "); sbSql.Append(" ,MobileNumber "); sbSql.Append(" ,TelephoneNumber "); sbSql.Append(" ,Postcode "); sbSql.Append(" ,FaxNumber "); sbSql.Append(" ,EmailAddress "); sbSql.Append(" ,CreateTime "); sbSql.Append(" ,LastUpdateTime "); sbSql.Append(" ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) "); iResult = Dal.OleDbHlper.ExecuteNonQuery(sbSql.ToString(), conn, CommandType.Text, trans , new OleDbParameter("@UserID", OleDbType.Integer) { Value = user.UserID } , new OleDbParameter("@OrganizationName", OleDbType.VarWChar) { Value = org.OrganizationName } , new OleDbParameter("@Abbreviation", OleDbType.VarWChar) { Value = org.Abbreviation } , new OleDbParameter("@UnifiedCode", OleDbType.VarWChar) { Value = org.UnifiedCode } , new OleDbParameter("@OrganizationCode", OleDbType.VarWChar) { Value = org.OrganizationCode } , new OleDbParameter("@OrganizationAddress", OleDbType.VarWChar) { Value = org.OrganizationAddress } , new OleDbParameter("@LegalPersonName", OleDbType.VarWChar) { Value = org.LegalPersonName } , new OleDbParameter("@LegalPersonIDNo", OleDbType.VarWChar) { Value = org.LegalPersonIDNo } , new OleDbParameter("@Linkman", OleDbType.VarWChar) { Value = org.Linkman } , new OleDbParameter("@MobileNumber", OleDbType.VarWChar) { Value = org.MobileNumber } , new OleDbParameter("@TelephoneNumber", OleDbType.VarWChar) { Value = org.TelephoneNumber } , new OleDbParameter("@Postcode", OleDbType.VarWChar) { Value = org.Postcode } , new OleDbParameter("@FaxNumber", OleDbType.VarWChar) { Value = org.FaxNumber } , new OleDbParameter("@EmailAddress", OleDbType.VarWChar) { Value = org.EmailAddress } , new OleDbParameter("@CreateTime", OleDbType.Date) { Value = org.CreateTime } , new OleDbParameter("@LastUpdateTime", OleDbType.Date) { Value = org.LastUpdateTime }); if (iResult > 0) { org = GetOrganizationByName(org.OrganizationName, conn, trans); iResult = org.OrganizationID.Value; } return(iResult); }