工种类型管理,公司管理,分公司管理,总包工程,标段工程,项目部

This commit is contained in:
马三炮 2025-08-14 14:34:30 +08:00
parent 1bfc986761
commit cec8d6aad2
18 changed files with 194 additions and 111 deletions

View File

@ -1,7 +1,7 @@
package com.bonus.bmw.controller;
import com.bonus.bmw.domain.po.PmCompany;
import com.bonus.bmw.service.PmCompanyService;
import com.bonus.bmw.service.PmComService;
import com.bonus.common.core.web.controller.BaseController;
import com.bonus.common.core.web.domain.AjaxResult;
import com.bonus.common.core.web.page.TableDataInfo;
@ -20,15 +20,15 @@ import java.util.List;
/**
* @author 马三炮
* @date 2025/8/12
* @date 2025/8/14
*/
@Slf4j
@RestController
@RequestMapping("/company")
public class PmCompanyController extends BaseController {
public class PmComController extends BaseController {
@Resource
private PmCompanyService pmCompanyService;
private PmComService pmComService;
/**
* 公司列表
@ -39,7 +39,7 @@ public class PmCompanyController extends BaseController {
public TableDataInfo list(PmCompany pmCompany) {
try {
startPage();
List<PmCompany> list = pmCompanyService.selectCompanyList(pmCompany);
List<PmCompany> list = pmComService.selectCompanyList(pmCompany);
return getDataTable(list);
} catch (Exception e) {
log.error(e.toString(), e);
@ -50,12 +50,12 @@ public class PmCompanyController extends BaseController {
/**
* 新增和修改公司
*/
/* @RequiresPermissionsOrInnerAuth(innerAuth = @InnerAuth, requiresPermissions = @RequiresPermissions("pm:company:edit"))*/
/* @RequiresPermissionsOrInnerAuth(innerAuth = @InnerAuth, requiresPermissions = @RequiresPermissions("pm:company:edit"))*/
@PostMapping("/addOrUpdateCompany")
@SysLog(title = "公司管理", businessType = OperaType.UPDATE, logType = 0, module = "公司管理->新增和修改公司")
public AjaxResult addOrUpdateCompany(@Validated @RequestBody PmCompany pmCompany) {
try {
int res = pmCompanyService.addOrUpdateCompany(pmCompany);
int res = pmComService.addOrUpdateCompany(pmCompany);
if (res>0){
return toAjax(res);
}else {
@ -76,7 +76,7 @@ public class PmCompanyController extends BaseController {
@SysLog(title = "公司管理", businessType = OperaType.UPDATE, logType = 0, module = "公司管理->删除公司")
public AjaxResult delCompany(@Validated @RequestBody PmCompany pmCompany) {
try {
int res = pmCompanyService.delCompany(pmCompany);
int res = pmComService.delCompany(pmCompany);
if (res>0){
return toAjax(res);
}else {
@ -98,12 +98,11 @@ public class PmCompanyController extends BaseController {
@SysLog(title = "公司管理", businessType = OperaType.QUERY, logType = 0, module = "公司管理->公司列表全部")
public TableDataInfo listAll(PmCompany pmCompany) {
try {
List<PmCompany> list = pmCompanyService.selectCompanyList(pmCompany);
List<PmCompany> list = pmComService.selectCompanyList(pmCompany);
return getDataTable(list);
} catch (Exception e) {
log.error(e.toString(), e);
}
return getDataTableError(new ArrayList<>());
}
}

View File

@ -24,6 +24,7 @@ import java.util.ArrayList;
import java.util.List;
/**
* 标段工程
* @author 马三炮
* @date 2025/8/13
*/

View File

@ -1,7 +1,9 @@
package com.bonus.bmw.controller;
import com.bonus.bmw.domain.po.PmOrg;
import com.bonus.bmw.domain.po.PmSubCompany;
import com.bonus.bmw.service.PmSubCompanyService;
import com.bonus.bmw.domain.vo.PmOrgVo;
import com.bonus.bmw.service.PmSubComService;
import com.bonus.common.core.web.controller.BaseController;
import com.bonus.common.core.web.domain.AjaxResult;
import com.bonus.common.core.web.page.TableDataInfo;
@ -20,15 +22,15 @@ import java.util.List;
/**
* @author 马三炮
* @date 2025/8/12
* @date 2025/8/14
*/
@Slf4j
@RestController
@RequestMapping("/subCompany")
public class PmSubCompanyController extends BaseController {
public class PmSubComController extends BaseController {
@Resource
private PmSubCompanyService pmSubCompanyService;
private PmSubComService pmSubComService;
/**
* 分公司列表
@ -39,7 +41,7 @@ public class PmSubCompanyController extends BaseController {
public TableDataInfo list(PmSubCompany pmSubCompany) {
try {
startPage();
List<PmSubCompany> list = pmSubCompanyService.selectSubCompanyList(pmSubCompany);
List<PmSubCompany> list = pmSubComService.selectSubCompanyList(pmSubCompany);
return getDataTable(list);
} catch (Exception e) {
log.error(e.toString(), e);
@ -55,7 +57,7 @@ public class PmSubCompanyController extends BaseController {
@SysLog(title = "分公司管理", businessType = OperaType.UPDATE, logType = 0, module = "分公司管理->新增和修改分公司")
public AjaxResult addOrUpdateSubCompany(@Validated @RequestBody PmSubCompany pmSubCompany) {
try {
return toAjax(pmSubCompanyService.addOrUpdateSubCompany(pmSubCompany));
return toAjax(pmSubComService.addOrUpdateSubCompany(pmSubCompany));
} catch (Exception e) {
logger.error(e.toString(), e);
}
@ -70,7 +72,7 @@ public class PmSubCompanyController extends BaseController {
@SysLog(title = "分公司管理", businessType = OperaType.UPDATE, logType = 0, module = "分公司管理->删除分公司")
public AjaxResult delSubCompany(@Validated @RequestBody PmSubCompany pmSubCompany) {
try {
int res = pmSubCompanyService.delSubCompany(pmSubCompany);
int res = pmSubComService.delSubCompany(pmSubCompany);
if (res>0){
return toAjax(res);
}else {
@ -83,4 +85,19 @@ public class PmSubCompanyController extends BaseController {
return error("系统异常,请联系管理员");
}
/**
* 获取分公司和项目部列表
*/
@GetMapping("/listAll")
@SysLog(title = "分公司管理", businessType = OperaType.QUERY, logType = 0, module = "分公司管理->获取分公司和项目部列表")
public TableDataInfo listAll(PmSubCompany pmSubCompany) {
try {
List<PmSubCompany> list = pmSubComService.selectSubCompanyListAll(pmSubCompany);
return getDataTable(list);
} catch (Exception e) {
log.error(e.toString(), e);
}
return getDataTableError(new ArrayList<>());
}
}

View File

@ -1,9 +1,11 @@
package com.bonus.bmw.domain.po;
import com.bonus.bmw.domain.vo.PmOrgVo;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* @author 马三炮
@ -64,5 +66,8 @@ public class PmSubCompany {
*/
private Integer isActive;
/**
* 项目部列表
*/
private List<PmOrgVo> pmOrgList;
}

View File

@ -4,7 +4,7 @@ import com.bonus.bmw.domain.po.PmCompany;
import java.util.List;
public interface PmCompanyMapper {
public interface PmComMapper {
/**
* 公司列表
*/

View File

@ -11,11 +11,23 @@ public interface PmOrgMapper {
*/
List<PmOrgVo> selectPmOrgList(PmOrg pmOrg);
/**
* 根明项目部名称查询项目部项目部
*/
PmOrg selectPmOrgByOrgName(PmOrg pmOrg);
/**
* 修改项目部
*/
int updatePmOrg(PmOrg pmOrg);
/**
* 新增项目部
*/
int addPmOrg(PmOrg pmOrg);
/**
* 删除项目部
*/
int delPmOrg(PmOrg pmOrg);
}

View File

@ -4,7 +4,7 @@ import com.bonus.bmw.domain.po.PmSubCompany;
import java.util.List;
public interface PmSubCompanyMapper {
public interface PmSubComMapper {
/**
* 分公司列表
*/
@ -29,4 +29,5 @@ public interface PmSubCompanyMapper {
* 删除分公司
*/
int delSubCompany(PmSubCompany pmSubCompany);
}

View File

@ -4,8 +4,7 @@ import com.bonus.bmw.domain.po.PmCompany;
import java.util.List;
public interface PmCompanyService {
public interface PmComService {
/**
* 公司列表
*/

View File

@ -11,7 +11,14 @@ public interface PmOrgService {
*/
List<PmOrgVo> selectPmOrgList(PmOrg pmOrg);
/**
* 新增和修改项目部
*/
int addOrUpdatePmOrg(PmOrg pmOrg);
/**
* 删除项目部
*/
int delPmOrg(PmOrg pmOrg);
}

View File

@ -4,7 +4,8 @@ import com.bonus.bmw.domain.po.PmSubCompany;
import java.util.List;
public interface PmSubCompanyService {
public interface PmSubComService {
/**
* 分公司列表
*/
@ -19,4 +20,6 @@ public interface PmSubCompanyService {
* 删除分公司
*/
int delSubCompany(PmSubCompany pmSubCompany);
List<PmSubCompany> selectSubCompanyListAll(PmSubCompany pmSubCompany);
}

View File

@ -2,9 +2,9 @@ package com.bonus.bmw.service.impl;
import com.bonus.bmw.domain.po.PmCompany;
import com.bonus.bmw.domain.po.PmSubCompany;
import com.bonus.bmw.mapper.PmCompanyMapper;
import com.bonus.bmw.mapper.PmSubCompanyMapper;
import com.bonus.bmw.service.PmCompanyService;
import com.bonus.bmw.mapper.PmComMapper;
import com.bonus.bmw.mapper.PmSubComMapper;
import com.bonus.bmw.service.PmComService;
import com.bonus.common.core.utils.StringUtils;
import com.bonus.common.security.utils.SecurityUtils;
import lombok.extern.slf4j.Slf4j;
@ -16,24 +16,24 @@ import java.util.List;
/**
* @author 马三炮
* @date 2025/8/12
* @date 2025/8/14
*/
@Service
@Slf4j
public class PmCompanyServiceImpl implements PmCompanyService {
public class PmComServiceImpl implements PmComService {
@Resource
private PmCompanyMapper pmCompanyMapper;
private PmComMapper pmComMapper;
@Resource
private PmSubCompanyMapper pmSubCompanyMapper;
private PmSubComMapper pmSubComMapper;
/**
* 公司列表
*/
@Override
public List<PmCompany> selectCompanyList(PmCompany pmCompany) {
return pmCompanyMapper.selectCompanyList(pmCompany);
return pmComMapper.selectCompanyList(pmCompany);
}
/**
@ -41,7 +41,7 @@ public class PmCompanyServiceImpl implements PmCompanyService {
*/
@Override
public int addOrUpdateCompany(PmCompany pmCompany) {
PmCompany pmCompanyOld = pmCompanyMapper.getPmCompanyByCompanyName(pmCompany);
PmCompany pmCompanyOld = pmComMapper.getPmCompanyByCompanyName(pmCompany);
//存在则删除后新增不存在则新增
if(StringUtils.isNotNull(pmCompany.getId())){
if (StringUtils.isNotNull(pmCompanyOld) && !pmCompanyOld.getId().equals(pmCompany.getId())){
@ -49,7 +49,7 @@ public class PmCompanyServiceImpl implements PmCompanyService {
}
pmCompany.setUpdateUser(SecurityUtils.getUsername());
pmCompany.setUpdateTime(new Date());
return pmCompanyMapper.updatePmCompany(pmCompany);
return pmComMapper.updatePmCompany(pmCompany);
}else {
if (StringUtils.isNotNull(pmCompanyOld)){
return 0;
@ -58,7 +58,7 @@ public class PmCompanyServiceImpl implements PmCompanyService {
pmCompany.setCreateTime(new Date());
pmCompany.setUpdateUser(SecurityUtils.getUsername());
pmCompany.setUpdateTime(new Date());
return pmCompanyMapper.addPmCompany(pmCompany);
return pmComMapper.addPmCompany(pmCompany);
}
}
@ -70,10 +70,10 @@ public class PmCompanyServiceImpl implements PmCompanyService {
//查看当前公司下面是否有分公司
PmSubCompany pmSubCompany = new PmSubCompany();
pmSubCompany.setComId(pmCompany.getId());
List<PmSubCompany> pmSubCompanyList = pmSubCompanyMapper.selectSubCompanyList(pmSubCompany);
List<PmSubCompany> pmSubCompanyList = pmSubComMapper.selectSubCompanyList(pmSubCompany);
if (pmSubCompanyList.size()>0){
return 0;
}
return pmCompanyMapper.delCompany(pmCompany);
return pmComMapper.delCompany(pmCompany);
}
}

View File

@ -48,6 +48,10 @@ public class PmOrgServiceImpl implements PmOrgService {
return pmOrgVoList;
}
/**
* 新增和修改项目部
*/
@Override
public int addOrUpdatePmOrg(PmOrg pmOrg) {
@ -72,6 +76,9 @@ public class PmOrgServiceImpl implements PmOrgService {
}
}
/**
* 删除项目部
*/
@Override
public int delPmOrg(PmOrg pmOrg) {
//查看当前项目部下是否有标段工程

View File

@ -0,0 +1,94 @@
package com.bonus.bmw.service.impl;
import com.bonus.bmw.domain.po.PmOrg;
import com.bonus.bmw.domain.po.PmSubCompany;
import com.bonus.bmw.domain.vo.PmOrgVo;
import com.bonus.bmw.mapper.PmOrgMapper;
import com.bonus.bmw.mapper.PmSubComMapper;
import com.bonus.bmw.service.PmSubComService;
import com.bonus.common.core.utils.StringUtils;
import com.bonus.common.security.utils.SecurityUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
/**
* @author 马三炮
* @date 2025/8/14
*/
@Service
@Slf4j
public class PmSubComServiceImpl implements PmSubComService {
@Resource
private PmSubComMapper pmSubComMapper;
@Resource
private PmOrgMapper pmOrgMapper;
/**
* 分公司列表
*/
@Override
public List<PmSubCompany> selectSubCompanyList(PmSubCompany pmSubCompany) {
List<PmSubCompany> pmSubCompanyList = pmSubComMapper.selectSubCompanyList(pmSubCompany);
return pmSubCompanyList;
}
/**
* 新增和修改公司
*/
@Override
public int addOrUpdateSubCompany(PmSubCompany pmSubCompany) {
PmSubCompany pmSubCompanyOld = pmSubComMapper.getSubCompanyByCompanyName(pmSubCompany);
//存在则删除后新增不存在则新增
if(StringUtils.isNotNull(pmSubCompany.getId())){
if (StringUtils.isNotNull(pmSubCompanyOld) && !pmSubCompanyOld.getId().equals(pmSubCompany.getId())){
return 0;
}
pmSubCompany.setUpdateUser(SecurityUtils.getUsername());
pmSubCompany.setUpdateTime(new Date());
return pmSubComMapper.updateSubCompany(pmSubCompany);
}else {
if (StringUtils.isNotNull(pmSubCompanyOld)){
return 0;
}
pmSubCompany.setCreateUser(SecurityUtils.getUsername());
pmSubCompany.setCreateTime(new Date());
pmSubCompany.setUpdateUser(SecurityUtils.getUsername());
pmSubCompany.setUpdateTime(new Date());
return pmSubComMapper.addSubCompany(pmSubCompany);
}
}
/**
* 删除分公司
*/
@Override
public int delSubCompany(PmSubCompany pmSubCompany) {
//查看当前分公司公司下面是否有项目部
PmOrg pmOrg = new PmOrg();
pmOrg.setSubComId(pmSubCompany.getId());
List<PmOrgVo> pmOrgList = pmOrgMapper.selectPmOrgList(pmOrg);
if (pmOrgList.size()>0){
return 0;
}
return pmSubComMapper.delSubCompany(pmSubCompany);
}
@Override
public List<PmSubCompany> selectSubCompanyListAll(PmSubCompany pmSubCompany) {
List<PmSubCompany> pmSubCompanyList = pmSubComMapper.selectSubCompanyList(pmSubCompany);
//获取分公司下面的项目部
for (PmSubCompany pmSubCompanyNew: pmSubCompanyList) {
PmOrg pmOrg = new PmOrg();
pmOrg.setSubComId(pmSubCompanyNew.getId());
List<PmOrgVo> pmOrgList = pmOrgMapper.selectPmOrgList(pmOrg);
pmSubCompanyNew.setPmOrgList(pmOrgList);
}
return pmSubCompanyList;
}
}

View File

@ -1,69 +0,0 @@
package com.bonus.bmw.service.impl;
import com.bonus.bmw.domain.po.PmSubCompany;
import com.bonus.bmw.mapper.PmSubCompanyMapper;
import com.bonus.bmw.service.PmSubCompanyService;
import com.bonus.common.core.utils.StringUtils;
import com.bonus.common.security.utils.SecurityUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
/**
* @author 马三炮
* @date 2025/8/12
*/
@Service
@Slf4j
public class PmSubCompanyServiceImpl implements PmSubCompanyService {
@Resource
private PmSubCompanyMapper pmSubCompanyMapper;
/**
* 分公司列表
*/
@Override
public List<PmSubCompany> selectSubCompanyList(PmSubCompany pmSubCompany) {
List<PmSubCompany> pmSubCompanyList = pmSubCompanyMapper.selectSubCompanyList(pmSubCompany);
return pmSubCompanyList;
}
/**
* 新增和修改公司
*/
@Override
public int addOrUpdateSubCompany(PmSubCompany pmSubCompany) {
PmSubCompany pmSubCompanyOld = pmSubCompanyMapper.getSubCompanyByCompanyName(pmSubCompany);
//存在则删除后新增不存在则新增
if(StringUtils.isNotNull(pmSubCompany.getId())){
if (StringUtils.isNotNull(pmSubCompanyOld) && !pmSubCompanyOld.getId().equals(pmSubCompany.getId())){
return 0;
}
pmSubCompany.setUpdateUser(SecurityUtils.getUsername());
pmSubCompany.setUpdateTime(new Date());
return pmSubCompanyMapper.updateSubCompany(pmSubCompany);
}else {
if (StringUtils.isNotNull(pmSubCompanyOld)){
return 0;
}
pmSubCompany.setCreateUser(SecurityUtils.getUsername());
pmSubCompany.setCreateTime(new Date());
pmSubCompany.setUpdateUser(SecurityUtils.getUsername());
pmSubCompany.setUpdateTime(new Date());
return pmSubCompanyMapper.addSubCompany(pmSubCompany);
}
}
/**
* 删除分公司
*/
@Override
public int delSubCompany(PmSubCompany pmSubCompany) {
return pmSubCompanyMapper.delSubCompany(pmSubCompany);
}
}

View File

@ -1,6 +1,6 @@
<?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.bonus.bmw.mapper.PmCompanyMapper">
<mapper namespace="com.bonus.bmw.mapper.PmComMapper">
<insert id="addPmCompany">
insert into pm_company (company_name, is_enable, create_user, update_user, create_time, update_time)
values (#{companyName}, #{isEnable}, #{createUser}, #{updateUser}, #{createTime}, #{updateTime})

View File

@ -44,6 +44,9 @@
or po.org_name like concat('%', #{keyWord}, '%')
)
</if>
<if test="subComId !=null">
and po.sub_com_id = #{subComId}
</if>
</select>
<select id="selectPmOrgByOrgName" resultType="com.bonus.bmw.domain.po.PmOrg">
select po.id as id,

View File

@ -2,9 +2,12 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.bonus.bmw.mapper.PmProjectMapper">
<insert id="addProject">
insert into pm_project (pro_name, main_pro_id, com_id, sub_com_id, org_id,
simple_name,create_user, update_user, create_time, update_time)
values (#{pro_name}, #{mainProId}, #{createUser}, #{updateUser}, #{createTime}, #{updateTime})
insert into pm_project (pro_name, main_pro_id, com_id, sub_com_id, org_id,simple_name,pro_type,
vol_level,is_shanghai,pro_status,pro_address,start_time,end_time,
lon,lat,create_user,update_user, create_time, update_time)
values (#{proName}, #{mainProId},#{comId},#{subComId},#{orgId},#{simpleName},#{proName},
#{volLevel},#{isShanghai},#{proStatus},#{proAddress},#{startTime},#{endTime},
#{lon},#{lat},#{createUser}, #{updateUser}, #{createTime}, #{updateTime})
</insert>
<update id="updateProject">
update pm_project
@ -133,6 +136,6 @@
pp.update_user as updateUser,
pp.create_time as createTime,
pp.update_time as updateTime
from pm_project pp where pp.is_active = '1'
from pm_project pp where pp.is_active = '1' and pp.pro_name = #{proName}
</select>
</mapper>

View File

@ -1,6 +1,6 @@
<?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.bonus.bmw.mapper.PmSubCompanyMapper">
<mapper namespace="com.bonus.bmw.mapper.PmSubComMapper">
<insert id="addSubCompany">
insert into pm_sub_company (com_id,sub_company_name, is_enable, create_user, update_user, create_time, update_time)
values (#{comId},#{subCompanyName}, #{isEnable}, #{createUser}, #{updateUser}, #{createTime}, #{updateTime})
@ -61,4 +61,5 @@
left join pm_company pc on psc.com_id = pc.id
where pc.is_active = '1' and psc.sub_company_name =#{subCompanyName}
</select>
</mapper>