ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

sdu项目实训初步完成基础模块的CRUD

2021-07-13 17:33:51  阅读:175  来源: 互联网

标签:sdu name system03 CRUD 实训 department import com example


话不多说,直接整代码

实体类:

package com.example.system03.entity;

import lombok.Data;

import java.io.Serializable;
import java.sql.Timestamp;

@Data
public class Department implements Serializable {
    private String department_name;
    private String manager_name;
    private int manager_id;
    private String department_describe;
    private String status;
    private String is_deleted;
    private Timestamp created_time;
    private String created_by;
    private Timestamp modified_time;
    private String modified_by;
}

mapper类:

package com.example.system03.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.example.system03.entity.Department;
import com.example.system03.entity.Role;
import com.example.system03.entity.Vo.DepartmentSelectVo;
import com.example.system03.entity.Vo.DepartmentUpdateVo;
import com.example.system03.entity.Vo.RoleSelectVo;
import com.example.system03.service.DepartmentService;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

@Mapper
@Repository
public interface DepartmentMapper extends BaseMapper<Department> {
    List<Department> queryDepartmentList(@Param("DepartmentSelectVo") DepartmentSelectVo departmentSelectVo, @Param("numStart") int numStart, @Param("numEnd") int numEnd);
    int getLastCount();
    void departmentDelete(@Param("department") Department department);
    Department departmentFind(String department_name);
    void departmentUpdate(@Param("n") DepartmentUpdateVo departmentUpdateVo);
    void departmentInsert(@Param("n") DepartmentUpdateVo departmentUpdateVo);
}

mapper.xml配置文件:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.system03.mapper.DepartmentMapper">
    <select id="queryDepartmentList" resultType="com.example.system03.entity.Department">
        select SQL_CALC_FOUND_ROWS *
        from department
        where (department_name like '%${DepartmentSelectVo.filter_department_name}%' or
               #{DepartmentSelectVo.filter_department_name} = '')
          and (is_deleted = '0')
        order by ${DepartmentSelectVo.sort} ${DepartmentSelectVo.sortMethod}
        limit #{numStart}, #{numEnd}
    </select>
    <select id="getLastCount" resultType="integer">
        select FOUND_ROWS()
    </select>
    <update id="departmentDelete">
        update department
        <set>
            is_deleted = "1",
            modified_time = #{department.modified_time},
            modified_by = #{department.modified_by},
            status = #{department.status}
        </set>
        where department_name = #{department.department_name}
    </update>
    <select id="departmentFind" resultType="com.example.system03.entity.Department" parameterType="string">
        select *
        from department
        where department_name = #{department_name};
    </select>
    <update id="departmentUpdate">
        update department
        <set>
            <if test="n.manager_name != null">manager_name = #{n.manager_name},</if>
            <if test="n.manager_id != null">manager_id = #{n.manager_id},</if>
            <if test="n.department_describe != null">department_describe = #{n.department_describe},</if>
            <if test="n.status != null">status = #{n.status},</if>
            modified_by = #{n.modified_by},
            modified_time = #{n.modified_time}
        </set>
        where department_name = #{n.department_name}
    </update>

    <insert id="departmentInsert">
        insert into department (department_name, manager_name, manager_id, department_describe, status, is_deleted, created_time, created_by, modified_time, modified_by)
        values (#{n.department_name}, #{n.manager_name}, #{n.manager_id}, #{n.department_describe},#{n.status},#{n.is_deleted},#{n.created_time},#{n.created_by},#{n.modified_time},#{n.modified_by})
    </insert>
</mapper>

service层:

package com.example.system03.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.example.system03.entity.Department;
import com.example.system03.entity.Vo.DepartmentSelectVo;
import com.example.system03.entity.Vo.DepartmentUpdateVo;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public interface DepartmentService extends IService<Department> {
    List<Department> queryDepartmentList(DepartmentSelectVo departmentSelectVo);
    int getLastCount();
    void departmentDelete(Department department);

    Department departmentFind(DepartmentUpdateVo departmentUpdateVo);

    void departmentUpdate(DepartmentUpdateVo departmentUpdateVo);

    void departmentAdd(DepartmentUpdateVo departmentUpdateVo);
}

最后便是controller类将后端数据传入前端

package com.example.system03.controller;

import com.example.system03.entity.Department;
import com.example.system03.entity.Vo.DepartmentSelectVo;
import com.example.system03.entity.Vo.DepartmentUpdateVo;
import com.example.system03.service.DepartmentService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.HashMap;
import java.util.List;

@RestController
@RequestMapping("/data/departmentManagement/")
public class DepartmentController {
    @Autowired
    DepartmentService departmentService;

    @PostMapping("/departmentList")
    public Object queryRoleList(
            @RequestBody DepartmentSelectVo departmentSelectVo
    ) {
        HashMap<String, Object> res = new HashMap<>();
        List<Department> departmentList = departmentService.queryDepartmentList(departmentSelectVo);
        int departmentListCount = departmentService.getLastCount();
        res.put("departmentList", departmentList);
        res.put("total", departmentListCount);
        MyUtils.success(res);
        return res;
    }

    @PostMapping("/departmentDelete")
    public Object departmentDelete(
            @RequestBody List<Department> departmentList
    ) {
        HashMap<String, Object> res = new HashMap<>();
        for (Department department : departmentList) {
            departmentService.departmentDelete(department);
        }
        MyUtils.success(res);
        return res;
    }

    @PostMapping("/departmentUpdate")
    public Object departmentUpdate(
            @RequestBody DepartmentUpdateVo departmentUpdateVo
    ) {
        HashMap<String, Object> res = new HashMap<>();
        Department department = departmentService.departmentFind(departmentUpdateVo);
        if (departmentUpdateVo.getRequest().equals("update")) {
            if (department == null) {
                MyUtils.fail(res, "该部门不存在,无法更新");
            } else {
                departmentService.departmentUpdate(departmentUpdateVo);
                MyUtils.success(res);
            }
        } else if (departmentUpdateVo.getRequest().equals("insert")) {
            if (department != null) {
                MyUtils.fail(res, "该部门已经存在,请勿重复创建");
            } else {
                departmentService.departmentAdd(departmentUpdateVo);
                MyUtils.success(res);
            }
        }


        return res;
    }


}

 

标签:sdu,name,system03,CRUD,实训,department,import,com,example
来源: https://www.cnblogs.com/wonderfuland/p/15007521.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有