jiangping
2025-04-29 1e268f3b855b666c1714b7985cb437c585e47948
最新版本541200007
已修改3个文件
66 ■■■■■ 文件已修改
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/CategoryMapper.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/InoutRecord.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/CategoryMapper.java
@@ -2,11 +2,12 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.doumee.dao.business.model.Category;
import com.github.yulichang.base.MPJBaseMapper;
/**
 * @author 江蹄蹄
 * @date 2023/11/30 15:33
 */
public interface CategoryMapper extends BaseMapper<Category> {
public interface CategoryMapper extends MPJBaseMapper<Category> {
}
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/InoutRecord.java
@@ -79,6 +79,13 @@
    @ApiModelProperty(value = "关联分类名称")
    @ExcelColumn(name="关联分类名称")
    private String categoryName;
    @ApiModelProperty(value = "关联父级分类编码(关联category)", example = "1")
    @ExcelColumn(name="关联父级分类编码(关联category)")
    private Integer categoryParentId;
    @ApiModelProperty(value = "关联分类名称")
    @ExcelColumn(name="关联分类名称")
    private String categoryParentName;
    @ApiModelProperty(value = "业务类型 业务类型 0=访客车辆-访客车辆 ;" +
            "1=wms推送的物流车辆(非自有车):货运车辆-外协运输车辆 ;" +
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java
@@ -25,6 +25,7 @@
import com.doumee.dao.business.model.*;
import com.doumee.dao.business.model.Member;
import com.doumee.dao.web.reqeust.SavePlatformWarnEventDTO;
import com.doumee.service.business.CategoryService;
import com.doumee.service.business.VisitsService;
import com.doumee.service.business.impl.PlatformWarnEventServiceImpl;
import com.doumee.service.business.third.TmsService;
@@ -72,6 +73,8 @@
    private DataSyncConfig dataSyncConfig;
    @Autowired
    private CarEventMapper carEventMapper;
    @Autowired
    private CategoryMapper categoryMapper;
    @Autowired
    private VisitEventMapper visitEventMapper;
    @Autowired
@@ -877,8 +880,14 @@
        CarEvent event =initCarEventModelByRequest(request);
        if(StringUtils.isNotBlank(event.getPlateNos())){
            //标记车辆进出记录
            List<Category> categoryList = categoryMapper.selectJoinList(Category.class, new MPJLambdaWrapper<Category>()
                        .selectAll(Category.class)
                        .select("t4.name",Category::getParentName)
                        .leftJoin("category t4 on t.parent_id=t4.id")
                        .eq(Category::getIsdeleted,Constants.ZERO)
                        .isNotNull(Category::getBizType));//查询所有带有业务类型的车辆分类编码
            List<Visits> visitsList = null;
                    InoutRecord carrecord = new InoutRecord();
            InoutRecord carrecord = new InoutRecord();
            carrecord.setCreateDate(DateUtil.getISO8601DateByStr2(request.getHappenTime()));
            carrecord.setTimeInfo(Utils.Date.getStart(carrecord.getCreateDate()));
            carrecord.setType(Constants.ZERO);//车辆
@@ -898,9 +907,13 @@
                            .selectAs(Member::getPhone,Cars::getMemberPhone)
                            .selectAs(Company::getCompanyNamePath,Cars::getCompanyName)
                            .selectAs(Category::getBizType,Cars::getBizType)
                            .selectAs(Category::getName,Cars::getCateName)
                            .select("t4.id",Cars::getCatePId)
                            .select("t4.name",Cars::getCatePName)
                            .leftJoin(Company.class,Company::getId,Cars::getGroupId)
                            .leftJoin(Category.class,Category::getId,Cars::getCateId)
                            .leftJoin(Member.class,Member::getId,Cars::getMemberId)
                            .leftJoin(Category.class,Category::getId,Cars::getCateId)
                            .leftJoin("category t4 on t3.parent_id=t4.id")
                            .eq(Cars::getCode,event.getPlateNos())
                            .eq(Cars::getIsdeleted,Constants.ZERO)
                            .last(" limit 1"));
@@ -921,6 +934,10 @@
                carrecord.setMemberCode(carModel.getMemberCode());
                carrecord.setCompanyId(carModel.getGroupId());
                carrecord.setCompanyName(carModel.getCompanyName());
                carrecord.setCategoryId(carModel.getCateId());
                carrecord.setCategoryName(carModel.getCateName());
                carrecord.setCategoryParentId(carModel.getCatePId());
                carrecord.setCategoryParentName(carModel.getCatePName());
                carrecord.setMemberType( Constants.RetentionMemberType.car);//只是车辆的记录
                if(carModel.getMemberId()!=null){
                    if(Constants.equalsInteger(carModel.getCompanyType(),Constants.ONE)){
@@ -964,19 +981,33 @@
                        //货运司机(如果司机手机号或者姓名不为空)
                        carrecord.setMemberType(Constants.RetentionMemberType.driver);
                    }
                    Category category  = null;
                    String tempName = "";
                    String tempPName = "";
                    //如果非固定车辆,则查询是否货运车辆 作业类型 0自有车卸货 1自有车装货 2外协车卸货 3外协车装货 4市公司外协车卸货
                    if(Constants.equalsInteger(carTypeJob.getOrigin(),Constants.ONE)){
                        //如果是推送的wms非自有车
                        event.setCarType(Constants.RetentionCarType.wxysCar);//外协车
                        tempName = "外协运输车辆";
                        tempPName = "货运车辆";
                    }else  if(Constants.equalsInteger(carTypeJob.getType(),Constants.FOUR)){
                        if(Constants.equalsInteger(carTypeJob.getGroupType(),Constants.TWO)){
                            ///安泰的预约入园车辆:货运车辆-加工烟卸货车辆
                            tempName = "加工烟卸货车辆";
                            tempPName = "货运车辆";
                            event.setCarType(Constants.RetentionCarType.jgyxhCar);//加工烟卸货车辆
                        }else  if(Constants.equalsInteger(carTypeJob.getGroupType(),Constants.TWO)){
                            //市公司的预约入园车辆:货运车辆-市公司卸货车辆
                            tempName = "市公司卸货车辆";
                            tempPName = "货运车辆";
                            event.setCarType(Constants.RetentionCarType.sgsxhCar);//市公司卸货车辆
                        }
                    }
                    category =findCategoryByBizType(event.getCarType(),tempName,tempPName,categoryList);
                    carrecord.setCategoryId(category.getId());
                    carrecord.setCategoryName(category.getName());
                    carrecord.setCategoryParentName(category.getParentName());
                    carrecord.setCategoryParentId(category.getParentId());
                }
            }
            //处理自有车自动签到业务
@@ -1011,6 +1042,12 @@
                    event.setMemberId(visitsList.get(0).getMemberId());
                    event.setCarType(Constants.RetentionCarType.fkCar);
                    int index =0;
                    carrecord.setCarBizType(Constants.RetentionCarType.fkCar);
                    Category category =findCategoryByBizType(Constants.RetentionCarType.fkCar,"访客车辆","访客车辆",categoryList);
                    carrecord.setCategoryId(category.getId());
                    carrecord.setCategoryName(category.getName());
                    carrecord.setCategoryParentName(category.getParentName());
                    carrecord.setCategoryParentId(category.getParentId());
                    for(Visits v :visitsList){
                        delMemberRetentionList.add(event.getMemberId());
                        InoutRecord copyObj = new InoutRecord();
@@ -1019,7 +1056,6 @@
                        copyObj.setMemberName(v.getName());
                        copyObj.setMemberPhone(v.getPhone());
                        copyObj.setCompanyName(v.getCompanyName());
                        copyObj.setCarBizType(Constants.RetentionCarType.fkCar);
                        copyObj.setMemberType(Constants.ZERO);
                        copyObj.setRemark(carrecord.getCarCode());
                        copyObj.setCarCode(index>=0?null:carrecord.getCarCode());
@@ -1052,6 +1088,20 @@
        return event;
    }
    private Category findCategoryByBizType(Integer carType,String tempname, String pName,List<Category> categoryList) {
        if(categoryList!=null){
            for(Category category :categoryList){
                if(Constants.equalsInteger(carType,category.getBizType())){
                    return category;
                }
            }
        }
        Category category  = new Category();
        category.setName(tempname);
        category.setParentName(pName);
        return null;
    }
    private void dealSelTruckAutoSignBiz(EventParkInfoRequest request, CarEvent event) {
        ParkBook cars = parkBookMapper.selectOne(new QueryWrapper<ParkBook>().lambda()
                .eq(ParkBook::getCarCode,event.getPlateNos())