|
@@ -112,12 +112,12 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
|
|
|
* @description 根据计划id和公司id查询是否有保养记录
|
|
|
* @date 2020/1/20 2:41 下午
|
|
|
*/
|
|
|
- public boolean count(Long planId, Long mtCompanyId, Long workerId) {
|
|
|
+ public MaintenanceRecord findOne(Long planId, Long mtCompanyId, Long liftId) {
|
|
|
LambdaQueryWrapper<MaintenanceRecord> lambdaQueryWrapper = Wrappers.lambdaQuery();
|
|
|
lambdaQueryWrapper.eq(MaintenanceRecord::getMtPlanId, planId);
|
|
|
lambdaQueryWrapper.eq(MaintenanceRecord::getMtCompanyId, mtCompanyId);
|
|
|
- lambdaQueryWrapper.eq(MaintenanceRecord::getWorkerId, workerId);
|
|
|
- return count(lambdaQueryWrapper) > 0;
|
|
|
+ lambdaQueryWrapper.eq(MaintenanceRecord::getLiftId,liftId);
|
|
|
+ return getOne(lambdaQueryWrapper);
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -181,22 +181,17 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
|
|
|
MaintenanceRecord record = request.getRecord();
|
|
|
Long planId = record.getMtPlanId();
|
|
|
Long mtCompanyId = record.getMtCompanyId();
|
|
|
- Long workerId = record.getWorkerId();
|
|
|
Long liftId = record.getLiftId();
|
|
|
request.setCurrentTime(LocalDate.now());
|
|
|
//校验电梯是否定位
|
|
|
String liftCoordinate = getCoordinate(liftId);
|
|
|
if (StrUtil.isEmpty(liftCoordinate)) return RestResponse.fail(MessageUtils.get("msg.lift.not.position"));
|
|
|
- //查询该电梯是否有保养记录
|
|
|
- boolean count = count(planId, mtCompanyId, workerId);
|
|
|
- if (count)
|
|
|
- return RestResponse.fail(MessageUtils.get("msg.exist.record"));
|
|
|
- String coordinate = request.getCoordinate();
|
|
|
//校验是否为经纬度
|
|
|
// boolean verifyResult = VerifyUtils.preJudgment(coordinate);
|
|
|
// if (!verifyResult)
|
|
|
// return RestResponse.fail(MessageUtils.get("msg.longitude.error"));
|
|
|
//维保工是否在电梯附近
|
|
|
+ String coordinate = request.getCoordinate();
|
|
|
boolean result = calc(liftCoordinate, coordinate);
|
|
|
if (result)
|
|
|
return RestResponse.fail(MessageUtils.get("msg.error.person.scope"));
|
|
@@ -229,10 +224,20 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
|
|
|
record.setWorkDate(LocalDate.now());
|
|
|
record.setPlanDate(plan.getPlanDate());
|
|
|
record.setStopDate(LocalDateTime.now());
|
|
|
- boolean ret = save(record);
|
|
|
- if (!ret) {
|
|
|
- rollback();
|
|
|
- return RestResponse.fail(MessageUtils.get("msg.add.fail"));
|
|
|
+ MaintenanceRecord one = findOne(planId, mtCompanyId, liftId);
|
|
|
+ if (Objects.isNull(one)){
|
|
|
+ boolean ret = save(record);
|
|
|
+ if (!ret) {
|
|
|
+ rollback();
|
|
|
+ return RestResponse.fail(MessageUtils.get("msg.add.fail"));
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ record.setId(one.getId());
|
|
|
+ boolean ret = updateById(record);
|
|
|
+ if (!ret) {
|
|
|
+ rollback();
|
|
|
+ return RestResponse.fail(MessageUtils.get("msg.modify.fail"));
|
|
|
+ }
|
|
|
}
|
|
|
} else {
|
|
|
return RestResponse.fail(MessageUtils.get("msg.add.fail"));
|