Browse Source

合并代码

master
gxwebsoft 2 years ago
parent
commit
484999cd07
  1. 50
      src/main/java/com/gxwebsoft/tower/controller/TowerProjectController.java
  2. 12
      src/main/java/com/gxwebsoft/tower/entity/TowerProject.java
  3. 4
      src/main/java/com/gxwebsoft/tower/entity/TowerProjectUser.java
  4. 3
      src/main/java/com/gxwebsoft/tower/mapper/xml/TowerProjectUserMapper.xml
  5. 6
      src/main/java/com/gxwebsoft/tower/mapper/xml/TowerWarehouseMapper.xml
  6. 24
      src/main/java/com/gxwebsoft/tower/param/TowerProjectParam.java

50
src/main/java/com/gxwebsoft/tower/controller/TowerProjectController.java

@ -8,12 +8,17 @@ import com.gxwebsoft.common.core.web.PageResult;
import com.gxwebsoft.common.system.entity.User; import com.gxwebsoft.common.system.entity.User;
import com.gxwebsoft.tower.entity.TowerProject; import com.gxwebsoft.tower.entity.TowerProject;
import com.gxwebsoft.tower.entity.TowerProjectOrder; import com.gxwebsoft.tower.entity.TowerProjectOrder;
import com.gxwebsoft.tower.entity.TowerProjectPlace;
import com.gxwebsoft.tower.entity.TowerProjectUser;
import com.gxwebsoft.tower.param.TowerProjectParam; import com.gxwebsoft.tower.param.TowerProjectParam;
import com.gxwebsoft.tower.service.TowerProjectOrderService; import com.gxwebsoft.tower.service.TowerProjectOrderService;
import com.gxwebsoft.tower.service.TowerProjectPlaceService;
import com.gxwebsoft.tower.service.TowerProjectService; import com.gxwebsoft.tower.service.TowerProjectService;
import com.gxwebsoft.tower.service.TowerProjectUserService;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
@ -34,6 +39,10 @@ public class TowerProjectController extends BaseController {
private TowerProjectService towerProjectService; private TowerProjectService towerProjectService;
@Resource @Resource
private TowerProjectOrderService towerProjectOrderService; private TowerProjectOrderService towerProjectOrderService;
@Resource
private TowerProjectUserService towerProjectUserService;
@Resource
private TowerProjectPlaceService towerProjectPlaceService;
@PreAuthorize("hasAuthority('tower:towerProject:list')") @PreAuthorize("hasAuthority('tower:towerProject:list')")
@ApiOperation("分页查询项目管理") @ApiOperation("分页查询项目管理")
@ -60,6 +69,7 @@ public class TowerProjectController extends BaseController {
} }
@PreAuthorize("hasAuthority('tower:towerProject:save')") @PreAuthorize("hasAuthority('tower:towerProject:save')")
@Transactional(rollbackFor = {Exception.class})
@ApiOperation("添加项目管理") @ApiOperation("添加项目管理")
@PostMapping() @PostMapping()
public ApiResult<?> save(@RequestBody TowerProject towerProject) { public ApiResult<?> save(@RequestBody TowerProject towerProject) {
@ -68,29 +78,59 @@ public class TowerProjectController extends BaseController {
if (loginUser != null) { if (loginUser != null) {
towerProject.setUserId(loginUser.getUserId()); towerProject.setUserId(loginUser.getUserId());
} }
System.out.println("towerProject = " + towerProject.getPlaces2());
if (towerProjectService.save(towerProject)) { if (towerProjectService.save(towerProject)) {
final Integer projectId = towerProject.getProjectId();
// 批量添加项目成员
if (!towerProject.getUsers().isEmpty()) {
final Set<TowerProjectUser> users = towerProject.getUsers();
users.forEach(d->{
d.setProjectId(projectId);
});
towerProjectUserService.saveBatch(users);
}
// 批量添加项目订单
if (!towerProject.getOrders().isEmpty()) { if (!towerProject.getOrders().isEmpty()) {
final Set<TowerProjectOrder> orders = towerProject.getOrders(); final Set<TowerProjectOrder> orders = towerProject.getOrders();
orders.forEach(d->{ orders.forEach(d->{
d.setProjectId(towerProject.getProjectId());
d.setProjectId(projectId);
}); });
towerProjectOrderService.saveBatch(orders); towerProjectOrderService.saveBatch(orders);
} }
// 批量添加检查部位配置
if (!towerProject.getPlaces1().isEmpty()) {
final Set<TowerProjectPlace> places1 = towerProject.getPlaces1();
places1.forEach(d->{
d.setProjectId(projectId);
});
towerProjectPlaceService.saveBatch(places1);
}
// 批量添加保养部位配置
if (!towerProject.getPlaces2().isEmpty()) {
final Set<TowerProjectPlace> places2 = towerProject.getPlaces2();
places2.forEach(d->{
d.setProjectId(projectId);
});
towerProjectPlaceService.saveBatch(places2);
}
return success("添加成功"); return success("添加成功");
} }
return fail("添加失败"); return fail("添加失败");
} }
@PreAuthorize("hasAuthority('tower:towerProject:update')") @PreAuthorize("hasAuthority('tower:towerProject:update')")
@Transactional(rollbackFor = {Exception.class})
@ApiOperation("修改项目管理") @ApiOperation("修改项目管理")
@PutMapping() @PutMapping()
public ApiResult<?> update(@RequestBody TowerProject towerProject) { public ApiResult<?> update(@RequestBody TowerProject towerProject) {
if (towerProjectService.updateById(towerProject)) { if (towerProjectService.updateById(towerProject)) {
if (!towerProject.getOrders().isEmpty()) {
final Set<TowerProjectOrder> orders = towerProject.getOrders();
System.out.println("orders = " + orders);
// 批量修改项目成员
towerProjectUserService.saveOrUpdateBatch(towerProject.getUsers());
// 批量修改项目订单
towerProjectOrderService.saveOrUpdateBatch(towerProject.getOrders()); towerProjectOrderService.saveOrUpdateBatch(towerProject.getOrders());
}
// 批量修改检查/保养部位配置
towerProjectPlaceService.saveOrUpdateBatch(towerProject.getPlaces1());
towerProjectPlaceService.saveOrUpdateBatch(towerProject.getPlaces2());
return success("修改成功"); return success("修改成功");
} }
return fail("修改失败"); return fail("修改失败");

12
src/main/java/com/gxwebsoft/tower/entity/TowerProject.java

@ -111,12 +111,20 @@ public class TowerProject implements Serializable {
@ApiModelProperty(value = "修改时间") @ApiModelProperty(value = "修改时间")
private Date updateTime; private Date updateTime;
@ApiModelProperty(value = "项目成员")
@TableField(exist = false)
private Set<TowerProjectUser> users;
@ApiModelProperty(value = "合同预定设备清单") @ApiModelProperty(value = "合同预定设备清单")
@TableField(exist = false) @TableField(exist = false)
private Set<TowerProjectOrder> orders; private Set<TowerProjectOrder> orders;
@ApiModelProperty(value = "检查/保养部位配置")
@ApiModelProperty(value = "检查部位配置")
@TableField(exist = false)
private Set<TowerProjectPlace> places1;
@ApiModelProperty(value = "保养部位配置")
@TableField(exist = false) @TableField(exist = false)
private Set<TowerProjectPlace> places;
private Set<TowerProjectPlace> places2;
} }

4
src/main/java/com/gxwebsoft/tower/entity/TowerProjectUser.java

@ -65,4 +65,8 @@ public class TowerProjectUser implements Serializable {
@TableField(exist = false) @TableField(exist = false)
private String avatar; private String avatar;
@ApiModelProperty(value = "所在部门")
@TableField(exist = false)
private String organizationName;
} }

3
src/main/java/com/gxwebsoft/tower/mapper/xml/TowerProjectUserMapper.xml

@ -4,9 +4,10 @@
<!-- 关联查询sql --> <!-- 关联查询sql -->
<sql id="selectSql"> <sql id="selectSql">
SELECT a.*, b.nickname,b.email,b.phone,b.avatar
SELECT a.*, b.nickname,b.email,b.phone,b.avatar,c.organization_name
FROM tower_project_user a FROM tower_project_user a
LEFT JOIN sys_user b ON a.user_id = b.user_id LEFT JOIN sys_user b ON a.user_id = b.user_id
LEFT JOIN sys_organization c ON b.organization_id = c.organization_id
<where> <where>
<if test="param.id != null"> <if test="param.id != null">
AND a.id = #{param.id} AND a.id = #{param.id}

6
src/main/java/com/gxwebsoft/tower/mapper/xml/TowerWarehouseMapper.xml

@ -49,9 +49,9 @@
<if test="param.comments != null"> <if test="param.comments != null">
AND a.comments LIKE CONCAT('%', #{param.comments}, '%') AND a.comments LIKE CONCAT('%', #{param.comments}, '%')
</if> </if>
<!-- <if test="param.username != null">-->
<!-- AND a.username = #{param.username}-->
<!-- </if>-->
<if test="param.username != null">
AND a.username = #{param.username}
</if>
<if test="param.deleted != null"> <if test="param.deleted != null">
AND a.deleted = #{param.deleted} AND a.deleted = #{param.deleted}
</if> </if>

24
src/main/java/com/gxwebsoft/tower/param/TowerProjectParam.java

@ -1,14 +1,20 @@
package com.gxwebsoft.tower.param; package com.gxwebsoft.tower.param;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.gxwebsoft.common.core.annotation.QueryField; import com.gxwebsoft.common.core.annotation.QueryField;
import com.gxwebsoft.common.core.annotation.QueryType; import com.gxwebsoft.common.core.annotation.QueryType;
import com.gxwebsoft.common.core.web.BaseParam; import com.gxwebsoft.common.core.web.BaseParam;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.gxwebsoft.tower.entity.TowerProjectOrder;
import com.gxwebsoft.tower.entity.TowerProjectPlace;
import com.gxwebsoft.tower.entity.TowerProjectUser;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import java.util.Set;
/** /**
* 项目管理查询参数 * 项目管理查询参数
* *
@ -103,4 +109,20 @@ public class TowerProjectParam extends BaseParam {
@QueryField(type = QueryType.EQ) @QueryField(type = QueryType.EQ)
private Integer deleted; private Integer deleted;
@ApiModelProperty(value = "项目成员")
@TableField(exist = false)
private Set<TowerProjectUser> users;
@ApiModelProperty(value = "合同预定设备清单")
@TableField(exist = false)
private Set<TowerProjectOrder> orders;
@ApiModelProperty(value = "检查部位配置")
@TableField(exist = false)
private Set<TowerProjectPlace> places1;
@ApiModelProperty(value = "保养部位配置")
@TableField(exist = false)
private Set<TowerProjectPlace> places2;
} }

Loading…
Cancel
Save