From a085e789a2225fd88b4f739828273e0a85b1fb13 Mon Sep 17 00:00:00 2001 From: luqingyang <lqy5492@163.com> Date: 星期四, 26 十月 2023 11:21:36 +0800 Subject: [PATCH] 部门管理 相关代码 --- consum-base/src/main/java/com/consum/base/controller/FinSysTenantDepartmentController.java | 138 +++++++++++++++++++ consum-base/src/main/java/com/consum/base/service/FinSysTenantDepartmentServiceImpl.java | 152 +++++++++++++++++++++ consum-base/src/main/java/com/consum/base/pojo/FinSysTenantDepartmentParam.java | 90 ++++++++++++ consum-base/src/main/java/com/consum/base/Constants.java | 5 consum-base/src/main/java/com/consum/base/controller/BaseCategoryController.java | 6 5 files changed, 386 insertions(+), 5 deletions(-) diff --git a/consum-base/src/main/java/com/consum/base/Constants.java b/consum-base/src/main/java/com/consum/base/Constants.java index 177ffd2..199f646 100644 --- a/consum-base/src/main/java/com/consum/base/Constants.java +++ b/consum-base/src/main/java/com/consum/base/Constants.java @@ -53,4 +53,9 @@ public static final Integer STATES_DISABLE = 2; public static final Integer STATES_DELETED = 3; + //is_delete 閫昏緫鍒犻櫎(0 鍚� 1 鏄�) + public static final Integer IS_DELETE_NO = 0; + public static final Integer IS_DELETE_YES = 1; + + } diff --git a/consum-base/src/main/java/com/consum/base/controller/BaseCategoryController.java b/consum-base/src/main/java/com/consum/base/controller/BaseCategoryController.java index a80b792..2603a6b 100644 --- a/consum-base/src/main/java/com/consum/base/controller/BaseCategoryController.java +++ b/consum-base/src/main/java/com/consum/base/controller/BaseCategoryController.java @@ -86,11 +86,7 @@ if (baseCategory.getOrderNumber() == null) { return ResponseValue.error("椤哄簭鍙蜂负绌�"); } - //鍒ゆ柇鍚屼竴鐖剁被id涓嬪垎绫诲悕绉版槸鍚﹂噸澶� - BaseCategory category = this.baseCategoryService.getByCategoryNameAndFatherCategoryId(baseCategory.getCategoryName(), baseCategory.getFatherCategoryId()); - if (category != null) { - return ResponseValue.error("鍒嗙被鍚嶇О宸插瓨鍦�"); - } + S_user_core currentUser = this.getCurrentUser(); if (currentUser == null) { return ResponseValue.error("鐧诲綍鐢ㄦ埛淇℃伅涓嶅瓨鍦�"); diff --git a/consum-base/src/main/java/com/consum/base/controller/FinSysTenantDepartmentController.java b/consum-base/src/main/java/com/consum/base/controller/FinSysTenantDepartmentController.java new file mode 100644 index 0000000..37eef96 --- /dev/null +++ b/consum-base/src/main/java/com/consum/base/controller/FinSysTenantDepartmentController.java @@ -0,0 +1,138 @@ +package com.consum.base.controller; + +import com.consum.base.BaseController; +import com.consum.base.pojo.FinSysTenantDepartmentParam; +import com.consum.base.service.FinSysTenantDepartmentServiceImpl; +import com.consum.base.service.FinSysTenantServiceImpl; +import com.consum.model.po.BaseCategory; +import com.consum.model.po.FinSysTenant; +import com.consum.model.po.FinSysTenantDepartment; +import com.consum.model.po.FinSysTenantUser; +import com.iplatform.model.po.S_user_core; +import com.walker.db.page.GenericPager; +import com.walker.infrastructure.utils.StringUtils; +import com.walker.web.ResponseValue; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +/** + * @Description 閮ㄩ棬绠$悊 + * @Author 鍗㈠簡闃� + * @Date 2023/10/26 + */ +@RestController +@RequestMapping("/pc/fin/sys/tenant/department") +public class FinSysTenantDepartmentController extends BaseController { + + @Autowired + private FinSysTenantDepartmentServiceImpl departmentService; + @Autowired + private FinSysTenantServiceImpl finSysTenantService; + + /** + * @Description 鏂板 + * @Author 鍗㈠簡闃� + * @Date 2023/10/25 + */ + @PostMapping("/add") + public ResponseValue add(@RequestBody FinSysTenantDepartmentParam param) { + if (StringUtils.isEmpty(param.getName())) { + return ResponseValue.error("閮ㄩ棬鍚嶇О涓虹┖"); + } + if (StringUtils.isEmpty(param.getCode())) { + return ResponseValue.error("缂栧彿涓虹┖"); + } + FinSysTenantDepartment tenantDepartment = this.departmentService.selectByCode(param.getCode()); + if (tenantDepartment != null) { + return ResponseValue.error("閮ㄩ棬缂栧彿宸插瓨鍦�"); + } + //鍒ゆ柇鍚屼竴鏈烘瀯id涓� 閮ㄩ棬鍚嶇О 鏄惁閲嶅 + FinSysTenantDepartment department = this.departmentService.getByNameAndTenantId(param.getName(),param.getTenantId()); + if (department != null) { + return ResponseValue.error("閮ㄩ棬鍚嶇О宸插瓨鍦�"); + } + + int result = this.departmentService.add(param, this.getSysInfo()); + if (result > 0) return ResponseValue.success(1); + return ResponseValue.error("鏂板澶辫触锛�"); + } + + /** + * @Description 閮ㄩ棬鍒楄〃鏌ヨ + * @Author 鍗㈠簡闃� + * @Date 2023/10/26 + */ + //濡傛灉涓嶄紶鏈烘瀯id锛岄粯璁ゆ煡鐪佺骇鏈烘瀯鐨勯儴闂� + @GetMapping("/list") + public ResponseValue queryList(FinSysTenantDepartmentParam param) { + FinSysTenantUser sysInfo = this.getSysInfo(); + if (sysInfo == null) { + return ResponseValue.error("鐧诲綍鐢ㄦ埛淇℃伅涓嶅瓨鍦�"); + } + GenericPager<FinSysTenantDepartment> pager = this.departmentService.queryList(param); + return ResponseValue.success(pager); + } + + /** + * @Description 缂栬緫(淇敼鐘舵��) + * @Author 鍗㈠簡闃� + * @Date 2023/10/26 + */ + @PostMapping("/edit") + public ResponseValue edit(@RequestBody FinSysTenantDepartment department) { + Long id = department.getId(); + if (id == null || id <= 0) { + return ResponseValue.error("缂栬緫鐨勯儴闂ㄤ笉瀛樺湪"); + } + if (StringUtils.isEmpty(department.getName())) { + return ResponseValue.error("閮ㄩ棬鍚嶇О涓虹┖"); + } + if (StringUtils.isEmpty(department.getCode())) { + return ResponseValue.error("閮ㄩ棬缂栧彿涓虹┖"); + } + FinSysTenantUser sysInfo = this.getSysInfo(); + if (sysInfo == null) { + return ResponseValue.error("鐧诲綍鐢ㄦ埛淇℃伅涓嶅瓨鍦�"); + } + + int num = this.departmentService.updateFinSysTenantDepartment(department,sysInfo); + return num > 0 ? ResponseValue.success(1) : ResponseValue.error("缂栬緫澶辫触锛�"); + } + + /** + * 鏍规嵁閮ㄩ棬id鏌ヨ閮ㄩ棬璇︽儏 + * @author 鍗㈠簡闃� + * @Date 2023/10/26 + */ + @GetMapping("/detail") + public ResponseValue getById(Long id) { + if (id == null) { + return ResponseValue.error("閮ㄩ棬id涓虹┖"); + } + FinSysTenantDepartment department = this.departmentService.getById(id); + if (department == null) return ResponseValue.error("鏌ヨ澶辫触锛�"); + return ResponseValue.success("鏌ヨ鎴愬姛!", department); + } + + /** + * @Description 鏍规嵁id鍒犻櫎閮ㄩ棬 + * @Author 鍗㈠簡闃� + * @Date 2023/10/26 + */ + @DeleteMapping("/del") + public ResponseValue updateById(@RequestBody FinSysTenantDepartment department) { + if (department.getId() == null) { + return ResponseValue.error("閮ㄩ棬id涓虹┖"); + } + FinSysTenantUser sysInfo = this.getSysInfo(); + if (sysInfo == null) { + return ResponseValue.error("鐧诲綍鐢ㄦ埛淇℃伅涓嶅瓨鍦�"); + } + int num = this.departmentService.updateById(department,sysInfo); + + return num > 0 ? ResponseValue.success(1) : ResponseValue.error("鍒犻櫎澶辫触锛�"); + } + + +} + diff --git a/consum-base/src/main/java/com/consum/base/pojo/FinSysTenantDepartmentParam.java b/consum-base/src/main/java/com/consum/base/pojo/FinSysTenantDepartmentParam.java new file mode 100644 index 0000000..9fadc2b --- /dev/null +++ b/consum-base/src/main/java/com/consum/base/pojo/FinSysTenantDepartmentParam.java @@ -0,0 +1,90 @@ +package com.consum.base.pojo; + +import com.walker.web.param.ParamRequest; + +public class FinSysTenantDepartmentParam extends ParamRequest { + /** + * id + */ + private Long id; + /** + * 缂栧彿 + */ + private String code; + /** + * 閮ㄩ棬鍚嶇О + */ + private String name; + /** + * 椤哄簭鍙� + */ + private Integer orderNum; + /** + * 鐘舵�� + */ + private Integer status; + /** + * 澶囨敞 + */ + private String summary; + /** + * 鏈烘瀯id + */ + private Long tenantId; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Integer getOrderNum() { + return orderNum; + } + + public void setOrderNum(Integer orderNum) { + this.orderNum = orderNum; + } + + public Integer getStatus() { + return status; + } + + public void setStatus(Integer status) { + this.status = status; + } + + public String getSummary() { + return summary; + } + + public void setSummary(String summary) { + this.summary = summary; + } + + public Long getTenantId() { + return tenantId; + } + + public void setTenantId(Long tenantId) { + this.tenantId = tenantId; + } +} diff --git a/consum-base/src/main/java/com/consum/base/service/FinSysTenantDepartmentServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/FinSysTenantDepartmentServiceImpl.java new file mode 100644 index 0000000..95321c8 --- /dev/null +++ b/consum-base/src/main/java/com/consum/base/service/FinSysTenantDepartmentServiceImpl.java @@ -0,0 +1,152 @@ +package com.consum.base.service; + +import com.consum.base.Constants; +import com.consum.base.pojo.FinSysTenantDepartmentParam; +import com.consum.base.util.IdUtil; +import com.consum.model.po.BaseCategory; +import com.consum.model.po.FinSysTenant; +import com.consum.model.po.FinSysTenantDepartment; +import com.consum.model.po.FinSysTenantUser; +import com.iplatform.model.po.S_user_core; +import com.walker.db.page.GenericPager; +import com.walker.infrastructure.utils.DateUtils; +import com.walker.infrastructure.utils.StringUtils; +import com.walker.jdbc.service.BaseServiceImpl; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Service; + +import java.util.HashMap; +import java.util.List; + +/** + * @Description 閮ㄩ棬绠$悊 + * @Author 鍗㈠簡闃� + * @Date 2023/10/26 + */ +@Service +public class FinSysTenantDepartmentServiceImpl extends BaseServiceImpl { + + private static final String QUERY_BY_CODE = "SELECT * FROM fin_sys_tenant_department WHERE CODE = ?"; + + /** + * @Description 鏍规嵁 閮ㄩ棬鍚嶇О鍜屾満鏋刬d 鏌ヨ閮ㄩ棬 + * @Author 鍗㈠簡闃� + * @Date 2023/10/26 + */ + public FinSysTenantDepartment getByNameAndTenantId(String name,Long tenantId) { + StringBuilder sql = new StringBuilder("SELECT * FROM fin_sys_tenant_department WHERE 1 = 1 "); + HashMap<String, Object> paramts = new HashMap<>(); + + //閮ㄩ棬鍚嶇О + if (!StringUtils.isEmpty(name)) { + sql.append(" and name =:name "); + paramts.put("name", name); + } + //鏈烘瀯id + if (tenantId != null) { + sql.append(" and TENANT_ID =:TENANT_ID "); + paramts.put("TENANT_ID", tenantId); + } + + return this.get(sql.toString(), paramts, new FinSysTenantDepartment()); + } + + /** + * @Description 鏂板 + * @Author 鍗㈠簡闃� + * @Date 2023/10/26 + */ + public int add(FinSysTenantDepartmentParam param, FinSysTenantUser sysInfo) { + FinSysTenantDepartment department = new FinSysTenantDepartment(); + BeanUtils.copyProperties(param, department); + department.setId(IdUtil.generateId()); + + //鍒涘缓浜哄鍚� + department.setCreateBy(sysInfo.getUserName()); + //鍒涘缓鏃堕棿 + department.setCreateTime(DateUtils.getDateTimeNumber(System.currentTimeMillis())); + + return this.insert(department); + } + + /** + * @Description 閮ㄩ棬鍒楄〃鏌ヨ + * @Author 鍗㈠簡闃� + * @Date 2023/10/26 + */ + public GenericPager<FinSysTenantDepartment> queryList(FinSysTenantDepartmentParam param) { + StringBuilder sql = new StringBuilder("SELECT * FROM fin_sys_tenant_department WHERE 1 = 1 and is_delete = 0 "); + HashMap<String, Object> paramts = new HashMap<>(); + + //閮ㄩ棬鍚嶇О + if (!StringUtils.isEmpty(param.getName())) { + sql.append(" and name like:name "); + paramts.put("name", StringUtils.CHAR_PERCENT + param.getName() + StringUtils.CHAR_PERCENT); + } + //缂栧彿 + if (!StringUtils.isEmpty(param.getCode())) { + sql.append(" and code like:code "); + paramts.put("code", StringUtils.CHAR_PERCENT + param.getCode() + StringUtils.CHAR_PERCENT); + } + //鐘舵�� + if (param.getStatus() != null) { + sql.append(" and status =:status "); + paramts.put("status", param.getStatus()); + } + //鏈烘瀯id + if (param.getTenantId() != null) { + sql.append(" and TENANT_ID =:TENANT_ID "); + paramts.put("TENANT_ID", param.getTenantId()); + } else { + sql.append(" and TENANT_ID = 100 "); + } + + sql.append(" ORDER BY ORDER_NUM,CREATE_TIME DESC "); + return selectSplit(sql.toString(), paramts, new FinSysTenantDepartment()); + } + + public FinSysTenantDepartment selectByCode(String code) { + List<FinSysTenantDepartment> select = this.select(QUERY_BY_CODE, new Object[]{code}, new FinSysTenantDepartment()); + if (StringUtils.isEmptyList(select)) { + return null; + } else { + return select.get(0); + } + } + + /** + * @Description 缂栬緫 + * @Author 鍗㈠簡闃� + * @Date 2023/10/26 + */ + public int updateFinSysTenantDepartment(FinSysTenantDepartment department, FinSysTenantUser sysInfo) { + department.setUpdateTime(DateUtils.getDateTimeNumber(System.currentTimeMillis())); + department.setUpdateBy(sysInfo.getUserName()); + return this.update(department); + } + + /** + * 鏍规嵁閮ㄩ棬id鏌ヨ閮ㄩ棬璇︽儏 + * @author 鍗㈠簡闃� + * @Date 2023/10/26 + */ + public FinSysTenantDepartment getById(Long id) { + return this.get(new FinSysTenantDepartment(id)); + } + + /** + * @Description 鏍规嵁id鍒犻櫎閮ㄩ棬 + * @Author 鍗㈠簡闃� + * @Date 2023/10/26 + * @param department + * @param currentUser + */ + public int updateById(FinSysTenantDepartment department, FinSysTenantUser currentUser) { + department.setIsDelete(Constants.IS_DELETE_YES); + //鍒犻櫎鏃堕棿 + department.setUpdateTime(DateUtils.getDateTimeNumber(System.currentTimeMillis())); + //鍒犻櫎浜哄鍚� + department.setUpdateBy(currentUser.getUserName()); + return this.update(department); + } +} -- Gitblit v1.9.1