jiangping
2024-11-07 4c2bae1c7e6f84699091a7e094120808137138dc
最新版本541200007
已修改10个文件
260 ■■■■ 文件已修改
server/system_service/src/main/java/com/doumee/core/utils/Constants.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/admin_timer/src/main/java/com/doumee/api/DatabaseController.java 63 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/CategoryCloudController.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Cars.java 89 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Category.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/CategoryService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarsServiceImpl.java 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CategoryServiceImpl.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ParkBookServiceImpl.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/core/utils/Constants.java
@@ -137,6 +137,8 @@
    public static final String TMS_ORDER_DETAIL_URL ="TMS_ORDER_DETAIL_URL" ;
    public static final String TMS_LOCK_STATUS_URL ="TMS_LOCK_STATUS_URL" ;
    public static final String TMS_INTERFACE_URL_PREFIX ="TMS_INTERFACE_URL_PREFIX" ;
    public static final String MYSQL_BACKUP_CDOE ="MYSQL_BACKUP_CDOE" ;
    public static final String MYSQL_BACKUP_DIR ="MYSQL_BACKUP_DIR" ;
    public static  boolean DEALING_HK_SYNCPRIVILEGE= false;
    public static  boolean DEALING_HK_SYNCDEVICE = false;
    public static  boolean DEALING_HK_SYNCPLATFORM = false;
server/visits/admin_timer/src/main/java/com/doumee/api/DatabaseController.java
@@ -1,6 +1,8 @@
package com.doumee.api;
import com.doumee.biz.system.SystemDictDataBiz;
import com.doumee.core.model.ApiResponse;
import com.doumee.core.utils.Constants;
import com.doumee.core.utils.Date;
import com.doumee.core.utils.DateUtil;
import com.doumee.service.business.PlatformJobService;
@@ -12,7 +14,10 @@
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
@@ -30,6 +35,8 @@
    @Autowired
    private PlatformJobService platformJobService;
    @Autowired
    private SystemDictDataBiz systemDictDataBiz;
    @ApiOperation("数据库备份,保留最近7个备份sql")
@@ -37,11 +44,26 @@
    public ApiResponse backupDatabase() {
        try {
            String timestamp = DateUtil.getNowLongTime();
            String path = "/usr/local/jars/db/";
//            String path = "/usr/local/jars/db/";
//            String backupPath = path + timestamp + ".sql";
            String path = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.MYSQL_BACKUP_DIR).getCode();
            String code = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.MYSQL_BACKUP_CDOE).getCode() ;
            String backupPath = path + timestamp + ".sql";
            // 使用mysqldump命令进行数据库备份
            Process process = Runtime.getRuntime().exec(new String[]{"mysqldump ", "-u", "root", "-p","Atwl@2024", "antaiwuliu", "-r", backupPath});
            process.waitFor();
            code= code.replace("${param}",backupPath);
            log.error("数据库备份================: " + code);
            ProcessBuilder builder = new ProcessBuilder(code);
            // 重定向错误流到标准输出流
            builder.redirectErrorStream(true);
            // stdout
            Process process = builder.start();
            new Thread(new ProcessHandleRunnable(process)).start();
            process.waitFor(); // wait if needed
      /*      // 使用mysqldump命令进行数据库备份
            Process process = Runtime.getRuntime().exec(code);
            process.getErrorStream();
            process.getInputStream();
            process.waitFor();*/
            // 检查备份是否成功
            if (new File(backupPath).exists()) {
@@ -58,6 +80,39 @@
        return ApiResponse.failed("数据库备份失败" );
    }
    static class ProcessHandleRunnable implements Runnable {
        private Process process;
        public ProcessHandleRunnable(Process process) {
            this.process = process;
        }
        public void run() {
            BufferedReader br = null;
            InputStreamReader reader = null;
            try {
                System.out.println("start run...");
                reader = new InputStreamReader(process.getInputStream());
                br = new BufferedReader(reader);
                String line = null;
                while ((line = br.readLine()) != null) {
                    System.out.println(line);
                }
                System.out.println("stop run...");
            } catch (IOException ex) {
                ex.printStackTrace();
            } finally {
                try {
                    if (br != null)
                        br.close();
                    if (reader != null)
                        reader.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
    /**
     * @param path
     */
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/CategoryCloudController.java
@@ -8,7 +8,9 @@
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.core.utils.Constants;
import com.doumee.dao.business.model.Cars;
import com.doumee.dao.business.model.Category;
import com.doumee.dao.business.model.Company;
import com.doumee.service.business.CategoryService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -88,6 +90,13 @@
    public void exportExcel (@RequestBody PageWrap<Category> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
        ExcelExporter.build(Category.class).export(categoryService.findPage(pageWrap).getRecords(), "分类信息表", response);
    }
    @ApiOperation("导出二级分类数据Excel")
    @PostMapping("/exportChildExcel")
    @CloudRequiredPermission("business:category:exportExcel")
    public void exportChildExcel (@RequestBody PageWrap<Category> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
//        pageWrap.getModel().setType(Constants.ONE);
        ExcelExporter.build(Category.class).export(categoryService.findChileList(pageWrap.getModel()), "车辆分类信息表", response);
    }
    @ApiOperation("根据ID查询")
    @GetMapping("/{id}")
@@ -106,4 +115,6 @@
        category.setType(type);
        return ApiResponse.success(categoryService.findList(category));
    }
}
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Cars.java
@@ -25,135 +25,150 @@
    @TableId(value = "id",type = IdType.AUTO)
    @ApiModelProperty(value = "主键", example = "1")
    @ExcelColumn(name="主键")
//    @ExcelColumn(name="主键")
    private Integer id;
    @ApiModelProperty(value = "创建人编码")
    @ExcelColumn(name="创建人编码")
    //@ExcelColumn(name="创建人编码")
    private Integer creator;
    @ApiModelProperty(value = "创建时间")
    @ExcelColumn(name="创建时间")
    //@ExcelColumn(name="创建时间")
    private Date createDate;
    @ApiModelProperty(value = "更新人编码")
    @ExcelColumn(name="更新人编码")
    //@ExcelColumn(name="更新人编码")
    private Integer edirot;
    @ApiModelProperty(value = "更新时间")
    @ExcelColumn(name="更新时间")
    //@ExcelColumn(name="更新时间")
    private Date editDate;
    @ApiModelProperty(value = "授权开始时间")
    @ExcelColumn(name="授权开始时间")
    //@ExcelColumn(name="授权开始时间")
    @ExcelColumn(name="开始时间" ,index = 10,width = 12)
    private Date startTime;
    @ApiModelProperty(value = "授权结束时间")
    @ExcelColumn(name="授权结束时间")
    //@ExcelColumn(name="授权结束时间")
    @ExcelColumn(name="结束时间" ,index = 11,width = 12)
    private Date endTime;
    @ApiModelProperty(value = "最后一次进厂时间")
    @ExcelColumn(name="最后一次进厂时间")
    //@ExcelColumn(name="最后一次进厂时间")
    private Date lastInDate;
    @ApiModelProperty(value = "是否删除0否 1是", example = "1")
    @ExcelColumn(name="是否删除0否 1是")
    //@ExcelColumn(name="是否删除0否 1是")
    private Integer isdeleted;
    @ApiModelProperty(value = "授权时间类型  0长期有效 1自定义 2车主有效期", example = "1")
    @ExcelColumn(name="授权时间类型  0长期有效 1自定义 2车主有效期")
    //@ExcelColumn(name="授权时间类型  0长期有效 1自定义 2车主有效期")
    private Integer authTimeType;
    @ApiModelProperty(value = "备注")
    @ExcelColumn(name="备注")
    //@ExcelColumn(name="备注")
    private String remark;
    @ApiModelProperty(value = "预约标识", example = "1")
    @ExcelColumn(name="预约标识")
    //@ExcelColumn(name="预约标识")
    private String hkId;
    @ApiModelProperty(value = "排序码", example = "1")
    @ExcelColumn(name="排序码")
    //@ExcelColumn(name="排序码")
    private Integer sortnum;
    @ApiModelProperty(value = "车牌号")
    @ExcelColumn(name="车牌号")
    @ExcelColumn(name="车牌号" ,index = 1,width = 8)
    private String code;
    @ApiModelProperty(value = "授权停车编码集合(关联parks)", example = "1")
    @ExcelColumn(name="授权停车编码集合(关联parks)")
    //@ExcelColumn(name="授权停车编码集合(关联parks)")
    private String parkId;
    @ApiModelProperty(value = "海康同步状态 0未同步 1已同步", example = "1")
    @ExcelColumn(name="海康同步状态 0未同步 1已同步")
    //@ExcelColumn(name="海康同步状态 0未同步 1已同步")
    private Integer hkStatus;
    @ApiModelProperty(value = "海康最近同步时间")
    @ExcelColumn(name="海康最近同步时间")
    //@ExcelColumn(name="海康最近同步时间")
    private Date hkDate;
    @ApiModelProperty(value = "归属人编码", example = "1")
    @ExcelColumn(name="归属人编码")
    //@ExcelColumn(name="归属人编码")
    private Integer memberId;
    @ApiModelProperty(value = "归属人ERP编码")
    @ExcelColumn(name="归属人ERP编码")
    //@ExcelColumn(name="归属人ERP编码")
    private String memberUserId;
    @ApiModelProperty(value = "关联EPR标识")
    @ExcelColumn(name="关联EPR标识")
    //@ExcelColumn(name="关联EPR标识")
    private String erpId;
    @ApiModelProperty(value = "状态 0禁用 1启用", example = "1")
    @ExcelColumn(name="状态 0禁用 1启用")
    //@ExcelColumn(name="状态 0禁用 1启用")
    private Integer status;
    @ApiModelProperty(value = "状态 0不在园 1在园", example = "1")
    @ExcelColumn(name="状态 0不在园 1在园")
    //@ExcelColumn(name="状态 0不在园 1在园")
    private Integer inStatus;
    @ApiModelProperty(value = "授权状态 0否 1是", example = "1")
    @ExcelColumn(name="授权状态  0否 1是")
    //@ExcelColumn(name="授权状态  0否 1是")
    private Integer authStatus;
    @ApiModelProperty(value = "所属组织主键(关联company)", example = "1")
    @ExcelColumn(name="所属组织主键(关联company)")
    //@ExcelColumn(name="所属组织主键(关联company)")
    private Integer groupId;
    @ApiModelProperty(value = "类型 0安泰公务车 1安泰自有物流车 2其它", example = "1")
    @ExcelColumn(name="类型 0安泰公务车 1安泰自有物流车 2其它")
    @ExcelColumn(name="备注" ,index = 2,width = 8,valueMapping ="0=安泰公务车;1=安泰自有物流车;2=其他" )
    private Integer type;
    @ApiModelProperty(value = "所属分类编码", example = "1")
    @ExcelColumn(name="所属分类编码")
    //@ExcelColumn(name="所属分类编码")
    private Integer cateId;
    @ApiModelProperty(value = "停车场名称集合", example = "1")
    @ExcelColumn(name="停车场名称集合")
    //@ExcelColumn(name="停车场名称集合")
    @TableField(exist = false)
    @ExcelColumn(name="停车场名称集合" ,index = 9,width = 10)
    private String parksName;
    @ApiModelProperty(value = "编辑人姓名", example = "1")
    @ExcelColumn(name="编辑人姓名")
    //@ExcelColumn(name="编辑人姓名")
    @TableField(exist = false)
    private String editorName;
    @ApiModelProperty(value = "用户类型 0劳务访客 1普通访客  2内部人员", example = "1")
    @ExcelColumn(name="用户类型 0劳务访客 1普通访客  2内部人员")
    //@ExcelColumn(name="用户类型 0劳务访客 1普通访客  2内部人员")
    @TableField(exist = false)
    private Integer memberType;
    @ApiModelProperty(value = "姓名", example = "1")
    @ExcelColumn(name="姓名")
    //@ExcelColumn(name="姓名")
    @TableField(exist = false)
    @ExcelColumn(name="车主" ,index = 5,width = 8)
    private String memberName;
    @ApiModelProperty(value = "车主海康编码", example = "1")
    @TableField(exist = false)
    private String memberHkId;
    @ApiModelProperty(value = "手机号", example = "1")
    @ExcelColumn(name="手机号")
    //@ExcelColumn(name="手机号")
    @TableField(exist = false)
    @ExcelColumn(name="手机号" ,index = 6,width = 8)
    private String memberPhone;
    @ApiModelProperty(value = "性别", example = "1")
    //@ExcelColumn(name="手机号")
    @TableField(exist = false)
    @ExcelColumn(name="性别" ,index = 7,width = 5,valueMapping = "0=未知;1=男;2=女")
    private Integer memberSex;
    @ApiModelProperty(value = "身份证号", example = "1")
    //@ExcelColumn(name="手机号")
    @TableField(exist = false)
    @ExcelColumn(name="身份证号" ,index = 8,width = 10)
    private String memberCard;
    @ApiModelProperty(value = "部门", example = "1")
    @ExcelColumn(name="部门")
    //@ExcelColumn(name="部门")
    @TableField(exist = false)
    private String companyName;
    @ApiModelProperty(value = "车主是否删除", example = "1")
@@ -180,6 +195,11 @@
    @TableField(exist = false)
    private String cateName;
    @ApiModelProperty(value = "所属分类", example = "1")
    @TableField(exist = false)
    @ExcelColumn(name="所属分类" ,index = 3,width = 10)
    private String groupCateName;
    @ApiModelProperty(value = "一级分类名称", example = "1")
    @TableField(exist = false)
    private String catePName;
@@ -188,13 +208,14 @@
    private int isnew;
    @ApiModelProperty(value = "车辆部门名称", example = "1")
    @ExcelColumn(name="车辆组织部门名称")
    //@ExcelColumn(name="车辆组织部门名称")
    @TableField(exist = false)
    private String carCompanyName;
    @ApiModelProperty(value = "车辆部门全路径名称", example = "1")
    @ExcelColumn(name="车辆部门全路径名称")
    //@ExcelColumn(name="车辆部门全路径名称")
    @TableField(exist = false)
    @ExcelColumn(name="所属组织" ,index = 4,width = 15)
    private String carCompanyNamePath;
    @ApiModelProperty(value = "车主对象", example = "1")
    @TableField(exist = false)
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Category.java
@@ -25,56 +25,64 @@
    @TableId(type = IdType.AUTO)
    @ApiModelProperty(value = "主键")
    @ExcelColumn(name="主键")
     //@ExcelColumn(name="主键")
    private Integer id;
    @ApiModelProperty(value = "创建人编码")
    @ExcelColumn(name="创建人编码")
     //@ExcelColumn(name="创建人编码")
    private Integer creator;
    @ApiModelProperty(value = "创建时间")
    @ExcelColumn(name="创建时间")
     //@ExcelColumn(name="创建时间")
    private Date createDate;
    @ApiModelProperty(value = "更新人编码")
    @ExcelColumn(name="更新人编码")
     //@ExcelColumn(name="更新人编码")
    private Integer editor;
    @ApiModelProperty(value = "更新时间")
    @ExcelColumn(name="更新时间")
     //@ExcelColumn(name="更新时间")
    private Date editDate;
    @ApiModelProperty(value = "是否删除0否 1是")
    @ExcelColumn(name="是否删除0否 1是")
     //@ExcelColumn(name="是否删除0否 1是")
    private Integer isdeleted;
    @ApiModelProperty(value = "名称")
    @ExcelColumn(name="名称")
     @ExcelColumn(name="二级分类名称",index = 2,width = 12)
    private String name;
    @ApiModelProperty(value = "备注")
    @ExcelColumn(name="备注")
     //@ExcelColumn(name="备注")
    private String remark;
    @ApiModelProperty(value = "状态 0启用 1禁用")
    @ExcelColumn(name="状态 0启用 1禁用")
     //@ExcelColumn(name="状态 0启用 1禁用")
    private Integer status;
    @ApiModelProperty(value = "排序码")
    @ExcelColumn(name="排序码")
     //@ExcelColumn(name="排序码")
    private Integer sortnum;
    @ApiModelProperty(value = "图标")
    @ExcelColumn(name="图标")
     //@ExcelColumn(name="图标")
    private String imgurl;
    @ApiModelProperty(value = "类型 0公司类型 1车辆类型")
    @ExcelColumn(name="类型 0公司类型 1车辆类型")
     //@ExcelColumn(name="类型 0公司类型 1车辆类型")
    private Integer type;
    @ApiModelProperty(value = "父级编码(自关联)")
    @ExcelColumn(name="父级编码(自关联)")
     //@ExcelColumn(name="父级编码(自关联)")
    private Integer parentId;
    @ApiModelProperty(value = "父级名称 ")
    @TableField(exist = false)
    @ExcelColumn(name="一级分类名称",index = 1,width = 12)
    private String parentName;
    @ApiModelProperty(value = "组合名称 ")
    @TableField(exist = false)
    @ExcelColumn(name="组合名称",index = 3,width = 20)
    private String groupName;
    @ApiModelProperty(value = "子集分类")
    @TableField(exist = false)
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/CategoryService.java
@@ -101,4 +101,6 @@
     * @return long
     */
    long count(Category category);
    List<Category> findChileList(Category model);
}
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarsServiceImpl.java
@@ -370,6 +370,8 @@
        queryWrapper.selectAs(Member::getName,Cars::getMemberName);
        queryWrapper.selectAs(SystemUser::getRealname,Cars::getEditorName);
        queryWrapper.selectAs(Member::getPhone,Cars::getMemberPhone);
        queryWrapper.selectAs(Member::getSex,Cars::getMemberSex);
        queryWrapper.selectAs(Member::getIdcardDecode,Cars::getMemberCard);
        queryWrapper.selectAs(Company::getCompanyNamePath,Cars::getCompanyName);
        queryWrapper.selectAs(Category::getParentId,Cars::getCatePId);
        queryWrapper.selectAs(Category::getName,Cars::getCateName);
@@ -386,6 +388,7 @@
                .or().like(Member::getPhone,pageWrap.getModel().getMemberName()));
        queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getCompanyName()),Company::getCompanyNamePath,pageWrap.getModel().getCompanyName());
        queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getMemberType()),Member::getType,pageWrap.getModel().getMemberType());
        queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getCateId()),Category::getId,pageWrap.getModel().getCateId());
        queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getCatePId()),Category::getParentId,pageWrap.getModel().getCatePId());
        queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getCode()),Cars::getCode,pageWrap.getModel().getCode());
        queryWrapper.eq(Cars::getIsdeleted,Constants.ZERO);
@@ -417,22 +420,28 @@
                    .in(ParkBook::getCarCode,codes)
                    .eq(ParkBook::getIsdeleted,Constants.ZERO) );
            for(Cars cars :result.getRecords()){
               cars.setParkBookList(getParkbookListByCode(cars.getCode(),parkBooks));
                if(StringUtils.isNotBlank(cars.getCateName())){
                    cars.setGroupCateName(StringUtils.defaultString(cars.getCatePName(),"") + "/" + StringUtils.defaultString(cars.getCateName(),""));
                }
               cars.setParkBookList(getParkbookListByCode(cars,parkBooks));
            }
        }
        return PageData.from(result);
    }
    private List<ParkBook> getParkbookListByCode(String code, List<ParkBook> parkBooks) {
    private List<ParkBook> getParkbookListByCode(Cars car, List<ParkBook> parkBooks) {
        List<ParkBook> list =null;
        String name = "";
        for(ParkBook p : parkBooks){
            if(StringUtils.equals(p.getCarCode(),code)){
            if(StringUtils.equals(p.getCarCode(),car.getCode())){
                if(list == null){
                    list = new ArrayList<>();
                }
                name += p.getParksName();
                list.add(p);
            }
        }
        car.setParksName(name);
        return  list;
    }
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CategoryServiceImpl.java
@@ -14,11 +14,13 @@
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Objects;
@@ -155,6 +157,36 @@
        QueryWrapper<Category> wrapper = new QueryWrapper<>(category);
        return categoryMapper.selectCount(wrapper);
    }
    @Override
    public  List<Category> findChileList(Category model) {
        List<Category> list =findList(model);
        List<Category> data = new ArrayList<>();
        if(list!=null){
            for(Category category : list){
                if(category.getParentId()!=null){
                    Category pcate = getParentById(category.getParentId(),list);
                    if(pcate!=null){
                        category.setParentName(StringUtils.defaultString(pcate.getName(),""));
                        category.setName(StringUtils.defaultString(category.getName(),""));
                        category.setGroupName( category.getParentName()+"/"+category.getName());
                        data.add(category);
                    }
                }
            }
        }
        return  data;
    }
    private Category getParentById(Integer parentId, List<Category> list) {
        if(list!=null){
            for(Category category : list){
                if(Constants.equalsInteger(parentId,category.getId())){
                   return  category;
                }
            }
        }
        return  null;
    }
    private void checkUnique(Category category){
        QueryWrapper<Category> wrapper = new QueryWrapper<>();
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ParkBookServiceImpl.java
@@ -247,11 +247,11 @@
        MPJLambdaWrapper<ParkBook> queryWrapper = new MPJLambdaWrapper<>();
        queryWrapper.selectAll(ParkBook.class);
        queryWrapper.selectAs(Parks::getName,Cars::getParksName);
        queryWrapper.selectAs(Member::getType,Cars::getMemberType);
        queryWrapper.selectAs(Member::getName,Cars::getMemberName);
        queryWrapper.selectAs(Member::getPhone,Cars::getMemberPhone);
        queryWrapper.selectAs(Company::getName,Cars::getCompanyName);
        queryWrapper.selectAs(Parks::getName,ParkBook::getParksName);
        queryWrapper.selectAs(Member::getType,ParkBook::getMemberType);
        queryWrapper.selectAs(Member::getName,ParkBook::getMemberName);
        queryWrapper.selectAs(Member::getPhone,ParkBook::getMemberPhone);
        queryWrapper.selectAs(Company::getName,ParkBook::getCompanyName);
        queryWrapper.leftJoin(Parks.class,Parks::getId,ParkBook::getParkId);
        queryWrapper.leftJoin(Member.class,Member::getId,ParkBook::getMemberId);
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java
@@ -288,7 +288,7 @@
            Collections.sort(jobList, new Comparator<Platform>() {
                @Override
                public int compare(Platform o1, Platform o2) {
                    return Constants.formatBigdecimal(o2.getWorkCountTime())-Constants.formatBigdecimal(o1.getWorkCountTime());
                    return Constants.formatBigdecimal(o2.getWorkCountTime()).intValue() - Constants.formatBigdecimal(o1.getWorkCountTime()).intValue();
                }
            });
            for(Platform model : jobList){