基于SSM可视化人力资源管理系统的设计与实现(三)最终章

部门模块实现

流程
1.创建数据库
-- ----------------------------
-- Table structure for department
-- ----------------------------
DROP TABLE IF EXISTS `department`;
CREATE TABLE `department`  (
  `d_id` int(0) NOT NULL AUTO_INCREMENT COMMENT 'id',
  `d_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '部门名称',
  `d_remark` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
  `d_isdel` int(0) NULL DEFAULT NULL COMMENT '可用状态,0不可用,1可用',
  PRIMARY KEY (`d_id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 25 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
​
-- ----------------------------
-- Records of department
-- ----------------------------
INSERT INTO `department` VALUES (10, '财务部', '组织公司资产资金、成本费用、收入往来、退税纳税等财务核算和财务管理工作', 1);
INSERT INTO `department` VALUES (11, '市场部', '组织市场调查和研究,掌握市场供求信息和行业动态,不定期编制市场动态分析报告,为公司经营决策提供依据。', 1);
INSERT INTO `department` VALUES (13, '行政部', '负责公司日常行政后勤管理、党务及工、青、妇群众团体管理工作。', 1);
INSERT INTO `department` VALUES (14, '人事部', '负责公司人力资源管理与开发。', 1);
INSERT INTO `department` VALUES (16, '开发部', '负责产品设计研发、技术开发等。', 1);
INSERT INTO `department` VALUES (19, '营销部', '产品销售、业务洽谈。', 1);
INSERT INTO `department` VALUES (20, '售后服务部', '负责客户维护、提供产品售后服务。', 1);
INSERT INTO `department` VALUES (21, '设计部', '负责产品设计实现。', 1);
INSERT INTO `department` VALUES (22, '测试维护部', '负责产品测试、检查,维护产品质量。', 0);
2.创建实体类
package com.esms.dao;
​
public class Department {
    private Integer dId;//部门ID,主键
​
    private String dName;//部门名称
​
    private String dRemark;//部门备注
​
    private Integer dIsdel;//部门是否被删除
​
    public Integer getdId() {
        return dId;
    }
​
    public void setdId(Integer dId) {
        this.dId = dId;
    }
​
    public String getdName() {
        return dName;
    }
​
    public void setdName(String dName) {
        this.dName = dName == null ? null : dName.trim();
    }
​
    public String getdRemark() {
        return dRemark;
    }
​
    public void setdRemark(String dRemark) {
        this.dRemark = dRemark == null ? null : dRemark.trim();
    }
​
    public Integer getdIsdel() {
        return dIsdel;
    }
​
    public void setdIsdel(Integer dIsdel) {
        this.dIsdel = dIsdel;
    }
​
    @Override
    public String toString() {
        return "Department{" +
                "dId=" + dId +
                ", dName='" + dName + '\'' +
                ", dRemark='" + dRemark + '\'' +
                ", dIsdel=" + dIsdel +
                '}';
    }
}
3.建立连接数据库接口
package com.esms.mapper;
​
import com.esms.dao.Department;
​
import java.util.List;
​
public interface DepartmentMapper{
    int deleteByPrimaryKey(Integer dId);
    //通过主键删除部门
​
    int insert(Department record);
    //插入
​
    int insertSelective(Department record);
    //插入
​
    Department selectByPrimaryKey(Integer dId);
    //通过主键查找部门
​
    List<Department> selectAll();
    //查找所有
​
    int updateByPrimaryKeySelective(Department record);
    //通过主键更新部门
​
    int updateByPrimaryKey(Department record);
    //通过主键更新部门
​
    List<Department> findSelective(Department department);
    //通过部门名字查找部门,模糊查询
​
    void deleteByQuery(int[] ids);
    //删除部门,参数是一个数组,实际上是将dIsdel设置为0
​
    Department findByDname(String d_name);
    //通过名字查找部门
}
4.建立服务业务层

接口

package com.esms.service;
​
import com.esms.dao.Department;
​
import java.util.List;
​
public interface DepartmentService {
    public Department selectByPrimaryKey(int id) throws Exception;
​
    int insertSelective(Department department) throws Exception;
​
    void updateByPrimaryKeySelective(Department department) throws Exception;
​
    void deleteByPrimaryKey(int id) throws Exception;
​
    List<Department> findSelective(Department department) throws Exception;
​
    void deleteByQuery(int[] ids);
​
    Department findByDname(String d_name);
}
​

实现类

package com.esms.service.impl;
​
import com.esms.mapper.DepartmentMapper;
import com.esms.dao.Department;
import com.esms.service.DepartmentService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
​
import java.util.List;
​
@Service
public class DepartmentServiceImpl implements DepartmentService {
    @Autowired
    public DepartmentMapper departmentMapper = null;
​
    @Override
    public Department selectByPrimaryKey(int id) {
       return departmentMapper.selectByPrimaryKey(id);
    }
​
    @Override
    public int insertSelective(Department department) {
        return departmentMapper.insertSelective(department);
    }
​
    @Override
    public void updateByPrimaryKeySelective(Department department) {
        departmentMapper.updateByPrimaryKeySelective(department);
    }
​
    @Override
    public void deleteByPrimaryKey(int id) {
        departmentMapper.deleteByPrimaryKey(id);
    }
​
    @Override
    public List<Department> findSelective(Department department) {
        return departmentMapper.findSelective(department);
    }
​
    @Override
    public void deleteByQuery(int[] ids) {
        departmentMapper.deleteByQuery(ids);
    }
​
    @Override
    public Department findByDname(String d_name) {
        return departmentMapper.findByDname(d_name);
    }
}
​
5.vo层
package com.esms.vo;
​
import com.esms.dao.Department;
​
import java.util.List;
​
​
public class DepartmentPages {
    Integer code;
    String msg;
    Integer count;
    List<Department> data;
​
    public Integer getCode() {
        return code;
    }
​
    public void setCode(Integer code) {
        this.code = code;
    }
​
    public String getMsg() {
        return msg;
    }
​
    public void setMsg(String msg) {
        this.msg = msg;
    }
​
    public Integer getCount() {
        return count;
    }
​
    public void setCount(Integer count) {
        this.count = count;
    }
​
    public List<Department> getData() {
        return data;
    }
​
    public void setData(List<Department> data) {
        this.data = data;
    }
​
    @Override
    public String toString() {
        return "DepartmentPages{" +
                "code=" + code +
                ", msg='" + msg + '\'' +
                ", count=" + count +
                ", data=" + data +
                '}';
    }
}
​
6.控制层
package com.esms.controller;
​
import com.esms.dao.Department;
import com.esms.service.DepartmentService;
import com.esms.vo.DepartmentPages;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
​
import java.util.List;
​
/**
* 
*/
​
@Controller
@RequestMapping("/department")
public class DepartmentController {
    @Autowired
    public DepartmentService departmentService = null;
​
    /**
     * 查找部门
     * @param pageNum
     * @param limit
     * @param d_name
     * @return
     * @throws Exception
     */
    @RequestMapping("/findSelective.do")
    @ResponseBody
    public DepartmentPages findSelective(
            @RequestParam(value="page", defaultValue="1")int pageNum,
            @RequestParam(value="limit", defaultValue="5") int limit,
            @RequestParam(value="d_name", defaultValue="") String d_name) throws Exception {
        List<Department> list;
        //模糊查询,有多少个条件就接收多少个字段
        Department department = new Department();
        department.setdName(d_name);
        //pageNum:起始页面  pageSize:每页的大小
        PageHelper.startPage(pageNum,limit);//(1,10)
        //查找条件,一定要紧跟在startPage后,紧跟着的第一个select 方法会被分页
        list = departmentService.findSelective(department);
        PageInfo pageResult = new PageInfo(list);
​
        //设置前台需要的数据
        DepartmentPages departmentPages = new DepartmentPages();
        departmentPages.setCode(0);
        departmentPages.setMsg("");
        departmentPages.setCount((int) pageResult.getTotal());
        departmentPages.setData(pageResult.getList());
​
        return departmentPages;
    }
​
    /**
     * 添加部门
     * @param d_name
     * @param d_remark
     * @return
     * @throws Exception
     */
    @RequestMapping("/add.do")
    @ResponseBody
    public int add(String d_name, String d_remark) throws Exception {
​
        Department department = departmentService.findByDname(d_name);
​
        //查找是否同名
        if(department != null) {
            return department.getdId();
        } else {
            Department d = new Department();
            d.setdId(null);
            d.setdName(d_name);
            d.setdRemark(d_remark);
            d.setdIsdel(1);
            departmentService.insertSelective(d);
            return 0;
        }
    }
​
​
    /**
     * 查找一个部门
     * @param id
     * @return
     * @throws Exception
     */
    @RequestMapping("/findByPrimaryKey.do")
    @ResponseBody
    public Department findByPrimaryKey(int id) throws Exception {
        Department department = departmentService.selectByPrimaryKey(id);
        return department;
    }
​
    /**
     * 更新部门
     * @param id
     * @param d_name
     * @param d_remark
     * @throws Exception
     */
    @RequestMapping("/updateByPrimaryKey.do")
    @ResponseBody
    public int updateByPrimaryKey(int id, String d_name, String d_remark) throws Exception {
        Department department = departmentService.findByDname(d_name);
        //有同名的且不是同一个
        if(department != null && !department.getdId().equals(id) ) {
            return department.getdId();
        } else {
            Department d = new Department();
            d.setdId(id);
            d.setdName(d_name);
            d.setdRemark(d_remark);
            d.setdIsdel(null);
            departmentService.updateByPrimaryKeySelective(d);
            return 0;
        }
    }
​
    @RequestMapping("/findByDname.do")
    @ResponseBody
    public int findByDname(String d_name) {
​
        Department department = departmentService.findByDname(d_name);
        if(department != null) {
            return department.getdId();
        } else {
            return 0;
        }
    }
​
    /**
     * 删除部门
     * @param id
     */
    @RequestMapping("/deleteByPrimaryKey.do")
    @ResponseBody
    public int deleteByPrimaryKey(int id) throws Exception {
        //删除部门,调用更新操作,将状态改为0
        Department department = new Department();
        department.setdId(id);
        department.setdIsdel(0);
        departmentService.updateByPrimaryKeySelective(department);
        return 1;
    }
​
    /**
     * 批量删除
     * @param ids
     */
    @RequestMapping("/deleteByQuery.do")
    public void deleteByQuery (@RequestParam(value = "arr")int[] ids) {
        //批量删除,实则修改状态为0
        //如果有id才执行
        if(ids.length > 0) {
           departmentService.deleteByQuery(ids);
        }
    }
​
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值