| | |
| | | package com.consum.base.service.impl; |
| | | |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import com.consum.base.Constants; |
| | | import com.consum.base.core.utils.IdUtil; |
| | | import com.consum.base.pojo.FinSysTenantDepartmentParam; |
| | |
| | | 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.ArrayList; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @Description 部门管理 |
| | |
| | | @Service |
| | | public class FinSysTenantDepartmentServiceImpl extends BaseServiceImpl implements FinSysTenantDepartmentService { |
| | | |
| | | private static final String QUERY_BY_CODE = "SELECT * FROM fin_sys_tenant_department WHERE CODE = ?"; |
| | | |
| | | /** |
| | | * @Description 根据 部门名称和机构id 查询部门 |
| | | * @Author 卢庆阳 |
| | | * @Date 2023/10/26 |
| | | */ |
| | | @Override |
| | | public FinSysTenantDepartment getByNameAndTenantId(String name, Long tenantId) { |
| | | public FinSysTenantDepartment getTenantDepartment(String name, Long tenantId, String code) { |
| | | 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 |
| | | // 机构id |
| | | if (tenantId != null) { |
| | | sql.append(" and TENANT_ID =:TENANT_ID "); |
| | | paramts.put("TENANT_ID", tenantId); |
| | | sql.append(" and TENANT_ID =:tenantId "); |
| | | paramts.put("tenantId", tenantId); |
| | | } |
| | | if (!StringUtils.isEmpty(code)) { |
| | | sql.append("and CODE = :code "); |
| | | paramts.put("code", code); |
| | | } |
| | | |
| | | sql.append("and status = 1"); |
| | | return this.get(sql.toString(), paramts, new FinSysTenantDepartment()); |
| | | } |
| | | |
| | |
| | | BeanUtils.copyProperties(param, department); |
| | | department.setId(IdUtil.generateId()); |
| | | |
| | | //创建人姓名 |
| | | // 创建人姓名 |
| | | department.setCreateBy(sysInfo.getUserName()); |
| | | //创建时间 |
| | | // 创建时间 |
| | | department.setCreateTime(DateUtils.getDateTimeNumber(System.currentTimeMillis())); |
| | | |
| | | return this.insert(department); |
| | |
| | | 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 |
| | | // 机构id |
| | | if (param.getTenantId() != null) { |
| | | sql.append(" and TENANT_ID =:TENANT_ID "); |
| | | paramts.put("TENANT_ID", param.getTenantId()); |
| | | sql.append(" and TENANT_ID =:tenantId "); |
| | | paramts.put("tenantId", 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()); |
| | | } |
| | | |
| | | @Override |
| | | public FinSysTenantDepartment selectByCode(String code, Long id) { |
| | | StringBuilder sql = new StringBuilder(QUERY_BY_CODE); |
| | | ArrayList<Object> param = new ArrayList<>(2); |
| | | param.add(code); |
| | | if (id != null) { |
| | | sql.append(" and id != ?"); |
| | | param.add(id); |
| | | } |
| | | List<FinSysTenantDepartment> select = this.select(sql.toString(), param.toArray(), new FinSysTenantDepartment()); |
| | | if (StringUtils.isEmptyList(select)) { |
| | | return null; |
| | | } else { |
| | | return select.get(0); |
| | | } |
| | | } |
| | | |
| | | /** |
| | |
| | | @Override |
| | | 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); |
| | | } |
| | |
| | | StringBuilder sql = new StringBuilder("SELECT * FROM fin_sys_tenant_department WHERE 1 = 1 and is_delete = 0 "); |
| | | HashMap<String, Object> paramts = new HashMap<>(); |
| | | |
| | | //机构id |
| | | // 机构id |
| | | if (agencyId != null) { |
| | | sql.append(" and TENANT_ID =:TENANT_ID "); |
| | | paramts.put("TENANT_ID", agencyId); |
| | | sql.append(" and TENANT_ID =:tenantId "); |
| | | paramts.put("tenantId", agencyId); |
| | | } |
| | | return this.select(sql.toString(), paramts, new FinSysTenantDepartment()); |
| | | } |
| | | |
| | | @Override |
| | | public FinSysTenantDepartment getByTenantIdAndName(Long agencyId, String name) { |
| | | StringBuilder sql = new StringBuilder("SELECT * FROM fin_sys_tenant_department WHERE 1 = 1 and is_delete = 0 "); |
| | | HashMap<String, Object> paramts = new HashMap<>(); |
| | | |
| | | // 机构id |
| | | if (agencyId != null) { |
| | | sql.append(" and TENANT_ID =:tenantId "); |
| | | paramts.put("tenantId", agencyId); |
| | | } |
| | | // name |
| | | if (name != null) { |
| | | sql.append(" and name =:name "); |
| | | paramts.put("name", name); |
| | | } |
| | | List<FinSysTenantDepartment> select = this.select(sql.toString(), paramts, new FinSysTenantDepartment()); |
| | | if(select!=null && select.size()>0){ |
| | | return select.get(0); |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | @Override |
| | | public List<FinSysTenantDepartment> queryDataList(FinSysTenantDepartmentParam param) { |
| | | StringBuilder sql = new StringBuilder("SELECT * FROM fin_sys_tenant_department WHERE 1 = 1"); |
| | | HashMap<String, Object> paramts = new HashMap<>(); |
| | | // 编号 |
| | | if (!StringUtils.isEmpty(param.getCode())) { |
| | | sql.append(" and code =:code "); |
| | | paramts.put("code", param.getCode()); |
| | | } |
| | | List<FinSysTenantDepartment> select = this.select(sql.toString(), paramts, new FinSysTenantDepartment()); |
| | | return select; |
| | | } |
| | | |
| | | /** |
| | | * 根据部门和机构名查找对应的部门信息 |
| | | * @param tenantName |
| | | * @param departmentName |
| | | * @return |
| | | */ |
| | | @Override |
| | | public FinSysTenantDepartment queryIdByTenDepName(String tenantName, String departmentName ) { |
| | | StringBuilder sql = new StringBuilder("SELECT * FROM fin_sys_tenant_department \n" + |
| | | "WHERE TENANT_ID = ( SELECT id FROM fin_sys_tenant WHERE NAME = '"+tenantName+"' LIMIT 1 ) AND NAME = '"+departmentName+"' LIMIT 1 "); |
| | | HashMap<String, Object> paramts = new HashMap<>(); |
| | | return this.get(sql.toString(), paramts, new FinSysTenantDepartment()); |
| | | } |
| | | |
| | | } |