This commit is contained in:
parent
15531ae029
commit
48984a494d
@ -0,0 +1,41 @@
|
|||||||
|
package org.dromara.property.controller.mobile;
|
||||||
|
|
||||||
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import org.dromara.common.core.domain.R;
|
||||||
|
import org.dromara.common.core.validate.AddGroup;
|
||||||
|
import org.dromara.common.idempotent.annotation.RepeatSubmit;
|
||||||
|
import org.dromara.common.log.annotation.Log;
|
||||||
|
import org.dromara.common.log.enums.BusinessType;
|
||||||
|
import org.dromara.common.web.core.BaseController;
|
||||||
|
import org.dromara.property.domain.bo.mobile.MServiceWorkOrdersBo;
|
||||||
|
import org.dromara.property.service.IServiceWorkOrdersService;
|
||||||
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
import org.springframework.web.bind.annotation.PostMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 【业务管理-工单处理】
|
||||||
|
*
|
||||||
|
* @author mocheng
|
||||||
|
* @date 2025-07-07
|
||||||
|
*/
|
||||||
|
@Validated
|
||||||
|
@RequiredArgsConstructor
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/mobile/workOrders")
|
||||||
|
public class MServiceWorkOrdersController extends BaseController {
|
||||||
|
|
||||||
|
private final IServiceWorkOrdersService serviceWorkOrdersService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 小程序新增【工单处理】
|
||||||
|
*/
|
||||||
|
@Log(title = "【小程序新增工单处理】", businessType = BusinessType.INSERT)
|
||||||
|
@RepeatSubmit()
|
||||||
|
@PostMapping()
|
||||||
|
public R<Void> add(@Validated(AddGroup.class) @RequestBody MServiceWorkOrdersBo bo) {
|
||||||
|
return toAjax(serviceWorkOrdersService.insertMServiceWorkOrdersBo(bo));
|
||||||
|
}
|
||||||
|
}
|
@ -101,6 +101,10 @@ public class ServiceWorkOrdersBo extends BaseEntity {
|
|||||||
* 图片
|
* 图片
|
||||||
*/
|
*/
|
||||||
private String imgUrl;
|
private String imgUrl;
|
||||||
|
/**
|
||||||
|
* 工单图片
|
||||||
|
*/
|
||||||
|
private String orderImgUrl;
|
||||||
/**
|
/**
|
||||||
* 备注
|
* 备注
|
||||||
*/
|
*/
|
||||||
|
@ -0,0 +1,113 @@
|
|||||||
|
package org.dromara.property.domain.bo.mobile;
|
||||||
|
|
||||||
|
|
||||||
|
import cn.idev.excel.annotation.ExcelProperty;
|
||||||
|
import io.github.linpeilie.annotations.AutoMapper;
|
||||||
|
import jakarta.validation.constraints.NotNull;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.EqualsAndHashCode;
|
||||||
|
import org.dromara.common.core.validate.EditGroup;
|
||||||
|
import org.dromara.common.mybatis.core.domain.BaseEntity;
|
||||||
|
import org.dromara.property.domain.ServiceWorkOrders;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 【工单处理】业务对象 小程序端新增工单
|
||||||
|
*
|
||||||
|
* @author mocheng
|
||||||
|
* @date 2025-07-07
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
@EqualsAndHashCode(callSuper = true)
|
||||||
|
@AutoMapper(target = ServiceWorkOrders.class, reverseConvertGenerate = false)
|
||||||
|
public class MServiceWorkOrdersBo extends BaseEntity {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* id
|
||||||
|
*/
|
||||||
|
@NotNull(message = "id不能为空", groups = { EditGroup.class })
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 工单编号
|
||||||
|
*/
|
||||||
|
private String orderNo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 权重
|
||||||
|
*/
|
||||||
|
@ExcelProperty(value = "权重")
|
||||||
|
private String processingWeight;
|
||||||
|
/**
|
||||||
|
* 工单类型
|
||||||
|
*/
|
||||||
|
@NotNull(message = "工单类型不能为空", groups = { EditGroup.class })
|
||||||
|
private Long type;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 状态
|
||||||
|
*/
|
||||||
|
private String status;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 派单时间
|
||||||
|
*/
|
||||||
|
private Date dispatchTime;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 发起人姓名
|
||||||
|
*/
|
||||||
|
private String initiatorName;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 处理人姓名
|
||||||
|
*/
|
||||||
|
private Long handler;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 地址
|
||||||
|
*/
|
||||||
|
@NotNull(message = "地址不能为空", groups = { EditGroup.class })
|
||||||
|
|
||||||
|
private String location;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 计划完成时间
|
||||||
|
*/
|
||||||
|
//@NotNull(message = "计划完成时间不能为空", groups = { EditGroup.class })
|
||||||
|
private Date planCompleTime;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 完成时间
|
||||||
|
*/
|
||||||
|
private Date compleTime;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 评价
|
||||||
|
*/
|
||||||
|
private Integer serviceEvalua;
|
||||||
|
/**
|
||||||
|
* 评价文本
|
||||||
|
*/
|
||||||
|
private String serviceEvaluaText;
|
||||||
|
/**
|
||||||
|
* 图片
|
||||||
|
*/
|
||||||
|
private String imgUrl;
|
||||||
|
/**
|
||||||
|
* 工单图片
|
||||||
|
*/
|
||||||
|
private String orderImgUrl;
|
||||||
|
/**
|
||||||
|
* 备注
|
||||||
|
*/
|
||||||
|
private String remark;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 是否超时
|
||||||
|
*/
|
||||||
|
private String isTimeOut;
|
||||||
|
|
||||||
|
}
|
@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
|
|||||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||||
import org.dromara.property.domain.bo.ServiceWorkOrdersBo;
|
import org.dromara.property.domain.bo.ServiceWorkOrdersBo;
|
||||||
|
import org.dromara.property.domain.bo.mobile.MServiceWorkOrdersBo;
|
||||||
import org.dromara.property.domain.vo.ServiceWorkOrderAnalysisVo;
|
import org.dromara.property.domain.vo.ServiceWorkOrderAnalysisVo;
|
||||||
import org.dromara.property.domain.vo.ServiceWorkOrdersInfoVo;
|
import org.dromara.property.domain.vo.ServiceWorkOrdersInfoVo;
|
||||||
import org.dromara.property.domain.vo.ServiceWorkOrdersVo;
|
import org.dromara.property.domain.vo.ServiceWorkOrdersVo;
|
||||||
@ -75,4 +76,15 @@ public interface IServiceWorkOrdersService {
|
|||||||
*/
|
*/
|
||||||
ServiceWorkOrderAnalysisVo counts();
|
ServiceWorkOrderAnalysisVo counts();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//小程序端新增
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增工单
|
||||||
|
* @param bo
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
Boolean insertMServiceWorkOrdersBo(MServiceWorkOrdersBo bo);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -22,6 +22,7 @@ import org.dromara.property.domain.ServiceWorkOrders;
|
|||||||
import org.dromara.property.domain.ServiceWorkOrdersRecord;
|
import org.dromara.property.domain.ServiceWorkOrdersRecord;
|
||||||
import org.dromara.property.domain.ServiceWorkOrdersType;
|
import org.dromara.property.domain.ServiceWorkOrdersType;
|
||||||
import org.dromara.property.domain.bo.ServiceWorkOrdersBo;
|
import org.dromara.property.domain.bo.ServiceWorkOrdersBo;
|
||||||
|
import org.dromara.property.domain.bo.mobile.MServiceWorkOrdersBo;
|
||||||
import org.dromara.property.domain.vo.*;
|
import org.dromara.property.domain.vo.*;
|
||||||
import org.dromara.property.mapper.ResidentPersonMapper;
|
import org.dromara.property.mapper.ResidentPersonMapper;
|
||||||
import org.dromara.property.mapper.ServiceWorkOrdersMapper;
|
import org.dromara.property.mapper.ServiceWorkOrdersMapper;
|
||||||
@ -495,4 +496,28 @@ public class ServiceWorkOrdersServiceImpl implements IServiceWorkOrdersService {
|
|||||||
.map(month -> new ServiceWorkOrderAnalysisVo.BarChartVo(month, Math.toIntExact(orderCountMap.getOrDefault(month, 0L))))
|
.map(month -> new ServiceWorkOrderAnalysisVo.BarChartVo(month, Math.toIntExact(orderCountMap.getOrDefault(month, 0L))))
|
||||||
.collect(Collectors.toList());
|
.collect(Collectors.toList());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//小程序端新增
|
||||||
|
@Override
|
||||||
|
public Boolean insertMServiceWorkOrdersBo(MServiceWorkOrdersBo bo) {
|
||||||
|
ServiceWorkOrders add = MapstructUtils.convert(bo, ServiceWorkOrders.class);
|
||||||
|
LoginUser user = LoginHelper.getLoginUser();
|
||||||
|
add.setOrderNo("GD" + IdUtil.getSnowflakeNextIdStr());
|
||||||
|
add.setStatus("0");
|
||||||
|
add.setInitiatorPeople(user.getNickname());
|
||||||
|
validEntityBeforeSave(add);
|
||||||
|
boolean flag = baseMapper.insert(add) > 0;
|
||||||
|
if (flag) {
|
||||||
|
bo.setId(add.getId());
|
||||||
|
ServiceWorkOrdersRecord serviceWorkOrdersRecord = new ServiceWorkOrdersRecord();
|
||||||
|
serviceWorkOrdersRecord.setOrderId(add.getId());
|
||||||
|
serviceWorkOrdersRecord.setStatus(add.getStatus());
|
||||||
|
workOrdersRecordMapper.insert(serviceWorkOrdersRecord);
|
||||||
|
}
|
||||||
|
return flag;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user