Merge remote-tracking branch 'origin/dev_20230808_OTA' into dev_20230808_OTA

This commit is contained in:
zyx.net
2023-08-11 17:44:55 +08:00
7 changed files with 647 additions and 0 deletions
@@ -0,0 +1,131 @@
package com.jero.modules.ota.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jero.common.api.vo.Result;
import com.jero.common.aspect.annotation.AutoLog;
import com.jero.common.system.base.controller.JeroController;
import com.jero.modules.ota.entity.OtaManageApplyEO;
import com.jero.modules.ota.service.IOtaManageApplyEOService;
import com.jero.modules.ota.vo.VersionVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
import java.util.Arrays;
import java.util.List;
/**
* @Description: 数据对接表
* @Author: jero-boot
* @Date: 2023-08-09
* @Version: V1.0
*/
@Api(tags="数据对接表")
@RestController
@RequestMapping("/ota/otaManageApplyEO")
@Slf4j
public class OtaManageApplyEOController extends JeroController<OtaManageApplyEO, IOtaManageApplyEOService> {
@Autowired
private IOtaManageApplyEOService otaManageApplyEOService;
/**
* OTA管理列表和全车型列表-分页列表查询
*
* @param otaManageApplyEO
* @param pageNo
* @param pageSize
* @return
*/
@AutoLog(value = "OTA管理列表和全车型列表-分页列表查询")
@ApiOperation(value="OTA管理列表和全车型列表-分页列表查询", notes="OTA管理列表和全车型列表-分页列表查询")
@GetMapping(value = "/getOtaPage")
public Result<?> getOtaPage(OtaManageApplyEO otaManageApplyEO,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize) {
IPage<OtaManageApplyEO> pageList = otaManageApplyEOService.getOtaPage(otaManageApplyEO,pageNo,pageSize);
return Result.OK(pageList);
}
/**
* 分车型列表-分页列表查询
*
* @param otaManageApplyEO
* @param pageNo
* @param pageSize
* @return
*/
@AutoLog(value = "分车型列表-分页列表查询")
@ApiOperation(value="分车型列表-分页列表查询", notes="分车型列表-分页列表查询")
@GetMapping(value = "/getOtaCarPage")
public Result<?> getOtaCarPage(OtaManageApplyEO otaManageApplyEO,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize) {
IPage<OtaManageApplyEO> pageList = otaManageApplyEOService.getOtaCarPage(otaManageApplyEO,pageNo,pageSize);
return Result.OK(pageList);
}
/**
* 通过id删除
*
* @param id
* @return
*/
@AutoLog(value = "数据对接表-通过id删除")
@ApiOperation(value="数据对接表-通过id删除", notes="数据对接表-通过id删除")
@DeleteMapping(value = "/delete")
public Result<?> delete(@RequestParam(name="id",required=true) String id) {
otaManageApplyEOService.deleteById(id);
return Result.OK("删除成功!");
}
/**
* 批量删除
*
* @param ids
* @return
*/
@AutoLog(value = "数据对接表-批量删除")
@ApiOperation(value="数据对接表-批量删除", notes="数据对接表-批量删除")
@DeleteMapping(value = "/deleteBatch")
public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.otaManageApplyEOService.deleteByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
/**
* 通过适用车型查询
*
* @param appliedVehicleProject
* @return
*/
@AutoLog(value = "通过适用车型查询")
@ApiOperation(value="通过适用车型查询", notes="通过适用车型查询")
@GetMapping(value = "/getByAppliedVehicleProject")
public Result<?> getByAppliedVehicleProject(@RequestParam(name="appliedVehicleProject",required=true) String appliedVehicleProject) {
List<VersionVO> byAppliedVehicleProject = otaManageApplyEOService.getByAppliedVehicleProject(appliedVehicleProject);
return Result.OK(byAppliedVehicleProject);
}
/**
* 导出excel
*
* @param request
* @param otaManageApplyEO
*/
@RequestMapping(value = "/exportXls")
public ModelAndView exportXls(HttpServletRequest request, OtaManageApplyEO otaManageApplyEO) {
return super.exportXls(request, otaManageApplyEO, OtaManageApplyEO.class, "数据对接表");
}
}
@@ -0,0 +1,168 @@
package com.jero.modules.ota.entity;
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.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
/**
* @Description: 数据对接表
* @Author: jero-boot
* @Date: 2023-08-09
* @Version: V1.0
*/
@Data
@TableName("ota_manage_apply")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="ota_manage_apply对象", description="数据对接表")
public class OtaManageApplyEO implements Serializable {
private static final long serialVersionUID = 1L;
/**主键*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "主键")
private java.lang.String id;
/**创建人*/
@ApiModelProperty(value = "创建人")
private java.lang.String createBy;
/**创建日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "创建日期")
private java.util.Date createTime;
/**更新人*/
@ApiModelProperty(value = "更新人")
private java.lang.String updateBy;
/**更新日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "更新日期")
private java.util.Date updateTime;
/**所属部门*/
@ApiModelProperty(value = "所属部门")
private java.lang.String sysOrgCode;
@ApiModelProperty(value = "VDR")
private java.lang.String issueKey;
/**项目版本*/
@Excel(name = "项目版本", width = 15)
@ApiModelProperty(value = "项目版本")
private java.lang.String projectVersion;
/**认证进度*/
@Excel(name = "认证进度", width = 15)
@ApiModelProperty(value = "认证进度")
private java.lang.String attestationSchedule;
/**匹配状态*/
@Excel(name = "匹配状态", width = 15)
@ApiModelProperty(value = "匹配状态")
private java.lang.String matchStatus;
/**备注*/
@Excel(name = "备注", width = 15)
@ApiModelProperty(value = "备注")
private java.lang.String remark;
//--------------------------------------------------------
/**软件版本*/
@TableField(exist = false)
@ApiModelProperty(value = "软件版本")
private java.lang.String softwareVersion;
@TableField(exist = false)
@ApiModelProperty(value = "平台")
private java.lang.String platform;
@TableField(exist = false)
@ApiModelProperty(value = "适用车型")
private java.lang.String appliedVehicleProject;
@TableField(exist = false)
@ApiModelProperty(value = "市场")
private java.lang.String market;
@TableField(exist = false)
@ApiModelProperty(value = "软件发布时间")
private java.util.Date softwareIssueTime;
@TableField(exist = false)
@ApiModelProperty(value = "软件发布时间-开始")
private java.util.Date softwareIssueTimeStart;
@TableField(exist = false)
@ApiModelProperty(value = "软件发布时间-结束")
private java.util.Date softwareIssueTimeEnd;
@TableField(exist = false)
@ApiModelProperty(value = "主题")
private java.lang.String summary;
@TableField(exist = false)
@ApiModelProperty(value = "VDR状态")
private java.lang.String status;
@TableField(exist = false)
@ApiModelProperty(value = "认证影响")
private java.lang.String homologationImpact;
@TableField(exist = false)
@ApiModelProperty(value = "影响描述")
private java.lang.String homologation;
@TableField(exist = false)
@ApiModelProperty(value = "影响法规-CN")
private java.lang.String impactCnHomo;
@TableField(exist = false)
@ApiModelProperty(value = "影响法规-EU")
private java.lang.String impactEuHomo;
@TableField(exist = false)
@ApiModelProperty(value = "影响法规-查询条件")
private java.lang.String impactHomo;
@TableField(exist = false)
@ApiModelProperty(value = "责任部门")
private java.lang.String masterDomain;
@TableField(exist = false)
@ApiModelProperty(value = "R&H Studio")
private java.lang.String studio;
@TableField(exist = false)
@ApiModelProperty(value = "认证开始")
private Date attestationStartTime;
@TableField(exist = false)
@ApiModelProperty(value = "认证申报")
private Date certificationSubmission;
@TableField(exist = false)
@ApiModelProperty(value = "认证批准")
private Date attestationEndTime;
}
@@ -0,0 +1,32 @@
package com.jero.modules.ota.mapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jero.modules.ota.vo.VersionVO;
import org.apache.ibatis.annotations.Param;
import com.jero.modules.ota.entity.OtaManageApplyEO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import java.util.List;
/**
* @Description: 数据对接表
* @Author: jero-boot
* @Date: 2023-08-09
* @Version: V1.0
*/
public interface OtaManageApplyEOMapper extends BaseMapper<OtaManageApplyEO> {
Page<OtaManageApplyEO> getOtaPage(Page<OtaManageApplyEO> page, @Param("otaManageApplyEO") OtaManageApplyEO otaManageApplyEO);
/**
* 分车型列表-分页列表查询
* @param page
* @param otaManageApplyEO
* @return
*/
Page<OtaManageApplyEO> getOtaCarPage(Page<OtaManageApplyEO> page, @Param("otaManageApplyEO") OtaManageApplyEO otaManageApplyEO);
List<VersionVO> getByAppliedVehicleProject(@Param("appliedVehicleProject") String appliedVehicleProject);
}
@@ -0,0 +1,81 @@
<?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.jero.modules.ota.mapper.OtaManageApplyEOMapper">
<resultMap id="OtaManageApplyEOResultMap" type="com.jero.modules.ota.entity.OtaManageApplyEO">
<id column="id" property="id" />
<result column="create_by" property="createBy" />
<result column="create_time" property="createTime" />
<result column="update_by" property="updateBy" />
<result column="update_time" property="updateTime" />
<result column="sys_org_code" property="sysOrgCode" />
<result column="issue_key" property="issueKey" />
<result column="project_version" property="projectVersion" />
<result column="attestation_schedule" property="attestationSchedule" />
<result column="match_status" property="matchStatus" />
<result column="remark" property="remark" />
</resultMap>
<select id="getOtaPage" resultType="com.jero.modules.ota.entity.OtaManageApplyEO">
select * from ota_manage_receive
<where>
1=1
<if test="otaManageApplyEO.softwareVersion != null and otaManageApplyEO.softwareVersion != ''">
and trim( REPLACE ( software_version, ' ', '' ) ) LIKE trim(
REPLACE ( CONCAT( '%', #{otaManageApplyEO.softwareVersion}, '%' ), ' ', '' ))
</if>
<if test="otaManageApplyEO.platform != null and otaManageApplyEO.platform != ''">
and ts.platform LIKE CONCAT(CONCAT('%',#{otaManageApplyEO.platform}),'%')
</if>
<if test="otaManageApplyEO.appliedVehicleProject != null and otaManageApplyEO.appliedVehicleProject != ''">
and ts.applied_vehicle_project LIKE CONCAT(CONCAT('%',#{otaManageApplyEO.appliedVehicleProject}),'%')
</if>
<if test="otaManageApplyEO.market != null and otaManageApplyEO.market != ''">
and ts.market LIKE CONCAT(CONCAT('%',#{otaManageApplyEO.market}),'%')
</if>
<if test="otaManageApplyEO.softwareIssueTimeStart != null">
and ts.software_issue_time &gt;=#{otaManageApplyEO.softwareIssueTimeStart}
</if>
<if test="otaManageApplyEO.softwareIssueTimeEnd != null">
and ts.software_issue_time &lt;=#{otaManageApplyEO.softwareIssueTimeEnd}
</if>
<if test="otaManageApplyEO.issueKey != null and otaManageApplyEO.issueKey != ''">
and ts.issue_key LIKE CONCAT(CONCAT('%',#{otaManageApplyEO.issueKey}),'%')
</if>
<if test="otaManageApplyEO.summary != null and otaManageApplyEO.summary != ''">
and ts.summary LIKE CONCAT(CONCAT('%',#{otaManageApplyEO.summary}),'%')
</if>
<if test="otaManageApplyEO.impactHomo != null and otaManageApplyEO.impactHomo != ''">
and (ts.impact_cn_homo LIKE CONCAT(CONCAT('%',#{otaManageApplyEO.impactHomo}),'%')
or impact_eu_homo ts.impact_cn_homo LIKE CONCAT(CONCAT('%',#{otaManageApplyEO.impactHomo}),'%'))
</if>
</where>
order by create_time desc
</select>
<select id="getOtaCarPage" resultType="com.jero.modules.ota.entity.OtaManageApplyEO">
select omr.*,
oma.project_version,oma.attestation_schedule.oma.match_status,oma.remark,
from ota_manage_receive omr
left join ota_manage_apply oma on oma.issue_key = omr.issue_key
<where>
1=1
<if test="otaManageApplyEO.issueKey != null and otaManageApplyEO.issueKey != ''">
and ts.issue_key LIKE CONCAT(CONCAT('%',#{otaManageApplyEO.issueKey}),'%')
</if>
<if test="otaManageApplyEO.summary != null and otaManageApplyEO.summary != ''">
and ts.summary LIKE CONCAT(CONCAT('%',#{otaManageApplyEO.summary}),'%')
</if>
<if test="otaManageApplyEO.impactHomo != null and otaManageApplyEO.impactHomo != ''">
and (ts.impact_cn_homo LIKE CONCAT(CONCAT('%',#{otaManageApplyEO.impactHomo}),'%')
or impact_eu_homo ts.impact_cn_homo LIKE CONCAT(CONCAT('%',#{otaManageApplyEO.impactHomo}),'%'))
</if>
</where>
order by create_time desc
</select>
<select id="getByAppliedVehicleProject" resultType="com.jero.modules.ota.vo.VersionVO">
</select>
</mapper>
@@ -0,0 +1,82 @@
package com.jero.modules.ota.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jero.modules.ota.entity.OtaManageApplyEO;
import com.jero.modules.ota.vo.VersionVO;
import java.util.List;
/**
* @Description: 数据对接表
* @Author: jero-boot
* @Date: 2023-08-09
* @Version: V1.0
*/
public interface IOtaManageApplyEOService extends IService<OtaManageApplyEO> {
/**
* 保存
*
* @param otaManageApplyEO
* @return
*/
void add(OtaManageApplyEO otaManageApplyEO);
/**
* 更新
*
* @param otaManageApplyEO
* @return
*/
void editById(OtaManageApplyEO otaManageApplyEO);
/**
* 通过id删除
*
* @param id
* @return
*/
void deleteById(String id);
/**
* 批量删除
*
* @param ids
* @return
*/
void deleteByIds(List<String> ids);
/**
* 通过id查询通过适用车型查询
*
* @param appliedVehicleProject
* @return
*/
List<VersionVO> getByAppliedVehicleProject(String appliedVehicleProject);
/**
* 列表查询
*
* @return
*/
List<OtaManageApplyEO> queryList();
/**
* OTA管理列表和全车型列表-分页列表查询
* @param otaManageApplyEO
* @param pageNo
* @param pageSize
* @return
*/
IPage<OtaManageApplyEO> getOtaPage(OtaManageApplyEO otaManageApplyEO,Integer pageNo,Integer pageSize);
/**
* 分车型列表-分页列表查询
* @param otaManageApplyEO
* @param pageNo
* @param pageSize
* @return
*/
IPage<OtaManageApplyEO> getOtaCarPage(OtaManageApplyEO otaManageApplyEO,Integer pageNo,Integer pageSize);
}
@@ -0,0 +1,128 @@
package com.jero.modules.ota.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.modules.ota.entity.OtaManageApplyEO;
import com.jero.modules.ota.mapper.OtaManageApplyEOMapper;
import com.jero.modules.ota.service.IOtaManageApplyEOService;
import com.jero.modules.ota.vo.VersionVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* @Description: 数据对接表
* @Author: jero-boot
* @Date: 2023-08-09
* @Version: V1.0
*/
@Service
public class OtaManageApplyEOServiceImpl extends ServiceImpl<OtaManageApplyEOMapper, OtaManageApplyEO> implements IOtaManageApplyEOService {
@Autowired
private OtaManageApplyEOMapper otaManageApplyEOMapper;
/**
* 保存
*
* @param otaManageApplyEO
* @return
*/
@Override
public void add(OtaManageApplyEO otaManageApplyEO) {
Date now = new Date();
otaManageApplyEO.setCreateTime(now);
otaManageApplyEO.setUpdateTime(now);
save(otaManageApplyEO);
}
/**
* 更新
*
* @param otaManageApplyEO
* @return
*/
@Override
public void editById(OtaManageApplyEO otaManageApplyEO) {
Date now = new Date();
otaManageApplyEO.setUpdateTime(now);
saveOrUpdate(otaManageApplyEO);
}
/**
* 通过id删除
*
* @param id
* @return
*/
@Override
public void deleteById(String id) {
removeById(id);
}
/**
* 批量删除
*
* @param ids
* @return
*/
@Override
public void deleteByIds(List<String> ids) {
removeByIds(ids);
}
/**
* 通过id查询
*
* @param appliedVehicleProject
* @return
*/
@Override
public List<VersionVO> getByAppliedVehicleProject(String appliedVehicleProject) {
otaManageApplyEOMapper.getByAppliedVehicleProject(appliedVehicleProject);
return new ArrayList<>();
}
/**
* 列表查询
*
* @return
*/
@Override
public List<OtaManageApplyEO> queryList() {
return list();
}
/**
* OTA管理列表和全车型列表-分页列表查询
* @param otaManageApplyEO
* @param pageNo
* @param pageSize
* @return
*/
@Override
public IPage<OtaManageApplyEO> getOtaPage(OtaManageApplyEO otaManageApplyEO, Integer pageNo, Integer pageSize) {
Page<OtaManageApplyEO> page = new Page<OtaManageApplyEO>(pageNo, pageSize);
return otaManageApplyEOMapper.getOtaPage(page, otaManageApplyEO);
}
/**
* 分车型列表-分页列表查询
* @param otaManageApplyEO
* @param pageNo
* @param pageSize
* @return
*/
@Override
public IPage<OtaManageApplyEO> getOtaCarPage(OtaManageApplyEO otaManageApplyEO, Integer pageNo, Integer pageSize) {
Page<OtaManageApplyEO> page = new Page<OtaManageApplyEO>(pageNo, pageSize);
otaManageApplyEOMapper.getOtaCarPage(page, otaManageApplyEO);
return null;
}
}
@@ -0,0 +1,25 @@
package com.jero.modules.ota.vo;
import io.swagger.annotations.ApiModelProperty;
import java.util.Date;
/**
* @description
* @date 2023/8/9 11:28
* @auth zhn
*/
public class VersionVO {
@ApiModelProperty(value = "版本")
private String version;
@ApiModelProperty(value = "认证开始")
private Date attestationStartTime;
@ApiModelProperty(value = "认证申报")
private Date certificationSubmission;
@ApiModelProperty(value = "认证批准")
private Date attestationEndTime;
}