新增Insert员工Employee信息

开发工具与关键技术:Visual Studio 2015
作者:杨镇虹
撰写时间:2019.
一、控制器的新增员工信息
1、InsertEmployee这个是接收新增员工页面信息的路径,也是控制器接收到新增页面员工信息 后面的这个小括号装着的是用到的这两个表里面的数据 前面这个是员工表(pwEmployee) 后面的这个是用户表(PW_User)
public ActionResult InsertEmployee(PW_Employee pwEmployee, PW_User pwUser)
2、这个是一个实体类的类ReturnJsonVo 用它接收状态
ReturnJsonVo returnJson = new ReturnJsonVo();
新增数据的过程中如果有出现异常的就try一下
//判断数据库中是否存在该员工信息 查询一个数据库myModels里面的员工表PW_Employee 里面的所有员工信息 是否有与你正在新增的员工信息有相同的 就是这个正在新增员工信息tbEmployee与数据库里面的员工表pwEmployee信息是否有相同的员工ID(EmployeeID) &&或者数据库里跟正在新增的信息有员工名称相同(EmployeeNumber)
try {
int countEmployee = (from tbEmployee in myModels.PW_Employee
where tbEmployee.EmployeeID != pwEmployee.EmployeeID &&
tbEmployee.EmployeeNumber == pwEmployee.EmployeeNumber
select tbEmployee).Count();
}
如有新增员工ID名称与数据库里面的信息相同就否则else就会弹出一个提示来提醒用户 returnJson返回 Text文本 数据异常
catch (Exception e)
{
Console.Write(e);
returnJson.Text = “数据异常!”;
}
然后再if判断上面给的一个变量是否等于0 就是这个变量countEmployee是否等于0 如果等于0就可以继续进行下一步 判断用户User查询一个数据库myModels里面的用户表PW_Employee 里面的所有用户信息 是否有与你正在新增的用户信息有相同的 也就是你正在新增到的用户表tbUser的用户ID(UserID)不能与数据库的用户表pwUser的用户ID(UserID)相同 &&或者有正在新增用户名称UserNuber与员工表pwEmployee的员工名称EmployeeNumber相同
if (countEmployee == 0) {
int countUser = (from tbUser in myModels.PW_User
where tbUser.UserID != pwUser.UserID&&
tbUser.UserNuber==pwEmployee.EmployeeNumber
select tbUser).Count();
}
如有新增用户ID(UserID)与数据库相同 &&或者用户名称与员工名称相同 否则else就弹出一个提示框提醒用户你正在新增用户信息已与数据库的用户信息已重复 将新增不成功 数据重复,该员工信息已存在,不需要重复录入! 图1
else
{
returnJson.State = false;
returnJson.Text = “数据重复,该员工信息已存在,不需要重复录入!”;
}
在这里插入图片描述
图1
如果上面的新增的用户信息没有与数据库中的数据相同重复就以继续进行下一步判断
if 判断一下上面给的这个用户变量countUser 是否等于0 如果等于0就可以进行这一步判断 判断正在新增这个pwUser用户表让它的用户账号UserNuber等于员工表pwEmployee的员工编号EmployeeNumber 这就是用户账号 pwUser用户表让它的用户密码Password等于员工表pwEmployee的员工编号EmployeeNumber 这就是用户的密码 这个文件Common里面的类AESEncryptHelper 然后保存到数据库myModels里面的用户表PW_User Add新增数据到数据库
if (countUser == 0)
{
pwUser.UserNuber = pwEmployee.EmployeeNumber;//用户账号UserNuber
pwUser.Password = Common.AESEncryptHelper.Encrypt(pwEmployee.EmployeeNumber);//用户密码
myModels.PW_User.Add(pwUser);
如果新增账号密码有与数据库存在的数据相同 否则else新增失败false 弹出一个提示框提醒用户你正在新增的信息已与数据库存在的信息已存在
else
{
returnJson.State = false;
returnJson.Text = “用户已存在!”;
}
如果上面新增用户账号密码成功 就可以进行这一步保存 if判断一下保存到数据库 var获取用户表pwUser的用户ID(UserID) 然后拿员工表pwEmployee的用户ID UserID等于刚获取的用户ID(userId) 然后放到数据库myModels的员工表PW_Employee 新增Add到数据库这个表员工表pwEmployee
if (myModels.SaveChanges() > 0)
{
//获取用户ID
var userId = pwUser.UserID;
pwEmployee.UserID = userId;
myModels.PW_Employee.Add(pwEmployee);
否则else 如果新增到数据库不成功 就会弹出下面的这个提示来提醒用户你新增的用户信息已数据库用户表信息相同 新增用户表保存失败
else
{
returnJson.State = false;
returnJson.Text = “用户表保存失败!”;
}
如果上面新增用户表成功,就可以进行这一步 if判断保存数据库myModels的用户明细表,先new一下拿到数据库myModels里面的用户明细表PW_UserRoleDetail这个类里面封装的数据放到这个用户明细变量pwUserRoleDetail里面 然后让用户明细表pwUserRoleDetail的用户ID(UserID)等于上面获取的用户Id(userId) 从用户明细表pwUserRoleDetail里面再拿到用户类型ID(UserTypeID)等于数据库里面的这个3 然后保存到数据库myModels里面的用户明细表UserRoleDetail 把数据Add新增到明细表
if (myModels.SaveChanges() > 0)
{
PW_UserRoleDetail pwUserRoleDetail = new PW_UserRoleDetail();
pwUserRoleDetail.UserID = userId;
pwUserRoleDetail.UserTypeID = 3;
//保存用户明细表
myModels.PW_UserRoleDetail.Add(pwUserRoleDetail);
}
如果上面的判断新增数据到数据库myModels的用户明细表UserRoleDetail有错,否则else就会返回returnJson弹出下面的这个提示来提醒用户 Text文本 员工表保存失败
else
{
returnJson.State = false;
returnJson.Text = “员工表保存失败!”;
}
如果上面的if判断数据都成功,就进行最后一个判断把新增的数据都保存到数据库myModels里面,如果上面都没有出错就返回returnJson成功true Text文本框 员工信息录入成功
if (myModels.SaveChanges() > 0)
{
returnJson.State = true;
returnJson.Text = “员工信息录入成功!”;
}
如果上面其中一个判断出现错误,否则else就会弹出这个提示框来提醒用户,员工信息录入失败
else
{
returnJson.State = false;
returnJson.Text = “员工信息录入失败!”;
}
返回这个变量returnJson
return Json(returnJson, JsonRequestBehavior.AllowGet);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 MyBatis 中新增员工信息需要进行如下步骤: 1. 创建员工信息实体类,例如: ```java public class Employee { private Integer id; private String name; private Integer age; // 省略 getter 和 setter 方法 } ``` 2. 创建 Mapper 接口,定义新增员工信息的方法,例如: ```java public interface EmployeeMapper { void addEmployee(Employee employee); } ``` 3. 创建 Mapper XML 文件,映射新增员工信息的 SQL 语句,例如: ```xml <mapper namespace="com.example.mapper.EmployeeMapper"> <insert id="addEmployee" parameterType="com.example.entity.Employee"> insert into employee(name, age) values (#{name}, #{age}) </insert> </mapper> ``` 4. 在 Spring 配置文件中配置 MyBatis 相关的 Bean,例如: ```xml <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="com.mysql.jdbc.Driver" /> <property name="url" value="jdbc:mysql://localhost:3306/mybatis" /> <property name="username" value="root" /> <property name="password" value="root" /> </bean> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="mapperLocations" value="classpath:mapper/*.xml" /> </bean> <bean id="employeeMapper" class="org.mybatis.spring.mapper.MapperFactoryBean"> <property name="mapperInterface" value="com.example.mapper.EmployeeMapper" /> <property name="sqlSessionFactory" ref="sqlSessionFactory" /> </bean> ``` 5. 在业务逻辑代码中调用新增员工信息的方法,例如: ```java @Autowired private EmployeeMapper employeeMapper; public void addEmployee(Employee employee) { employeeMapper.addEmployee(employee); } ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值