This commit is contained in:
2024-01-31 14:54:49 +08:00
parent 71e28fd448
commit 2fd8b3d341
48 changed files with 1657 additions and 583 deletions

View File

@@ -1,5 +1,9 @@
package com.gxwebsoft.tower.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.gxwebsoft.common.core.web.BaseController;
import com.gxwebsoft.common.system.entity.Company;
@@ -13,13 +17,16 @@ import com.gxwebsoft.common.core.web.PageResult;
import com.gxwebsoft.common.core.web.PageParam;
import com.gxwebsoft.common.core.web.BatchParam;
import com.gxwebsoft.common.core.annotation.OperationLog;
import com.gxwebsoft.tower.service.TowerContractSettleEquipmentService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;
/**
* 合同存档控制器
@@ -33,6 +40,8 @@ import java.util.List;
public class TowerContractController extends BaseController {
@Resource
private TowerContractService towerContractService;
@Resource
private TowerContractSettleEquipmentService towerContractSettleEquipmentService;
@PreAuthorize("hasAuthority('tower:towerContract:list')")
@OperationLog
@@ -41,16 +50,15 @@ public class TowerContractController extends BaseController {
public ApiResult<PageResult<TowerContract>> page(TowerContractParam param) {
MPJLambdaWrapper<TowerContract> wrapper = new MPJLambdaWrapper<>();
wrapper.selectAll(TowerContract.class)
.select(TowerProject::getProjectName)
.selectAs(TowerCustomer::getName, TowerContract::getCustomerName)
.selectAs(Company::getCompanyName, TowerContract::getCompanyName)
.leftJoin(TowerProject.class, TowerProject::getProjectId, TowerContract::getProjectId)
.leftJoin(TowerCustomer.class, TowerCustomer::getCustomerId, TowerContract::getCustomerId)
.leftJoin(Company.class, Company::getCompanyId, TowerContract::getCompanyId);
PageParam<TowerContract, TowerContractParam> page = new PageParam<>(param);
page.setDefaultOrder("create_time desc");
return success(towerContractService.page(page, wrapper));
PageResult<TowerContract> pageRes = towerContractService.pageRel(param);
return success(pageRes);
// return success(towerContractService.page(page, wrapper));
// 使用关联查询
//return success(towerContractService.pageRel(param));
}

View File

@@ -50,16 +50,18 @@ public class TowerContractEquipmentController extends BaseController {
@ApiOperation("查询全部合同设备清单")
@GetMapping()
public ApiResult<List<TowerContractEquipment>> list(@RequestParam Map<String, String> params) {
int contractId = Integer.parseInt(params.get("contractId"));
MPJLambdaWrapper<TowerContractEquipment> wrapper = new MPJLambdaWrapper<>();
wrapper.selectAll(TowerContractEquipment.class)
wrapper.eq(TowerContractEquipment::getContractId, contractId)
.selectAll(TowerContractEquipment.class)
.selectAs(TowerEquipment::getName, TowerEquipment::getEquipmentName)
.select(TowerEquipment::getFactoryNo)
.select(TowerEquipment::getEquipmentNo)
.select(TowerEquipment::getFilingNo)
.leftJoin(TowerEquipment.class, TowerEquipment::getEquipmentId, TowerContractEquipment::getEquipmentId);
TowerContractEquipmentParam towerContractEquipmentParam = new TowerContractEquipmentParam();
int contractId = Integer.parseInt(params.get("contractId"));
towerContractEquipmentParam.setContractId(contractId);
// towerContractEquipmentParam.setContractId(contractId);
PageParam<TowerContractEquipment, TowerContractEquipmentParam> page = new PageParam<>(towerContractEquipmentParam);
page.setDefaultOrder("create_time desc");

View File

@@ -36,11 +36,11 @@ public class TowerCustomerController extends BaseController {
@ApiOperation("分页查询客户管理")
@GetMapping("/page")
public ApiResult<PageResult<TowerCustomer>> page(TowerCustomerParam param) {
PageParam<TowerCustomer, TowerCustomerParam> page = new PageParam<>(param);
page.setDefaultOrder("create_time desc");
return success(towerCustomerService.page(page, page.getWrapper()));
// PageParam<TowerCustomer, TowerCustomerParam> page = new PageParam<>(param);
// page.setDefaultOrder("create_time desc");
// return success(towerCustomerService.page(page, page.getWrapper()));
// 使用关联查询
//return success(towerCustomerService.pageRel(param));
return success(towerCustomerService.pageRel(param));
}
@PreAuthorize("hasAuthority('tower:towerCustomer:list')")

View File

@@ -1,21 +1,40 @@
package com.gxwebsoft.tower.controller;
import cn.binarywang.wx.miniapp.api.WxMaQrcodeService;
import cn.binarywang.wx.miniapp.api.WxMaService;
import cn.binarywang.wx.miniapp.api.impl.WxMaQrcodeServiceImpl;
import cn.hutool.core.date.DateUtil;
import cn.hutool.http.HttpUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.gxwebsoft.common.core.annotation.OperationLog;
import com.gxwebsoft.common.core.web.ApiResult;
import com.gxwebsoft.common.core.web.BaseController;
import com.gxwebsoft.common.core.web.BatchParam;
import com.gxwebsoft.common.core.web.PageResult;
import com.gxwebsoft.common.core.web.*;
import com.gxwebsoft.common.system.entity.User;
import com.gxwebsoft.shop.controller.WxLoginController;
import com.gxwebsoft.tower.entity.TowerEquipment;
import com.gxwebsoft.tower.entity.TowerProject;
import com.gxwebsoft.tower.entity.TowerProjectOrder;
import com.gxwebsoft.tower.param.TowerEquipmentParam;
import com.gxwebsoft.tower.service.TowerEquipmentService;
import com.gxwebsoft.tower.service.TowerProjectOrderService;
import com.gxwebsoft.tower.service.TowerProjectService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import me.chanjar.weixin.common.error.WxErrorException;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.List;
import java.io.*;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.*;
import java.util.stream.Collectors;
/**
* 塔吊设备管理控制器
@@ -29,14 +48,84 @@ import java.util.List;
public class TowerEquipmentController extends BaseController {
@Resource
private TowerEquipmentService towerEquipmentService;
@Resource
private TowerProjectService projectService;
@Resource
private TowerProjectOrderService projectOrderService;
@Value("${config.upload-path}")
private String uploadPath;
@PreAuthorize("hasAuthority('tower:towerEquipment:list')")
@OperationLog
@ApiOperation("塔吊设备数据")
@GetMapping("/data")
public ApiResult<Map<String, Integer>> data() {
Map<String, Integer> data = new HashMap<>();
Integer totalNum = towerEquipmentService.count(
new LambdaQueryWrapper<TowerEquipment>()
.ne(TowerEquipment::getStatus, 3)
);
Integer idleNum = towerEquipmentService.count(
new LambdaQueryWrapper<TowerEquipment>()
.eq(TowerEquipment::getStatus, 0)
);
Integer scrapNum = towerEquipmentService.count(
new LambdaQueryWrapper<TowerEquipment>()
.lt(TowerEquipment::getScrapDate, new Date())
);
data.put("totalNum", totalNum);
data.put("idleNum", idleNum);
data.put("scrapNum", scrapNum);
return success(data);
}
@PreAuthorize("hasAuthority('tower:towerEquipment:list')")
@OperationLog
@ApiOperation("分页查询塔吊设备管理")
@GetMapping("/page")
public ApiResult<PageResult<TowerEquipment>> page(TowerEquipmentParam param) {
System.out.println("param.getYearFilter(): " + param.getYearFilter());
List<Integer> equipmentIdList = new ArrayList<>();
if (param.getIdleOnly() != null && param.getIdleOnly()) {
// 不在未结案项目的设备列表
equipmentIdList = towerEquipmentService.list(
new LambdaQueryWrapper<TowerEquipment>()
.ne(TowerEquipment::getStatus, 4)
).stream().map(TowerEquipment::getEquipmentId).collect(Collectors.toList());
}
// 使用关联查询
return success(towerEquipmentService.pageRel(param));
LambdaQueryWrapper<TowerEquipment> wrapper = new LambdaQueryWrapper<>();
if (!equipmentIdList.isEmpty()) wrapper.in(TowerEquipment::getEquipmentId, equipmentIdList);
if (param.getKeywords() != null) {
wrapper.and(i -> i.like(TowerEquipment::getFilingNo, param.getKeywords()).or()
.like(TowerEquipment::getModel, param.getKeywords()).or()
.like(TowerEquipment::getName, param.getKeywords()).or()
.like(TowerEquipment::getFactoryNo, param.getKeywords()));
}
if (param.getYearFilter() != null)
wrapper.apply("CEIL( DATEDIFF(`scrap_date`, '" + DateUtil.today() + "') / 365) = {0}", param.getYearFilter());
if (param.getStatus() != null) wrapper.eq(TowerEquipment::getStatus, param.getStatus());
IPage<TowerEquipment> page = new PageParam<>(param);
IPage<TowerEquipment> list = towerEquipmentService.page(page, wrapper);
for (TowerEquipment equipment : list.getRecords()) {
// System.out.println("equipment item" + equipment);
List<TowerProjectOrder> projectOrderList = projectOrderService.list(
new LambdaQueryWrapper<TowerProjectOrder>()
.eq(TowerProjectOrder::getFilingNo, equipment.getFilingNo())
);
if (!projectOrderList.isEmpty()) {
equipment.setProjectList(
projectService.list(
new LambdaQueryWrapper<TowerProject>()
.in(TowerProject::getProjectId,
projectOrderList.stream().map(TowerProjectOrder::getProjectId).collect(Collectors.toList())
)
)
);
}
}
return success(list);
}
@PreAuthorize("hasAuthority('tower:towerEquipment:list')")
@@ -65,7 +154,7 @@ public class TowerEquipmentController extends BaseController {
// 记录当前登录用户id
User loginUser = getLoginUser();
if (loginUser != null) {
towerEquipment.setUserId(loginUser.getUserId());
towerEquipment.setUserId(loginUser.getUserId());
}
if (towerEquipmentService.save(towerEquipment)) {
return success("添加成功");
@@ -100,6 +189,44 @@ public class TowerEquipmentController extends BaseController {
@ApiOperation("批量添加塔吊设备管理")
@PostMapping("/batch")
public ApiResult<?> saveBatch(@RequestBody List<TowerEquipment> list) {
// for (TowerEquipment equipment : list) {
// if (equipment.getProjectName() != null) {
// TowerProject checkProject = projectService.getOne(
// new LambdaQueryWrapper<TowerProject>().eq(TowerProject::getProjectName, equipment.getProjectName())
// );
// if (checkProject == null) {
// TowerProject newProject = new TowerProject();
// newProject.setProjectName(equipment.getProjectName());
// newProject.setProjectCity(equipment.getCurrentLocation());
// newProject.setCompetentDepartment(equipment.getCompetentDepartment());
// projectService.save(newProject);
//
// TowerProjectOrder newProjectOrder = new TowerProjectOrder();
// newProjectOrder.setProjectId(newProjectOrder.getProjectId());
// newProjectOrder.setEquipmentName(equipment.getEquipmentName());
// newProjectOrder.setEquipmentModel(equipment.getEquipmentModel());
// newProjectOrder.setFilingNo(equipment.getFilingNo());
// newProjectOrder.setFactoryNo(equipment.getFactoryNo());
// newProjectOrder.setSecurityStatus(equipment.getSecurityStatus());
// projectOrderService.save(newProjectOrder);
// } else {
// int checkProjectOrder = projectOrderService.count(
// new LambdaQueryWrapper<TowerProjectOrder>().eq(TowerProjectOrder::getProjectId, checkProject.getProjectId())
// .eq(TowerProjectOrder::getFilingNo, equipment.getFilingNo())
// );
// if (checkProjectOrder == 0) {
// TowerProjectOrder newProjectOrder = new TowerProjectOrder();
// newProjectOrder.setProjectId(newProjectOrder.getProjectId());
// newProjectOrder.setEquipmentName(equipment.getEquipmentName());
// newProjectOrder.setEquipmentModel(equipment.getEquipmentModel());
// newProjectOrder.setFilingNo(equipment.getFilingNo());
// newProjectOrder.setFactoryNo(equipment.getFactoryNo());
// newProjectOrder.setSecurityStatus(equipment.getSecurityStatus());
// projectOrderService.save(newProjectOrder);
// }
// }
// }
// }
if (towerEquipmentService.saveBatch(list)) {
return success("添加成功");
}
@@ -133,9 +260,63 @@ public class TowerEquipmentController extends BaseController {
@ApiOperation("批量修改塔吊设备状态")
@PutMapping("/status")
public ApiResult<?> statusBatch(@RequestBody List<TowerEquipment> batchParam) {
if (towerEquipmentService.updateBatchById(batchParam)) {
return success("修改成功");
}
return fail("修改失败");
if (towerEquipmentService.updateBatchById(batchParam)) {
return success("修改成功");
}
return fail("修改失败");
}
@PreAuthorize("hasAuthority('tower:towerEquipment:list')")
@OperationLog
@ApiOperation("设备信息二维码")
@GetMapping("/qr")
public ApiResult<?> qr(TowerEquipmentParam equipmentParam) throws IOException, WxErrorException {
// WxLoginController wxLoginController = new WxLoginController();
// String apiUrl = "https://api.weixin.qq.com/wxa/getwxacode?access_token=" + wxLoginController.getAccessToken();
// JSONObject paramJson = new JSONObject();
// paramJson.put("path", "otherPages/pages/equipment");
// paramJson.put("scene",towerEquipmentParam.getEquipmentId());
// URL url = new URL(apiUrl);
// HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
// httpURLConnection.setRequestMethod("POST");// 提交模式
// // 发送POST请求必须设置如下两行
// httpURLConnection.setDoOutput(true);
// httpURLConnection.setDoInput(true);
// PrintWriter printWriter = new PrintWriter(httpURLConnection.getOutputStream());
// printWriter.write(paramJson.toString());
// // flush输出流的缓冲
// printWriter.flush();
// //开始获取数据
// BufferedInputStream bis = new BufferedInputStream(httpURLConnection.getInputStream());
// OutputStream os = new FileOutputStream(new File(savePath));
// int len;
// byte[] arr = new byte[1024];
// while ((len = bis.read(arr)) != -1)
// {
// os.write(arr, 0, len);
// os.flush();
// }
// os.close();
// // 执行post请求
// Map<String, Object> paramMap = new HashMap<>();
// paramMap.put("path", "otherPages/pages/equipment");
// paramMap.put("scene", equipmentParam.getEquipmentId());
// String post = HttpUtil.post(apiUrl, JSON.toJSONString(paramMap));
// JSONObject json = JSON.parseObject(post);
// return success(json);
// if (json.get("errcode").equals(0)) {
// }
// return null;
String filepath = uploadPath + "qr";
String filename = filepath + "/" + getLoginUserId().toString() + ".png";
File checkFile = new File(filename);
if (!checkFile.exists()) {
WxLoginController wxLoginController = new WxLoginController();
WxMaService wxMaService = wxLoginController.wxMaService();
WxMaQrcodeService wxMaQrcodeService = new WxMaQrcodeServiceImpl(wxMaService);
wxMaQrcodeService.createWxaCodeUnlimit(equipmentParam.getEquipmentId().toString(), "otherPages/pages/equipment", uploadPath);
}
return success(filename);
}
}

View File

@@ -37,10 +37,10 @@ public class TowerFallController extends BaseController {
@GetMapping("/page")
public ApiResult<PageResult<TowerFall>> page(TowerFallParam param) {
PageParam<TowerFall, TowerFallParam> page = new PageParam<>(param);
page.setDefaultOrder("create_time desc");
// return success(towerFallService.page(page, page.getWrapper()));
page.setDefaultOrder("factory_date desc");
return success(towerFallService.page(page, page.getWrapper()));
// 使用关联查询
return success(towerFallService.pageRel(param));
// return success(towerFallService.pageRel(param));
}
@PreAuthorize("hasAuthority('tower:towerFall:list')")
@@ -49,10 +49,10 @@ public class TowerFallController extends BaseController {
@GetMapping()
public ApiResult<List<TowerFall>> list(TowerFallParam param) {
PageParam<TowerFall, TowerFallParam> page = new PageParam<>(param);
page.setDefaultOrder("create_time desc");
// return success(towerFallService.list(page.getOrderWrapper()));
page.setDefaultOrder("factory_date desc");
return success(towerFallService.list(page.getOrderWrapper()));
// 使用关联查询
return success(towerFallService.listRel(param));
// return success(towerFallService.listRel(param));
}
@PreAuthorize("hasAuthority('tower:towerFall:list')")

View File

@@ -1,5 +1,6 @@
package com.gxwebsoft.tower.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
@@ -22,6 +23,8 @@ import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
/**
@@ -97,10 +100,7 @@ public class TowerIncomeController extends BaseController {
towerIncome.setUserId(loginUser.getUserId());
}
if (towerIncomeService.save(towerIncome)) {
LambdaUpdateWrapper<TowerContract> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.eq(TowerContract::getContractId, towerIncome.getIncomeId())
.setSql("`total_income_amount` = `total_income_amount` + " + towerIncome.getAmount());
towerContractService.update(null, updateWrapper);
reCalIncome(towerIncome.getContractId());
return success(towerIncome.getIncomeId());
}
return fail("添加失败");
@@ -111,15 +111,8 @@ public class TowerIncomeController extends BaseController {
@ApiOperation("修改收款管理")
@PutMapping()
public ApiResult<?> update(@RequestBody TowerIncome towerIncome) {
QueryWrapper<TowerIncome> queryWrapper = new QueryWrapper<>();
queryWrapper.select("sum(`amount`) as `total_income_amount`");
TowerIncome towerIncomeAll = towerIncomeService.getOne(queryWrapper);
LambdaUpdateWrapper<TowerContract> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.eq(TowerContract::getContractId, towerIncome.getIncomeId())
.set(TowerContract::getTotalIncomeAmount, towerIncomeAll.getTotalIncomeAmount());
towerContractService.update(null, updateWrapper);
if (towerIncomeService.updateById(towerIncome)) {
reCalIncome(towerIncome.getContractId());
return success(towerIncome.getIncomeId());
}
return fail("修改失败");
@@ -130,7 +123,9 @@ public class TowerIncomeController extends BaseController {
@ApiOperation("删除收款管理")
@DeleteMapping("/{id}")
public ApiResult<?> remove(@PathVariable("id") Integer id) {
int contractId = towerIncomeService.getById(id).getContractId();
if (towerIncomeService.removeById(id)) {
reCalIncome(contractId);
return success("删除成功");
}
return fail("删除失败");
@@ -163,10 +158,38 @@ public class TowerIncomeController extends BaseController {
@ApiOperation("批量删除收款管理")
@DeleteMapping("/batch")
public ApiResult<?> removeBatch(@RequestBody List<Integer> ids) {
List<Integer> contractIdList = new ArrayList<>();
for (int id : ids) {
int contractId = towerIncomeService.getById(id).getContractId();
if (!contractIdList.contains(contractId)) {
contractIdList.add(contractId);
}
}
if (towerIncomeService.removeByIds(ids)) {
for (int contractId : contractIdList) {
this.reCalIncome(contractId);
}
return success("删除成功");
}
return fail("删除失败");
}
private void reCalIncome(int contractId) {
QueryWrapper<TowerIncome> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("contract_id", contractId)
.select("sum(`amount`) as `total_income_amount`");
TowerIncome towerIncomeAll = towerIncomeService.getOne(queryWrapper);
LambdaUpdateWrapper<TowerContract> updateWrapper = new LambdaUpdateWrapper<>();
BigDecimal totalIncomeAmount;
if (towerIncomeAll != null) {
totalIncomeAmount = towerIncomeAll.getTotalIncomeAmount();
} else {
totalIncomeAmount = BigDecimal.valueOf(0);
}
updateWrapper.eq(TowerContract::getContractId, contractId)
.set(TowerContract::getTotalIncomeAmount, totalIncomeAmount);
towerContractService.update(updateWrapper);
}
}

View File

@@ -1,20 +1,18 @@
package com.gxwebsoft.tower.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.gxwebsoft.common.core.annotation.OperationLog;
import com.gxwebsoft.common.core.web.ApiResult;
import com.gxwebsoft.common.core.web.BaseController;
import com.gxwebsoft.common.core.web.BatchParam;
import com.gxwebsoft.common.core.web.PageResult;
import com.gxwebsoft.common.system.entity.User;
import com.gxwebsoft.tower.entity.TowerProject;
import com.gxwebsoft.tower.entity.TowerProjectOrder;
import com.gxwebsoft.tower.entity.TowerProjectPlace;
import com.gxwebsoft.tower.entity.TowerProjectUser;
import com.gxwebsoft.common.system.service.UserService;
import com.gxwebsoft.tower.entity.*;
import com.gxwebsoft.tower.param.TowerProjectParam;
import com.gxwebsoft.tower.service.TowerProjectOrderService;
import com.gxwebsoft.tower.service.TowerProjectPlaceService;
import com.gxwebsoft.tower.service.TowerProjectService;
import com.gxwebsoft.tower.service.TowerProjectUserService;
import com.gxwebsoft.tower.service.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.security.access.prepost.PreAuthorize;
@@ -22,8 +20,7 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.List;
import java.util.Set;
import java.util.*;
/**
* 项目管理控制器
@@ -43,13 +40,51 @@ public class TowerProjectController extends BaseController {
private TowerProjectUserService towerProjectUserService;
@Resource
private TowerProjectPlaceService towerProjectPlaceService;
@Resource
private TowerEquipmentService equipmentService;
@Resource
private UserService userService;
@PreAuthorize("hasAuthority('tower:towerEquipment:list')")
@OperationLog
@ApiOperation("项目数据")
@GetMapping("/data")
public ApiResult<Map<String, Integer>> data() {
Map<String, Integer> data = new HashMap<>();
Integer totalNum = towerProjectService.count();
Integer startedNum = towerProjectService.count(
new LambdaQueryWrapper<TowerProject>()
.eq(TowerProject::getProjectStatus, "建设中")
);
Integer notStartNum = towerProjectService.count(
new LambdaQueryWrapper<TowerProject>()
.eq(TowerProject::getProjectStatus, "未开工")
);
data.put("totalNum", totalNum);
data.put("startedNum", startedNum);
data.put("notStartNum", notStartNum);
return success(data);
}
@PreAuthorize("hasAuthority('tower:towerProject:list')")
@ApiOperation("分页查询项目管理")
@GetMapping("/page")
public ApiResult<PageResult<TowerProject>> page(TowerProjectParam param) {
// 使用关联查询
return success(towerProjectService.pageRel(param));
PageResult<TowerProject> list = towerProjectService.pageRel(param);
for (TowerProject project : list.getList()) {
project.setEquipmentNum(towerProjectOrderService.count(
new LambdaQueryWrapper<TowerProjectOrder>()
.eq(TowerProjectOrder::getProjectId, project.getProjectId())
));
project.setOrders(
new HashSet<>(towerProjectOrderService.list(
new LambdaQueryWrapper<TowerProjectOrder>().eq(TowerProjectOrder::getProjectId, project.getProjectId())
))
);
if (!project.getDirector().equals("0")) project.setDirectorUser(userService.getById(project.getDirector()));
}
return success(list);
}
@PreAuthorize("hasAuthority('tower:towerProject:list')")
@@ -68,6 +103,18 @@ public class TowerProjectController extends BaseController {
return success(towerProjectService.getByIdRel(id));
}
@ApiOperation("添加项目管理")
@PostMapping("/new")
public ApiResult<?> newProject(@RequestBody TowerProject towerProject) {
// 记录当前登录用户id
User loginUser = getLoginUser();
if (loginUser != null) {
towerProject.setUserId(loginUser.getUserId());
}
towerProjectService.save(towerProject);
return success(towerProject);
}
@PreAuthorize("hasAuthority('tower:towerProject:save')")
@Transactional(rollbackFor = {Exception.class})
@ApiOperation("添加项目管理")
@@ -76,42 +123,42 @@ public class TowerProjectController extends BaseController {
// 记录当前登录用户id
User loginUser = getLoginUser();
if (loginUser != null) {
towerProject.setUserId(loginUser.getUserId());
towerProject.setUserId(loginUser.getUserId());
}
System.out.println("towerProject = " + towerProject.getPlaces2());
System.out.println("towerProject = " + towerProject.getPlaces2());
if (towerProjectService.save(towerProject)) {
final Integer projectId = towerProject.getProjectId();
final Integer projectId = towerProject.getProjectId();
// 批量添加项目成员
if (!towerProject.getUsers().isEmpty()) {
final Set<TowerProjectUser> users = towerProject.getUsers();
users.forEach(d->{
d.setProjectId(projectId);
});
towerProjectUserService.saveBatch(users);
final Set<TowerProjectUser> users = towerProject.getUsers();
users.forEach(d -> {
d.setProjectId(projectId);
});
towerProjectUserService.saveBatch(users);
}
// 批量添加项目订单
if (!towerProject.getOrders().isEmpty()) {
final Set<TowerProjectOrder> orders = towerProject.getOrders();
orders.forEach(d->{
d.setProjectId(projectId);
});
towerProjectOrderService.saveBatch(orders);
final Set<TowerProjectOrder> orders = towerProject.getOrders();
orders.forEach(d -> {
d.setProjectId(projectId);
});
towerProjectOrderService.saveBatch(orders);
}
// 批量添加检查部位配置
if (!towerProject.getPlaces1().isEmpty()) {
final Set<TowerProjectPlace> places1 = towerProject.getPlaces1();
places1.forEach(d->{
d.setProjectId(projectId);
});
towerProjectPlaceService.saveBatch(places1);
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);
final Set<TowerProjectPlace> places2 = towerProject.getPlaces2();
places2.forEach(d -> {
d.setProjectId(projectId);
});
towerProjectPlaceService.saveBatch(places2);
}
return success("添加成功");
}
@@ -127,7 +174,25 @@ public class TowerProjectController extends BaseController {
// 批量修改项目成员
towerProjectUserService.saveOrUpdateBatch(towerProject.getUsers());
// 批量修改项目订单
towerProjectOrderService.saveOrUpdateBatch(towerProject.getOrders());
Set<TowerProjectOrder> projectOrders = towerProject.getOrders();
if (towerProject.getProjectStatus().equals("建设中")) {
for (TowerProjectOrder order : projectOrders) {
equipmentService.update(
new LambdaUpdateWrapper<TowerEquipment>()
.eq(TowerEquipment::getFilingNo, order.getFilingNo())
.set(TowerEquipment::getStatus, 4)
);
}
} else if (towerProject.getProjectStatus().equals("完工")) {
for (TowerProjectOrder order : projectOrders) {
equipmentService.update(
new LambdaUpdateWrapper<TowerEquipment>()
.eq(TowerEquipment::getFilingNo, order.getFilingNo())
.set(TowerEquipment::getStatus, 0)
);
}
}
towerProjectOrderService.saveOrUpdateBatch(projectOrders);
// 批量修改检查/保养部位配置
towerProjectPlaceService.saveOrUpdateBatch(towerProject.getPlaces1());
towerProjectPlaceService.saveOrUpdateBatch(towerProject.getPlaces2());

View File

@@ -1,11 +1,13 @@
package com.gxwebsoft.tower.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.gxwebsoft.common.core.annotation.OperationLog;
import com.gxwebsoft.common.core.web.ApiResult;
import com.gxwebsoft.common.core.web.BaseController;
import com.gxwebsoft.common.core.web.BatchParam;
import com.gxwebsoft.common.core.web.PageResult;
import com.gxwebsoft.common.system.service.UserService;
import com.gxwebsoft.tower.entity.TowerProjectUser;
import com.gxwebsoft.tower.param.TowerProjectUserParam;
import com.gxwebsoft.tower.service.TowerProjectUserService;
@@ -29,14 +31,19 @@ import java.util.List;
public class TowerProjectUserController extends BaseController {
@Resource
private TowerProjectUserService towerProjectUserService;
@Resource
private UserService userService;
@PreAuthorize("hasAuthority('tower:towerProjectUser:list')")
@OperationLog
@ApiOperation("分页查询项目成员")
@GetMapping("/page")
public ApiResult<PageResult<TowerProjectUser>> page(TowerProjectUserParam param) {
// 使用关联查询
return success(towerProjectUserService.pageRel(param));
PageResult<TowerProjectUser> list = towerProjectUserService.pageRel(param);
for(TowerProjectUser projectUser: list.getList() ){
projectUser.setUser(userService.getById(projectUser.getUserId()));
}
return success(list);
}
@PreAuthorize("hasAuthority('tower:towerProjectUser:list')")

View File

@@ -1,8 +1,16 @@
package com.gxwebsoft.tower.controller;
import com.alipay.api.domain.AlipayCommerceLogisticsWaybillIstddetailQueryModel;
import com.alipay.api.domain.Contract;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.gxwebsoft.common.core.web.BaseController;
import com.gxwebsoft.common.system.entity.User;
import com.gxwebsoft.tower.entity.TowerContract;
import com.gxwebsoft.tower.entity.TowerSettle;
import com.gxwebsoft.tower.service.TowerContractService;
import com.gxwebsoft.tower.service.TowerContractSettleEquipmentService;
import com.gxwebsoft.tower.service.TowerSettleDetailService;
import com.gxwebsoft.tower.entity.TowerSettleDetail;
import com.gxwebsoft.tower.param.TowerSettleDetailParam;
@@ -11,12 +19,15 @@ import com.gxwebsoft.common.core.web.PageResult;
import com.gxwebsoft.common.core.web.PageParam;
import com.gxwebsoft.common.core.web.BatchParam;
import com.gxwebsoft.common.core.annotation.OperationLog;
import com.gxwebsoft.tower.service.TowerSettleService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.List;
/**
@@ -31,6 +42,10 @@ import java.util.List;
public class TowerSettleDetailController extends BaseController {
@Resource
private TowerSettleDetailService towerSettleDetailService;
@Resource
private TowerContractService towerContractService;
@Resource
private TowerSettleService towerSettleService;
@PreAuthorize("hasAuthority('tower:towerSettle:list')")
@OperationLog
@@ -109,9 +124,13 @@ public class TowerSettleDetailController extends BaseController {
@ApiOperation("批量添加合同结算详情")
@PostMapping("/batch")
public ApiResult<?> saveBatch(@RequestBody List<TowerSettleDetail> list) {
QueryWrapper<TowerSettleDetail> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("settle_id", list.get(0).getSettleId());
Integer settleId = list.get(0).getSettleId();
LambdaUpdateWrapper<TowerSettleDetail> lambdaUpdateWrapper = new LambdaUpdateWrapper<>();
lambdaUpdateWrapper.eq(TowerSettleDetail::getSettleId, settleId)
.set(TowerSettleDetail::getDeleted, 1);
towerSettleDetailService.update(lambdaUpdateWrapper);
if (towerSettleDetailService.saveBatch(list)) {
setSettleAmount(settleId);
return success("添加成功");
}
return fail("添加失败");
@@ -128,6 +147,31 @@ public class TowerSettleDetailController extends BaseController {
return fail("修改失败");
}
private void setSettleAmount(Integer settleId) {
List<TowerSettleDetail> list = towerSettleDetailService.list(
new LambdaQueryWrapper<TowerSettleDetail>().eq(TowerSettleDetail::getSettleId, settleId)
);
BigDecimal totalSettleAmount = BigDecimal.valueOf(0);
for (TowerSettleDetail towerSettleDetail : list) {
if (towerSettleDetail.getType().equals(0) || towerSettleDetail.getType().equals(2)) {
BigDecimal monthAmount = towerSettleDetail.getMonthAmount().multiply(BigDecimal.valueOf(towerSettleDetail.getMonth()));
BigDecimal dayAmount = towerSettleDetail.getDailyAmount().multiply(BigDecimal.valueOf(towerSettleDetail.getDay()));
totalSettleAmount = totalSettleAmount.add(monthAmount).add(dayAmount).multiply(towerSettleDetail.getPayRate().divide(BigDecimal.valueOf(100), RoundingMode.FLOOR));
} else if (towerSettleDetail.getType().equals(1) || towerSettleDetail.getType().equals(3)) {
BigDecimal amount = towerSettleDetail.getSingleAmount().multiply(BigDecimal.valueOf(towerSettleDetail.getNum()));
totalSettleAmount = totalSettleAmount.add(amount).divide(BigDecimal.valueOf(100), RoundingMode.FLOOR);
} else if (towerSettleDetail.getType().equals(4)) {
BigDecimal amount = towerSettleDetail.getSingleAmount().multiply(BigDecimal.valueOf(towerSettleDetail.getNum()));
totalSettleAmount = totalSettleAmount.subtract(amount).divide(BigDecimal.valueOf(100), RoundingMode.FLOOR);
}
}
TowerSettle towerSettle = towerSettleService.getByIdRel(list.get(0).getSettleId());
TowerContract contract = towerContractService.getById(towerSettle.getContractId());
contract.setTotalSettleAmount(totalSettleAmount);
System.out.println("totalSettleAmount: " + totalSettleAmount);
towerContractService.updateById(contract);
}
@PreAuthorize("hasAuthority('tower:towerSettle:remove')")
@OperationLog
@ApiOperation("批量删除合同结算详情")

View File

@@ -56,6 +56,9 @@ public class TowerAccessory implements Serializable {
@ApiModelProperty(value = "重量")
private String accessoryWeight;
@ApiModelProperty(value = "数量")
private Integer accessoryNum;
@ApiModelProperty(value = "库存总量")
private Integer accessoryStock;
@@ -78,6 +81,10 @@ public class TowerAccessory implements Serializable {
@JsonFormat(pattern = "yyyy-MM-dd")
private Date factoryDate;
@ApiModelProperty(value = "购买日期")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date buyDate;
@ApiModelProperty(value = "报废日期")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date scrapDate;

View File

@@ -44,6 +44,9 @@ public class TowerContract implements Serializable {
@ApiModelProperty(value = "业务负责人")
private String customerContact;
@ApiModelProperty(value = "备案编号")
private String filingNo;
@ApiModelProperty(value = "合同编号")
private String contactNumber;
@@ -94,6 +97,9 @@ public class TowerContract implements Serializable {
@ApiModelProperty(value = "累计收款金额")
private BigDecimal totalIncomeAmount;
@ApiModelProperty(value = "累计结算金额")
private BigDecimal totalSettleAmount;
@ApiModelProperty(value = "租户id")
private Integer tenantId;
@@ -103,6 +109,15 @@ public class TowerContract implements Serializable {
@ApiModelProperty(value = "修改时间")
private LocalDateTime updateTime;
@ApiModelProperty(value = "修改时间")
private String remark;
@ApiModelProperty(value = "文件列表")
private String fileList;
@ApiModelProperty(value = "支付比例")
private BigDecimal payRate;
@TableField(exist = false)
private String projectName;
@@ -111,4 +126,6 @@ public class TowerContract implements Serializable {
@TableField(exist = false)
private String customerName;
}

View File

@@ -2,6 +2,7 @@ package com.gxwebsoft.tower.entity;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableLogic;
@@ -58,6 +59,12 @@ public class TowerContractSettleEquipment implements Serializable {
@ApiModelProperty(value = "其他费用")
private BigDecimal otherAmount;
@ApiModelProperty(value = "其他费用计算模式(0每月1一次性)")
private Integer otherAmountCalMode;
@ApiModelProperty(value = "预埋费")
private BigDecimal preBuryAmount;
private String remark;
@ApiModelProperty(value = "所有人")
@@ -76,4 +83,8 @@ public class TowerContractSettleEquipment implements Serializable {
@ApiModelProperty(value = "修改时间")
private LocalDateTime updateTime;
@ApiModelProperty(value = "累计应收金额/预计产值")
@TableField(exist = false)
private BigDecimal totalReceivableAmount;
}

View File

@@ -12,6 +12,7 @@ import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* 塔吊设备管理
@@ -165,4 +166,20 @@ public class TowerEquipment implements Serializable {
@ApiModelProperty(value = "修改时间")
private Date updateTime;
@ApiModelProperty(value = "历史所在项目列表")
@TableField(exist = false)
private List<TowerProject> projectList;
@ApiModelProperty(value = "所在项目名")
@TableField(exist = false)
private String projectName;
@ApiModelProperty(value = "定检状态")
@TableField(exist = false)
private String securityStatus;
@ApiModelProperty(value = "主管部门")
@TableField(exist = false)
private String competentDepartment;
}

View File

@@ -51,6 +51,9 @@ public class TowerFall implements Serializable {
@ApiModelProperty(value = "报废日期")
private Date discardDate;
@ApiModelProperty(value = "检测日期")
private String checkDate;
@ApiModelProperty(value = "出厂检测报告")
private String file1;

View File

@@ -44,6 +44,9 @@ public class TowerIncome implements Serializable {
@ApiModelProperty(value = "收款单位")
private Integer incomeCompanyId;
@ApiModelProperty(value = "付款单位")
private Integer payCompanyId;
@ApiModelProperty(value = "收款金额")
private BigDecimal amount;

View File

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.gxwebsoft.common.system.entity.User;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@@ -11,6 +12,7 @@ import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.util.Date;
import java.util.Map;
import java.util.Set;
/**
@@ -38,12 +40,21 @@ public class TowerProject implements Serializable {
@ApiModelProperty(value = "租赁单位")
private String companyName;
@ApiModelProperty(value = "租赁单位")
private Integer companyId;
@ApiModelProperty(value = "承租单位")
private String customerName;
@ApiModelProperty(value = "承租单位")
private Integer customerId;
@ApiModelProperty(value = "项目地址")
private String projectRegion;
@ApiModelProperty(value = "项目所在地")
private String projectCity;
@ApiModelProperty(value = "详细地址")
private String projectAddress;
@@ -77,6 +88,9 @@ public class TowerProject implements Serializable {
@ApiModelProperty(value = "项目负责人")
private String director;
@TableField(exist = false)
private User directorUser;
@ApiModelProperty(value = "项目经理")
private String projectDirector;
@@ -86,6 +100,9 @@ public class TowerProject implements Serializable {
@ApiModelProperty(value = "业务员")
private String salesman;
@ApiModelProperty(value = "标地列表")
private String placeList;
@ApiModelProperty(value = "状态, 0待发布, 1已发布")
private Integer status;
@@ -127,4 +144,23 @@ public class TowerProject implements Serializable {
@TableField(exist = false)
private Set<TowerProjectPlace> places2;
@ApiModelProperty(value = "是否已有安装单派单")
@TableField(exist = false)
private boolean hasSetUpWorksheet;
@ApiModelProperty(value = "派单类型")
@TableField(exist = false)
private Integer worksheetType;
@ApiModelProperty(value = "派单设备类型")
@TableField(exist = false)
private Integer worksheetEquipType;
@ApiModelProperty(value = "各派单类型数量")
@TableField(exist = false)
private Map<Integer, Integer> worksheetWorkTypeNumList;
@ApiModelProperty(value = "关联设备数")
@TableField(exist = false)
private Integer equipmentNum;
}

View File

@@ -36,12 +36,21 @@ public class TowerProjectOrder implements Serializable {
@ApiModelProperty(value = "项目ID")
private Integer projectId;
@ApiModelProperty(value = "设备Id")
private Integer equipmentId;
@ApiModelProperty(value = "设备名称")
private String equipmentName;
@ApiModelProperty(value = "规格型号")
private String equipmentModel;
@ApiModelProperty(value = "备案编号")
private String filingNo;
@ApiModelProperty(value = "出厂编号")
private String factoryNo;
@ApiModelProperty(value = "签订数量")
private Integer equipmentNum;
@@ -84,4 +93,17 @@ public class TowerProjectOrder implements Serializable {
@ApiModelProperty(value = "创建时间")
private Date createTime;
@ApiModelProperty(value = "定检状态")
private String securityStatus;
@ApiModelProperty(value = "制造厂商")
@TableField(exist = false)
private String manufactor;
@ApiModelProperty(value = "报废日期")
@TableField(exist = false)
@JsonFormat(pattern = "yyyy-MM-dd")
private Date scrapDate;
}

View File

@@ -3,6 +3,7 @@ package com.gxwebsoft.tower.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.gxwebsoft.common.system.entity.User;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@@ -69,4 +70,9 @@ public class TowerProjectUser implements Serializable {
@TableField(exist = false)
private String organizationName;
@TableField(exist = false)
private User user;
}

View File

@@ -53,6 +53,15 @@ public class TowerSettleDetail implements Serializable {
@ApiModelProperty(value = "月租金/月工资")
private BigDecimal monthAmount;
@ApiModelProperty(value = "日租金")
private BigDecimal dailyAmount;
@ApiModelProperty(value = "多少月")
private Integer month;
@ApiModelProperty(value = "多少日")
private Integer day;
@ApiModelProperty(value = "税率")
private BigDecimal taxRate;
@@ -78,10 +87,19 @@ public class TowerSettleDetail implements Serializable {
@ApiModelProperty(value = "租户id")
private Integer tenantId;
@ApiModelProperty(value = "支付比例")
private BigDecimal payRate;
@ApiModelProperty(value = "创建时间")
private LocalDateTime createTime;
@ApiModelProperty(value = "修改时间")
private LocalDateTime updateTime;
@ApiModelProperty(value = "进场时间")
private LocalDateTime inDate;
@ApiModelProperty(value = "退场时间")
private LocalDateTime outDate;
}

View File

@@ -4,8 +4,14 @@
<!-- 关联查询sql -->
<sql id="selectSql">
SELECT a.*
SELECT a.*,
b.project_name,
c.name AS customer_name,
d.company_name
FROM tower_contract a
LEFT JOIN tower_project b ON a.project_id = b.project_id
LEFT JOIN tower_customer c ON a.customer_id = c.customer_id
LEFT JOIN sys_company d ON a.company_id = d.company_id
<where>
<if test="param.contractId != null">
AND a.contract_id = #{param.contractId}
@@ -19,6 +25,9 @@
<if test="param.customerId != null">
AND a.customer_id = #{param.customerId}
</if>
<if test="param.keywords != null">
AND (a.contact_number LIKE CONCAT('%', #{param.keywords}, '%') OR b.project_name LIKE CONCAT('%', #{param.keywords}, '%'))
</if>
<if test="param.customerContact != null">
AND a.customer_contact LIKE CONCAT('%', #{param.customerContact}, '%')
</if>

View File

@@ -55,6 +55,15 @@
<if test="param.createTimeEnd != null">
AND a.create_time &lt;= #{param.createTimeEnd}
</if>
<if test="param.keywords != null">
AND (
a.name LIKE CONCAT('%', #{param.keywords}, '%')
OR a.full_name LIKE CONCAT('%', #{param.keywords}, '%')
OR a.credit_code LIKE CONCAT('%', #{param.keywords}, '%')
OR a.address LIKE CONCAT('%', #{param.keywords}, '%')
OR a.contact LIKE CONCAT('%', #{param.keywords}, '%')
)
</if>
</where>
</sql>

View File

@@ -91,12 +91,17 @@
<if test="param.createTimeEnd != null">
AND a.create_time &lt;= #{param.createTimeEnd}
</if>
<if test="param.equipmentIdList != null">
AND a.equipment_id IN (#{param.equipmentIdList})
</if>
<if test="param.keywords != null">
AND (
a.name LIKE CONCAT('%', #{param.keywords}, '%')
OR a.model LIKE CONCAT('%', #{param.keywords}, '%')
OR a.equipment_no LIKE CONCAT('%', #{param.keywords}, '%')
OR a.company LIKE CONCAT('%', #{param.keywords}, '%')
OR a.filing_no LIKE CONCAT('%', #{param.keywords}, '%')
OR a.factory_no LIKE CONCAT('%', #{param.keywords}, '%')
)
</if>
</where>

View File

@@ -88,6 +88,9 @@
<if test="param.createTimeEnd != null">
AND a.create_time &lt;= #{param.createTimeEnd}
</if>
<if test="param.keywords != null">
AND ( a.project_name LIKE CONCAT('%', #{param.keywords}, '%') )
</if>
</where>
</sql>

View File

@@ -9,6 +9,7 @@
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>
AND a.user_id != 0
<if test="param.id != null">
AND a.id = #{param.id}
</if>
@@ -38,6 +39,7 @@
)
</if>
</where>
GROUP BY a.user_id
</sql>
<!-- 分页查询 -->

View File

@@ -1,5 +1,6 @@
package com.gxwebsoft.tower.param;
import com.baomidou.mybatisplus.annotation.TableField;
import com.gxwebsoft.common.core.annotation.QueryField;
import com.gxwebsoft.common.core.annotation.QueryType;
import com.gxwebsoft.common.core.web.BaseParam;
@@ -9,6 +10,8 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.List;
/**
* 塔吊设备管理查询参数
*
@@ -107,4 +110,21 @@ public class TowerEquipmentParam extends BaseParam {
@QueryField(type = QueryType.EQ)
private Integer deleted;
@ApiModelProperty(value = "是否仅显示未绑定项目设备")
@TableField(exist = false)
private Boolean idleOnly;
@ApiModelProperty(value = "是否仅显示未绑定项目设备")
@TableField(exist = false)
private List<String> notInFilingNoList;
@TableField(exist = false)
private List<Integer> equipmentIdList;
@TableField(exist = false)
private String keywords;
@TableField(exist = false)
private Integer yearFilter;
}

View File

@@ -125,4 +125,21 @@ public class TowerProjectParam extends BaseParam {
@TableField(exist = false)
private Set<TowerProjectPlace> places2;
@ApiModelProperty(value = "派单类型")
@TableField(exist = false)
private Integer worksheetType;
@ApiModelProperty(value = "派单设备类型")
@TableField(exist = false)
private Integer worksheetEquipType;
@ApiModelProperty(value = "派单作业类型")
@TableField(exist = false)
private Integer worksheetWortType;
@ApiModelProperty("搜索关键字")
@TableField(exist = false)
private String keywords;
}