1. 派单记录
This commit is contained in:
parent
129c2f4b01
commit
321132766b
|
|
@ -117,4 +117,10 @@ public class TerminalQuery extends CommonParam {
|
|||
*/
|
||||
@Condition(name = "`project_id`", type = Condition.ConditionType.eq, tableName = "p")
|
||||
private Long projectId;
|
||||
|
||||
/**
|
||||
* 用户id
|
||||
*/
|
||||
@Condition(name = "`user_id`", type = Condition.ConditionType.eq, tableName = "i")
|
||||
private Long userId;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@ package com.chushang.inspection.terminal.vo;
|
|||
|
||||
import cn.hutool.core.date.DatePattern;
|
||||
import com.alibaba.excel.annotation.format.DateTimeFormat;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.chushang.common.dict.annotation.DictFormat;
|
||||
import lombok.Data;
|
||||
|
||||
|
|
@ -200,5 +201,35 @@ public class StoreTerminalVO {
|
|||
|
||||
private String deptName;
|
||||
|
||||
/**
|
||||
* 上次服务结果
|
||||
*/
|
||||
@DictFormat(dictType = "service_results")
|
||||
private Integer serviceResult;
|
||||
|
||||
/**
|
||||
* 审核通过次数
|
||||
*/
|
||||
private Integer timesPass;
|
||||
|
||||
/**
|
||||
* 地理位置信息地址
|
||||
*/
|
||||
private String geographicAddress;
|
||||
|
||||
/**
|
||||
* 巡检位置信息
|
||||
*/
|
||||
private String workLocation;
|
||||
/**
|
||||
* 地理位置信息
|
||||
*/
|
||||
private String geographicLocation;
|
||||
|
||||
/**
|
||||
* 地理位置信息地址
|
||||
*/
|
||||
private String workAddress;
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,34 @@
|
|||
package com.chushang.inspection.work.po;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.chushang.common.mybatis.base.BaseEntity;
|
||||
import lombok.*;
|
||||
|
||||
/**
|
||||
* @auther: zhao
|
||||
* @date: 2024/7/4 10:13
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper=true)
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@TableName(value = "wrk_info_dispatch")
|
||||
@Builder
|
||||
public class WrkInfoDispatch extends BaseEntity {
|
||||
@TableId(value = "id", type = IdType.ASSIGN_ID)
|
||||
private Long id;
|
||||
@TableField("wrk_id")
|
||||
private Long wrkId;
|
||||
@TableField("user_id")
|
||||
private Long userId;
|
||||
@TableField("dept_id")
|
||||
private Long deptId;
|
||||
/**
|
||||
* 派单状态
|
||||
*/
|
||||
@TableField("dis_status")
|
||||
private Integer disStatus;
|
||||
}
|
||||
|
|
@ -29,10 +29,11 @@ public class TerminalController {
|
|||
TerminalService terminalService;
|
||||
|
||||
/**
|
||||
* // 之前在这里是派单
|
||||
* 商户终端池
|
||||
* @param query 条件
|
||||
*/
|
||||
@SysLog(value = "终端", businessType = BusinessType.QUERY)
|
||||
@SysLog(value = "终端池", businessType = BusinessType.QUERY)
|
||||
@GetMapping("/page")
|
||||
@RequiresPermissions("ins:terminal:page")
|
||||
public AjaxResult pageList(@Validated TerminalQuery query) {
|
||||
|
|
|
|||
|
|
@ -1,12 +1,42 @@
|
|||
package com.chushang.inspection.work.controller;
|
||||
import com.chushang.common.core.web.AjaxResult;
|
||||
import com.chushang.common.log.annotation.SysLog;
|
||||
import com.chushang.common.log.enums.BusinessType;
|
||||
import com.chushang.inspection.terminal.query.TerminalQuery;
|
||||
import com.chushang.inspection.work.service.WrkInfoTerminalRecordService;
|
||||
import com.chushang.security.annotation.RequiresPermissions;
|
||||
import com.chushang.security.utils.SecurityUtils;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
/**
|
||||
* 工单终端信息(wrk_info_terminal_record)表控制层
|
||||
*
|
||||
* @author xxxxx
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/wrk_info_terminal_record")
|
||||
@RequestMapping("/wrk/info/terminal")
|
||||
public class WrkInfoTerminalRecordController {
|
||||
|
||||
/**
|
||||
* 我的终端池
|
||||
*/
|
||||
@Resource
|
||||
private WrkInfoTerminalRecordService terminalRecordService;
|
||||
|
||||
/**
|
||||
* 商户终端池
|
||||
* @param query 条件
|
||||
*/
|
||||
@SysLog(value = "我的终端池", businessType = BusinessType.QUERY)
|
||||
@GetMapping("/mine/page")
|
||||
@RequiresPermissions("ins:terminal:mine")
|
||||
public AjaxResult minePageList(@Validated TerminalQuery query) {
|
||||
// 获取当前用户的
|
||||
query.setUserId(SecurityUtils.getUserId());
|
||||
return AjaxResult.success(terminalRecordService.minePageList(query));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,11 @@
|
|||
package com.chushang.inspection.work.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.chushang.inspection.work.po.WrkInfoDispatch;
|
||||
|
||||
/**
|
||||
* @auther: zhao
|
||||
* @date: 2024/7/4 10:16
|
||||
*/
|
||||
public interface WrkInfoDispatchMapper extends BaseMapper<WrkInfoDispatch> {
|
||||
}
|
||||
|
|
@ -1,11 +1,21 @@
|
|||
package com.chushang.inspection.work.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.chushang.datascope.annotation.DataScope;
|
||||
import com.chushang.inspection.terminal.query.TerminalQuery;
|
||||
import com.chushang.inspection.terminal.vo.StoreTerminalVO;
|
||||
import com.chushang.inspection.work.po.WrkInfoTerminalRecord;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @auther: zhao
|
||||
* @date: 2024/6/26 17:13
|
||||
*/
|
||||
public interface WrkInfoTerminalRecordMapper extends BaseMapper<WrkInfoTerminalRecord> {
|
||||
@DataScope(deptAlias = "i")
|
||||
List<StoreTerminalVO> minePageList(@Param("query") TerminalQuery query,
|
||||
Page<StoreTerminalVO> page);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,26 +1,26 @@
|
|||
package com.chushang.inspection.work.service;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.util.IdUtil;
|
||||
import com.chushang.inspection.work.dto.DispatchDTO;
|
||||
import com.chushang.inspection.work.po.WrkInfo;
|
||||
import com.chushang.inspection.work.query.DispatchQuery;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface WrkInfoDispatch {
|
||||
|
||||
List<WrkInfo> dispatch(DispatchQuery query, List<DispatchDTO> dispatch);
|
||||
|
||||
default WrkInfo construct(DispatchQuery query, DispatchDTO record, String nickName, Long userId) {
|
||||
WrkInfo info = WrkInfo.builder().endTime(query.getEndTime() == null ? null : query.getEndTime())
|
||||
.wrkStatus(1).workType(query.getWorkType())
|
||||
.workNo(IdUtil.getSnowflake().nextId())
|
||||
.remark(query.getRemark()).workSort(query.getWorkSort())
|
||||
.userId(userId).workSource(query.getWorkSource())
|
||||
// 业务员名称 不随着用户表名称变化而变化
|
||||
.userName(nickName).build();
|
||||
BeanUtil.copyProperties(record, info);
|
||||
return info;
|
||||
}
|
||||
}
|
||||
//package com.chushang.inspection.work.service;
|
||||
//
|
||||
//import cn.hutool.core.bean.BeanUtil;
|
||||
//import cn.hutool.core.util.IdUtil;
|
||||
//import com.chushang.inspection.work.dto.DispatchDTO;
|
||||
//import com.chushang.inspection.work.po.WrkInfo;
|
||||
//import com.chushang.inspection.work.query.DispatchQuery;
|
||||
//
|
||||
//import java.util.List;
|
||||
//
|
||||
//public interface WrkInfoDispatch {
|
||||
//
|
||||
// List<WrkInfo> dispatch(DispatchQuery query, List<DispatchDTO> dispatch);
|
||||
//
|
||||
// default WrkInfo construct(DispatchQuery query, DispatchDTO record, String nickName, Long userId) {
|
||||
// WrkInfo info = WrkInfo.builder().endTime(query.getEndTime() == null ? null : query.getEndTime())
|
||||
// .wrkStatus(1).workType(query.getWorkType())
|
||||
// .workNo(IdUtil.getSnowflake().nextId())
|
||||
// .remark(query.getRemark()).workSort(query.getWorkSort())
|
||||
// .userId(userId).workSource(query.getWorkSource())
|
||||
// // 业务员名称 不随着用户表名称变化而变化
|
||||
// .userName(nickName).build();
|
||||
// BeanUtil.copyProperties(record, info);
|
||||
// return info;
|
||||
// }
|
||||
//}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,11 @@
|
|||
package com.chushang.inspection.work.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.chushang.inspection.work.po.WrkInfoDispatch;
|
||||
|
||||
/**
|
||||
* @auther: zhao
|
||||
* @date: 2024/7/4 10:31
|
||||
*/
|
||||
public interface WrkInfoDispatchService extends IService<WrkInfoDispatch> {
|
||||
}
|
||||
|
|
@ -1,12 +1,15 @@
|
|||
package com.chushang.inspection.work.service;
|
||||
|
||||
import com.chushang.common.mybatis.utils.PageResult;
|
||||
import com.chushang.inspection.terminal.query.TerminalQuery;
|
||||
import com.chushang.inspection.work.po.WrkInfoTerminalRecord;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
/**
|
||||
* @auther: zhao
|
||||
* @date: 2024/6/26 17:13
|
||||
*/
|
||||
public interface WrkInfoTerminalRecordService extends IService<WrkInfoTerminalRecord> {
|
||||
|
||||
|
||||
PageResult minePageList(TerminalQuery query);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,17 @@
|
|||
package com.chushang.inspection.work.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.chushang.inspection.work.mapper.WrkInfoDispatchMapper;
|
||||
import com.chushang.inspection.work.po.WrkInfoDispatch;
|
||||
import com.chushang.inspection.work.service.WrkInfoDispatchService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* @auther: zhao
|
||||
* @date: 2024/7/4 10:34
|
||||
*/
|
||||
@Slf4j
|
||||
@Service
|
||||
public class WrkInfoDispatchServiceImpl extends ServiceImpl<WrkInfoDispatchMapper, WrkInfoDispatch> implements WrkInfoDispatchService {
|
||||
}
|
||||
|
|
@ -308,13 +308,14 @@ public class WrkInfoServiceImpl extends ServiceImpl<WrkInfoMapper, WrkInfo> impl
|
|||
tempStorageTerminalInsRecord.setInspectionStatus(1);
|
||||
tempStorageTerminalInsRecord.setInspectionTime(now);
|
||||
|
||||
// 这块 可能为新增商户以及终端信息
|
||||
// 更新商户 信息, 同时 也需要更新
|
||||
// 更新商户状态
|
||||
storeService.updateById(store);
|
||||
storeService.saveOrUpdate(store);
|
||||
// 更新终端状态
|
||||
terminalService.updateById(terminal);
|
||||
terminalService.saveOrUpdate(terminal);
|
||||
// 更新终端巡检时间以及审核通过次数等
|
||||
terminalInsService.updateById(terminalIns);
|
||||
terminalInsService.saveOrUpdate(terminalIns);
|
||||
// 还需要 更改 记录表对应的数据.
|
||||
}
|
||||
// 需要初审
|
||||
|
|
@ -497,7 +498,8 @@ public class WrkInfoServiceImpl extends ServiceImpl<WrkInfoMapper, WrkInfo> impl
|
|||
wrkInfoStoreRecordService.save(wrkInfoStoreRecord);
|
||||
}
|
||||
}
|
||||
}else if(method.equals(1) || method.equals(2)){
|
||||
}
|
||||
else if(method.equals(1) || method.equals(2)){
|
||||
Assert.notNull(query.getUserId(), "需要指定业务员");
|
||||
Result<SysUser> result = userFeignService.getInfoById(query.getUserId(), SecurityConstants.INNER);
|
||||
if(result.isSuccess()){
|
||||
|
|
@ -522,5 +524,6 @@ public class WrkInfoServiceImpl extends ServiceImpl<WrkInfoMapper, WrkInfo> impl
|
|||
}
|
||||
}
|
||||
}
|
||||
//
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,16 +1,54 @@
|
|||
package com.chushang.inspection.work.service.impl;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.chushang.common.core.constant.SecurityConstants;
|
||||
import com.chushang.common.mybatis.page.CommonParam;
|
||||
import com.chushang.common.mybatis.utils.PageResult;
|
||||
import com.chushang.common.mybatis.utils.WrapperUtils;
|
||||
import com.chushang.inspection.terminal.query.TerminalQuery;
|
||||
import com.chushang.inspection.terminal.vo.StoreTerminalVO;
|
||||
import com.chushang.inspection.work.service.WrkInfoTerminalRecordService;
|
||||
import com.chushang.system.feign.RemoteDeptService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.chushang.inspection.work.mapper.WrkInfoTerminalRecordMapper;
|
||||
import com.chushang.inspection.work.po.WrkInfoTerminalRecord;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @auther: zhao
|
||||
* @date: 2024/6/26 17:13
|
||||
*/
|
||||
@Slf4j
|
||||
@Service
|
||||
public class WrkInfoTerminalRecordServiceImpl extends ServiceImpl<WrkInfoTerminalRecordMapper, WrkInfoTerminalRecord> implements WrkInfoTerminalRecordService {
|
||||
|
||||
@Resource
|
||||
private RemoteDeptService remoteDeptService;
|
||||
/**
|
||||
* 我的终端池
|
||||
*/
|
||||
@Override
|
||||
public PageResult minePageList(TerminalQuery query) {
|
||||
WrapperUtils.buildSql(query);
|
||||
CommonParam commonParam = CommonParam.buildPageRequest();
|
||||
Page<StoreTerminalVO> page = new Page<>(commonParam.getPage(), commonParam.getLimit());
|
||||
List<StoreTerminalVO> terminalVOS = baseMapper.minePageList(query, page);
|
||||
if (CollectionUtil.isNotEmpty(terminalVOS)){
|
||||
Set<Long> deptIds =
|
||||
terminalVOS.stream().map(StoreTerminalVO::getDeptId).collect(Collectors.toSet());
|
||||
Map<Long, String> deptNameByIds
|
||||
= remoteDeptService.getDeptNameByIds(deptIds, SecurityConstants.INNER);
|
||||
if (CollectionUtil.isNotEmpty(deptNameByIds)){
|
||||
terminalVOS.forEach(s-> s.setDeptName(deptNameByIds.get(s.getDeptId())));
|
||||
}
|
||||
}
|
||||
return new PageResult(terminalVOS, page);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -110,7 +110,7 @@
|
|||
ti.geographic_address AS geographicAddress,
|
||||
ti.geographic_location AS geographicLocation,
|
||||
ti.work_location AS workLocation,
|
||||
ti.work_adderss AS workAdderss
|
||||
ti.work_adderss AS workAddress
|
||||
FROM st_terminal t
|
||||
INNER JOIN st_store s ON t.store_id = s.store_id
|
||||
INNER JOIN st_terminal_ins ti ON t.terminal_id = ti.terminal_id
|
||||
|
|
|
|||
|
|
@ -0,0 +1,66 @@
|
|||
<?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.chushang.inspection.work.mapper.WrkInfoTerminalRecordMapper">
|
||||
|
||||
<select id="minePageList" resultType="com.chushang.inspection.terminal.vo.StoreTerminalVO">
|
||||
SELECT
|
||||
pt.project_id AS projectId,
|
||||
p.project_name AS projectName,
|
||||
pt.id AS task_id,
|
||||
pt.`name` AS taskName,
|
||||
s.lower_task_id AS lowerTaskId,
|
||||
s.dept_id AS deptId,
|
||||
s.store_id AS storeId,
|
||||
s.store_no AS storeNo,
|
||||
s.store_name AS storeName,
|
||||
s.store_contact AS storeContact,
|
||||
s.store_phone AS storePhone,
|
||||
s.shop_name AS shopName,
|
||||
s.special_num AS specialNum,
|
||||
s.store_address AS storeAddress,
|
||||
s.store_type AS storeType,
|
||||
s.products AS products,
|
||||
s.tip_tool AS tipTool,
|
||||
s.register_time AS registerTime,
|
||||
s.register_address AS registerAddress,
|
||||
s.legal_name AS legalName,
|
||||
s.create_by AS createBy,
|
||||
s.create_time AS createTime,
|
||||
s.state AS storeState,
|
||||
s.ins_fre AS insFre,
|
||||
s.account_phone AS accountPhone,
|
||||
s.account_manager AS accountManager,
|
||||
t.terminal_id AS terminalId,
|
||||
t.terminal_no AS terminalNo,
|
||||
t.terminal_sn AS terminalSn,
|
||||
t.terminal_type AS terminalType,
|
||||
t.terminal_model AS terminalModel,
|
||||
t.terminal_version AS terminalVersion,
|
||||
t.terminal_address AS terminalAddress,
|
||||
t.terminal_source AS terminalSource,
|
||||
t.occupy AS occupy,
|
||||
t.terminal_status AS terminalStatus,
|
||||
ti.deviation AS deviation,
|
||||
ti.operator_id AS operatorId,
|
||||
ti.inspection_status AS inspectionStatus,
|
||||
ti.inspection_time AS inspectionTime,
|
||||
ti.times_pass AS timesPass,
|
||||
ti.service_result AS serviceResult,
|
||||
ti.geographic_address AS geographicAddress,
|
||||
ti.geographic_location AS geographicLocation,
|
||||
ti.work_location AS workLocation,
|
||||
ti.work_adderss AS workAddress
|
||||
FROM wrk_info i
|
||||
INNER JOIN wrk_info_store_record s ON i.wrk_id = s.wrk_id
|
||||
INNER JOIN wrk_info_terminal_record t ON i.wrk_id = t.wrk_id
|
||||
INNER JOIN wrk_info_terminal_ins_record ti ON i.wrk_id = ti.wrk_id
|
||||
INNER JOIN ta_polling_task pt ON i.task_id = pt.id
|
||||
INNER JOIN wrk_project p ON pt.project_id = p.project_id
|
||||
<where>
|
||||
<if test="1 == 1">
|
||||
${query.sqlParam.get('sqlWhere')}
|
||||
</if>
|
||||
</where>
|
||||
ORDER BY #{query.orderBy} #{query.isAsc}
|
||||
</select>
|
||||
</mapper>
|
||||
Loading…
Reference in New Issue